]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
Merge branch 'next' of ssh://git.ipfire.org/pub/git/ipfire-2.x into monit
authorDirk Wagner <dirk.wagner@ipfire.org>
Wed, 15 Oct 2014 20:38:13 +0000 (22:38 +0200)
committerDirk Wagner <dirk.wagner@ipfire.org>
Wed, 15 Oct 2014 20:38:13 +0000 (22:38 +0200)
280 files changed:
config/backup/includes/bacula [new file with mode: 0644]
config/backup/includes/check_mk_agent [new file with mode: 0644]
config/cfgroot/general-functions.pl
config/cfgroot/network-functions.pl [new file with mode: 0644]
config/etc/group
config/findutils/updatedb [new file with mode: 0644]
config/firewall/firewall-lib.pl
config/firewall/rules.pl
config/rootfiles/common/armv5tel/gmp
config/rootfiles/common/armv5tel/initscripts
config/rootfiles/common/bash
config/rootfiles/common/batctl [new file with mode: 0644]
config/rootfiles/common/boost [new file with mode: 0644]
config/rootfiles/common/configroot
config/rootfiles/common/ddns
config/rootfiles/common/fcron
config/rootfiles/common/findutils
config/rootfiles/common/i586/gmp
config/rootfiles/common/i586/initscripts
config/rootfiles/common/iputils
config/rootfiles/common/libnl-3 [new file with mode: 0644]
config/rootfiles/common/mpfr
config/rootfiles/common/ppp
config/rootfiles/common/readline
config/rootfiles/common/stage2
config/rootfiles/core/85/exclude [moved from config/rootfiles/core/80/exclude with 100% similarity]
config/rootfiles/core/85/filelists/files [new file with mode: 0644]
config/rootfiles/core/85/filelists/openssl [new symlink]
config/rootfiles/core/85/filelists/openssl-compat [new symlink]
config/rootfiles/core/85/meta [moved from config/rootfiles/core/80/meta with 100% similarity]
config/rootfiles/core/85/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/80/exclude [new file with mode: 0644]
config/rootfiles/oldcore/80/filelists/bind [moved from config/rootfiles/core/80/filelists/bind with 100% similarity]
config/rootfiles/oldcore/80/filelists/ddns [moved from config/rootfiles/core/80/filelists/ddns with 100% similarity]
config/rootfiles/oldcore/80/filelists/dnsmasq [moved from config/rootfiles/core/80/filelists/dnsmasq with 100% similarity]
config/rootfiles/oldcore/80/filelists/files [moved from config/rootfiles/core/80/filelists/files with 80% similarity]
config/rootfiles/oldcore/80/filelists/i586/gmp [moved from config/rootfiles/core/80/filelists/i586/gmp with 100% similarity]
config/rootfiles/oldcore/80/filelists/libgcrypt [moved from config/rootfiles/core/80/filelists/libgcrypt with 100% similarity]
config/rootfiles/oldcore/80/filelists/libgpg-error [moved from config/rootfiles/core/80/filelists/libgpg-error with 100% similarity]
config/rootfiles/oldcore/80/filelists/lzo [moved from config/rootfiles/core/80/filelists/lzo with 100% similarity]
config/rootfiles/oldcore/80/filelists/nettle [moved from config/rootfiles/core/80/filelists/nettle with 100% similarity]
config/rootfiles/oldcore/80/filelists/rng-tools [moved from config/rootfiles/core/80/filelists/rng-tools with 100% similarity]
config/rootfiles/oldcore/80/filelists/strongswan [moved from config/rootfiles/core/80/filelists/strongswan with 100% similarity]
config/rootfiles/oldcore/80/filelists/wpa_supplicant [moved from config/rootfiles/core/80/filelists/wpa_supplicant with 100% similarity]
config/rootfiles/oldcore/80/meta [new file with mode: 0644]
config/rootfiles/oldcore/80/update.sh [moved from config/rootfiles/core/80/update.sh with 100% similarity]
config/rootfiles/oldcore/81/exclude [new file with mode: 0644]
config/rootfiles/oldcore/81/filelists/ddns [new symlink]
config/rootfiles/oldcore/81/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/81/filelists/lzo [new symlink]
config/rootfiles/oldcore/81/filelists/openssh [new symlink]
config/rootfiles/oldcore/81/filelists/openssl [new symlink]
config/rootfiles/oldcore/81/meta [new file with mode: 0644]
config/rootfiles/oldcore/81/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/82/exclude [new file with mode: 0644]
config/rootfiles/oldcore/82/filelists/armv5tel/gmp [new symlink]
config/rootfiles/oldcore/82/filelists/batctl [new symlink]
config/rootfiles/oldcore/82/filelists/boost [new symlink]
config/rootfiles/oldcore/82/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/82/filelists/i586/gmp [new symlink]
config/rootfiles/oldcore/82/filelists/iputils [new symlink]
config/rootfiles/oldcore/82/filelists/libnl-3 [new symlink]
config/rootfiles/oldcore/82/filelists/mpfr [new symlink]
config/rootfiles/oldcore/82/filelists/openssl-compat [new symlink]
config/rootfiles/oldcore/82/filelists/ppp [new symlink]
config/rootfiles/oldcore/82/meta [new file with mode: 0644]
config/rootfiles/oldcore/82/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/83/exclude [new file with mode: 0644]
config/rootfiles/oldcore/83/filelists/bash [new symlink]
config/rootfiles/oldcore/83/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/83/filelists/findutils [new symlink]
config/rootfiles/oldcore/83/filelists/squid [new symlink]
config/rootfiles/oldcore/83/meta [new file with mode: 0644]
config/rootfiles/oldcore/83/update.sh [new file with mode: 0644]
config/rootfiles/oldcore/84/exclude [new file with mode: 0644]
config/rootfiles/oldcore/84/filelists/bash [new symlink]
config/rootfiles/oldcore/84/filelists/dnsmasq [new symlink]
config/rootfiles/oldcore/84/filelists/files [new file with mode: 0644]
config/rootfiles/oldcore/84/filelists/readline [new symlink]
config/rootfiles/oldcore/84/filelists/squid [new symlink]
config/rootfiles/oldcore/84/meta [new file with mode: 0644]
config/rootfiles/oldcore/84/update.sh [new file with mode: 0644]
config/rootfiles/packages/bacula [new file with mode: 0644]
config/rootfiles/packages/krb5 [new file with mode: 0644]
config/rootfiles/packages/minidlna
config/rootfiles/packages/owncloud
config/rootfiles/packages/parted
config/rootfiles/packages/perl-PDF-API2 [new file with mode: 0644]
config/rootfiles/packages/samba
config/rootfiles/packages/squid-accounting [new file with mode: 0644]
config/xen-image/README
doc/language_issues.de
doc/language_issues.en
doc/language_issues.es
doc/language_issues.fr
doc/language_issues.nl
doc/language_issues.pl
doc/language_issues.ru
doc/language_issues.tr
doc/language_missings
html/cgi-bin/ddns.cgi
html/cgi-bin/firewall.cgi
html/cgi-bin/fwhosts.cgi
html/cgi-bin/ids.cgi
html/cgi-bin/logs.cgi/ids.dat
html/cgi-bin/logs.cgi/log.dat
html/cgi-bin/optionsfw.cgi
html/cgi-bin/ovpnmain.cgi
html/cgi-bin/proxy.cgi
html/cgi-bin/samba.cgi
html/cgi-bin/urlfilter.cgi
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/nl/cgi-bin/nl.pl
langs/pl/cgi-bin/pl.pl
langs/ru/cgi-bin/ru.pl
langs/tr/cgi-bin/tr.pl
lfs/bacula [new file with mode: 0644]
lfs/bash
lfs/batctl [new file with mode: 0644]
lfs/boost [new file with mode: 0644]
lfs/check_mk_agent
lfs/configroot
lfs/ddns
lfs/dnsmasq
lfs/findutils
lfs/glibc
lfs/gmp
lfs/initscripts
lfs/iputils
lfs/krb5 [new file with mode: 0644]
lfs/libnl-3 [new file with mode: 0644]
lfs/lzo
lfs/minidlna
lfs/mpfr
lfs/openssl
lfs/openssl-compat
lfs/owncloud
lfs/parted
lfs/perl-PDF-API2 [new file with mode: 0644]
lfs/ppp
lfs/readline
lfs/rsync
lfs/samba
lfs/sane
lfs/squid
lfs/squid-accounting [new file with mode: 0644]
lfs/tor
make.sh
src/initscripts/init.d/firewall
src/initscripts/init.d/minidlna
src/initscripts/init.d/network
src/initscripts/init.d/networking/red.down/20-firewall [new file with mode: 0644]
src/initscripts/init.d/networking/red.up/20-firewall [new file with mode: 0644]
src/initscripts/init.d/rngd
src/initscripts/init.d/samba
src/initscripts/init.d/winbind [deleted file]
src/misc-progs/sambactrl.c
src/paks/check_mk_agent/uninstall.sh
src/paks/samba/install.sh
src/paks/samba/update.sh
src/paks/squid-accounting/install.sh [new file with mode: 0644]
src/paks/squid-accounting/uninstall.sh [new file with mode: 0644]
src/paks/squid-accounting/update.sh [new file with mode: 0644]
src/patches/bash-3.2-ssh_source_bash.patch
src/patches/bash-4.0-paths-1.patch
src/patches/bash/bash32-001 [deleted file]
src/patches/bash/bash32-002 [deleted file]
src/patches/bash/bash32-003 [deleted file]
src/patches/bash/bash32-004 [deleted file]
src/patches/bash/bash32-005 [deleted file]
src/patches/bash/bash32-006 [deleted file]
src/patches/bash/bash32-007 [deleted file]
src/patches/bash/bash32-008 [deleted file]
src/patches/bash/bash32-009 [deleted file]
src/patches/bash/bash32-010 [deleted file]
src/patches/bash/bash32-011 [deleted file]
src/patches/bash/bash32-012 [deleted file]
src/patches/bash/bash32-013 [deleted file]
src/patches/bash/bash32-014 [deleted file]
src/patches/bash/bash32-015 [deleted file]
src/patches/bash/bash32-016 [deleted file]
src/patches/bash/bash32-017 [deleted file]
src/patches/bash/bash32-018 [deleted file]
src/patches/bash/bash32-019 [deleted file]
src/patches/bash/bash32-020 [deleted file]
src/patches/bash/bash32-021 [deleted file]
src/patches/bash/bash32-022 [deleted file]
src/patches/bash/bash32-023 [deleted file]
src/patches/bash/bash32-024 [deleted file]
src/patches/bash/bash32-025 [deleted file]
src/patches/bash/bash32-026 [deleted file]
src/patches/bash/bash32-027 [deleted file]
src/patches/bash/bash32-028 [deleted file]
src/patches/bash/bash32-029 [deleted file]
src/patches/bash/bash32-030 [deleted file]
src/patches/bash/bash32-031 [deleted file]
src/patches/bash/bash32-032 [deleted file]
src/patches/bash/bash32-033 [deleted file]
src/patches/bash/bash32-034 [deleted file]
src/patches/bash/bash32-035 [deleted file]
src/patches/bash/bash32-036 [deleted file]
src/patches/bash/bash32-037 [deleted file]
src/patches/bash/bash32-038 [deleted file]
src/patches/bash/bash32-039 [deleted file]
src/patches/bash/bash32-040 [deleted file]
src/patches/bash/bash32-041 [deleted file]
src/patches/bash/bash32-042 [deleted file]
src/patches/bash/bash32-043 [deleted file]
src/patches/bash/bash32-044 [deleted file]
src/patches/bash/bash32-045 [deleted file]
src/patches/bash/bash32-046 [deleted file]
src/patches/bash/bash32-047 [deleted file]
src/patches/bash/bash32-048 [deleted file]
src/patches/bash/bash32-049 [deleted file]
src/patches/bash/bash32-050 [deleted file]
src/patches/bash/bash32-051 [deleted file]
src/patches/bash/bash32-052 [new file with mode: 0644]
src/patches/bash/bash32-053 [new file with mode: 0644]
src/patches/bash/bash43-001 [new file with mode: 0644]
src/patches/bash/bash43-002 [new file with mode: 0644]
src/patches/bash/bash43-003 [new file with mode: 0644]
src/patches/bash/bash43-004 [new file with mode: 0644]
src/patches/bash/bash43-005 [new file with mode: 0644]
src/patches/bash/bash43-006 [new file with mode: 0644]
src/patches/bash/bash43-007 [new file with mode: 0644]
src/patches/bash/bash43-008 [new file with mode: 0644]
src/patches/bash/bash43-009 [new file with mode: 0644]
src/patches/bash/bash43-010 [new file with mode: 0644]
src/patches/bash/bash43-011 [new file with mode: 0644]
src/patches/bash/bash43-012 [new file with mode: 0644]
src/patches/bash/bash43-013 [new file with mode: 0644]
src/patches/bash/bash43-014 [new file with mode: 0644]
src/patches/bash/bash43-015 [new file with mode: 0644]
src/patches/bash/bash43-016 [new file with mode: 0644]
src/patches/bash/bash43-017 [new file with mode: 0644]
src/patches/bash/bash43-018 [new file with mode: 0644]
src/patches/bash/bash43-019 [new file with mode: 0644]
src/patches/bash/bash43-020 [new file with mode: 0644]
src/patches/bash/bash43-021 [new file with mode: 0644]
src/patches/bash/bash43-022 [new file with mode: 0644]
src/patches/bash/bash43-023 [new file with mode: 0644]
src/patches/bash/bash43-024 [new file with mode: 0644]
src/patches/bash/bash43-025 [new file with mode: 0644]
src/patches/bash/bash43-026 [new file with mode: 0644]
src/patches/bash/bash43-027 [new file with mode: 0644]
src/patches/bash/bash43-028 [new file with mode: 0644]
src/patches/bash/bash43-029 [new file with mode: 0644]
src/patches/bash/bash43-030 [new file with mode: 0644]
src/patches/dnsmasq-2.71-support-nettle-3.0.patch [deleted file]
src/patches/dnsmasq-2.71-use-nettle-with-minigmp.patch [deleted file]
src/patches/dnsmasq-2.72rc2-Add-support-to-read-ISC-DHCP-lease-file.patch [moved from src/patches/dnsmasq-2.70-Add-support-to-read-ISC-DHCP-lease-file.patch with 94% similarity]
src/patches/glibc/glibc-rh1008310.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1022022.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1091162.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1098050.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1133809-1.patch [new file with mode: 0644]
src/patches/glibc/glibc-rh1133809-2.patch [new file with mode: 0644]
src/patches/lzo-2.06-CVE-2014-4607.patch [new file with mode: 0755]
src/patches/mitkrb-1.12.1-db2_fix-1.patch [new file with mode: 0644]
src/patches/readline/readline62-001 [deleted file]
src/patches/readline/readline62-002 [deleted file]
src/patches/readline/readline62-003 [deleted file]
src/patches/readline/readline62-004 [deleted file]
src/patches/readline/readline63-001 [new file with mode: 0644]
src/patches/readline/readline63-002 [new file with mode: 0644]
src/patches/readline/readline63-003 [new file with mode: 0644]
src/patches/readline/readline63-004 [new file with mode: 0644]
src/patches/readline/readline63-005 [new file with mode: 0644]
src/patches/readline/readline63-006 [new file with mode: 0644]
src/squid-accounting/EX-squid-accounting.menu [new file with mode: 0755]
src/squid-accounting/accounting.cgi [new file with mode: 0755]
src/squid-accounting/acct-lib.pl [new file with mode: 0644]
src/squid-accounting/acct.de.pl [new file with mode: 0644]
src/squid-accounting/acct.en.pl [new file with mode: 0644]
src/squid-accounting/acct.pl [new file with mode: 0755]
src/squid-accounting/config/backup/includes/squid-accounting [new file with mode: 0644]
src/squid-accounting/dbinstall.pl [new file with mode: 0755]

diff --git a/config/backup/includes/bacula b/config/backup/includes/bacula
new file mode 100644 (file)
index 0000000..8d5c119
--- /dev/null
@@ -0,0 +1 @@
+/etc/bacula/
diff --git a/config/backup/includes/check_mk_agent b/config/backup/includes/check_mk_agent
new file mode 100644 (file)
index 0000000..ca71046
--- /dev/null
@@ -0,0 +1 @@
+/etc/check_mk/
index 6994f333d5a84c48ed57aa9155b04b34a0c818f5..35ae7c0930e8fd91cae3d60e0558d6a5e06299cd 100644 (file)
@@ -26,6 +26,8 @@ $General::swroot = 'CONFIG_ROOT';
 $General::noipprefix = 'noipg-';
 $General::adminmanualurl = 'http://wiki.ipfire.org';
 
+require "${General::swroot}/network-functions.pl";
+
 #
 # log ("message") use default 'ipcop' tag
 # log ("tag","message") use your tag
@@ -281,21 +283,10 @@ sub validip
        }
 }
 
-sub validmask
-{
-       my $mask = $_[0];
+sub validmask {
+       my $mask = shift;
 
-       # secord part an ip?
-       if (&validip($mask)) {
-               return 1; }
-       # second part a number?
-       if (/^0/) {
-               return 0; }
-       if (!($mask =~ /^\d+$/)) {
-               return 0; }
-       if ($mask >= 0 && $mask <= 32) {
-               return 1; }
-       return 0;
+       return &Network::check_netmask($mask) || &Network::check_prefix($mask);
 }
 
 sub validipormask
@@ -316,24 +307,12 @@ sub validipormask
        return &validmask($mask);
 }
 
-sub subtocidr
-{
-       #gets: Subnet in decimal (255.255.255.0) 
-       #Gives: 24 (The cidr of network)
-       my ($byte1, $byte2, $byte3, $byte4) = split(/\./, $_[0].".0.0.0.0"); 
-       my $num = ($byte1 * 16777216) + ($byte2 * 65536) + ($byte3 * 256) + $byte4; 
-       my $bin = unpack("B*", pack("N", $num)); 
-       my $count = ($bin =~ tr/1/1/); 
-       return $count;
+sub subtocidr {
+       return &Network::convert_netmask2prefix(shift);
 }
 
-sub cidrtosub
-{
-       #gets: Cidr of network (20-30 for ccd) 
-       #Konverts 30 to 255.255.255.252 e.g
-       my $cidr=$_[0];
-    my $netmask = &Net::IPv4Addr::ipv4_cidr2msk($cidr);
-    return "$netmask";
+sub cidrtosub {
+       return &Network::convert_prefix2netmask(shift);
 }
   
 sub iporsubtodec
@@ -408,15 +387,10 @@ sub iporsubtocidr
        return 3;
 }
 
-sub getnetworkip
-{
-       #Gets:  IP, CIDR    (10.10.10.0-255, 24)
-       #Gives:  10.10.10.0
-       my ($ccdip,$ccdsubnet) = @_;
-       my $ip_address_binary = &Socket::inet_pton( AF_INET,$ccdip );
-       my $netmask_binary = &Socket::inet_pton(AF_INET,&iporsubtodec($ccdsubnet));
-       my $network_address    = &Socket::inet_ntop( AF_INET,$ip_address_binary & $netmask_binary );
-       return $network_address;
+sub getnetworkip {
+       my $arg = join("/", @_);
+
+       return &Network::get_netaddress($arg);
 }
 
 sub getccdbc
@@ -431,46 +405,20 @@ sub getccdbc
        return $broadcast_address;
 }
 
-sub ip2dec 
-{
-    my $ip_num;
-    my $ip=$_[0];
-    if ( $ip =~ /(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})/ ) {
-        $ip_num = (($1*256**3) + ($2*256**2) + ($3*256) + $4);
-    } else {
-        $ip_num = -1;
-    }
-    $ip_num = (($1*256**3) + ($2*256**2) + ($3*256) + $4);
-    return($ip_num);
+sub ip2dec  {
+       return &Network::ip2bin(shift);
 }
 
-sub dec2ip 
-{
-    my $ip;
-    my $ip_num=$_[0];
-       my $o1=$ip_num%256;
-       $ip_num=int($ip_num/256);
-       my $o2=$ip_num%256;
-       $ip_num=int($ip_num/256);
-       my $o3=$ip_num%256;
-       $ip_num=int($ip_num/256);
-       my $o4=$ip_num%256;
-       $ip="$o4.$o3.$o2.$o1";
-    return ($ip);
+sub dec2ip  {
+       return &Network::bin2ip(shift);
 }
 
-sub getnextip
-{
-       my $decip=&ip2dec($_[0]);
-       $decip=$decip+4;
-       return &dec2ip($decip);
+sub getnextip {
+       return &Network::find_next_ip_address(shift, 4);
 }
 
-sub getlastip
-{
-       my $decip=&ip2dec($_[0]);
-       $decip--;
-       return &dec2ip($decip);
+sub getlastip {
+       return &Network::find_next_ip_address(shift, -1);
 }
 
 sub validipandmask
@@ -681,9 +629,8 @@ sub validdomainname
        my @parts = split (/\./, $domainname);  # Split hostname at the '.'
 
        foreach $part (@parts) {
-               # Each part should be at least two characters in length
-               # but no more than 63 characters
-               if (length ($part) < 2 || length ($part) > 63) {
+               # Each part should be no more than 63 characters in length
+               if (length ($part) < 1 || length ($part) > 63) {
                        return 0;}
                # Only valid characters are a-z, A-Z, 0-9 and -
                if ($part !~ /^[a-zA-Z0-9-]*$/) {
@@ -766,28 +713,12 @@ sub validportrange # used to check a port range
        }
 }
 
-# Test if IP is within a subnet
-# Call: IpInSubnet (Addr, Subnet, Subnet Mask)
-#       Subnet can be an IP of the subnet: 10.0.0.0 or 10.0.0.1
-#       Everything in dottted notation
-# Return: TRUE/FALSE
-sub IpInSubnet
-{
+sub IpInSubnet {
        my $addr = shift;
        my $network = shift;
        my $netmask = shift;
 
-       my $addr_num = &Socket::inet_pton(AF_INET,$addr);
-       my $network_num = &Socket::inet_pton(AF_INET,$network);
-       my $netmask_num = &Socket::inet_pton(AF_INET,$netmask);
-
-       # Find start address
-       my $network_start = $network_num & $netmask_num;
-
-       # Find end address
-       my $network_end = $network_start ^ ~$netmask_num;
-
-       return (($addr_num ge $network_start) && ($addr_num le $network_end));
+       return &Network::ip_address_in_network($addr, "$network/$netmask");
 }
 
 #
@@ -795,32 +726,25 @@ sub IpInSubnet
 # Call: NextIP ('1.1.1.1');
 # Return: '1.1.1.2'
 #
-sub NextIP
-{
-    return &Socket::inet_ntoa( pack("N", 1 +  unpack('N', &Socket::inet_aton(shift))
-                                  )
-                            );
+sub NextIP {
+       return &Network::find_next_ip_address(shift, 1);
 }
-sub NextIP2
-{
-    return &Socket::inet_ntoa( pack("N", 4 +  unpack('N', &Socket::inet_aton(shift))
-                                  )
-                            );
+
+sub NextIP2 {
+       return &Network::find_next_ip_address(shift, 4);
 }
-sub ipcidr
-{
+
+sub ipcidr {
        my ($ip,$cidr) = &Net::IPv4Addr::ipv4_parse(shift);
        return "$ip\/$cidr";
 }
 
-sub ipcidr2msk
-{
+sub ipcidr2msk {
        my ($ip,$cidr) = &Net::IPv4Addr::ipv4_parse(shift);
        my $netmask = &Net::IPv4Addr::ipv4_cidr2msk($cidr);
        return "$ip\/$netmask";
 }
 
-
 sub validemail {
     my $mail = shift;
     return 0 if ( $mail !~ /^[0-9a-zA-Z\.\-\_]+\@[0-9a-zA-Z\.\-]+$/ );
diff --git a/config/cfgroot/network-functions.pl b/config/cfgroot/network-functions.pl
new file mode 100644 (file)
index 0000000..029ffc0
--- /dev/null
@@ -0,0 +1,306 @@
+#!/usr/bin/perl -w
+############################################################################
+#                                                                          #
+# 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 2 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) 2014 IPFire Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+
+package Network;
+
+use Socket;
+
+my %PREFIX2NETMASK = (
+       32 => "255.255.255.255",
+       31 => "255.255.255.254",
+       30 => "255.255.255.252",
+       29 => "255.255.255.248",
+       28 => "255.255.255.240",
+       27 => "255.255.255.224",
+       26 => "255.255.255.192",
+       25 => "255.255.255.128",
+       24 => "255.255.255.0",
+       23 => "255.255.254.0",
+       22 => "255.255.252.0",
+       21 => "255.255.248.0",
+       20 => "255.255.240.0",
+       19 => "255.255.224.0",
+       18 => "255.255.192.0",
+       17 => "255.255.128.0",
+       16 => "255.255.0.0",
+       15 => "255.254.0.0",
+       14 => "255.252.0.0",
+       13 => "255.248.0.0",
+       12 => "255.240.0.0",
+       11 => "255.224.0.0",
+       10 => "255.192.0.0",
+        9 => "255.128.0.0",
+        8 => "255.0.0.0",
+        7 => "254.0.0.0",
+        6 => "252.0.0.0",
+        5 => "248.0.0.0",
+        4 => "240.0.0.0",
+        3 => "224.0.0.0",
+        2 => "192.0.0.0",
+        1 => "128.0.0.0",
+        0 => "0.0.0.0"
+);
+
+my %NETMASK2PREFIX = reverse(%PREFIX2NETMASK);
+
+# Takes an IP address in dotted decimal notation and
+# returns a 32 bit integer representing that IP addresss.
+# Will return undef for invalid inputs.
+sub ip2bin($) {
+       my $address = shift;
+
+       # This function returns undef for undefined input.
+       if (!defined $address) {
+               return undef;
+       }
+
+       my $address_bin = &Socket::inet_pton(AF_INET, $address);
+       if ($address_bin) {
+               $address_bin = unpack('N', $address_bin);
+       }
+
+       return $address_bin;
+}
+
+# Does the reverse of ip2bin().
+# Will return undef for invalid inputs.
+sub bin2ip($) {
+       my $address_bin = shift;
+
+       # This function returns undef for undefined input.
+       if (!defined $address_bin) {
+               return undef;
+       }
+
+       my $address = pack('N', $address_bin);
+       if ($address) {
+               $address = &Socket::inet_ntop(AF_INET, $address);
+       }
+
+       return $address;
+}
+
+# Takes a network in either a.b.c.d/a.b.c.d or a.b.c.d/e notation
+# and will return an 32 bit integer representing the start
+# address and an other one representing the network mask.
+sub network2bin($) {
+       my $network = shift;
+
+       my ($address, $netmask) = split(/\//, $network, 2);
+
+       if (&check_prefix($netmask)) {
+               $netmask = &convert_prefix2netmask($netmask);
+       }
+
+       my $address_bin = &ip2bin($address);
+       my $netmask_bin = &ip2bin($netmask);
+
+       my $network_start = $address_bin & $netmask_bin;
+
+       return ($network_start, $netmask_bin);
+}
+
+# Returns True for all valid IP addresses
+sub check_ip_address($) {
+       my $address = shift;
+
+       # Normalise the IP address and compare the result with
+       # the input - which should obviously the same.
+       my $normalised_address = &_normalise_ip_address($address);
+
+       return ((defined $normalised_address) && ($address eq $normalised_address));
+}
+
+# Returns True for all valid prefixes.
+sub check_prefix($) {
+       my $prefix = shift;
+
+       return (exists $PREFIX2NETMASK{$prefix});
+}
+
+# Returns True for all valid subnet masks.
+sub check_netmask($) {
+       my $netmask = shift;
+
+       return (exists $NETMASK2PREFIX{$netmask});
+}
+
+# Returns True for all valid inputs like a.b.c.d/a.b.c.d.
+sub check_ip_address_and_netmask($$) {
+       my $network = shift;
+
+       my ($address, $netmask) = split(/\//, $network, 2);
+
+       # Check if the IP address is fine.
+       # 
+       my $result = &check_ip_address($address);
+       unless ($result) {
+               return $result;
+       }
+
+       return &check_netmask($netmask);
+}
+
+# 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($) {
+       my $address = shift;
+
+       my $address_bin = &ip2bin($address);
+       if (!defined $address_bin) {
+               return undef;
+       }
+
+       return &bin2ip($address_bin);
+}
+
+# Returns the prefix for the given subnet mask.
+sub convert_netmask2prefix($) {
+       my $netmask = shift;
+
+       if (exists $NETMASK2PREFIX{$netmask}) {
+               return $NETMASK2PREFIX{$netmask};
+       }
+
+       return undef;
+}
+
+# Returns the subnet mask for the given prefix.
+sub convert_prefix2netmask($) {
+       my $prefix = shift;
+
+       if (exists $PREFIX2NETMASK{$prefix}) {
+               return $PREFIX2NETMASK{$prefix};
+       }
+
+       return undef;
+}
+
+# Takes an IP address and an offset and
+# will return the offset'th IP address.
+sub find_next_ip_address($$) {
+       my $address = shift;
+       my $offset = shift;
+
+       my $address_bin = &ip2bin($address);
+       $address_bin += $offset;
+
+       return &bin2ip($address_bin);
+}
+
+# Returns the network address of the given network.
+sub get_netaddress($) {
+       my $network = shift;
+       my ($network_bin, $netmask_bin) = &network2bin($network);
+
+       if (defined $network_bin) {
+               return &bin2ip($network_bin);
+       }
+
+       return undef;
+}
+
+# Returns the broadcast of the given network.
+sub get_broadcast($) {
+       my $network = shift;
+       my ($network_bin, $netmask_bin) = &network2bin($network);
+
+       return &bin2ip($network_bin ^ ~$netmask_bin);
+}
+
+# Returns True if $address is in $network.
+sub ip_address_in_network($$) {
+       my $address = shift;
+       my $network = shift;
+
+       my $address_bin = &ip2bin($address);
+       return undef unless (defined $address_bin);
+
+       my ($network_bin, $netmask_bin) = &network2bin($network);
+
+       # Find end address
+       my $broadcast_bin = $network_bin ^ ~$netmask_bin;
+
+       return (($address_bin ge $network_bin) && ($address_bin le $broadcast_bin));
+}
+
+1;
+
+# Remove the next line to enable the testsuite
+__END__
+
+sub assert($) {
+       my $ret = shift;
+
+       if ($ret) {
+               return;
+       }
+
+       print "ASSERTION ERROR";
+       exit(1);
+}
+
+sub testsuite() {
+       my $result;
+
+       my $address1 = &ip2bin("8.8.8.8");
+       assert($address1 == 134744072);
+
+       my $address2 = &bin2ip($address1);
+       assert($address2 eq "8.8.8.8");
+
+       # Check if valid IP addresses are correctly recognised.
+       foreach my $address ("1.2.3.4", "192.168.180.1", "127.0.0.1") {
+               if (!&check_ip_address($address)) {
+                       print "$address is not correctly recognised as a valid IP address!\n";
+                       exit 1;
+               };
+       }
+
+       # Check if invalid IP addresses are correctly found.
+       foreach my $address ("456.2.3.4", "192.768.180.1", "127.1", "1", "a.b.c.d", "1.2.3.4.5", "1.2.3.4/12") {
+               if (&check_ip_address($address)) {
+                       print "$address is recognised as a valid IP address!\n";
+                       exit 1;
+               };
+       }
+
+       $result = &check_ip_address_and_netmask("192.168.180.0/255.255.255.0");
+       assert($result);
+
+       $result = &convert_netmask2prefix("255.255.254.0");
+       assert($result == 23);
+
+       $result = &convert_prefix2netmask(8);
+       assert($result eq "255.0.0.0");
+
+       $result = &find_next_ip_address("1.2.3.4", 2);
+       assert($result eq "1.2.3.6");
+
+       $result = &ip_address_in_network("10.0.1.4", "10.0.0.0/8");
+       assert($result);
+
+       return 0;
+}
+
+&testsuite();
index ab5f4af51175d8bf75c5ed6cc9760fbf3d6fbbfe..51334aafbc14e3e7d4be2079288f36461c4f2cf4 100644 (file)
@@ -25,6 +25,7 @@ stunnel:x:51:
 lock:x:54:
 sshd:x:74:
 pcap:x:77:
+wbpriv:x:88:squid
 nobody:x:99:
 users:x:100:
 snort:x:101:
diff --git a/config/findutils/updatedb b/config/findutils/updatedb
new file mode 100644 (file)
index 0000000..6cc1886
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+[ -x "/usr/bin/updatedb" ] || exit 0
+
+LOCKFILE="/var/lib/locate/updatedb.lock"
+
+trap "rm -f $LOCKFILE" EXIT
+
+if [ -e "$LOCKFILE" ]; then
+       echo >&2 "Warning: $LOCKFILE present, not running updatedb."
+       exit 1
+else
+       touch "$LOCKFILE"
+fi
+
+/usr/bin/updatedb
index c4a19e5d80caa17b6cc0dc68b612c8814da14c59..f3cd67fb099e2f03da1e3db5413f23a86d1521cc 100755 (executable)
@@ -217,7 +217,7 @@ sub get_std_net_ip
        }elsif($val eq 'BLUE'){
                return "$netsettings{'BLUE_NETADDRESS'}/$netsettings{'BLUE_NETMASK'}";
        }elsif($val eq 'RED'){
-               return "0.0.0.0/0 -o $con";
+               return "0.0.0.0/0";
        }elsif($val =~ /OpenVPN/i){
                return "$ovpnsettings{'DOVPN_SUBNET'}";
        }elsif($val =~ /IPsec/i){
@@ -226,6 +226,23 @@ sub get_std_net_ip
                return ;
        }
 }
+sub get_interface
+{
+       my $net=shift;
+       if($net eq "$netsettings{'GREEN_NETADDRESS'}/$netsettings{'GREEN_NETMASK'}"){
+               return "$netsettings{'GREEN_DEV'}";
+       }
+       if($net eq "$netsettings{'ORANGE_NETADDRESS'}/$netsettings{'ORANGE_NETMASK'}"){
+               return "$netsettings{'ORANGE_DEV'}";
+       }
+       if($net eq "$netsettings{'BLUE_NETADDRESS'}/$netsettings{'BLUE_NETMASK'}"){
+               return "$netsettings{'BLUE_DEV'}";
+       }
+       if($net eq "0.0.0.0/0") {
+               return &get_external_interface();
+       }
+       return "";
+}
 sub get_net_ip
 {
        my $val=shift;
@@ -305,9 +322,9 @@ sub get_address
        # address. Otherwise, we assume that it is an IP address.
        if ($key ~~ ["src_addr", "tgt_addr"]) {
                if (&General::validmac($value)) {
-                       push(@ret, "-m mac --mac-source $value");
+                       push(@ret, ["-m mac --mac-source $value", ""]);
                } else {
-                       push(@ret, $value);
+                       push(@ret, [$value, ""]);
                }
 
        # If a default network interface (GREEN, BLUE, etc.) is selected, we
@@ -316,88 +333,90 @@ sub get_address
                my $external_interface = &get_external_interface();
 
                my $network_address = &get_std_net_ip($value, $external_interface);
+
                if ($network_address) {
-                       push(@ret, $network_address);
+                       my $interface = &get_interface($network_address);
+                       push(@ret, [$network_address, $interface]);
                }
 
        # Custom networks.
        } elsif ($key ~~ ["cust_net_src", "cust_net_tgt", "Custom Network"]) {
                my $network_address = &get_net_ip($value);
                if ($network_address) {
-                       push(@ret, $network_address);
+                       push(@ret, [$network_address, ""]);
                }
 
        # Custom hosts.
        } elsif ($key ~~ ["cust_host_src", "cust_host_tgt", "Custom Host"]) {
                my $host_address = &get_host_ip($value, $type);
                if ($host_address) {
-                       push(@ret, $host_address);
+                       push(@ret, [$host_address, ""]);
                }
 
        # OpenVPN networks.
        } elsif ($key ~~ ["ovpn_net_src", "ovpn_net_tgt", "OpenVPN static network"]) {
                my $network_address = &get_ovpn_net_ip($value, 1);
                if ($network_address) {
-                       push(@ret, $network_address);
+                       push(@ret, [$network_address, ""]);
                }
 
        # OpenVPN hosts.
        } elsif ($key ~~ ["ovpn_host_src", "ovpn_host_tgt", "OpenVPN static host"]) {
                my $host_address = &get_ovpn_host_ip($value, 33);
                if ($host_address) {
-                       push(@ret, $host_address);
+                       push(@ret, [$host_address, ""]);
                }
 
        # OpenVPN N2N.
        } elsif ($key ~~ ["ovpn_n2n_src", "ovpn_n2n_tgt", "OpenVPN N-2-N"]) {
                my $network_address = &get_ovpn_n2n_ip($value, 11);
                if ($network_address) {
-                       push(@ret, $network_address);
+                       push(@ret, [$network_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);
+                       push(@ret, [$network_address, ""]);
                }
 
        # The firewall's own IP addresses.
        } elsif ($key ~~ ["ipfire", "ipfire_src"]) {
                # ALL
                if ($value eq "ALL") {
-                       push(@ret, "0/0");
+                       push(@ret, ["0/0", ""]);
 
                # GREEN
                } elsif ($value eq "GREEN") {
-                       push(@ret, $netsettings{"GREEN_ADDRESS"});
+                       push(@ret, [$netsettings{"GREEN_ADDRESS"}, ""]);
 
                # BLUE
                } elsif ($value eq "BLUE") {
-                       push(@ret, $netsettings{"BLUE_ADDRESS"});
+                       push(@ret, [$netsettings{"BLUE_ADDRESS"}, ""]);
 
                # ORANGE
                } elsif ($value eq "ORANGE") {
-                       push(@ret, $netsettings{"ORANGE_ADDRESS"});
+                       push(@ret, [$netsettings{"ORANGE_ADDRESS"}, ""]);
 
                # RED
                } elsif ($value ~~ ["RED", "RED1"]) {
                        my $address = &get_external_address();
                        if ($address) {
-                               push(@ret, $address);
+                               push(@ret, [$address, ""]);
                        }
 
                # Aliases
                } else {
                        my $alias = &get_alias($value);
                        if ($alias) {
-                               push(@ret, $alias);
+                               push(@ret, [$alias, ""]);
                        }
                }
 
        # If nothing was selected, we assume "any".
        } else {
-               push(@ret, "0/0");
+               push(@ret, ["0/0", ""]);
        }
 
        return @ret;
index c0ddcb2d69ed96937c3f8e66cad08d8e17b8cd95..4d703825d170b588fecb61043e424d57904de2ce 100755 (executable)
@@ -131,6 +131,12 @@ sub print_rule {
        print "\n";
 }
 
+sub count_elements {
+       my $hash = shift;
+
+       return scalar @$hash;
+}
+
 sub flush {
        run("$IPTABLES -F $CHAIN_INPUT");
        run("$IPTABLES -F $CHAIN_FORWARD");
@@ -186,6 +192,9 @@ sub buildrules {
                # Skip disabled rules.
                next unless ($$hash{$key}[2] eq 'ON');
 
+               # Count number of elements in this line
+               my $elements = &count_elements($$hash{$key});
+
                if ($DEBUG) {
                        print_rule($$hash{$key});
                }
@@ -268,6 +277,34 @@ sub buildrules {
                        }
                }
 
+               # Concurrent connection limit
+               my @ratelimit_options = ();
+
+               if (($elements gt 34) && ($$hash{$key}[32] eq 'ON')) {
+                       my $conn_limit = $$hash{$key}[33];
+
+                       if ($conn_limit ge 1) {
+                               push(@ratelimit_options, ("-m", "connlimit"));
+
+                               # Use the the entire source IP address
+                               push(@ratelimit_options, "--connlimit-saddr");
+                               push(@ratelimit_options, ("--connlimit-mask", "32"));
+
+                               # Apply the limit
+                               push(@ratelimit_options, ("--connlimit-upto", $conn_limit));
+                       }
+               }
+
+               # Ratelimit
+               if (($elements gt 37) && ($$hash{$key}[34] eq 'ON')) {
+                       my $rate_limit = "$$hash{$key}[35]/$$hash{$key}[36]";
+
+                               if ($rate_limit) {
+                                       push(@ratelimit_options, ("-m", "limit"));
+                                       push(@ratelimit_options, ("--limit", $rate_limit));
+                               }
+               }
+
                # Check which protocols are used in this rule and so that we can
                # later group rules by protocols.
                my @protocols = &get_protocols($hash, $key);
@@ -291,24 +328,30 @@ sub buildrules {
 
                        foreach my $src (@sources) {
                                # Skip invalid source.
+                               next unless (defined $src);
                                next unless ($src);
 
                                # Sanitize source.
-                               my $source = $src;
+                               my $source = @$src[0];
                                if ($source ~~ @ANY_ADDRESSES) {
                                        $source = "";
                                }
 
+                               my $source_intf = @$src[1];
+
                                foreach my $dst (@destinations) {
                                        # Skip invalid rules.
+                                       next unless (defined $dst);
                                        next if (!$dst || ($dst eq "none"));
 
                                        # Sanitize destination.
-                                       my $destination = $dst;
+                                       my $destination = @$dst[0];
                                        if ($destination ~~ @ANY_ADDRESSES) {
                                                $destination = "";
                                        }
 
+                                       my $destination_intf = @$dst[1];
+
                                        # Array with iptables arguments.
                                        my @options = ();
 
@@ -325,15 +368,26 @@ sub buildrules {
                                                push(@source_options, ("-s", $source));
                                        }
 
+                                       if ($source_intf) {
+                                               push(@source_options, ("-i", $source_intf));
+                                       }
+
                                        # Prepare destination options.
                                        my @destination_options = ();
                                        if ($destination) {
                                                push(@destination_options, ("-d", $destination));
                                        }
 
+                                       if ($destination_intf) {
+                                               push(@destination_options, ("-o", $destination_intf));
+                                       }
+
                                        # Add time constraint options.
                                        push(@options, @time_options);
 
+                                       # Add ratelimiting option
+                                       push(@options, @ratelimit_options);
+
                                        my $firewall_is_in_source_subnet = 1;
                                        if ($source) {
                                                $firewall_is_in_source_subnet = &firewall_is_in_subnet($source);
@@ -364,7 +418,7 @@ sub buildrules {
                                                        # Make port-forwardings useable from the internal networks.
                                                        my @internal_addresses = &fwlib::get_internal_firewall_ip_addresses(1);
                                                        unless ($nat_address ~~ @internal_addresses) {
-                                                               &add_dnat_mangle_rules($nat_address, @nat_options);
+                                                               &add_dnat_mangle_rules($nat_address, $source_intf, @nat_options);
                                                        }
 
                                                        push(@nat_options, @source_options);
@@ -455,6 +509,10 @@ sub buildrules {
                        }
                }
        }
+       #Reload firewall.local if present
+       if ( -f '/etc/sysconfig/firewall.local'){
+               run("/etc/sysconfig/firewall.local reload");
+       }
 }
 
 # Formats the given timestamp into the iptables format which is "hh:mm" UTC.
@@ -681,6 +739,7 @@ sub get_dnat_target_port {
 
 sub add_dnat_mangle_rules {
        my $nat_address = shift;
+       my $interface = shift;
        my @options = @_;
 
        my $mark = 0;
@@ -691,6 +750,8 @@ sub add_dnat_mangle_rules {
                next unless (exists $defaultNetworks{$zone . "_NETADDRESS"});
                next unless (exists $defaultNetworks{$zone . "_NETMASK"});
 
+               next if ($interface && $interface ne $defaultNetworks{$zone . "_DEV"});
+
                my @mangle_options = @options;
 
                my $netaddress = $defaultNetworks{$zone . "_NETADDRESS"};
index 67f557fbb5888fbbcb61262d10da936b15505618..8f5ac559b3f94517526bc6612ff5bbf433cdad2d 100644 (file)
@@ -1,21 +1,15 @@
 #usr/include/gmp.h
 #usr/include/gmpxx.h
-#usr/include/mp.h
 #usr/lib/libgmp.a
 #usr/lib/libgmp.la
 #usr/lib/libgmp.so
 usr/lib/libgmp.so.10
-usr/lib/libgmp.so.10.0.5
+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.2.5
-#usr/lib/libmp.a
-#usr/lib/libmp.la
-#usr/lib/libmp.so
-usr/lib/libmp.so.3
-usr/lib/libmp.so.3.1.25
+usr/lib/libgmpxx.so.4.4.0
 #usr/share/info/gmp.info
 #usr/share/info/gmp.info-1
 #usr/share/info/gmp.info-2
index e856697b9ab71171f8791059000d45b50ff81b74..c761e2667234bd209602194014a2cf5e13e670f4 100755 (executable)
@@ -74,13 +74,13 @@ 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/20-RL-firewall
+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/20-RL-firewall
+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
@@ -132,7 +132,6 @@ etc/rc.d/init.d/upnpd
 #etc/rc.d/init.d/vdradmin
 #etc/rc.d/init.d/vsftpd
 #etc/rc.d/init.d/watchdog
-#etc/rc.d/init.d/winbind
 etc/rc.d/init.d/wlanclient
 #etc/rc.d/init.d/xinetd
 #etc/rc.d/rc0.d
index ecaeb1bdd2a8ede5fd5636451e5b6231af57adc3..af3a03719622fbf67d4bc01bd5b3b69f580f680e 100644 (file)
@@ -1,6 +1,73 @@
-bin/sh
-bin/bash
 #bin/bashbug
+#usr/share/doc/bash
+#usr/share/doc/bash/CHANGES
+#usr/share/doc/bash/COMPAT
+#usr/share/doc/bash/FAQ
+#usr/share/doc/bash/INTRO
+#usr/share/doc/bash/NEWS
+#usr/share/doc/bash/POSIX
+#usr/share/doc/bash/RBASH
+#usr/share/doc/bash/README
+#usr/share/doc/bash/bash.html
+#usr/share/doc/bash/bashref.html
 #usr/share/info/bash.info
+#usr/share/locale/af
+#usr/share/locale/af/LC_MESSAGES
+#usr/share/locale/af/LC_MESSAGES/bash.mo
+#usr/share/locale/bg/LC_MESSAGES/bash.mo
+#usr/share/locale/ca/LC_MESSAGES/bash.mo
+#usr/share/locale/cs/LC_MESSAGES/bash.mo
+#usr/share/locale/da/LC_MESSAGES/bash.mo
+#usr/share/locale/de/LC_MESSAGES/bash.mo
+#usr/share/locale/el/LC_MESSAGES/bash.mo
+#usr/share/locale/en@boldquot
+#usr/share/locale/en@boldquot/LC_MESSAGES
+#usr/share/locale/en@boldquot/LC_MESSAGES/bash.mo
+#usr/share/locale/en@quot
+#usr/share/locale/en@quot/LC_MESSAGES
+#usr/share/locale/en@quot/LC_MESSAGES/bash.mo
+#usr/share/locale/eo
+#usr/share/locale/eo/LC_MESSAGES
+#usr/share/locale/eo/LC_MESSAGES/bash.mo
+#usr/share/locale/es/LC_MESSAGES/bash.mo
+#usr/share/locale/et
+#usr/share/locale/et/LC_MESSAGES
+#usr/share/locale/et/LC_MESSAGES/bash.mo
+#usr/share/locale/fi/LC_MESSAGES/bash.mo
+#usr/share/locale/fr/LC_MESSAGES/bash.mo
+#usr/share/locale/ga
+#usr/share/locale/ga/LC_MESSAGES
+#usr/share/locale/ga/LC_MESSAGES/bash.mo
+#usr/share/locale/gl/LC_MESSAGES/bash.mo
+#usr/share/locale/hr/LC_MESSAGES/bash.mo
+#usr/share/locale/hu/LC_MESSAGES/bash.mo
+#usr/share/locale/id/LC_MESSAGES/bash.mo
+#usr/share/locale/it/LC_MESSAGES/bash.mo
+#usr/share/locale/ja/LC_MESSAGES/bash.mo
+#usr/share/locale/lt/LC_MESSAGES/bash.mo
+#usr/share/locale/nl/LC_MESSAGES/bash.mo
+#usr/share/locale/pl/LC_MESSAGES/bash.mo
+#usr/share/locale/pt_BR/LC_MESSAGES/bash.mo
+#usr/share/locale/ro
+#usr/share/locale/ro/LC_MESSAGES
+#usr/share/locale/ro/LC_MESSAGES/bash.mo
+#usr/share/locale/ru/LC_MESSAGES/bash.mo
+#usr/share/locale/sk/LC_MESSAGES/bash.mo
+#usr/share/locale/sl
+#usr/share/locale/sl/LC_MESSAGES
+#usr/share/locale/sl/LC_MESSAGES/bash.mo
+#usr/share/locale/sr
+#usr/share/locale/sr/LC_MESSAGES
+#usr/share/locale/sr/LC_MESSAGES/bash.mo
+#usr/share/locale/sv/LC_MESSAGES/bash.mo
+#usr/share/locale/tr/LC_MESSAGES/bash.mo
+#usr/share/locale/uk
+#usr/share/locale/uk/LC_MESSAGES
+#usr/share/locale/uk/LC_MESSAGES/bash.mo
+#usr/share/locale/vi/LC_MESSAGES/bash.mo
+#usr/share/locale/zh_CN/LC_MESSAGES/bash.mo
+#usr/share/locale/zh_TW/LC_MESSAGES/bash.mo
 #usr/share/man/man1/bash.1
 #usr/share/man/man1/bashbug.1
+bin/sh
+bin/bash
diff --git a/config/rootfiles/common/batctl b/config/rootfiles/common/batctl
new file mode 100644 (file)
index 0000000..a4f49c2
--- /dev/null
@@ -0,0 +1,2 @@
+usr/sbin/batctl
+#usr/share/man/man8/batctl.8
diff --git a/config/rootfiles/common/boost b/config/rootfiles/common/boost
new file mode 100644 (file)
index 0000000..57cb128
--- /dev/null
@@ -0,0 +1,10938 @@
+#usr/include/boost
+#usr/include/boost/accumulators
+#usr/include/boost/accumulators/accumulators.hpp
+#usr/include/boost/accumulators/accumulators_fwd.hpp
+#usr/include/boost/accumulators/framework
+#usr/include/boost/accumulators/framework/accumulator_base.hpp
+#usr/include/boost/accumulators/framework/accumulator_concept.hpp
+#usr/include/boost/accumulators/framework/accumulator_set.hpp
+#usr/include/boost/accumulators/framework/accumulators
+#usr/include/boost/accumulators/framework/accumulators/droppable_accumulator.hpp
+#usr/include/boost/accumulators/framework/accumulators/external_accumulator.hpp
+#usr/include/boost/accumulators/framework/accumulators/reference_accumulator.hpp
+#usr/include/boost/accumulators/framework/accumulators/value_accumulator.hpp
+#usr/include/boost/accumulators/framework/depends_on.hpp
+#usr/include/boost/accumulators/framework/external.hpp
+#usr/include/boost/accumulators/framework/extractor.hpp
+#usr/include/boost/accumulators/framework/features.hpp
+#usr/include/boost/accumulators/framework/parameters
+#usr/include/boost/accumulators/framework/parameters/accumulator.hpp
+#usr/include/boost/accumulators/framework/parameters/sample.hpp
+#usr/include/boost/accumulators/framework/parameters/weight.hpp
+#usr/include/boost/accumulators/framework/parameters/weights.hpp
+#usr/include/boost/accumulators/numeric
+#usr/include/boost/accumulators/numeric/detail
+#usr/include/boost/accumulators/numeric/detail/function1.hpp
+#usr/include/boost/accumulators/numeric/detail/function2.hpp
+#usr/include/boost/accumulators/numeric/detail/function3.hpp
+#usr/include/boost/accumulators/numeric/detail/function4.hpp
+#usr/include/boost/accumulators/numeric/detail/function_n.hpp
+#usr/include/boost/accumulators/numeric/detail/pod_singleton.hpp
+#usr/include/boost/accumulators/numeric/functional
+#usr/include/boost/accumulators/numeric/functional.hpp
+#usr/include/boost/accumulators/numeric/functional/complex.hpp
+#usr/include/boost/accumulators/numeric/functional/valarray.hpp
+#usr/include/boost/accumulators/numeric/functional/vector.hpp
+#usr/include/boost/accumulators/numeric/functional_fwd.hpp
+#usr/include/boost/accumulators/statistics
+#usr/include/boost/accumulators/statistics.hpp
+#usr/include/boost/accumulators/statistics/count.hpp
+#usr/include/boost/accumulators/statistics/covariance.hpp
+#usr/include/boost/accumulators/statistics/density.hpp
+#usr/include/boost/accumulators/statistics/error_of.hpp
+#usr/include/boost/accumulators/statistics/error_of_mean.hpp
+#usr/include/boost/accumulators/statistics/extended_p_square.hpp
+#usr/include/boost/accumulators/statistics/extended_p_square_quantile.hpp
+#usr/include/boost/accumulators/statistics/kurtosis.hpp
+#usr/include/boost/accumulators/statistics/max.hpp
+#usr/include/boost/accumulators/statistics/mean.hpp
+#usr/include/boost/accumulators/statistics/median.hpp
+#usr/include/boost/accumulators/statistics/min.hpp
+#usr/include/boost/accumulators/statistics/moment.hpp
+#usr/include/boost/accumulators/statistics/p_square_cumul_dist.hpp
+#usr/include/boost/accumulators/statistics/p_square_cumulative_distribution.hpp
+#usr/include/boost/accumulators/statistics/p_square_quantile.hpp
+#usr/include/boost/accumulators/statistics/parameters
+#usr/include/boost/accumulators/statistics/parameters/quantile_probability.hpp
+#usr/include/boost/accumulators/statistics/peaks_over_threshold.hpp
+#usr/include/boost/accumulators/statistics/pot_quantile.hpp
+#usr/include/boost/accumulators/statistics/pot_tail_mean.hpp
+#usr/include/boost/accumulators/statistics/rolling_count.hpp
+#usr/include/boost/accumulators/statistics/rolling_mean.hpp
+#usr/include/boost/accumulators/statistics/rolling_sum.hpp
+#usr/include/boost/accumulators/statistics/rolling_window.hpp
+#usr/include/boost/accumulators/statistics/skewness.hpp
+#usr/include/boost/accumulators/statistics/stats.hpp
+#usr/include/boost/accumulators/statistics/sum.hpp
+#usr/include/boost/accumulators/statistics/sum_kahan.hpp
+#usr/include/boost/accumulators/statistics/tail.hpp
+#usr/include/boost/accumulators/statistics/tail_mean.hpp
+#usr/include/boost/accumulators/statistics/tail_quantile.hpp
+#usr/include/boost/accumulators/statistics/tail_variate.hpp
+#usr/include/boost/accumulators/statistics/tail_variate_means.hpp
+#usr/include/boost/accumulators/statistics/times2_iterator.hpp
+#usr/include/boost/accumulators/statistics/variance.hpp
+#usr/include/boost/accumulators/statistics/variates
+#usr/include/boost/accumulators/statistics/variates/covariate.hpp
+#usr/include/boost/accumulators/statistics/weighted_covariance.hpp
+#usr/include/boost/accumulators/statistics/weighted_density.hpp
+#usr/include/boost/accumulators/statistics/weighted_extended_p_square.hpp
+#usr/include/boost/accumulators/statistics/weighted_kurtosis.hpp
+#usr/include/boost/accumulators/statistics/weighted_mean.hpp
+#usr/include/boost/accumulators/statistics/weighted_median.hpp
+#usr/include/boost/accumulators/statistics/weighted_moment.hpp
+#usr/include/boost/accumulators/statistics/weighted_p_square_cumul_dist.hpp
+#usr/include/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp
+#usr/include/boost/accumulators/statistics/weighted_p_square_quantile.hpp
+#usr/include/boost/accumulators/statistics/weighted_peaks_over_threshold.hpp
+#usr/include/boost/accumulators/statistics/weighted_skewness.hpp
+#usr/include/boost/accumulators/statistics/weighted_sum.hpp
+#usr/include/boost/accumulators/statistics/weighted_sum_kahan.hpp
+#usr/include/boost/accumulators/statistics/weighted_tail_mean.hpp
+#usr/include/boost/accumulators/statistics/weighted_tail_quantile.hpp
+#usr/include/boost/accumulators/statistics/weighted_tail_variate_means.hpp
+#usr/include/boost/accumulators/statistics/weighted_variance.hpp
+#usr/include/boost/accumulators/statistics/with_error.hpp
+#usr/include/boost/accumulators/statistics_fwd.hpp
+#usr/include/boost/algorithm
+#usr/include/boost/algorithm/clamp.hpp
+#usr/include/boost/algorithm/cxx11
+#usr/include/boost/algorithm/cxx11/all_of.hpp
+#usr/include/boost/algorithm/cxx11/any_of.hpp
+#usr/include/boost/algorithm/cxx11/copy_if.hpp
+#usr/include/boost/algorithm/cxx11/copy_n.hpp
+#usr/include/boost/algorithm/cxx11/find_if_not.hpp
+#usr/include/boost/algorithm/cxx11/iota.hpp
+#usr/include/boost/algorithm/cxx11/is_partitioned.hpp
+#usr/include/boost/algorithm/cxx11/is_permutation.hpp
+#usr/include/boost/algorithm/cxx11/is_sorted.hpp
+#usr/include/boost/algorithm/cxx11/none_of.hpp
+#usr/include/boost/algorithm/cxx11/one_of.hpp
+#usr/include/boost/algorithm/cxx11/partition_copy.hpp
+#usr/include/boost/algorithm/cxx11/partition_point.hpp
+#usr/include/boost/algorithm/cxx14
+#usr/include/boost/algorithm/cxx14/equal.hpp
+#usr/include/boost/algorithm/cxx14/is_permutation.hpp
+#usr/include/boost/algorithm/cxx14/mismatch.hpp
+#usr/include/boost/algorithm/gather.hpp
+#usr/include/boost/algorithm/hex.hpp
+#usr/include/boost/algorithm/minmax.hpp
+#usr/include/boost/algorithm/minmax_element.hpp
+#usr/include/boost/algorithm/searching
+#usr/include/boost/algorithm/searching/boyer_moore.hpp
+#usr/include/boost/algorithm/searching/boyer_moore_horspool.hpp
+#usr/include/boost/algorithm/searching/detail
+#usr/include/boost/algorithm/searching/detail/bm_traits.hpp
+#usr/include/boost/algorithm/searching/detail/debugging.hpp
+#usr/include/boost/algorithm/searching/knuth_morris_pratt.hpp
+#usr/include/boost/algorithm/string
+#usr/include/boost/algorithm/string.hpp
+#usr/include/boost/algorithm/string/case_conv.hpp
+#usr/include/boost/algorithm/string/classification.hpp
+#usr/include/boost/algorithm/string/compare.hpp
+#usr/include/boost/algorithm/string/concept.hpp
+#usr/include/boost/algorithm/string/config.hpp
+#usr/include/boost/algorithm/string/constants.hpp
+#usr/include/boost/algorithm/string/detail
+#usr/include/boost/algorithm/string/detail/case_conv.hpp
+#usr/include/boost/algorithm/string/detail/classification.hpp
+#usr/include/boost/algorithm/string/detail/find_format.hpp
+#usr/include/boost/algorithm/string/detail/find_format_all.hpp
+#usr/include/boost/algorithm/string/detail/find_format_store.hpp
+#usr/include/boost/algorithm/string/detail/find_iterator.hpp
+#usr/include/boost/algorithm/string/detail/finder.hpp
+#usr/include/boost/algorithm/string/detail/finder_regex.hpp
+#usr/include/boost/algorithm/string/detail/formatter.hpp
+#usr/include/boost/algorithm/string/detail/formatter_regex.hpp
+#usr/include/boost/algorithm/string/detail/predicate.hpp
+#usr/include/boost/algorithm/string/detail/replace_storage.hpp
+#usr/include/boost/algorithm/string/detail/sequence.hpp
+#usr/include/boost/algorithm/string/detail/trim.hpp
+#usr/include/boost/algorithm/string/detail/util.hpp
+#usr/include/boost/algorithm/string/erase.hpp
+#usr/include/boost/algorithm/string/find.hpp
+#usr/include/boost/algorithm/string/find_format.hpp
+#usr/include/boost/algorithm/string/find_iterator.hpp
+#usr/include/boost/algorithm/string/finder.hpp
+#usr/include/boost/algorithm/string/formatter.hpp
+#usr/include/boost/algorithm/string/iter_find.hpp
+#usr/include/boost/algorithm/string/join.hpp
+#usr/include/boost/algorithm/string/predicate.hpp
+#usr/include/boost/algorithm/string/predicate_facade.hpp
+#usr/include/boost/algorithm/string/regex.hpp
+#usr/include/boost/algorithm/string/regex_find_format.hpp
+#usr/include/boost/algorithm/string/replace.hpp
+#usr/include/boost/algorithm/string/sequence_traits.hpp
+#usr/include/boost/algorithm/string/split.hpp
+#usr/include/boost/algorithm/string/std
+#usr/include/boost/algorithm/string/std/list_traits.hpp
+#usr/include/boost/algorithm/string/std/rope_traits.hpp
+#usr/include/boost/algorithm/string/std/slist_traits.hpp
+#usr/include/boost/algorithm/string/std/string_traits.hpp
+#usr/include/boost/algorithm/string/std_containers_traits.hpp
+#usr/include/boost/algorithm/string/trim.hpp
+#usr/include/boost/algorithm/string/trim_all.hpp
+#usr/include/boost/algorithm/string/yes_no_type.hpp
+#usr/include/boost/algorithm/string_regex.hpp
+#usr/include/boost/aligned_storage.hpp
+#usr/include/boost/any.hpp
+#usr/include/boost/archive
+#usr/include/boost/archive/add_facet.hpp
+#usr/include/boost/archive/archive_exception.hpp
+#usr/include/boost/archive/basic_archive.hpp
+#usr/include/boost/archive/basic_binary_iarchive.hpp
+#usr/include/boost/archive/basic_binary_iprimitive.hpp
+#usr/include/boost/archive/basic_binary_oarchive.hpp
+#usr/include/boost/archive/basic_binary_oprimitive.hpp
+#usr/include/boost/archive/basic_streambuf_locale_saver.hpp
+#usr/include/boost/archive/basic_text_iarchive.hpp
+#usr/include/boost/archive/basic_text_iprimitive.hpp
+#usr/include/boost/archive/basic_text_oarchive.hpp
+#usr/include/boost/archive/basic_text_oprimitive.hpp
+#usr/include/boost/archive/basic_xml_archive.hpp
+#usr/include/boost/archive/basic_xml_iarchive.hpp
+#usr/include/boost/archive/basic_xml_oarchive.hpp
+#usr/include/boost/archive/binary_iarchive.hpp
+#usr/include/boost/archive/binary_iarchive_impl.hpp
+#usr/include/boost/archive/binary_oarchive.hpp
+#usr/include/boost/archive/binary_oarchive_impl.hpp
+#usr/include/boost/archive/binary_wiarchive.hpp
+#usr/include/boost/archive/binary_woarchive.hpp
+#usr/include/boost/archive/codecvt_null.hpp
+#usr/include/boost/archive/detail
+#usr/include/boost/archive/detail/abi_prefix.hpp
+#usr/include/boost/archive/detail/abi_suffix.hpp
+#usr/include/boost/archive/detail/archive_serializer_map.hpp
+#usr/include/boost/archive/detail/auto_link_archive.hpp
+#usr/include/boost/archive/detail/auto_link_warchive.hpp
+#usr/include/boost/archive/detail/basic_archive_impl.hpp
+#usr/include/boost/archive/detail/basic_config.hpp
+#usr/include/boost/archive/detail/basic_iarchive.hpp
+#usr/include/boost/archive/detail/basic_iserializer.hpp
+#usr/include/boost/archive/detail/basic_oarchive.hpp
+#usr/include/boost/archive/detail/basic_oserializer.hpp
+#usr/include/boost/archive/detail/basic_pointer_iserializer.hpp
+#usr/include/boost/archive/detail/basic_pointer_oserializer.hpp
+#usr/include/boost/archive/detail/basic_serializer.hpp
+#usr/include/boost/archive/detail/basic_serializer_map.hpp
+#usr/include/boost/archive/detail/check.hpp
+#usr/include/boost/archive/detail/common_iarchive.hpp
+#usr/include/boost/archive/detail/common_oarchive.hpp
+#usr/include/boost/archive/detail/decl.hpp
+#usr/include/boost/archive/detail/interface_iarchive.hpp
+#usr/include/boost/archive/detail/interface_oarchive.hpp
+#usr/include/boost/archive/detail/iserializer.hpp
+#usr/include/boost/archive/detail/oserializer.hpp
+#usr/include/boost/archive/detail/polymorphic_iarchive_route.hpp
+#usr/include/boost/archive/detail/polymorphic_oarchive_route.hpp
+#usr/include/boost/archive/detail/register_archive.hpp
+#usr/include/boost/archive/detail/utf8_codecvt_facet.hpp
+#usr/include/boost/archive/dinkumware.hpp
+#usr/include/boost/archive/impl
+#usr/include/boost/archive/impl/archive_serializer_map.ipp
+#usr/include/boost/archive/impl/basic_binary_iarchive.ipp
+#usr/include/boost/archive/impl/basic_binary_iprimitive.ipp
+#usr/include/boost/archive/impl/basic_binary_oarchive.ipp
+#usr/include/boost/archive/impl/basic_binary_oprimitive.ipp
+#usr/include/boost/archive/impl/basic_text_iarchive.ipp
+#usr/include/boost/archive/impl/basic_text_iprimitive.ipp
+#usr/include/boost/archive/impl/basic_text_oarchive.ipp
+#usr/include/boost/archive/impl/basic_text_oprimitive.ipp
+#usr/include/boost/archive/impl/basic_xml_grammar.hpp
+#usr/include/boost/archive/impl/basic_xml_iarchive.ipp
+#usr/include/boost/archive/impl/basic_xml_oarchive.ipp
+#usr/include/boost/archive/impl/text_iarchive_impl.ipp
+#usr/include/boost/archive/impl/text_oarchive_impl.ipp
+#usr/include/boost/archive/impl/text_wiarchive_impl.ipp
+#usr/include/boost/archive/impl/text_woarchive_impl.ipp
+#usr/include/boost/archive/impl/xml_iarchive_impl.ipp
+#usr/include/boost/archive/impl/xml_oarchive_impl.ipp
+#usr/include/boost/archive/impl/xml_wiarchive_impl.ipp
+#usr/include/boost/archive/impl/xml_woarchive_impl.ipp
+#usr/include/boost/archive/iterators
+#usr/include/boost/archive/iterators/base64_exception.hpp
+#usr/include/boost/archive/iterators/base64_from_binary.hpp
+#usr/include/boost/archive/iterators/binary_from_base64.hpp
+#usr/include/boost/archive/iterators/dataflow.hpp
+#usr/include/boost/archive/iterators/dataflow_exception.hpp
+#usr/include/boost/archive/iterators/escape.hpp
+#usr/include/boost/archive/iterators/head_iterator.hpp
+#usr/include/boost/archive/iterators/insert_linebreaks.hpp
+#usr/include/boost/archive/iterators/istream_iterator.hpp
+#usr/include/boost/archive/iterators/mb_from_wchar.hpp
+#usr/include/boost/archive/iterators/ostream_iterator.hpp
+#usr/include/boost/archive/iterators/remove_whitespace.hpp
+#usr/include/boost/archive/iterators/transform_width.hpp
+#usr/include/boost/archive/iterators/unescape.hpp
+#usr/include/boost/archive/iterators/wchar_from_mb.hpp
+#usr/include/boost/archive/iterators/xml_escape.hpp
+#usr/include/boost/archive/iterators/xml_unescape.hpp
+#usr/include/boost/archive/iterators/xml_unescape_exception.hpp
+#usr/include/boost/archive/polymorphic_binary_iarchive.hpp
+#usr/include/boost/archive/polymorphic_binary_oarchive.hpp
+#usr/include/boost/archive/polymorphic_iarchive.hpp
+#usr/include/boost/archive/polymorphic_oarchive.hpp
+#usr/include/boost/archive/polymorphic_text_iarchive.hpp
+#usr/include/boost/archive/polymorphic_text_oarchive.hpp
+#usr/include/boost/archive/polymorphic_text_wiarchive.hpp
+#usr/include/boost/archive/polymorphic_text_woarchive.hpp
+#usr/include/boost/archive/polymorphic_xml_iarchive.hpp
+#usr/include/boost/archive/polymorphic_xml_oarchive.hpp
+#usr/include/boost/archive/polymorphic_xml_wiarchive.hpp
+#usr/include/boost/archive/polymorphic_xml_woarchive.hpp
+#usr/include/boost/archive/shared_ptr_helper.hpp
+#usr/include/boost/archive/text_iarchive.hpp
+#usr/include/boost/archive/text_oarchive.hpp
+#usr/include/boost/archive/text_wiarchive.hpp
+#usr/include/boost/archive/text_woarchive.hpp
+#usr/include/boost/archive/tmpdir.hpp
+#usr/include/boost/archive/wcslen.hpp
+#usr/include/boost/archive/xml_archive_exception.hpp
+#usr/include/boost/archive/xml_iarchive.hpp
+#usr/include/boost/archive/xml_oarchive.hpp
+#usr/include/boost/archive/xml_wiarchive.hpp
+#usr/include/boost/archive/xml_woarchive.hpp
+#usr/include/boost/array.hpp
+#usr/include/boost/asio
+#usr/include/boost/asio.hpp
+#usr/include/boost/asio/async_result.hpp
+#usr/include/boost/asio/basic_datagram_socket.hpp
+#usr/include/boost/asio/basic_deadline_timer.hpp
+#usr/include/boost/asio/basic_io_object.hpp
+#usr/include/boost/asio/basic_raw_socket.hpp
+#usr/include/boost/asio/basic_seq_packet_socket.hpp
+#usr/include/boost/asio/basic_serial_port.hpp
+#usr/include/boost/asio/basic_signal_set.hpp
+#usr/include/boost/asio/basic_socket.hpp
+#usr/include/boost/asio/basic_socket_acceptor.hpp
+#usr/include/boost/asio/basic_socket_iostream.hpp
+#usr/include/boost/asio/basic_socket_streambuf.hpp
+#usr/include/boost/asio/basic_stream_socket.hpp
+#usr/include/boost/asio/basic_streambuf.hpp
+#usr/include/boost/asio/basic_streambuf_fwd.hpp
+#usr/include/boost/asio/basic_waitable_timer.hpp
+#usr/include/boost/asio/buffer.hpp
+#usr/include/boost/asio/buffered_read_stream.hpp
+#usr/include/boost/asio/buffered_read_stream_fwd.hpp
+#usr/include/boost/asio/buffered_stream.hpp
+#usr/include/boost/asio/buffered_stream_fwd.hpp
+#usr/include/boost/asio/buffered_write_stream.hpp
+#usr/include/boost/asio/buffered_write_stream_fwd.hpp
+#usr/include/boost/asio/buffers_iterator.hpp
+#usr/include/boost/asio/completion_condition.hpp
+#usr/include/boost/asio/connect.hpp
+#usr/include/boost/asio/coroutine.hpp
+#usr/include/boost/asio/datagram_socket_service.hpp
+#usr/include/boost/asio/deadline_timer.hpp
+#usr/include/boost/asio/deadline_timer_service.hpp
+#usr/include/boost/asio/detail
+#usr/include/boost/asio/detail/addressof.hpp
+#usr/include/boost/asio/detail/array.hpp
+#usr/include/boost/asio/detail/array_fwd.hpp
+#usr/include/boost/asio/detail/assert.hpp
+#usr/include/boost/asio/detail/atomic_count.hpp
+#usr/include/boost/asio/detail/base_from_completion_cond.hpp
+#usr/include/boost/asio/detail/bind_handler.hpp
+#usr/include/boost/asio/detail/buffer_resize_guard.hpp
+#usr/include/boost/asio/detail/buffer_sequence_adapter.hpp
+#usr/include/boost/asio/detail/buffered_stream_storage.hpp
+#usr/include/boost/asio/detail/call_stack.hpp
+#usr/include/boost/asio/detail/chrono_time_traits.hpp
+#usr/include/boost/asio/detail/completion_handler.hpp
+#usr/include/boost/asio/detail/config.hpp
+#usr/include/boost/asio/detail/consuming_buffers.hpp
+#usr/include/boost/asio/detail/cstdint.hpp
+#usr/include/boost/asio/detail/date_time_fwd.hpp
+#usr/include/boost/asio/detail/deadline_timer_service.hpp
+#usr/include/boost/asio/detail/dependent_type.hpp
+#usr/include/boost/asio/detail/descriptor_ops.hpp
+#usr/include/boost/asio/detail/descriptor_read_op.hpp
+#usr/include/boost/asio/detail/descriptor_write_op.hpp
+#usr/include/boost/asio/detail/dev_poll_reactor.hpp
+#usr/include/boost/asio/detail/epoll_reactor.hpp
+#usr/include/boost/asio/detail/event.hpp
+#usr/include/boost/asio/detail/eventfd_select_interrupter.hpp
+#usr/include/boost/asio/detail/fd_set_adapter.hpp
+#usr/include/boost/asio/detail/fenced_block.hpp
+#usr/include/boost/asio/detail/function.hpp
+#usr/include/boost/asio/detail/gcc_arm_fenced_block.hpp
+#usr/include/boost/asio/detail/gcc_hppa_fenced_block.hpp
+#usr/include/boost/asio/detail/gcc_sync_fenced_block.hpp
+#usr/include/boost/asio/detail/gcc_x86_fenced_block.hpp
+#usr/include/boost/asio/detail/handler_alloc_helpers.hpp
+#usr/include/boost/asio/detail/handler_cont_helpers.hpp
+#usr/include/boost/asio/detail/handler_invoke_helpers.hpp
+#usr/include/boost/asio/detail/handler_tracking.hpp
+#usr/include/boost/asio/detail/handler_type_requirements.hpp
+#usr/include/boost/asio/detail/hash_map.hpp
+#usr/include/boost/asio/detail/impl
+#usr/include/boost/asio/detail/impl/buffer_sequence_adapter.ipp
+#usr/include/boost/asio/detail/impl/descriptor_ops.ipp
+#usr/include/boost/asio/detail/impl/dev_poll_reactor.hpp
+#usr/include/boost/asio/detail/impl/dev_poll_reactor.ipp
+#usr/include/boost/asio/detail/impl/epoll_reactor.hpp
+#usr/include/boost/asio/detail/impl/epoll_reactor.ipp
+#usr/include/boost/asio/detail/impl/eventfd_select_interrupter.ipp
+#usr/include/boost/asio/detail/impl/handler_tracking.ipp
+#usr/include/boost/asio/detail/impl/kqueue_reactor.hpp
+#usr/include/boost/asio/detail/impl/kqueue_reactor.ipp
+#usr/include/boost/asio/detail/impl/pipe_select_interrupter.ipp
+#usr/include/boost/asio/detail/impl/posix_event.ipp
+#usr/include/boost/asio/detail/impl/posix_mutex.ipp
+#usr/include/boost/asio/detail/impl/posix_thread.ipp
+#usr/include/boost/asio/detail/impl/posix_tss_ptr.ipp
+#usr/include/boost/asio/detail/impl/reactive_descriptor_service.ipp
+#usr/include/boost/asio/detail/impl/reactive_serial_port_service.ipp
+#usr/include/boost/asio/detail/impl/reactive_socket_service_base.ipp
+#usr/include/boost/asio/detail/impl/resolver_service_base.ipp
+#usr/include/boost/asio/detail/impl/select_reactor.hpp
+#usr/include/boost/asio/detail/impl/select_reactor.ipp
+#usr/include/boost/asio/detail/impl/service_registry.hpp
+#usr/include/boost/asio/detail/impl/service_registry.ipp
+#usr/include/boost/asio/detail/impl/signal_set_service.ipp
+#usr/include/boost/asio/detail/impl/socket_ops.ipp
+#usr/include/boost/asio/detail/impl/socket_select_interrupter.ipp
+#usr/include/boost/asio/detail/impl/strand_service.hpp
+#usr/include/boost/asio/detail/impl/strand_service.ipp
+#usr/include/boost/asio/detail/impl/task_io_service.hpp
+#usr/include/boost/asio/detail/impl/task_io_service.ipp
+#usr/include/boost/asio/detail/impl/throw_error.ipp
+#usr/include/boost/asio/detail/impl/timer_queue_ptime.ipp
+#usr/include/boost/asio/detail/impl/timer_queue_set.ipp
+#usr/include/boost/asio/detail/impl/win_event.ipp
+#usr/include/boost/asio/detail/impl/win_iocp_handle_service.ipp
+#usr/include/boost/asio/detail/impl/win_iocp_io_service.hpp
+#usr/include/boost/asio/detail/impl/win_iocp_io_service.ipp
+#usr/include/boost/asio/detail/impl/win_iocp_serial_port_service.ipp
+#usr/include/boost/asio/detail/impl/win_iocp_socket_service_base.ipp
+#usr/include/boost/asio/detail/impl/win_mutex.ipp
+#usr/include/boost/asio/detail/impl/win_object_handle_service.ipp
+#usr/include/boost/asio/detail/impl/win_static_mutex.ipp
+#usr/include/boost/asio/detail/impl/win_thread.ipp
+#usr/include/boost/asio/detail/impl/win_tss_ptr.ipp
+#usr/include/boost/asio/detail/impl/winrt_ssocket_service_base.ipp
+#usr/include/boost/asio/detail/impl/winrt_timer_scheduler.hpp
+#usr/include/boost/asio/detail/impl/winrt_timer_scheduler.ipp
+#usr/include/boost/asio/detail/impl/winsock_init.ipp
+#usr/include/boost/asio/detail/io_control.hpp
+#usr/include/boost/asio/detail/keyword_tss_ptr.hpp
+#usr/include/boost/asio/detail/kqueue_reactor.hpp
+#usr/include/boost/asio/detail/limits.hpp
+#usr/include/boost/asio/detail/local_free_on_block_exit.hpp
+#usr/include/boost/asio/detail/macos_fenced_block.hpp
+#usr/include/boost/asio/detail/mutex.hpp
+#usr/include/boost/asio/detail/noncopyable.hpp
+#usr/include/boost/asio/detail/null_event.hpp
+#usr/include/boost/asio/detail/null_fenced_block.hpp
+#usr/include/boost/asio/detail/null_mutex.hpp
+#usr/include/boost/asio/detail/null_reactor.hpp
+#usr/include/boost/asio/detail/null_signal_blocker.hpp
+#usr/include/boost/asio/detail/null_socket_service.hpp
+#usr/include/boost/asio/detail/null_static_mutex.hpp
+#usr/include/boost/asio/detail/null_thread.hpp
+#usr/include/boost/asio/detail/null_tss_ptr.hpp
+#usr/include/boost/asio/detail/object_pool.hpp
+#usr/include/boost/asio/detail/old_win_sdk_compat.hpp
+#usr/include/boost/asio/detail/op_queue.hpp
+#usr/include/boost/asio/detail/operation.hpp
+#usr/include/boost/asio/detail/pipe_select_interrupter.hpp
+#usr/include/boost/asio/detail/pop_options.hpp
+#usr/include/boost/asio/detail/posix_event.hpp
+#usr/include/boost/asio/detail/posix_fd_set_adapter.hpp
+#usr/include/boost/asio/detail/posix_mutex.hpp
+#usr/include/boost/asio/detail/posix_signal_blocker.hpp
+#usr/include/boost/asio/detail/posix_static_mutex.hpp
+#usr/include/boost/asio/detail/posix_thread.hpp
+#usr/include/boost/asio/detail/posix_tss_ptr.hpp
+#usr/include/boost/asio/detail/push_options.hpp
+#usr/include/boost/asio/detail/reactive_descriptor_service.hpp
+#usr/include/boost/asio/detail/reactive_null_buffers_op.hpp
+#usr/include/boost/asio/detail/reactive_serial_port_service.hpp
+#usr/include/boost/asio/detail/reactive_socket_accept_op.hpp
+#usr/include/boost/asio/detail/reactive_socket_connect_op.hpp
+#usr/include/boost/asio/detail/reactive_socket_recv_op.hpp
+#usr/include/boost/asio/detail/reactive_socket_recvfrom_op.hpp
+#usr/include/boost/asio/detail/reactive_socket_recvmsg_op.hpp
+#usr/include/boost/asio/detail/reactive_socket_send_op.hpp
+#usr/include/boost/asio/detail/reactive_socket_sendto_op.hpp
+#usr/include/boost/asio/detail/reactive_socket_service.hpp
+#usr/include/boost/asio/detail/reactive_socket_service_base.hpp
+#usr/include/boost/asio/detail/reactor.hpp
+#usr/include/boost/asio/detail/reactor_fwd.hpp
+#usr/include/boost/asio/detail/reactor_op.hpp
+#usr/include/boost/asio/detail/reactor_op_queue.hpp
+#usr/include/boost/asio/detail/regex_fwd.hpp
+#usr/include/boost/asio/detail/resolve_endpoint_op.hpp
+#usr/include/boost/asio/detail/resolve_op.hpp
+#usr/include/boost/asio/detail/resolver_service.hpp
+#usr/include/boost/asio/detail/resolver_service_base.hpp
+#usr/include/boost/asio/detail/scoped_lock.hpp
+#usr/include/boost/asio/detail/scoped_ptr.hpp
+#usr/include/boost/asio/detail/select_interrupter.hpp
+#usr/include/boost/asio/detail/select_reactor.hpp
+#usr/include/boost/asio/detail/service_registry.hpp
+#usr/include/boost/asio/detail/shared_ptr.hpp
+#usr/include/boost/asio/detail/signal_blocker.hpp
+#usr/include/boost/asio/detail/signal_handler.hpp
+#usr/include/boost/asio/detail/signal_init.hpp
+#usr/include/boost/asio/detail/signal_op.hpp
+#usr/include/boost/asio/detail/signal_set_service.hpp
+#usr/include/boost/asio/detail/socket_holder.hpp
+#usr/include/boost/asio/detail/socket_ops.hpp
+#usr/include/boost/asio/detail/socket_option.hpp
+#usr/include/boost/asio/detail/socket_select_interrupter.hpp
+#usr/include/boost/asio/detail/socket_types.hpp
+#usr/include/boost/asio/detail/solaris_fenced_block.hpp
+#usr/include/boost/asio/detail/static_mutex.hpp
+#usr/include/boost/asio/detail/std_event.hpp
+#usr/include/boost/asio/detail/std_mutex.hpp
+#usr/include/boost/asio/detail/std_static_mutex.hpp
+#usr/include/boost/asio/detail/std_thread.hpp
+#usr/include/boost/asio/detail/strand_service.hpp
+#usr/include/boost/asio/detail/task_io_service.hpp
+#usr/include/boost/asio/detail/task_io_service_operation.hpp
+#usr/include/boost/asio/detail/task_io_service_thread_info.hpp
+#usr/include/boost/asio/detail/thread.hpp
+#usr/include/boost/asio/detail/thread_info_base.hpp
+#usr/include/boost/asio/detail/throw_error.hpp
+#usr/include/boost/asio/detail/throw_exception.hpp
+#usr/include/boost/asio/detail/timer_queue.hpp
+#usr/include/boost/asio/detail/timer_queue_base.hpp
+#usr/include/boost/asio/detail/timer_queue_ptime.hpp
+#usr/include/boost/asio/detail/timer_queue_set.hpp
+#usr/include/boost/asio/detail/timer_scheduler.hpp
+#usr/include/boost/asio/detail/timer_scheduler_fwd.hpp
+#usr/include/boost/asio/detail/tss_ptr.hpp
+#usr/include/boost/asio/detail/type_traits.hpp
+#usr/include/boost/asio/detail/variadic_templates.hpp
+#usr/include/boost/asio/detail/wait_handler.hpp
+#usr/include/boost/asio/detail/wait_op.hpp
+#usr/include/boost/asio/detail/weak_ptr.hpp
+#usr/include/boost/asio/detail/win_event.hpp
+#usr/include/boost/asio/detail/win_fd_set_adapter.hpp
+#usr/include/boost/asio/detail/win_fenced_block.hpp
+#usr/include/boost/asio/detail/win_iocp_handle_read_op.hpp
+#usr/include/boost/asio/detail/win_iocp_handle_service.hpp
+#usr/include/boost/asio/detail/win_iocp_handle_write_op.hpp
+#usr/include/boost/asio/detail/win_iocp_io_service.hpp
+#usr/include/boost/asio/detail/win_iocp_null_buffers_op.hpp
+#usr/include/boost/asio/detail/win_iocp_operation.hpp
+#usr/include/boost/asio/detail/win_iocp_overlapped_op.hpp
+#usr/include/boost/asio/detail/win_iocp_overlapped_ptr.hpp
+#usr/include/boost/asio/detail/win_iocp_serial_port_service.hpp
+#usr/include/boost/asio/detail/win_iocp_socket_accept_op.hpp
+#usr/include/boost/asio/detail/win_iocp_socket_recv_op.hpp
+#usr/include/boost/asio/detail/win_iocp_socket_recvfrom_op.hpp
+#usr/include/boost/asio/detail/win_iocp_socket_recvmsg_op.hpp
+#usr/include/boost/asio/detail/win_iocp_socket_send_op.hpp
+#usr/include/boost/asio/detail/win_iocp_socket_service.hpp
+#usr/include/boost/asio/detail/win_iocp_socket_service_base.hpp
+#usr/include/boost/asio/detail/win_iocp_thread_info.hpp
+#usr/include/boost/asio/detail/win_mutex.hpp
+#usr/include/boost/asio/detail/win_object_handle_service.hpp
+#usr/include/boost/asio/detail/win_static_mutex.hpp
+#usr/include/boost/asio/detail/win_thread.hpp
+#usr/include/boost/asio/detail/win_tss_ptr.hpp
+#usr/include/boost/asio/detail/wince_thread.hpp
+#usr/include/boost/asio/detail/winrt_async_manager.hpp
+#usr/include/boost/asio/detail/winrt_async_op.hpp
+#usr/include/boost/asio/detail/winrt_resolve_op.hpp
+#usr/include/boost/asio/detail/winrt_resolver_service.hpp
+#usr/include/boost/asio/detail/winrt_socket_connect_op.hpp
+#usr/include/boost/asio/detail/winrt_socket_recv_op.hpp
+#usr/include/boost/asio/detail/winrt_socket_send_op.hpp
+#usr/include/boost/asio/detail/winrt_ssocket_service.hpp
+#usr/include/boost/asio/detail/winrt_ssocket_service_base.hpp
+#usr/include/boost/asio/detail/winrt_timer_scheduler.hpp
+#usr/include/boost/asio/detail/winrt_utils.hpp
+#usr/include/boost/asio/detail/winsock_init.hpp
+#usr/include/boost/asio/detail/wrapped_handler.hpp
+#usr/include/boost/asio/error.hpp
+#usr/include/boost/asio/generic
+#usr/include/boost/asio/generic/basic_endpoint.hpp
+#usr/include/boost/asio/generic/datagram_protocol.hpp
+#usr/include/boost/asio/generic/detail
+#usr/include/boost/asio/generic/detail/endpoint.hpp
+#usr/include/boost/asio/generic/detail/impl
+#usr/include/boost/asio/generic/detail/impl/endpoint.ipp
+#usr/include/boost/asio/generic/raw_protocol.hpp
+#usr/include/boost/asio/generic/seq_packet_protocol.hpp
+#usr/include/boost/asio/generic/stream_protocol.hpp
+#usr/include/boost/asio/handler_alloc_hook.hpp
+#usr/include/boost/asio/handler_continuation_hook.hpp
+#usr/include/boost/asio/handler_invoke_hook.hpp
+#usr/include/boost/asio/handler_type.hpp
+#usr/include/boost/asio/high_resolution_timer.hpp
+#usr/include/boost/asio/impl
+#usr/include/boost/asio/impl/buffered_read_stream.hpp
+#usr/include/boost/asio/impl/buffered_write_stream.hpp
+#usr/include/boost/asio/impl/connect.hpp
+#usr/include/boost/asio/impl/error.ipp
+#usr/include/boost/asio/impl/handler_alloc_hook.ipp
+#usr/include/boost/asio/impl/io_service.hpp
+#usr/include/boost/asio/impl/io_service.ipp
+#usr/include/boost/asio/impl/read.hpp
+#usr/include/boost/asio/impl/read_at.hpp
+#usr/include/boost/asio/impl/read_until.hpp
+#usr/include/boost/asio/impl/serial_port_base.hpp
+#usr/include/boost/asio/impl/serial_port_base.ipp
+#usr/include/boost/asio/impl/spawn.hpp
+#usr/include/boost/asio/impl/src.hpp
+#usr/include/boost/asio/impl/use_future.hpp
+#usr/include/boost/asio/impl/write.hpp
+#usr/include/boost/asio/impl/write_at.hpp
+#usr/include/boost/asio/io_service.hpp
+#usr/include/boost/asio/ip
+#usr/include/boost/asio/ip/address.hpp
+#usr/include/boost/asio/ip/address_v4.hpp
+#usr/include/boost/asio/ip/address_v6.hpp
+#usr/include/boost/asio/ip/basic_endpoint.hpp
+#usr/include/boost/asio/ip/basic_resolver.hpp
+#usr/include/boost/asio/ip/basic_resolver_entry.hpp
+#usr/include/boost/asio/ip/basic_resolver_iterator.hpp
+#usr/include/boost/asio/ip/basic_resolver_query.hpp
+#usr/include/boost/asio/ip/detail
+#usr/include/boost/asio/ip/detail/endpoint.hpp
+#usr/include/boost/asio/ip/detail/impl
+#usr/include/boost/asio/ip/detail/impl/endpoint.ipp
+#usr/include/boost/asio/ip/detail/socket_option.hpp
+#usr/include/boost/asio/ip/host_name.hpp
+#usr/include/boost/asio/ip/icmp.hpp
+#usr/include/boost/asio/ip/impl
+#usr/include/boost/asio/ip/impl/address.hpp
+#usr/include/boost/asio/ip/impl/address.ipp
+#usr/include/boost/asio/ip/impl/address_v4.hpp
+#usr/include/boost/asio/ip/impl/address_v4.ipp
+#usr/include/boost/asio/ip/impl/address_v6.hpp
+#usr/include/boost/asio/ip/impl/address_v6.ipp
+#usr/include/boost/asio/ip/impl/basic_endpoint.hpp
+#usr/include/boost/asio/ip/impl/host_name.ipp
+#usr/include/boost/asio/ip/multicast.hpp
+#usr/include/boost/asio/ip/resolver_query_base.hpp
+#usr/include/boost/asio/ip/resolver_service.hpp
+#usr/include/boost/asio/ip/tcp.hpp
+#usr/include/boost/asio/ip/udp.hpp
+#usr/include/boost/asio/ip/unicast.hpp
+#usr/include/boost/asio/ip/v6_only.hpp
+#usr/include/boost/asio/is_read_buffered.hpp
+#usr/include/boost/asio/is_write_buffered.hpp
+#usr/include/boost/asio/local
+#usr/include/boost/asio/local/basic_endpoint.hpp
+#usr/include/boost/asio/local/connect_pair.hpp
+#usr/include/boost/asio/local/datagram_protocol.hpp
+#usr/include/boost/asio/local/detail
+#usr/include/boost/asio/local/detail/endpoint.hpp
+#usr/include/boost/asio/local/detail/impl
+#usr/include/boost/asio/local/detail/impl/endpoint.ipp
+#usr/include/boost/asio/local/stream_protocol.hpp
+#usr/include/boost/asio/placeholders.hpp
+#usr/include/boost/asio/posix
+#usr/include/boost/asio/posix/basic_descriptor.hpp
+#usr/include/boost/asio/posix/basic_stream_descriptor.hpp
+#usr/include/boost/asio/posix/descriptor_base.hpp
+#usr/include/boost/asio/posix/stream_descriptor.hpp
+#usr/include/boost/asio/posix/stream_descriptor_service.hpp
+#usr/include/boost/asio/raw_socket_service.hpp
+#usr/include/boost/asio/read.hpp
+#usr/include/boost/asio/read_at.hpp
+#usr/include/boost/asio/read_until.hpp
+#usr/include/boost/asio/seq_packet_socket_service.hpp
+#usr/include/boost/asio/serial_port.hpp
+#usr/include/boost/asio/serial_port_base.hpp
+#usr/include/boost/asio/serial_port_service.hpp
+#usr/include/boost/asio/signal_set.hpp
+#usr/include/boost/asio/signal_set_service.hpp
+#usr/include/boost/asio/socket_acceptor_service.hpp
+#usr/include/boost/asio/socket_base.hpp
+#usr/include/boost/asio/spawn.hpp
+#usr/include/boost/asio/ssl
+#usr/include/boost/asio/ssl.hpp
+#usr/include/boost/asio/ssl/basic_context.hpp
+#usr/include/boost/asio/ssl/context.hpp
+#usr/include/boost/asio/ssl/context_base.hpp
+#usr/include/boost/asio/ssl/context_service.hpp
+#usr/include/boost/asio/ssl/detail
+#usr/include/boost/asio/ssl/detail/buffered_handshake_op.hpp
+#usr/include/boost/asio/ssl/detail/engine.hpp
+#usr/include/boost/asio/ssl/detail/handshake_op.hpp
+#usr/include/boost/asio/ssl/detail/impl
+#usr/include/boost/asio/ssl/detail/impl/engine.ipp
+#usr/include/boost/asio/ssl/detail/impl/openssl_init.ipp
+#usr/include/boost/asio/ssl/detail/io.hpp
+#usr/include/boost/asio/ssl/detail/openssl_init.hpp
+#usr/include/boost/asio/ssl/detail/openssl_types.hpp
+#usr/include/boost/asio/ssl/detail/password_callback.hpp
+#usr/include/boost/asio/ssl/detail/read_op.hpp
+#usr/include/boost/asio/ssl/detail/shutdown_op.hpp
+#usr/include/boost/asio/ssl/detail/stream_core.hpp
+#usr/include/boost/asio/ssl/detail/verify_callback.hpp
+#usr/include/boost/asio/ssl/detail/write_op.hpp
+#usr/include/boost/asio/ssl/error.hpp
+#usr/include/boost/asio/ssl/impl
+#usr/include/boost/asio/ssl/impl/context.hpp
+#usr/include/boost/asio/ssl/impl/context.ipp
+#usr/include/boost/asio/ssl/impl/error.ipp
+#usr/include/boost/asio/ssl/impl/rfc2818_verification.ipp
+#usr/include/boost/asio/ssl/impl/src.hpp
+#usr/include/boost/asio/ssl/old
+#usr/include/boost/asio/ssl/old/basic_context.hpp
+#usr/include/boost/asio/ssl/old/context_service.hpp
+#usr/include/boost/asio/ssl/old/detail
+#usr/include/boost/asio/ssl/old/detail/openssl_context_service.hpp
+#usr/include/boost/asio/ssl/old/detail/openssl_operation.hpp
+#usr/include/boost/asio/ssl/old/detail/openssl_stream_service.hpp
+#usr/include/boost/asio/ssl/old/stream.hpp
+#usr/include/boost/asio/ssl/old/stream_service.hpp
+#usr/include/boost/asio/ssl/rfc2818_verification.hpp
+#usr/include/boost/asio/ssl/stream.hpp
+#usr/include/boost/asio/ssl/stream_base.hpp
+#usr/include/boost/asio/ssl/stream_service.hpp
+#usr/include/boost/asio/ssl/verify_context.hpp
+#usr/include/boost/asio/ssl/verify_mode.hpp
+#usr/include/boost/asio/steady_timer.hpp
+#usr/include/boost/asio/strand.hpp
+#usr/include/boost/asio/stream_socket_service.hpp
+#usr/include/boost/asio/streambuf.hpp
+#usr/include/boost/asio/system_timer.hpp
+#usr/include/boost/asio/time_traits.hpp
+#usr/include/boost/asio/unyield.hpp
+#usr/include/boost/asio/use_future.hpp
+#usr/include/boost/asio/version.hpp
+#usr/include/boost/asio/wait_traits.hpp
+#usr/include/boost/asio/waitable_timer_service.hpp
+#usr/include/boost/asio/windows
+#usr/include/boost/asio/windows/basic_handle.hpp
+#usr/include/boost/asio/windows/basic_object_handle.hpp
+#usr/include/boost/asio/windows/basic_random_access_handle.hpp
+#usr/include/boost/asio/windows/basic_stream_handle.hpp
+#usr/include/boost/asio/windows/object_handle.hpp
+#usr/include/boost/asio/windows/object_handle_service.hpp
+#usr/include/boost/asio/windows/overlapped_ptr.hpp
+#usr/include/boost/asio/windows/random_access_handle.hpp
+#usr/include/boost/asio/windows/random_access_handle_service.hpp
+#usr/include/boost/asio/windows/stream_handle.hpp
+#usr/include/boost/asio/windows/stream_handle_service.hpp
+#usr/include/boost/asio/write.hpp
+#usr/include/boost/asio/write_at.hpp
+#usr/include/boost/asio/yield.hpp
+#usr/include/boost/assert.hpp
+#usr/include/boost/assign
+#usr/include/boost/assign.hpp
+#usr/include/boost/assign/assignment_exception.hpp
+#usr/include/boost/assign/list_inserter.hpp
+#usr/include/boost/assign/list_of.hpp
+#usr/include/boost/assign/ptr_list_inserter.hpp
+#usr/include/boost/assign/ptr_list_of.hpp
+#usr/include/boost/assign/ptr_map_inserter.hpp
+#usr/include/boost/assign/std
+#usr/include/boost/assign/std.hpp
+#usr/include/boost/assign/std/deque.hpp
+#usr/include/boost/assign/std/list.hpp
+#usr/include/boost/assign/std/map.hpp
+#usr/include/boost/assign/std/queue.hpp
+#usr/include/boost/assign/std/set.hpp
+#usr/include/boost/assign/std/slist.hpp
+#usr/include/boost/assign/std/stack.hpp
+#usr/include/boost/assign/std/vector.hpp
+#usr/include/boost/atomic
+#usr/include/boost/atomic.hpp
+#usr/include/boost/atomic/atomic.hpp
+#usr/include/boost/atomic/detail
+#usr/include/boost/atomic/detail/base.hpp
+#usr/include/boost/atomic/detail/cas128strong.hpp
+#usr/include/boost/atomic/detail/cas32strong.hpp
+#usr/include/boost/atomic/detail/cas32weak.hpp
+#usr/include/boost/atomic/detail/cas64strong-ptr.hpp
+#usr/include/boost/atomic/detail/cas64strong.hpp
+#usr/include/boost/atomic/detail/config.hpp
+#usr/include/boost/atomic/detail/gcc-alpha.hpp
+#usr/include/boost/atomic/detail/gcc-armv6plus.hpp
+#usr/include/boost/atomic/detail/gcc-atomic.hpp
+#usr/include/boost/atomic/detail/gcc-cas.hpp
+#usr/include/boost/atomic/detail/gcc-ppc.hpp
+#usr/include/boost/atomic/detail/gcc-sparcv9.hpp
+#usr/include/boost/atomic/detail/gcc-x86.hpp
+#usr/include/boost/atomic/detail/generic-cas.hpp
+#usr/include/boost/atomic/detail/interlocked.hpp
+#usr/include/boost/atomic/detail/link.hpp
+#usr/include/boost/atomic/detail/linux-arm.hpp
+#usr/include/boost/atomic/detail/lockpool.hpp
+#usr/include/boost/atomic/detail/platform.hpp
+#usr/include/boost/atomic/detail/type-classification.hpp
+#usr/include/boost/atomic/detail/windows.hpp
+#usr/include/boost/bimap
+#usr/include/boost/bimap.hpp
+#usr/include/boost/bimap/bimap.hpp
+#usr/include/boost/bimap/container_adaptor
+#usr/include/boost/bimap/container_adaptor/associative_container_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/container_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/detail
+#usr/include/boost/bimap/container_adaptor/detail/comparison_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/detail/functor_bag.hpp
+#usr/include/boost/bimap/container_adaptor/detail/identity_converters.hpp
+#usr/include/boost/bimap/container_adaptor/detail/key_extractor.hpp
+#usr/include/boost/bimap/container_adaptor/detail/non_unique_container_helper.hpp
+#usr/include/boost/bimap/container_adaptor/list_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/list_map_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/map_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/multimap_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/multiset_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/ordered_associative_container_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/sequence_container_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/set_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/support
+#usr/include/boost/bimap/container_adaptor/support/iterator_facade_converters.hpp
+#usr/include/boost/bimap/container_adaptor/unordered_associative_container_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/unordered_map_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/unordered_multimap_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/unordered_multiset_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/unordered_set_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/vector_adaptor.hpp
+#usr/include/boost/bimap/container_adaptor/vector_map_adaptor.hpp
+#usr/include/boost/bimap/detail
+#usr/include/boost/bimap/detail/bimap_core.hpp
+#usr/include/boost/bimap/detail/concept_tags.hpp
+#usr/include/boost/bimap/detail/debug
+#usr/include/boost/bimap/detail/debug/static_error.hpp
+#usr/include/boost/bimap/detail/generate_index_binder.hpp
+#usr/include/boost/bimap/detail/generate_relation_binder.hpp
+#usr/include/boost/bimap/detail/generate_view_binder.hpp
+#usr/include/boost/bimap/detail/is_set_type_of.hpp
+#usr/include/boost/bimap/detail/manage_additional_parameters.hpp
+#usr/include/boost/bimap/detail/manage_bimap_key.hpp
+#usr/include/boost/bimap/detail/map_view_base.hpp
+#usr/include/boost/bimap/detail/map_view_iterator.hpp
+#usr/include/boost/bimap/detail/modifier_adaptor.hpp
+#usr/include/boost/bimap/detail/non_unique_views_helper.hpp
+#usr/include/boost/bimap/detail/set_view_base.hpp
+#usr/include/boost/bimap/detail/set_view_iterator.hpp
+#usr/include/boost/bimap/detail/test
+#usr/include/boost/bimap/detail/test/check_metadata.hpp
+#usr/include/boost/bimap/detail/user_interface_config.hpp
+#usr/include/boost/bimap/list_of.hpp
+#usr/include/boost/bimap/multiset_of.hpp
+#usr/include/boost/bimap/property_map
+#usr/include/boost/bimap/property_map/set_support.hpp
+#usr/include/boost/bimap/property_map/unordered_set_support.hpp
+#usr/include/boost/bimap/relation
+#usr/include/boost/bimap/relation/detail
+#usr/include/boost/bimap/relation/detail/access_builder.hpp
+#usr/include/boost/bimap/relation/detail/metadata_access_builder.hpp
+#usr/include/boost/bimap/relation/detail/mutant.hpp
+#usr/include/boost/bimap/relation/detail/static_access_builder.hpp
+#usr/include/boost/bimap/relation/detail/to_mutable_relation_functor.hpp
+#usr/include/boost/bimap/relation/member_at.hpp
+#usr/include/boost/bimap/relation/mutant_relation.hpp
+#usr/include/boost/bimap/relation/pair_layout.hpp
+#usr/include/boost/bimap/relation/structured_pair.hpp
+#usr/include/boost/bimap/relation/support
+#usr/include/boost/bimap/relation/support/data_extractor.hpp
+#usr/include/boost/bimap/relation/support/get.hpp
+#usr/include/boost/bimap/relation/support/get_pair_functor.hpp
+#usr/include/boost/bimap/relation/support/is_tag_of_member_at.hpp
+#usr/include/boost/bimap/relation/support/member_with_tag.hpp
+#usr/include/boost/bimap/relation/support/opposite_tag.hpp
+#usr/include/boost/bimap/relation/support/pair_by.hpp
+#usr/include/boost/bimap/relation/support/pair_type_by.hpp
+#usr/include/boost/bimap/relation/support/value_type_of.hpp
+#usr/include/boost/bimap/relation/symmetrical_base.hpp
+#usr/include/boost/bimap/set_of.hpp
+#usr/include/boost/bimap/support
+#usr/include/boost/bimap/support/data_type_by.hpp
+#usr/include/boost/bimap/support/iterator_type_by.hpp
+#usr/include/boost/bimap/support/key_type_by.hpp
+#usr/include/boost/bimap/support/lambda.hpp
+#usr/include/boost/bimap/support/map_by.hpp
+#usr/include/boost/bimap/support/map_type_by.hpp
+#usr/include/boost/bimap/support/value_type_by.hpp
+#usr/include/boost/bimap/tags
+#usr/include/boost/bimap/tags/support
+#usr/include/boost/bimap/tags/support/apply_to_value_type.hpp
+#usr/include/boost/bimap/tags/support/default_tagged.hpp
+#usr/include/boost/bimap/tags/support/is_tagged.hpp
+#usr/include/boost/bimap/tags/support/overwrite_tagged.hpp
+#usr/include/boost/bimap/tags/support/tag_of.hpp
+#usr/include/boost/bimap/tags/support/value_type_of.hpp
+#usr/include/boost/bimap/tags/tagged.hpp
+#usr/include/boost/bimap/unconstrained_set_of.hpp
+#usr/include/boost/bimap/unordered_multiset_of.hpp
+#usr/include/boost/bimap/unordered_set_of.hpp
+#usr/include/boost/bimap/vector_of.hpp
+#usr/include/boost/bimap/views
+#usr/include/boost/bimap/views/list_map_view.hpp
+#usr/include/boost/bimap/views/list_set_view.hpp
+#usr/include/boost/bimap/views/map_view.hpp
+#usr/include/boost/bimap/views/multimap_view.hpp
+#usr/include/boost/bimap/views/multiset_view.hpp
+#usr/include/boost/bimap/views/set_view.hpp
+#usr/include/boost/bimap/views/unconstrained_map_view.hpp
+#usr/include/boost/bimap/views/unconstrained_set_view.hpp
+#usr/include/boost/bimap/views/unordered_map_view.hpp
+#usr/include/boost/bimap/views/unordered_multimap_view.hpp
+#usr/include/boost/bimap/views/unordered_multiset_view.hpp
+#usr/include/boost/bimap/views/unordered_set_view.hpp
+#usr/include/boost/bimap/views/vector_map_view.hpp
+#usr/include/boost/bimap/views/vector_set_view.hpp
+#usr/include/boost/bind
+#usr/include/boost/bind.hpp
+#usr/include/boost/bind/apply.hpp
+#usr/include/boost/bind/arg.hpp
+#usr/include/boost/bind/bind.hpp
+#usr/include/boost/bind/bind_cc.hpp
+#usr/include/boost/bind/bind_mf2_cc.hpp
+#usr/include/boost/bind/bind_mf_cc.hpp
+#usr/include/boost/bind/bind_template.hpp
+#usr/include/boost/bind/make_adaptable.hpp
+#usr/include/boost/bind/mem_fn.hpp
+#usr/include/boost/bind/mem_fn_cc.hpp
+#usr/include/boost/bind/mem_fn_template.hpp
+#usr/include/boost/bind/mem_fn_vw.hpp
+#usr/include/boost/bind/placeholders.hpp
+#usr/include/boost/bind/protect.hpp
+#usr/include/boost/bind/storage.hpp
+#usr/include/boost/blank.hpp
+#usr/include/boost/blank_fwd.hpp
+#usr/include/boost/call_traits.hpp
+#usr/include/boost/cast.hpp
+#usr/include/boost/cerrno.hpp
+#usr/include/boost/checked_delete.hpp
+#usr/include/boost/chrono
+#usr/include/boost/chrono.hpp
+#usr/include/boost/chrono/ceil.hpp
+#usr/include/boost/chrono/chrono.hpp
+#usr/include/boost/chrono/chrono_io.hpp
+#usr/include/boost/chrono/clock_string.hpp
+#usr/include/boost/chrono/config.hpp
+#usr/include/boost/chrono/detail
+#usr/include/boost/chrono/detail/inlined
+#usr/include/boost/chrono/detail/inlined/chrono.hpp
+#usr/include/boost/chrono/detail/inlined/mac
+#usr/include/boost/chrono/detail/inlined/mac/chrono.hpp
+#usr/include/boost/chrono/detail/inlined/mac/process_cpu_clocks.hpp
+#usr/include/boost/chrono/detail/inlined/mac/thread_clock.hpp
+#usr/include/boost/chrono/detail/inlined/posix
+#usr/include/boost/chrono/detail/inlined/posix/chrono.hpp
+#usr/include/boost/chrono/detail/inlined/posix/process_cpu_clocks.hpp
+#usr/include/boost/chrono/detail/inlined/posix/thread_clock.hpp
+#usr/include/boost/chrono/detail/inlined/process_cpu_clocks.hpp
+#usr/include/boost/chrono/detail/inlined/thread_clock.hpp
+#usr/include/boost/chrono/detail/inlined/win
+#usr/include/boost/chrono/detail/inlined/win/chrono.hpp
+#usr/include/boost/chrono/detail/inlined/win/process_cpu_clocks.hpp
+#usr/include/boost/chrono/detail/inlined/win/thread_clock.hpp
+#usr/include/boost/chrono/detail/is_evenly_divisible_by.hpp
+#usr/include/boost/chrono/detail/no_warning
+#usr/include/boost/chrono/detail/no_warning/signed_unsigned_cmp.hpp
+#usr/include/boost/chrono/detail/scan_keyword.hpp
+#usr/include/boost/chrono/detail/static_assert.hpp
+#usr/include/boost/chrono/detail/system.hpp
+#usr/include/boost/chrono/duration.hpp
+#usr/include/boost/chrono/floor.hpp
+#usr/include/boost/chrono/include.hpp
+#usr/include/boost/chrono/io
+#usr/include/boost/chrono/io/duration_get.hpp
+#usr/include/boost/chrono/io/duration_io.hpp
+#usr/include/boost/chrono/io/duration_put.hpp
+#usr/include/boost/chrono/io/duration_style.hpp
+#usr/include/boost/chrono/io/duration_units.hpp
+#usr/include/boost/chrono/io/ios_base_state.hpp
+#usr/include/boost/chrono/io/time_point_get.hpp
+#usr/include/boost/chrono/io/time_point_io.hpp
+#usr/include/boost/chrono/io/time_point_put.hpp
+#usr/include/boost/chrono/io/time_point_units.hpp
+#usr/include/boost/chrono/io/timezone.hpp
+#usr/include/boost/chrono/io/utility
+#usr/include/boost/chrono/io/utility/ios_base_state_ptr.hpp
+#usr/include/boost/chrono/io/utility/manip_base.hpp
+#usr/include/boost/chrono/io/utility/to_string.hpp
+#usr/include/boost/chrono/io_v1
+#usr/include/boost/chrono/io_v1/chrono_io.hpp
+#usr/include/boost/chrono/process_cpu_clocks.hpp
+#usr/include/boost/chrono/round.hpp
+#usr/include/boost/chrono/system_clocks.hpp
+#usr/include/boost/chrono/thread_clock.hpp
+#usr/include/boost/chrono/time_point.hpp
+#usr/include/boost/chrono/typeof
+#usr/include/boost/chrono/typeof/boost
+#usr/include/boost/chrono/typeof/boost/chrono
+#usr/include/boost/chrono/typeof/boost/chrono/chrono.hpp
+#usr/include/boost/chrono/typeof/boost/ratio.hpp
+#usr/include/boost/circular_buffer
+#usr/include/boost/circular_buffer.hpp
+#usr/include/boost/circular_buffer/base.hpp
+#usr/include/boost/circular_buffer/debug.hpp
+#usr/include/boost/circular_buffer/details.hpp
+#usr/include/boost/circular_buffer/space_optimized.hpp
+#usr/include/boost/circular_buffer_fwd.hpp
+#usr/include/boost/compatibility
+#usr/include/boost/compatibility/cpp_c_headers
+#usr/include/boost/compatibility/cpp_c_headers/cassert
+#usr/include/boost/compatibility/cpp_c_headers/cctype
+#usr/include/boost/compatibility/cpp_c_headers/cerrno
+#usr/include/boost/compatibility/cpp_c_headers/cfloat
+#usr/include/boost/compatibility/cpp_c_headers/climits
+#usr/include/boost/compatibility/cpp_c_headers/clocale
+#usr/include/boost/compatibility/cpp_c_headers/cmath
+#usr/include/boost/compatibility/cpp_c_headers/csetjmp
+#usr/include/boost/compatibility/cpp_c_headers/csignal
+#usr/include/boost/compatibility/cpp_c_headers/cstdarg
+#usr/include/boost/compatibility/cpp_c_headers/cstddef
+#usr/include/boost/compatibility/cpp_c_headers/cstdio
+#usr/include/boost/compatibility/cpp_c_headers/cstdlib
+#usr/include/boost/compatibility/cpp_c_headers/cstring
+#usr/include/boost/compatibility/cpp_c_headers/ctime
+#usr/include/boost/compatibility/cpp_c_headers/cwchar
+#usr/include/boost/compatibility/cpp_c_headers/cwctype
+#usr/include/boost/compressed_pair.hpp
+#usr/include/boost/concept
+#usr/include/boost/concept/assert.hpp
+#usr/include/boost/concept/detail
+#usr/include/boost/concept/detail/backward_compatibility.hpp
+#usr/include/boost/concept/detail/borland.hpp
+#usr/include/boost/concept/detail/concept_def.hpp
+#usr/include/boost/concept/detail/concept_undef.hpp
+#usr/include/boost/concept/detail/general.hpp
+#usr/include/boost/concept/detail/has_constraints.hpp
+#usr/include/boost/concept/detail/msvc.hpp
+#usr/include/boost/concept/requires.hpp
+#usr/include/boost/concept/usage.hpp
+#usr/include/boost/concept_archetype.hpp
+#usr/include/boost/concept_check
+#usr/include/boost/concept_check.hpp
+#usr/include/boost/concept_check/borland.hpp
+#usr/include/boost/concept_check/general.hpp
+#usr/include/boost/concept_check/has_constraints.hpp
+#usr/include/boost/concept_check/msvc.hpp
+#usr/include/boost/config
+#usr/include/boost/config.hpp
+#usr/include/boost/config/abi
+#usr/include/boost/config/abi/borland_prefix.hpp
+#usr/include/boost/config/abi/borland_suffix.hpp
+#usr/include/boost/config/abi/msvc_prefix.hpp
+#usr/include/boost/config/abi/msvc_suffix.hpp
+#usr/include/boost/config/abi_prefix.hpp
+#usr/include/boost/config/abi_suffix.hpp
+#usr/include/boost/config/auto_link.hpp
+#usr/include/boost/config/compiler
+#usr/include/boost/config/compiler/borland.hpp
+#usr/include/boost/config/compiler/clang.hpp
+#usr/include/boost/config/compiler/codegear.hpp
+#usr/include/boost/config/compiler/comeau.hpp
+#usr/include/boost/config/compiler/common_edg.hpp
+#usr/include/boost/config/compiler/compaq_cxx.hpp
+#usr/include/boost/config/compiler/cray.hpp
+#usr/include/boost/config/compiler/digitalmars.hpp
+#usr/include/boost/config/compiler/gcc.hpp
+#usr/include/boost/config/compiler/gcc_xml.hpp
+#usr/include/boost/config/compiler/greenhills.hpp
+#usr/include/boost/config/compiler/hp_acc.hpp
+#usr/include/boost/config/compiler/intel.hpp
+#usr/include/boost/config/compiler/kai.hpp
+#usr/include/boost/config/compiler/metrowerks.hpp
+#usr/include/boost/config/compiler/mpw.hpp
+#usr/include/boost/config/compiler/nvcc.hpp
+#usr/include/boost/config/compiler/pathscale.hpp
+#usr/include/boost/config/compiler/pgi.hpp
+#usr/include/boost/config/compiler/sgi_mipspro.hpp
+#usr/include/boost/config/compiler/sunpro_cc.hpp
+#usr/include/boost/config/compiler/vacpp.hpp
+#usr/include/boost/config/compiler/visualc.hpp
+#usr/include/boost/config/no_tr1
+#usr/include/boost/config/no_tr1/cmath.hpp
+#usr/include/boost/config/no_tr1/complex.hpp
+#usr/include/boost/config/no_tr1/functional.hpp
+#usr/include/boost/config/no_tr1/memory.hpp
+#usr/include/boost/config/no_tr1/utility.hpp
+#usr/include/boost/config/platform
+#usr/include/boost/config/platform/aix.hpp
+#usr/include/boost/config/platform/amigaos.hpp
+#usr/include/boost/config/platform/beos.hpp
+#usr/include/boost/config/platform/bsd.hpp
+#usr/include/boost/config/platform/cray.hpp
+#usr/include/boost/config/platform/cygwin.hpp
+#usr/include/boost/config/platform/hpux.hpp
+#usr/include/boost/config/platform/irix.hpp
+#usr/include/boost/config/platform/linux.hpp
+#usr/include/boost/config/platform/macos.hpp
+#usr/include/boost/config/platform/qnxnto.hpp
+#usr/include/boost/config/platform/solaris.hpp
+#usr/include/boost/config/platform/symbian.hpp
+#usr/include/boost/config/platform/vms.hpp
+#usr/include/boost/config/platform/vxworks.hpp
+#usr/include/boost/config/platform/win32.hpp
+#usr/include/boost/config/posix_features.hpp
+#usr/include/boost/config/requires_threads.hpp
+#usr/include/boost/config/select_compiler_config.hpp
+#usr/include/boost/config/select_platform_config.hpp
+#usr/include/boost/config/select_stdlib_config.hpp
+#usr/include/boost/config/stdlib
+#usr/include/boost/config/stdlib/dinkumware.hpp
+#usr/include/boost/config/stdlib/libcomo.hpp
+#usr/include/boost/config/stdlib/libcpp.hpp
+#usr/include/boost/config/stdlib/libstdcpp3.hpp
+#usr/include/boost/config/stdlib/modena.hpp
+#usr/include/boost/config/stdlib/msl.hpp
+#usr/include/boost/config/stdlib/roguewave.hpp
+#usr/include/boost/config/stdlib/sgi.hpp
+#usr/include/boost/config/stdlib/stlport.hpp
+#usr/include/boost/config/stdlib/vacpp.hpp
+#usr/include/boost/config/suffix.hpp
+#usr/include/boost/config/user.hpp
+#usr/include/boost/config/warning_disable.hpp
+#usr/include/boost/container
+#usr/include/boost/container/allocator_traits.hpp
+#usr/include/boost/container/container_fwd.hpp
+#usr/include/boost/container/deque.hpp
+#usr/include/boost/container/detail
+#usr/include/boost/container/detail/adaptive_node_pool_impl.hpp
+#usr/include/boost/container/detail/advanced_insert_int.hpp
+#usr/include/boost/container/detail/algorithms.hpp
+#usr/include/boost/container/detail/allocation_type.hpp
+#usr/include/boost/container/detail/allocator_version_traits.hpp
+#usr/include/boost/container/detail/config_begin.hpp
+#usr/include/boost/container/detail/config_end.hpp
+#usr/include/boost/container/detail/destroyers.hpp
+#usr/include/boost/container/detail/flat_tree.hpp
+#usr/include/boost/container/detail/function_detector.hpp
+#usr/include/boost/container/detail/iterators.hpp
+#usr/include/boost/container/detail/math_functions.hpp
+#usr/include/boost/container/detail/memory_util.hpp
+#usr/include/boost/container/detail/mpl.hpp
+#usr/include/boost/container/detail/multiallocation_chain.hpp
+#usr/include/boost/container/detail/node_alloc_holder.hpp
+#usr/include/boost/container/detail/node_pool_impl.hpp
+#usr/include/boost/container/detail/pair.hpp
+#usr/include/boost/container/detail/pool_common.hpp
+#usr/include/boost/container/detail/preprocessor.hpp
+#usr/include/boost/container/detail/transform_iterator.hpp
+#usr/include/boost/container/detail/tree.hpp
+#usr/include/boost/container/detail/type_traits.hpp
+#usr/include/boost/container/detail/utilities.hpp
+#usr/include/boost/container/detail/value_init.hpp
+#usr/include/boost/container/detail/variadic_templates_tools.hpp
+#usr/include/boost/container/detail/version_type.hpp
+#usr/include/boost/container/detail/workaround.hpp
+#usr/include/boost/container/flat_map.hpp
+#usr/include/boost/container/flat_set.hpp
+#usr/include/boost/container/list.hpp
+#usr/include/boost/container/map.hpp
+#usr/include/boost/container/scoped_allocator.hpp
+#usr/include/boost/container/scoped_allocator_fwd.hpp
+#usr/include/boost/container/set.hpp
+#usr/include/boost/container/slist.hpp
+#usr/include/boost/container/stable_vector.hpp
+#usr/include/boost/container/static_vector.hpp
+#usr/include/boost/container/string.hpp
+#usr/include/boost/container/throw_exception.hpp
+#usr/include/boost/container/vector.hpp
+#usr/include/boost/context
+#usr/include/boost/context/all.hpp
+#usr/include/boost/context/detail
+#usr/include/boost/context/detail/config.hpp
+#usr/include/boost/context/detail/fcontext_arm.hpp
+#usr/include/boost/context/detail/fcontext_i386.hpp
+#usr/include/boost/context/detail/fcontext_i386_win.hpp
+#usr/include/boost/context/detail/fcontext_mips.hpp
+#usr/include/boost/context/detail/fcontext_ppc.hpp
+#usr/include/boost/context/detail/fcontext_sparc.hpp
+#usr/include/boost/context/detail/fcontext_x86_64.hpp
+#usr/include/boost/context/detail/fcontext_x86_64_win.hpp
+#usr/include/boost/context/fcontext.hpp
+#usr/include/boost/coroutine
+#usr/include/boost/coroutine/all.hpp
+#usr/include/boost/coroutine/attributes.hpp
+#usr/include/boost/coroutine/checkpoint.hpp
+#usr/include/boost/coroutine/coroutine.hpp
+#usr/include/boost/coroutine/detail
+#usr/include/boost/coroutine/detail/config.hpp
+#usr/include/boost/coroutine/detail/coroutine_context.hpp
+#usr/include/boost/coroutine/detail/exceptions.hpp
+#usr/include/boost/coroutine/detail/flags.hpp
+#usr/include/boost/coroutine/detail/holder.hpp
+#usr/include/boost/coroutine/detail/param.hpp
+#usr/include/boost/coroutine/detail/segmented_stack_allocator.hpp
+#usr/include/boost/coroutine/detail/stack_tuple.hpp
+#usr/include/boost/coroutine/detail/standard_stack_allocator.hpp
+#usr/include/boost/coroutine/detail/trampoline.hpp
+#usr/include/boost/coroutine/exceptions.hpp
+#usr/include/boost/coroutine/flags.hpp
+#usr/include/boost/coroutine/stack_allocator.hpp
+#usr/include/boost/coroutine/stack_context.hpp
+#usr/include/boost/coroutine/v1
+#usr/include/boost/coroutine/v1/coroutine.hpp
+#usr/include/boost/coroutine/v1/detail
+#usr/include/boost/coroutine/v1/detail/arg.hpp
+#usr/include/boost/coroutine/v1/detail/coroutine_base.hpp
+#usr/include/boost/coroutine/v1/detail/coroutine_base_resume.hpp
+#usr/include/boost/coroutine/v1/detail/coroutine_caller.hpp
+#usr/include/boost/coroutine/v1/detail/coroutine_get.hpp
+#usr/include/boost/coroutine/v1/detail/coroutine_object.hpp
+#usr/include/boost/coroutine/v1/detail/coroutine_object_result_0.ipp
+#usr/include/boost/coroutine/v1/detail/coroutine_object_result_1.ipp
+#usr/include/boost/coroutine/v1/detail/coroutine_object_result_arity.ipp
+#usr/include/boost/coroutine/v1/detail/coroutine_object_void_0.ipp
+#usr/include/boost/coroutine/v1/detail/coroutine_object_void_1.ipp
+#usr/include/boost/coroutine/v1/detail/coroutine_object_void_arity.ipp
+#usr/include/boost/coroutine/v1/detail/coroutine_op.hpp
+#usr/include/boost/coroutine/v2
+#usr/include/boost/coroutine/v2/coroutine.hpp
+#usr/include/boost/coroutine/v2/detail
+#usr/include/boost/coroutine/v2/detail/pull_coroutine_base.hpp
+#usr/include/boost/coroutine/v2/detail/pull_coroutine_caller.hpp
+#usr/include/boost/coroutine/v2/detail/pull_coroutine_object.hpp
+#usr/include/boost/coroutine/v2/detail/push_coroutine_base.hpp
+#usr/include/boost/coroutine/v2/detail/push_coroutine_caller.hpp
+#usr/include/boost/coroutine/v2/detail/push_coroutine_object.hpp
+#usr/include/boost/crc.hpp
+#usr/include/boost/cregex.hpp
+#usr/include/boost/cstdint.hpp
+#usr/include/boost/cstdlib.hpp
+#usr/include/boost/current_function.hpp
+#usr/include/boost/date_time
+#usr/include/boost/date_time.hpp
+#usr/include/boost/date_time/adjust_functors.hpp
+#usr/include/boost/date_time/c_local_time_adjustor.hpp
+#usr/include/boost/date_time/c_time.hpp
+#usr/include/boost/date_time/compiler_config.hpp
+#usr/include/boost/date_time/constrained_value.hpp
+#usr/include/boost/date_time/date.hpp
+#usr/include/boost/date_time/date_clock_device.hpp
+#usr/include/boost/date_time/date_defs.hpp
+#usr/include/boost/date_time/date_duration.hpp
+#usr/include/boost/date_time/date_duration_types.hpp
+#usr/include/boost/date_time/date_facet.hpp
+#usr/include/boost/date_time/date_format_simple.hpp
+#usr/include/boost/date_time/date_formatting.hpp
+#usr/include/boost/date_time/date_formatting_limited.hpp
+#usr/include/boost/date_time/date_formatting_locales.hpp
+#usr/include/boost/date_time/date_generator_formatter.hpp
+#usr/include/boost/date_time/date_generator_parser.hpp
+#usr/include/boost/date_time/date_generators.hpp
+#usr/include/boost/date_time/date_iterator.hpp
+#usr/include/boost/date_time/date_names_put.hpp
+#usr/include/boost/date_time/date_parsing.hpp
+#usr/include/boost/date_time/dst_rules.hpp
+#usr/include/boost/date_time/dst_transition_generators.hpp
+#usr/include/boost/date_time/filetime_functions.hpp
+#usr/include/boost/date_time/format_date_parser.hpp
+#usr/include/boost/date_time/gregorian
+#usr/include/boost/date_time/gregorian/conversion.hpp
+#usr/include/boost/date_time/gregorian/formatters.hpp
+#usr/include/boost/date_time/gregorian/formatters_limited.hpp
+#usr/include/boost/date_time/gregorian/greg_calendar.hpp
+#usr/include/boost/date_time/gregorian/greg_date.hpp
+#usr/include/boost/date_time/gregorian/greg_day.hpp
+#usr/include/boost/date_time/gregorian/greg_day_of_year.hpp
+#usr/include/boost/date_time/gregorian/greg_duration.hpp
+#usr/include/boost/date_time/gregorian/greg_duration_types.hpp
+#usr/include/boost/date_time/gregorian/greg_facet.hpp
+#usr/include/boost/date_time/gregorian/greg_month.hpp
+#usr/include/boost/date_time/gregorian/greg_serialize.hpp
+#usr/include/boost/date_time/gregorian/greg_weekday.hpp
+#usr/include/boost/date_time/gregorian/greg_year.hpp
+#usr/include/boost/date_time/gregorian/greg_ymd.hpp
+#usr/include/boost/date_time/gregorian/gregorian.hpp
+#usr/include/boost/date_time/gregorian/gregorian_io.hpp
+#usr/include/boost/date_time/gregorian/gregorian_types.hpp
+#usr/include/boost/date_time/gregorian/parsers.hpp
+#usr/include/boost/date_time/gregorian_calendar.hpp
+#usr/include/boost/date_time/gregorian_calendar.ipp
+#usr/include/boost/date_time/int_adapter.hpp
+#usr/include/boost/date_time/iso_format.hpp
+#usr/include/boost/date_time/local_time
+#usr/include/boost/date_time/local_time/conversion.hpp
+#usr/include/boost/date_time/local_time/custom_time_zone.hpp
+#usr/include/boost/date_time/local_time/date_duration_operators.hpp
+#usr/include/boost/date_time/local_time/dst_transition_day_rules.hpp
+#usr/include/boost/date_time/local_time/local_date_time.hpp
+#usr/include/boost/date_time/local_time/local_time.hpp
+#usr/include/boost/date_time/local_time/local_time_io.hpp
+#usr/include/boost/date_time/local_time/local_time_types.hpp
+#usr/include/boost/date_time/local_time/posix_time_zone.hpp
+#usr/include/boost/date_time/local_time/tz_database.hpp
+#usr/include/boost/date_time/local_time_adjustor.hpp
+#usr/include/boost/date_time/local_timezone_defs.hpp
+#usr/include/boost/date_time/locale_config.hpp
+#usr/include/boost/date_time/microsec_time_clock.hpp
+#usr/include/boost/date_time/parse_format_base.hpp
+#usr/include/boost/date_time/period.hpp
+#usr/include/boost/date_time/period_formatter.hpp
+#usr/include/boost/date_time/period_parser.hpp
+#usr/include/boost/date_time/posix_time
+#usr/include/boost/date_time/posix_time/conversion.hpp
+#usr/include/boost/date_time/posix_time/date_duration_operators.hpp
+#usr/include/boost/date_time/posix_time/posix_time.hpp
+#usr/include/boost/date_time/posix_time/posix_time_config.hpp
+#usr/include/boost/date_time/posix_time/posix_time_duration.hpp
+#usr/include/boost/date_time/posix_time/posix_time_io.hpp
+#usr/include/boost/date_time/posix_time/posix_time_legacy_io.hpp
+#usr/include/boost/date_time/posix_time/posix_time_system.hpp
+#usr/include/boost/date_time/posix_time/posix_time_types.hpp
+#usr/include/boost/date_time/posix_time/ptime.hpp
+#usr/include/boost/date_time/posix_time/time_formatters.hpp
+#usr/include/boost/date_time/posix_time/time_formatters_limited.hpp
+#usr/include/boost/date_time/posix_time/time_parsers.hpp
+#usr/include/boost/date_time/posix_time/time_period.hpp
+#usr/include/boost/date_time/posix_time/time_serialize.hpp
+#usr/include/boost/date_time/special_defs.hpp
+#usr/include/boost/date_time/special_values_formatter.hpp
+#usr/include/boost/date_time/special_values_parser.hpp
+#usr/include/boost/date_time/string_convert.hpp
+#usr/include/boost/date_time/string_parse_tree.hpp
+#usr/include/boost/date_time/strings_from_facet.hpp
+#usr/include/boost/date_time/time.hpp
+#usr/include/boost/date_time/time_clock.hpp
+#usr/include/boost/date_time/time_defs.hpp
+#usr/include/boost/date_time/time_duration.hpp
+#usr/include/boost/date_time/time_facet.hpp
+#usr/include/boost/date_time/time_formatting_streams.hpp
+#usr/include/boost/date_time/time_iterator.hpp
+#usr/include/boost/date_time/time_parsing.hpp
+#usr/include/boost/date_time/time_resolution_traits.hpp
+#usr/include/boost/date_time/time_system_counted.hpp
+#usr/include/boost/date_time/time_system_split.hpp
+#usr/include/boost/date_time/time_zone_base.hpp
+#usr/include/boost/date_time/time_zone_names.hpp
+#usr/include/boost/date_time/tz_db_base.hpp
+#usr/include/boost/date_time/wrapping_int.hpp
+#usr/include/boost/date_time/year_month_day.hpp
+#usr/include/boost/detail
+#usr/include/boost/detail/algorithm.hpp
+#usr/include/boost/detail/allocator_utilities.hpp
+#usr/include/boost/detail/atomic_count.hpp
+#usr/include/boost/detail/atomic_redef_macros.hpp
+#usr/include/boost/detail/atomic_undef_macros.hpp
+#usr/include/boost/detail/binary_search.hpp
+#usr/include/boost/detail/bitmask.hpp
+#usr/include/boost/detail/call_traits.hpp
+#usr/include/boost/detail/catch_exceptions.hpp
+#usr/include/boost/detail/compressed_pair.hpp
+#usr/include/boost/detail/container_fwd.hpp
+#usr/include/boost/detail/dynamic_bitset.hpp
+#usr/include/boost/detail/endian.hpp
+#usr/include/boost/detail/fenv.hpp
+#usr/include/boost/detail/has_default_constructor.hpp
+#usr/include/boost/detail/identifier.hpp
+#usr/include/boost/detail/indirect_traits.hpp
+#usr/include/boost/detail/interlocked.hpp
+#usr/include/boost/detail/is_function_ref_tester.hpp
+#usr/include/boost/detail/is_incrementable.hpp
+#usr/include/boost/detail/is_sorted.hpp
+#usr/include/boost/detail/is_xxx.hpp
+#usr/include/boost/detail/iterator.hpp
+#usr/include/boost/detail/lcast_precision.hpp
+#usr/include/boost/detail/lightweight_main.hpp
+#usr/include/boost/detail/lightweight_mutex.hpp
+#usr/include/boost/detail/lightweight_test.hpp
+#usr/include/boost/detail/lightweight_thread.hpp
+#usr/include/boost/detail/limits.hpp
+#usr/include/boost/detail/named_template_params.hpp
+#usr/include/boost/detail/no_exceptions_support.hpp
+#usr/include/boost/detail/none_t.hpp
+#usr/include/boost/detail/numeric_traits.hpp
+#usr/include/boost/detail/ob_call_traits.hpp
+#usr/include/boost/detail/ob_compressed_pair.hpp
+#usr/include/boost/detail/quick_allocator.hpp
+#usr/include/boost/detail/reference_content.hpp
+#usr/include/boost/detail/scoped_enum_emulation.hpp
+#usr/include/boost/detail/select_type.hpp
+#usr/include/boost/detail/sp_typeinfo.hpp
+#usr/include/boost/detail/templated_streams.hpp
+#usr/include/boost/detail/utf8_codecvt_facet.hpp
+#usr/include/boost/detail/utf8_codecvt_facet.ipp
+#usr/include/boost/detail/winapi
+#usr/include/boost/detail/winapi/GetCurrentProcess.hpp
+#usr/include/boost/detail/winapi/GetCurrentThread.hpp
+#usr/include/boost/detail/winapi/GetLastError.hpp
+#usr/include/boost/detail/winapi/GetProcessTimes.hpp
+#usr/include/boost/detail/winapi/GetThreadTimes.hpp
+#usr/include/boost/detail/winapi/LocalFree.hpp
+#usr/include/boost/detail/winapi/basic_types.hpp
+#usr/include/boost/detail/winapi/directory_management.hpp
+#usr/include/boost/detail/winapi/dll.hpp
+#usr/include/boost/detail/winapi/error_handling.hpp
+#usr/include/boost/detail/winapi/file_management.hpp
+#usr/include/boost/detail/winapi/handles.hpp
+#usr/include/boost/detail/winapi/memory.hpp
+#usr/include/boost/detail/winapi/process.hpp
+#usr/include/boost/detail/winapi/security.hpp
+#usr/include/boost/detail/winapi/synchronization.hpp
+#usr/include/boost/detail/winapi/system.hpp
+#usr/include/boost/detail/winapi/thread.hpp
+#usr/include/boost/detail/winapi/time.hpp
+#usr/include/boost/detail/winapi/timers.hpp
+#usr/include/boost/detail/workaround.hpp
+#usr/include/boost/dynamic_bitset
+#usr/include/boost/dynamic_bitset.hpp
+#usr/include/boost/dynamic_bitset/config.hpp
+#usr/include/boost/dynamic_bitset/dynamic_bitset.hpp
+#usr/include/boost/dynamic_bitset_fwd.hpp
+#usr/include/boost/enable_shared_from_this.hpp
+#usr/include/boost/exception
+#usr/include/boost/exception.hpp
+#usr/include/boost/exception/all.hpp
+#usr/include/boost/exception/current_exception_cast.hpp
+#usr/include/boost/exception/detail
+#usr/include/boost/exception/detail/attribute_noreturn.hpp
+#usr/include/boost/exception/detail/clone_current_exception.hpp
+#usr/include/boost/exception/detail/error_info_impl.hpp
+#usr/include/boost/exception/detail/exception_ptr.hpp
+#usr/include/boost/exception/detail/is_output_streamable.hpp
+#usr/include/boost/exception/detail/object_hex_dump.hpp
+#usr/include/boost/exception/detail/type_info.hpp
+#usr/include/boost/exception/diagnostic_information.hpp
+#usr/include/boost/exception/enable_current_exception.hpp
+#usr/include/boost/exception/enable_error_info.hpp
+#usr/include/boost/exception/errinfo_api_function.hpp
+#usr/include/boost/exception/errinfo_at_line.hpp
+#usr/include/boost/exception/errinfo_errno.hpp
+#usr/include/boost/exception/errinfo_file_handle.hpp
+#usr/include/boost/exception/errinfo_file_name.hpp
+#usr/include/boost/exception/errinfo_file_open_mode.hpp
+#usr/include/boost/exception/errinfo_nested_exception.hpp
+#usr/include/boost/exception/errinfo_type_info_name.hpp
+#usr/include/boost/exception/error_info.hpp
+#usr/include/boost/exception/exception.hpp
+#usr/include/boost/exception/get_error_info.hpp
+#usr/include/boost/exception/info.hpp
+#usr/include/boost/exception/info_tuple.hpp
+#usr/include/boost/exception/to_string.hpp
+#usr/include/boost/exception/to_string_stub.hpp
+#usr/include/boost/exception_ptr.hpp
+#usr/include/boost/filesystem
+#usr/include/boost/filesystem.hpp
+#usr/include/boost/filesystem/config.hpp
+#usr/include/boost/filesystem/convenience.hpp
+#usr/include/boost/filesystem/detail
+#usr/include/boost/filesystem/detail/utf8_codecvt_facet.hpp
+#usr/include/boost/filesystem/exception.hpp
+#usr/include/boost/filesystem/fstream.hpp
+#usr/include/boost/filesystem/operations.hpp
+#usr/include/boost/filesystem/path.hpp
+#usr/include/boost/filesystem/path_traits.hpp
+#usr/include/boost/flyweight
+#usr/include/boost/flyweight.hpp
+#usr/include/boost/flyweight/assoc_container_factory.hpp
+#usr/include/boost/flyweight/assoc_container_factory_fwd.hpp
+#usr/include/boost/flyweight/detail
+#usr/include/boost/flyweight/detail/default_value_policy.hpp
+#usr/include/boost/flyweight/detail/dyn_perfect_fwd.hpp
+#usr/include/boost/flyweight/detail/flyweight_core.hpp
+#usr/include/boost/flyweight/detail/is_placeholder_expr.hpp
+#usr/include/boost/flyweight/detail/nested_xxx_if_not_ph.hpp
+#usr/include/boost/flyweight/detail/not_placeholder_expr.hpp
+#usr/include/boost/flyweight/detail/perfect_fwd.hpp
+#usr/include/boost/flyweight/detail/pp_perfect_fwd.hpp
+#usr/include/boost/flyweight/detail/recursive_lw_mutex.hpp
+#usr/include/boost/flyweight/detail/value_tag.hpp
+#usr/include/boost/flyweight/factory_tag.hpp
+#usr/include/boost/flyweight/flyweight.hpp
+#usr/include/boost/flyweight/flyweight_fwd.hpp
+#usr/include/boost/flyweight/hashed_factory.hpp
+#usr/include/boost/flyweight/hashed_factory_fwd.hpp
+#usr/include/boost/flyweight/holder_tag.hpp
+#usr/include/boost/flyweight/intermodule_holder.hpp
+#usr/include/boost/flyweight/intermodule_holder_fwd.hpp
+#usr/include/boost/flyweight/key_value.hpp
+#usr/include/boost/flyweight/key_value_fwd.hpp
+#usr/include/boost/flyweight/locking_tag.hpp
+#usr/include/boost/flyweight/no_locking.hpp
+#usr/include/boost/flyweight/no_locking_fwd.hpp
+#usr/include/boost/flyweight/no_tracking.hpp
+#usr/include/boost/flyweight/no_tracking_fwd.hpp
+#usr/include/boost/flyweight/refcounted.hpp
+#usr/include/boost/flyweight/refcounted_fwd.hpp
+#usr/include/boost/flyweight/set_factory.hpp
+#usr/include/boost/flyweight/set_factory_fwd.hpp
+#usr/include/boost/flyweight/simple_locking.hpp
+#usr/include/boost/flyweight/simple_locking_fwd.hpp
+#usr/include/boost/flyweight/static_holder.hpp
+#usr/include/boost/flyweight/static_holder_fwd.hpp
+#usr/include/boost/flyweight/tag.hpp
+#usr/include/boost/flyweight/tracking_tag.hpp
+#usr/include/boost/foreach.hpp
+#usr/include/boost/foreach_fwd.hpp
+#usr/include/boost/format
+#usr/include/boost/format.hpp
+#usr/include/boost/format/alt_sstream.hpp
+#usr/include/boost/format/alt_sstream_impl.hpp
+#usr/include/boost/format/detail
+#usr/include/boost/format/detail/compat_workarounds.hpp
+#usr/include/boost/format/detail/config_macros.hpp
+#usr/include/boost/format/detail/msvc_disambiguater.hpp
+#usr/include/boost/format/detail/unset_macros.hpp
+#usr/include/boost/format/detail/workarounds_gcc-2_95.hpp
+#usr/include/boost/format/detail/workarounds_stlport.hpp
+#usr/include/boost/format/exceptions.hpp
+#usr/include/boost/format/feed_args.hpp
+#usr/include/boost/format/format_class.hpp
+#usr/include/boost/format/format_fwd.hpp
+#usr/include/boost/format/format_implementation.hpp
+#usr/include/boost/format/free_funcs.hpp
+#usr/include/boost/format/group.hpp
+#usr/include/boost/format/internals.hpp
+#usr/include/boost/format/internals_fwd.hpp
+#usr/include/boost/format/parsing.hpp
+#usr/include/boost/function
+#usr/include/boost/function.hpp
+#usr/include/boost/function/detail
+#usr/include/boost/function/detail/function_iterate.hpp
+#usr/include/boost/function/detail/maybe_include.hpp
+#usr/include/boost/function/detail/prologue.hpp
+#usr/include/boost/function/function0.hpp
+#usr/include/boost/function/function1.hpp
+#usr/include/boost/function/function10.hpp
+#usr/include/boost/function/function2.hpp
+#usr/include/boost/function/function3.hpp
+#usr/include/boost/function/function4.hpp
+#usr/include/boost/function/function5.hpp
+#usr/include/boost/function/function6.hpp
+#usr/include/boost/function/function7.hpp
+#usr/include/boost/function/function8.hpp
+#usr/include/boost/function/function9.hpp
+#usr/include/boost/function/function_base.hpp
+#usr/include/boost/function/function_fwd.hpp
+#usr/include/boost/function/function_template.hpp
+#usr/include/boost/function/function_typeof.hpp
+#usr/include/boost/function_equal.hpp
+#usr/include/boost/function_output_iterator.hpp
+#usr/include/boost/function_types
+#usr/include/boost/function_types/components.hpp
+#usr/include/boost/function_types/config
+#usr/include/boost/function_types/config/cc_names.hpp
+#usr/include/boost/function_types/config/compiler.hpp
+#usr/include/boost/function_types/config/config.hpp
+#usr/include/boost/function_types/detail
+#usr/include/boost/function_types/detail/class_transform.hpp
+#usr/include/boost/function_types/detail/classifier.hpp
+#usr/include/boost/function_types/detail/classifier_impl
+#usr/include/boost/function_types/detail/classifier_impl/arity10_0.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity10_1.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity20_0.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity20_1.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity30_0.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity30_1.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity40_0.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity40_1.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity50_0.hpp
+#usr/include/boost/function_types/detail/classifier_impl/arity50_1.hpp
+#usr/include/boost/function_types/detail/classifier_impl/master.hpp
+#usr/include/boost/function_types/detail/components_as_mpl_sequence.hpp
+#usr/include/boost/function_types/detail/components_impl
+#usr/include/boost/function_types/detail/components_impl/arity10_0.hpp
+#usr/include/boost/function_types/detail/components_impl/arity10_1.hpp
+#usr/include/boost/function_types/detail/components_impl/arity20_0.hpp
+#usr/include/boost/function_types/detail/components_impl/arity20_1.hpp
+#usr/include/boost/function_types/detail/components_impl/arity30_0.hpp
+#usr/include/boost/function_types/detail/components_impl/arity30_1.hpp
+#usr/include/boost/function_types/detail/components_impl/arity40_0.hpp
+#usr/include/boost/function_types/detail/components_impl/arity40_1.hpp
+#usr/include/boost/function_types/detail/components_impl/arity50_0.hpp
+#usr/include/boost/function_types/detail/components_impl/arity50_1.hpp
+#usr/include/boost/function_types/detail/components_impl/master.hpp
+#usr/include/boost/function_types/detail/cv_traits.hpp
+#usr/include/boost/function_types/detail/encoding
+#usr/include/boost/function_types/detail/encoding/aliases_def.hpp
+#usr/include/boost/function_types/detail/encoding/aliases_undef.hpp
+#usr/include/boost/function_types/detail/encoding/def.hpp
+#usr/include/boost/function_types/detail/encoding/undef.hpp
+#usr/include/boost/function_types/detail/pp_arity_loop.hpp
+#usr/include/boost/function_types/detail/pp_cc_loop
+#usr/include/boost/function_types/detail/pp_cc_loop/master.hpp
+#usr/include/boost/function_types/detail/pp_cc_loop/preprocessed.hpp
+#usr/include/boost/function_types/detail/pp_loop.hpp
+#usr/include/boost/function_types/detail/pp_retag_default_cc
+#usr/include/boost/function_types/detail/pp_retag_default_cc/master.hpp
+#usr/include/boost/function_types/detail/pp_retag_default_cc/preprocessed.hpp
+#usr/include/boost/function_types/detail/pp_tags
+#usr/include/boost/function_types/detail/pp_tags/cc_tag.hpp
+#usr/include/boost/function_types/detail/pp_tags/master.hpp
+#usr/include/boost/function_types/detail/pp_tags/preprocessed.hpp
+#usr/include/boost/function_types/detail/pp_variate_loop
+#usr/include/boost/function_types/detail/pp_variate_loop/master.hpp
+#usr/include/boost/function_types/detail/pp_variate_loop/preprocessed.hpp
+#usr/include/boost/function_types/detail/retag_default_cc.hpp
+#usr/include/boost/function_types/detail/synthesize.hpp
+#usr/include/boost/function_types/detail/synthesize_impl
+#usr/include/boost/function_types/detail/synthesize_impl/arity10_0.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity10_1.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity20_0.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity20_1.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity30_0.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity30_1.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity40_0.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity40_1.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity50_0.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/arity50_1.hpp
+#usr/include/boost/function_types/detail/synthesize_impl/master.hpp
+#usr/include/boost/function_types/detail/to_sequence.hpp
+#usr/include/boost/function_types/function_arity.hpp
+#usr/include/boost/function_types/function_pointer.hpp
+#usr/include/boost/function_types/function_reference.hpp
+#usr/include/boost/function_types/function_type.hpp
+#usr/include/boost/function_types/is_callable_builtin.hpp
+#usr/include/boost/function_types/is_function.hpp
+#usr/include/boost/function_types/is_function_pointer.hpp
+#usr/include/boost/function_types/is_function_reference.hpp
+#usr/include/boost/function_types/is_member_function_pointer.hpp
+#usr/include/boost/function_types/is_member_object_pointer.hpp
+#usr/include/boost/function_types/is_member_pointer.hpp
+#usr/include/boost/function_types/is_nonmember_callable_builtin.hpp
+#usr/include/boost/function_types/member_function_pointer.hpp
+#usr/include/boost/function_types/member_object_pointer.hpp
+#usr/include/boost/function_types/parameter_types.hpp
+#usr/include/boost/function_types/property_tags.hpp
+#usr/include/boost/function_types/result_type.hpp
+#usr/include/boost/functional
+#usr/include/boost/functional.hpp
+#usr/include/boost/functional/factory.hpp
+#usr/include/boost/functional/forward_adapter.hpp
+#usr/include/boost/functional/hash
+#usr/include/boost/functional/hash.hpp
+#usr/include/boost/functional/hash/detail
+#usr/include/boost/functional/hash/detail/float_functions.hpp
+#usr/include/boost/functional/hash/detail/hash_float.hpp
+#usr/include/boost/functional/hash/detail/limits.hpp
+#usr/include/boost/functional/hash/extensions.hpp
+#usr/include/boost/functional/hash/hash.hpp
+#usr/include/boost/functional/hash/hash_fwd.hpp
+#usr/include/boost/functional/hash_fwd.hpp
+#usr/include/boost/functional/lightweight_forward_adapter.hpp
+#usr/include/boost/functional/overloaded_function
+#usr/include/boost/functional/overloaded_function.hpp
+#usr/include/boost/functional/overloaded_function/config.hpp
+#usr/include/boost/functional/overloaded_function/detail
+#usr/include/boost/functional/overloaded_function/detail/base.hpp
+#usr/include/boost/functional/overloaded_function/detail/function_type.hpp
+#usr/include/boost/functional/value_factory.hpp
+#usr/include/boost/fusion
+#usr/include/boost/fusion/adapted
+#usr/include/boost/fusion/adapted.hpp
+#usr/include/boost/fusion/adapted/adt
+#usr/include/boost/fusion/adapted/adt.hpp
+#usr/include/boost/fusion/adapted/adt/adapt_adt.hpp
+#usr/include/boost/fusion/adapted/adt/adapt_adt_named.hpp
+#usr/include/boost/fusion/adapted/adt/adapt_assoc_adt.hpp
+#usr/include/boost/fusion/adapted/adt/adapt_assoc_adt_named.hpp
+#usr/include/boost/fusion/adapted/adt/detail
+#usr/include/boost/fusion/adapted/adt/detail/adapt_base.hpp
+#usr/include/boost/fusion/adapted/adt/detail/extension.hpp
+#usr/include/boost/fusion/adapted/array
+#usr/include/boost/fusion/adapted/array.hpp
+#usr/include/boost/fusion/adapted/array/at_impl.hpp
+#usr/include/boost/fusion/adapted/array/begin_impl.hpp
+#usr/include/boost/fusion/adapted/array/category_of_impl.hpp
+#usr/include/boost/fusion/adapted/array/deref_impl.hpp
+#usr/include/boost/fusion/adapted/array/end_impl.hpp
+#usr/include/boost/fusion/adapted/array/is_sequence_impl.hpp
+#usr/include/boost/fusion/adapted/array/is_view_impl.hpp
+#usr/include/boost/fusion/adapted/array/size_impl.hpp
+#usr/include/boost/fusion/adapted/array/tag_of.hpp
+#usr/include/boost/fusion/adapted/array/value_at_impl.hpp
+#usr/include/boost/fusion/adapted/array/value_of_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array
+#usr/include/boost/fusion/adapted/boost_array.hpp
+#usr/include/boost/fusion/adapted/boost_array/array_iterator.hpp
+#usr/include/boost/fusion/adapted/boost_array/detail
+#usr/include/boost/fusion/adapted/boost_array/detail/at_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array/detail/begin_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array/detail/category_of_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array/detail/end_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array/detail/is_sequence_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array/detail/is_view_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array/detail/size_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array/detail/value_at_impl.hpp
+#usr/include/boost/fusion/adapted/boost_array/tag_of.hpp
+#usr/include/boost/fusion/adapted/boost_tuple
+#usr/include/boost/fusion/adapted/boost_tuple.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/boost_tuple_iterator.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/detail
+#usr/include/boost/fusion/adapted/boost_tuple/detail/at_impl.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/detail/begin_impl.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/detail/category_of_impl.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/detail/end_impl.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/detail/is_sequence_impl.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/detail/is_view_impl.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/detail/size_impl.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/detail/value_at_impl.hpp
+#usr/include/boost/fusion/adapted/boost_tuple/tag_of.hpp
+#usr/include/boost/fusion/adapted/mpl
+#usr/include/boost/fusion/adapted/mpl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail
+#usr/include/boost/fusion/adapted/mpl/detail/at_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/begin_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/category_of_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/empty_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/end_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/has_key_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/is_sequence_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/is_view_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/size_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/detail/value_at_impl.hpp
+#usr/include/boost/fusion/adapted/mpl/mpl_iterator.hpp
+#usr/include/boost/fusion/adapted/std_pair.hpp
+#usr/include/boost/fusion/adapted/std_tuple
+#usr/include/boost/fusion/adapted/std_tuple.hpp
+#usr/include/boost/fusion/adapted/std_tuple/detail
+#usr/include/boost/fusion/adapted/std_tuple/detail/at_impl.hpp
+#usr/include/boost/fusion/adapted/std_tuple/detail/begin_impl.hpp
+#usr/include/boost/fusion/adapted/std_tuple/detail/category_of_impl.hpp
+#usr/include/boost/fusion/adapted/std_tuple/detail/end_impl.hpp
+#usr/include/boost/fusion/adapted/std_tuple/detail/is_sequence_impl.hpp
+#usr/include/boost/fusion/adapted/std_tuple/detail/is_view_impl.hpp
+#usr/include/boost/fusion/adapted/std_tuple/detail/size_impl.hpp
+#usr/include/boost/fusion/adapted/std_tuple/detail/value_at_impl.hpp
+#usr/include/boost/fusion/adapted/std_tuple/std_tuple_iterator.hpp
+#usr/include/boost/fusion/adapted/std_tuple/tag_of.hpp
+#usr/include/boost/fusion/adapted/struct
+#usr/include/boost/fusion/adapted/struct.hpp
+#usr/include/boost/fusion/adapted/struct/adapt_assoc_struct.hpp
+#usr/include/boost/fusion/adapted/struct/adapt_assoc_struct_named.hpp
+#usr/include/boost/fusion/adapted/struct/adapt_struct.hpp
+#usr/include/boost/fusion/adapted/struct/adapt_struct_named.hpp
+#usr/include/boost/fusion/adapted/struct/define_assoc_struct.hpp
+#usr/include/boost/fusion/adapted/struct/define_struct.hpp
+#usr/include/boost/fusion/adapted/struct/define_struct_inline.hpp
+#usr/include/boost/fusion/adapted/struct/detail
+#usr/include/boost/fusion/adapted/struct/detail/adapt_base.hpp
+#usr/include/boost/fusion/adapted/struct/detail/at_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/begin_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/category_of_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/define_struct.hpp
+#usr/include/boost/fusion/adapted/struct/detail/define_struct_inline.hpp
+#usr/include/boost/fusion/adapted/struct/detail/deref_data_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/deref_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/end_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/extension.hpp
+#usr/include/boost/fusion/adapted/struct/detail/is_sequence_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/is_view_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/key_of_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/namespace.hpp
+#usr/include/boost/fusion/adapted/struct/detail/proxy_type.hpp
+#usr/include/boost/fusion/adapted/struct/detail/size_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/value_at_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/value_of_data_impl.hpp
+#usr/include/boost/fusion/adapted/struct/detail/value_of_impl.hpp
+#usr/include/boost/fusion/algorithm
+#usr/include/boost/fusion/algorithm.hpp
+#usr/include/boost/fusion/algorithm/auxiliary
+#usr/include/boost/fusion/algorithm/auxiliary.hpp
+#usr/include/boost/fusion/algorithm/auxiliary/copy.hpp
+#usr/include/boost/fusion/algorithm/auxiliary/move.hpp
+#usr/include/boost/fusion/algorithm/iteration
+#usr/include/boost/fusion/algorithm/iteration.hpp
+#usr/include/boost/fusion/algorithm/iteration/accumulate.hpp
+#usr/include/boost/fusion/algorithm/iteration/accumulate_fwd.hpp
+#usr/include/boost/fusion/algorithm/iteration/detail
+#usr/include/boost/fusion/algorithm/iteration/detail/fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/detail/for_each.hpp
+#usr/include/boost/fusion/algorithm/iteration/detail/preprocessed
+#usr/include/boost/fusion/algorithm/iteration/detail/preprocessed/fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/detail/preprocessed/iter_fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/detail/preprocessed/reverse_fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/detail/preprocessed/reverse_iter_fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/detail/segmented_fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/detail/segmented_for_each.hpp
+#usr/include/boost/fusion/algorithm/iteration/fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/fold_fwd.hpp
+#usr/include/boost/fusion/algorithm/iteration/for_each.hpp
+#usr/include/boost/fusion/algorithm/iteration/for_each_fwd.hpp
+#usr/include/boost/fusion/algorithm/iteration/iter_fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/iter_fold_fwd.hpp
+#usr/include/boost/fusion/algorithm/iteration/reverse_fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/reverse_fold_fwd.hpp
+#usr/include/boost/fusion/algorithm/iteration/reverse_iter_fold.hpp
+#usr/include/boost/fusion/algorithm/iteration/reverse_iter_fold_fwd.hpp
+#usr/include/boost/fusion/algorithm/query
+#usr/include/boost/fusion/algorithm/query.hpp
+#usr/include/boost/fusion/algorithm/query/all.hpp
+#usr/include/boost/fusion/algorithm/query/any.hpp
+#usr/include/boost/fusion/algorithm/query/count.hpp
+#usr/include/boost/fusion/algorithm/query/count_if.hpp
+#usr/include/boost/fusion/algorithm/query/detail
+#usr/include/boost/fusion/algorithm/query/detail/all.hpp
+#usr/include/boost/fusion/algorithm/query/detail/any.hpp
+#usr/include/boost/fusion/algorithm/query/detail/count.hpp
+#usr/include/boost/fusion/algorithm/query/detail/count_if.hpp
+#usr/include/boost/fusion/algorithm/query/detail/find_if.hpp
+#usr/include/boost/fusion/algorithm/query/detail/segmented_find.hpp
+#usr/include/boost/fusion/algorithm/query/detail/segmented_find_if.hpp
+#usr/include/boost/fusion/algorithm/query/find.hpp
+#usr/include/boost/fusion/algorithm/query/find_fwd.hpp
+#usr/include/boost/fusion/algorithm/query/find_if.hpp
+#usr/include/boost/fusion/algorithm/query/find_if_fwd.hpp
+#usr/include/boost/fusion/algorithm/query/none.hpp
+#usr/include/boost/fusion/algorithm/transformation
+#usr/include/boost/fusion/algorithm/transformation.hpp
+#usr/include/boost/fusion/algorithm/transformation/clear.hpp
+#usr/include/boost/fusion/algorithm/transformation/detail
+#usr/include/boost/fusion/algorithm/transformation/detail/preprocessed
+#usr/include/boost/fusion/algorithm/transformation/detail/preprocessed/zip.hpp
+#usr/include/boost/fusion/algorithm/transformation/detail/preprocessed/zip10.hpp
+#usr/include/boost/fusion/algorithm/transformation/detail/preprocessed/zip20.hpp
+#usr/include/boost/fusion/algorithm/transformation/detail/preprocessed/zip30.hpp
+#usr/include/boost/fusion/algorithm/transformation/detail/preprocessed/zip40.hpp
+#usr/include/boost/fusion/algorithm/transformation/detail/preprocessed/zip50.hpp
+#usr/include/boost/fusion/algorithm/transformation/detail/replace.hpp
+#usr/include/boost/fusion/algorithm/transformation/detail/replace_if.hpp
+#usr/include/boost/fusion/algorithm/transformation/erase.hpp
+#usr/include/boost/fusion/algorithm/transformation/erase_key.hpp
+#usr/include/boost/fusion/algorithm/transformation/filter.hpp
+#usr/include/boost/fusion/algorithm/transformation/filter_if.hpp
+#usr/include/boost/fusion/algorithm/transformation/insert.hpp
+#usr/include/boost/fusion/algorithm/transformation/insert_range.hpp
+#usr/include/boost/fusion/algorithm/transformation/join.hpp
+#usr/include/boost/fusion/algorithm/transformation/pop_back.hpp
+#usr/include/boost/fusion/algorithm/transformation/pop_front.hpp
+#usr/include/boost/fusion/algorithm/transformation/push_back.hpp
+#usr/include/boost/fusion/algorithm/transformation/push_front.hpp
+#usr/include/boost/fusion/algorithm/transformation/remove.hpp
+#usr/include/boost/fusion/algorithm/transformation/remove_if.hpp
+#usr/include/boost/fusion/algorithm/transformation/replace.hpp
+#usr/include/boost/fusion/algorithm/transformation/replace_if.hpp
+#usr/include/boost/fusion/algorithm/transformation/reverse.hpp
+#usr/include/boost/fusion/algorithm/transformation/transform.hpp
+#usr/include/boost/fusion/algorithm/transformation/zip.hpp
+#usr/include/boost/fusion/container
+#usr/include/boost/fusion/container.hpp
+#usr/include/boost/fusion/container/deque
+#usr/include/boost/fusion/container/deque.hpp
+#usr/include/boost/fusion/container/deque/back_extended_deque.hpp
+#usr/include/boost/fusion/container/deque/convert.hpp
+#usr/include/boost/fusion/container/deque/deque.hpp
+#usr/include/boost/fusion/container/deque/deque_fwd.hpp
+#usr/include/boost/fusion/container/deque/deque_iterator.hpp
+#usr/include/boost/fusion/container/deque/detail
+#usr/include/boost/fusion/container/deque/detail/at_impl.hpp
+#usr/include/boost/fusion/container/deque/detail/begin_impl.hpp
+#usr/include/boost/fusion/container/deque/detail/build_deque.hpp
+#usr/include/boost/fusion/container/deque/detail/convert_impl.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03
+#usr/include/boost/fusion/container/deque/detail/cpp03/as_deque.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/build_deque.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/deque.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/deque_forward_ctor.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/deque_fwd.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/deque_initial_size.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/deque_keyed_values.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/deque_keyed_values_call.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/limits.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/as_deque.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/as_deque10.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/as_deque20.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/as_deque30.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/as_deque40.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/as_deque50.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque10.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque10_fwd.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque20.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque20_fwd.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque30.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque30_fwd.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque40.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque40_fwd.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque50.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque50_fwd.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_fwd.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_initial_size.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_initial_size10.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_initial_size20.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_initial_size30.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_initial_size40.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_initial_size50.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_keyed_values.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_keyed_values10.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_keyed_values20.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_keyed_values30.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_keyed_values40.hpp
+#usr/include/boost/fusion/container/deque/detail/cpp03/preprocessed/deque_keyed_values50.hpp
+#usr/include/boost/fusion/container/deque/detail/deque_keyed_values.hpp
+#usr/include/boost/fusion/container/deque/detail/end_impl.hpp
+#usr/include/boost/fusion/container/deque/detail/is_sequence_impl.hpp
+#usr/include/boost/fusion/container/deque/detail/keyed_element.hpp
+#usr/include/boost/fusion/container/deque/detail/value_at_impl.hpp
+#usr/include/boost/fusion/container/deque/front_extended_deque.hpp
+#usr/include/boost/fusion/container/generation
+#usr/include/boost/fusion/container/generation.hpp
+#usr/include/boost/fusion/container/generation/cons_tie.hpp
+#usr/include/boost/fusion/container/generation/deque_tie.hpp
+#usr/include/boost/fusion/container/generation/detail
+#usr/include/boost/fusion/container/generation/detail/pp_deque_tie.hpp
+#usr/include/boost/fusion/container/generation/detail/pp_make_deque.hpp
+#usr/include/boost/fusion/container/generation/detail/pp_make_map.hpp
+#usr/include/boost/fusion/container/generation/detail/pp_map_tie.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed
+#usr/include/boost/fusion/container/generation/detail/preprocessed/deque_tie.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/deque_tie10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/deque_tie20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/deque_tie30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/deque_tie40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/deque_tie50.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/list_tie.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/list_tie10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/list_tie20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/list_tie30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/list_tie40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/list_tie50.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_deque.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_deque10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_deque20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_deque30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_deque40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_deque50.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_list.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_list10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_list20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_list30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_list40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_list50.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_map.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_map10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_map20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_map30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_map40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_map50.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_set.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_set10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_set20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_set30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_set40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_set50.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_vector.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_vector10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_vector20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_vector30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_vector40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/make_vector50.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/map_tie.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/map_tie10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/map_tie20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/map_tie30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/map_tie40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/map_tie50.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/vector_tie.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/vector_tie10.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/vector_tie20.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/vector_tie30.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/vector_tie40.hpp
+#usr/include/boost/fusion/container/generation/detail/preprocessed/vector_tie50.hpp
+#usr/include/boost/fusion/container/generation/ignore.hpp
+#usr/include/boost/fusion/container/generation/list_tie.hpp
+#usr/include/boost/fusion/container/generation/make_cons.hpp
+#usr/include/boost/fusion/container/generation/make_deque.hpp
+#usr/include/boost/fusion/container/generation/make_list.hpp
+#usr/include/boost/fusion/container/generation/make_map.hpp
+#usr/include/boost/fusion/container/generation/make_set.hpp
+#usr/include/boost/fusion/container/generation/make_vector.hpp
+#usr/include/boost/fusion/container/generation/map_tie.hpp
+#usr/include/boost/fusion/container/generation/pair_tie.hpp
+#usr/include/boost/fusion/container/generation/vector_tie.hpp
+#usr/include/boost/fusion/container/list
+#usr/include/boost/fusion/container/list.hpp
+#usr/include/boost/fusion/container/list/cons.hpp
+#usr/include/boost/fusion/container/list/cons_fwd.hpp
+#usr/include/boost/fusion/container/list/cons_iterator.hpp
+#usr/include/boost/fusion/container/list/convert.hpp
+#usr/include/boost/fusion/container/list/detail
+#usr/include/boost/fusion/container/list/detail/at_impl.hpp
+#usr/include/boost/fusion/container/list/detail/begin_impl.hpp
+#usr/include/boost/fusion/container/list/detail/build_cons.hpp
+#usr/include/boost/fusion/container/list/detail/convert_impl.hpp
+#usr/include/boost/fusion/container/list/detail/deref_impl.hpp
+#usr/include/boost/fusion/container/list/detail/empty_impl.hpp
+#usr/include/boost/fusion/container/list/detail/end_impl.hpp
+#usr/include/boost/fusion/container/list/detail/equal_to_impl.hpp
+#usr/include/boost/fusion/container/list/detail/list_forward_ctor.hpp
+#usr/include/boost/fusion/container/list/detail/list_to_cons.hpp
+#usr/include/boost/fusion/container/list/detail/list_to_cons_call.hpp
+#usr/include/boost/fusion/container/list/detail/next_impl.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed
+#usr/include/boost/fusion/container/list/detail/preprocessed/list.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list10.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list10_fwd.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list20.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list20_fwd.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list30.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list30_fwd.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list40.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list40_fwd.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list50.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list50_fwd.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list_fwd.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list_to_cons.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list_to_cons10.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list_to_cons20.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list_to_cons30.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list_to_cons40.hpp
+#usr/include/boost/fusion/container/list/detail/preprocessed/list_to_cons50.hpp
+#usr/include/boost/fusion/container/list/detail/reverse_cons.hpp
+#usr/include/boost/fusion/container/list/detail/value_at_impl.hpp
+#usr/include/boost/fusion/container/list/detail/value_of_impl.hpp
+#usr/include/boost/fusion/container/list/limits.hpp
+#usr/include/boost/fusion/container/list/list.hpp
+#usr/include/boost/fusion/container/list/list_fwd.hpp
+#usr/include/boost/fusion/container/map
+#usr/include/boost/fusion/container/map.hpp
+#usr/include/boost/fusion/container/map/convert.hpp
+#usr/include/boost/fusion/container/map/detail
+#usr/include/boost/fusion/container/map/detail/at_impl.hpp
+#usr/include/boost/fusion/container/map/detail/at_key_impl.hpp
+#usr/include/boost/fusion/container/map/detail/begin_impl.hpp
+#usr/include/boost/fusion/container/map/detail/build_map.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03
+#usr/include/boost/fusion/container/map/detail/cpp03/as_map.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/at_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/begin_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/convert.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/convert_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/deref_data_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/deref_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/end_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/key_of_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/limits.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/map.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/map_forward_ctor.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/map_fwd.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/as_map.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/as_map10.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/as_map20.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/as_map30.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/as_map40.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/as_map50.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map10.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map10_fwd.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map20.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map20_fwd.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map30.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map30_fwd.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map40.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map40_fwd.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map50.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map50_fwd.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/preprocessed/map_fwd.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/value_at_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/value_of_data_impl.hpp
+#usr/include/boost/fusion/container/map/detail/cpp03/value_of_impl.hpp
+#usr/include/boost/fusion/container/map/detail/end_impl.hpp
+#usr/include/boost/fusion/container/map/detail/map_impl.hpp
+#usr/include/boost/fusion/container/map/detail/map_index.hpp
+#usr/include/boost/fusion/container/map/detail/value_at_impl.hpp
+#usr/include/boost/fusion/container/map/detail/value_at_key_impl.hpp
+#usr/include/boost/fusion/container/map/map.hpp
+#usr/include/boost/fusion/container/map/map_fwd.hpp
+#usr/include/boost/fusion/container/map/map_iterator.hpp
+#usr/include/boost/fusion/container/set
+#usr/include/boost/fusion/container/set.hpp
+#usr/include/boost/fusion/container/set/convert.hpp
+#usr/include/boost/fusion/container/set/detail
+#usr/include/boost/fusion/container/set/detail/as_set.hpp
+#usr/include/boost/fusion/container/set/detail/begin_impl.hpp
+#usr/include/boost/fusion/container/set/detail/convert_impl.hpp
+#usr/include/boost/fusion/container/set/detail/deref_data_impl.hpp
+#usr/include/boost/fusion/container/set/detail/deref_impl.hpp
+#usr/include/boost/fusion/container/set/detail/end_impl.hpp
+#usr/include/boost/fusion/container/set/detail/key_of_impl.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed
+#usr/include/boost/fusion/container/set/detail/preprocessed/as_set.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/as_set10.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/as_set20.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/as_set30.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/as_set40.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/as_set50.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set10.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set10_fwd.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set20.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set20_fwd.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set30.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set30_fwd.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set40.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set40_fwd.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set50.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set50_fwd.hpp
+#usr/include/boost/fusion/container/set/detail/preprocessed/set_fwd.hpp
+#usr/include/boost/fusion/container/set/detail/set_forward_ctor.hpp
+#usr/include/boost/fusion/container/set/detail/value_of_data_impl.hpp
+#usr/include/boost/fusion/container/set/detail/value_of_impl.hpp
+#usr/include/boost/fusion/container/set/limits.hpp
+#usr/include/boost/fusion/container/set/set.hpp
+#usr/include/boost/fusion/container/set/set_fwd.hpp
+#usr/include/boost/fusion/container/vector
+#usr/include/boost/fusion/container/vector.hpp
+#usr/include/boost/fusion/container/vector/convert.hpp
+#usr/include/boost/fusion/container/vector/detail
+#usr/include/boost/fusion/container/vector/detail/advance_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/as_vector.hpp
+#usr/include/boost/fusion/container/vector/detail/at_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/begin_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/convert_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/deref_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/distance_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/end_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/equal_to_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/next_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed
+#usr/include/boost/fusion/container/vector/detail/preprocessed/as_vector.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/as_vector10.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/as_vector20.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/as_vector30.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/as_vector40.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/as_vector50.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector10.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector10_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector20.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector20_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector30.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector30_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector40.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector40_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector50.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector50_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser10.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser20.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser30.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser40.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser50.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vector_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector10.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector10_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector20.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector20_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector30.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector30_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector40.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector40_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector50.hpp
+#usr/include/boost/fusion/container/vector/detail/preprocessed/vvector50_fwd.hpp
+#usr/include/boost/fusion/container/vector/detail/prior_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/value_at_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/value_of_impl.hpp
+#usr/include/boost/fusion/container/vector/detail/vector_forward_ctor.hpp
+#usr/include/boost/fusion/container/vector/detail/vector_n.hpp
+#usr/include/boost/fusion/container/vector/detail/vector_n_chooser.hpp
+#usr/include/boost/fusion/container/vector/limits.hpp
+#usr/include/boost/fusion/container/vector/vector.hpp
+#usr/include/boost/fusion/container/vector/vector10.hpp
+#usr/include/boost/fusion/container/vector/vector10_fwd.hpp
+#usr/include/boost/fusion/container/vector/vector20.hpp
+#usr/include/boost/fusion/container/vector/vector20_fwd.hpp
+#usr/include/boost/fusion/container/vector/vector30.hpp
+#usr/include/boost/fusion/container/vector/vector30_fwd.hpp
+#usr/include/boost/fusion/container/vector/vector40.hpp
+#usr/include/boost/fusion/container/vector/vector40_fwd.hpp
+#usr/include/boost/fusion/container/vector/vector50.hpp
+#usr/include/boost/fusion/container/vector/vector50_fwd.hpp
+#usr/include/boost/fusion/container/vector/vector_fwd.hpp
+#usr/include/boost/fusion/container/vector/vector_iterator.hpp
+#usr/include/boost/fusion/functional
+#usr/include/boost/fusion/functional.hpp
+#usr/include/boost/fusion/functional/adapter
+#usr/include/boost/fusion/functional/adapter.hpp
+#usr/include/boost/fusion/functional/adapter/detail
+#usr/include/boost/fusion/functional/adapter/detail/access.hpp
+#usr/include/boost/fusion/functional/adapter/fused.hpp
+#usr/include/boost/fusion/functional/adapter/fused_function_object.hpp
+#usr/include/boost/fusion/functional/adapter/fused_procedure.hpp
+#usr/include/boost/fusion/functional/adapter/limits.hpp
+#usr/include/boost/fusion/functional/adapter/unfused.hpp
+#usr/include/boost/fusion/functional/adapter/unfused_typed.hpp
+#usr/include/boost/fusion/functional/generation
+#usr/include/boost/fusion/functional/generation.hpp
+#usr/include/boost/fusion/functional/generation/detail
+#usr/include/boost/fusion/functional/generation/detail/gen_make_adapter.hpp
+#usr/include/boost/fusion/functional/generation/make_fused.hpp
+#usr/include/boost/fusion/functional/generation/make_fused_function_object.hpp
+#usr/include/boost/fusion/functional/generation/make_fused_procedure.hpp
+#usr/include/boost/fusion/functional/generation/make_unfused.hpp
+#usr/include/boost/fusion/functional/invocation
+#usr/include/boost/fusion/functional/invocation.hpp
+#usr/include/boost/fusion/functional/invocation/detail
+#usr/include/boost/fusion/functional/invocation/detail/that_ptr.hpp
+#usr/include/boost/fusion/functional/invocation/invoke.hpp
+#usr/include/boost/fusion/functional/invocation/invoke_function_object.hpp
+#usr/include/boost/fusion/functional/invocation/invoke_procedure.hpp
+#usr/include/boost/fusion/functional/invocation/limits.hpp
+#usr/include/boost/fusion/include
+#usr/include/boost/fusion/include/accumulate.hpp
+#usr/include/boost/fusion/include/adapt_adt.hpp
+#usr/include/boost/fusion/include/adapt_adt_named.hpp
+#usr/include/boost/fusion/include/adapt_assoc_adt.hpp
+#usr/include/boost/fusion/include/adapt_assoc_adt_named.hpp
+#usr/include/boost/fusion/include/adapt_assoc_class.hpp
+#usr/include/boost/fusion/include/adapt_assoc_class_named.hpp
+#usr/include/boost/fusion/include/adapt_assoc_struct.hpp
+#usr/include/boost/fusion/include/adapt_assoc_struct_named.hpp
+#usr/include/boost/fusion/include/adapt_struct.hpp
+#usr/include/boost/fusion/include/adapt_struct_named.hpp
+#usr/include/boost/fusion/include/adapted.hpp
+#usr/include/boost/fusion/include/adapter.hpp
+#usr/include/boost/fusion/include/advance.hpp
+#usr/include/boost/fusion/include/algorithm.hpp
+#usr/include/boost/fusion/include/all.hpp
+#usr/include/boost/fusion/include/any.hpp
+#usr/include/boost/fusion/include/array.hpp
+#usr/include/boost/fusion/include/as_deque.hpp
+#usr/include/boost/fusion/include/as_list.hpp
+#usr/include/boost/fusion/include/as_map.hpp
+#usr/include/boost/fusion/include/as_set.hpp
+#usr/include/boost/fusion/include/as_vector.hpp
+#usr/include/boost/fusion/include/at.hpp
+#usr/include/boost/fusion/include/at_c.hpp
+#usr/include/boost/fusion/include/at_key.hpp
+#usr/include/boost/fusion/include/auxiliary.hpp
+#usr/include/boost/fusion/include/back.hpp
+#usr/include/boost/fusion/include/begin.hpp
+#usr/include/boost/fusion/include/boost_array.hpp
+#usr/include/boost/fusion/include/boost_tuple.hpp
+#usr/include/boost/fusion/include/category_of.hpp
+#usr/include/boost/fusion/include/clear.hpp
+#usr/include/boost/fusion/include/comparison.hpp
+#usr/include/boost/fusion/include/cons.hpp
+#usr/include/boost/fusion/include/cons_tie.hpp
+#usr/include/boost/fusion/include/container.hpp
+#usr/include/boost/fusion/include/convert.hpp
+#usr/include/boost/fusion/include/copy.hpp
+#usr/include/boost/fusion/include/count.hpp
+#usr/include/boost/fusion/include/count_if.hpp
+#usr/include/boost/fusion/include/deduce.hpp
+#usr/include/boost/fusion/include/deduce_sequence.hpp
+#usr/include/boost/fusion/include/define_assoc_struct.hpp
+#usr/include/boost/fusion/include/define_struct.hpp
+#usr/include/boost/fusion/include/define_struct_inline.hpp
+#usr/include/boost/fusion/include/deque.hpp
+#usr/include/boost/fusion/include/deque_fwd.hpp
+#usr/include/boost/fusion/include/deque_tie.hpp
+#usr/include/boost/fusion/include/deref.hpp
+#usr/include/boost/fusion/include/deref_data.hpp
+#usr/include/boost/fusion/include/distance.hpp
+#usr/include/boost/fusion/include/empty.hpp
+#usr/include/boost/fusion/include/end.hpp
+#usr/include/boost/fusion/include/equal_to.hpp
+#usr/include/boost/fusion/include/erase.hpp
+#usr/include/boost/fusion/include/erase_key.hpp
+#usr/include/boost/fusion/include/filter.hpp
+#usr/include/boost/fusion/include/filter_if.hpp
+#usr/include/boost/fusion/include/filter_view.hpp
+#usr/include/boost/fusion/include/find.hpp
+#usr/include/boost/fusion/include/find_if.hpp
+#usr/include/boost/fusion/include/fold.hpp
+#usr/include/boost/fusion/include/for_each.hpp
+#usr/include/boost/fusion/include/front.hpp
+#usr/include/boost/fusion/include/functional.hpp
+#usr/include/boost/fusion/include/fused.hpp
+#usr/include/boost/fusion/include/fused_function_object.hpp
+#usr/include/boost/fusion/include/fused_procedure.hpp
+#usr/include/boost/fusion/include/generation.hpp
+#usr/include/boost/fusion/include/greater.hpp
+#usr/include/boost/fusion/include/greater_equal.hpp
+#usr/include/boost/fusion/include/has_key.hpp
+#usr/include/boost/fusion/include/ignore.hpp
+#usr/include/boost/fusion/include/in.hpp
+#usr/include/boost/fusion/include/insert.hpp
+#usr/include/boost/fusion/include/insert_range.hpp
+#usr/include/boost/fusion/include/intrinsic.hpp
+#usr/include/boost/fusion/include/invocation.hpp
+#usr/include/boost/fusion/include/invoke.hpp
+#usr/include/boost/fusion/include/invoke_function_object.hpp
+#usr/include/boost/fusion/include/invoke_procedure.hpp
+#usr/include/boost/fusion/include/io.hpp
+#usr/include/boost/fusion/include/is_iterator.hpp
+#usr/include/boost/fusion/include/is_segmented.hpp
+#usr/include/boost/fusion/include/is_sequence.hpp
+#usr/include/boost/fusion/include/is_view.hpp
+#usr/include/boost/fusion/include/iter_fold.hpp
+#usr/include/boost/fusion/include/iteration.hpp
+#usr/include/boost/fusion/include/iterator.hpp
+#usr/include/boost/fusion/include/iterator_adapter.hpp
+#usr/include/boost/fusion/include/iterator_base.hpp
+#usr/include/boost/fusion/include/iterator_facade.hpp
+#usr/include/boost/fusion/include/iterator_range.hpp
+#usr/include/boost/fusion/include/join.hpp
+#usr/include/boost/fusion/include/joint_view.hpp
+#usr/include/boost/fusion/include/key_of.hpp
+#usr/include/boost/fusion/include/less.hpp
+#usr/include/boost/fusion/include/less_equal.hpp
+#usr/include/boost/fusion/include/list.hpp
+#usr/include/boost/fusion/include/list_fwd.hpp
+#usr/include/boost/fusion/include/list_tie.hpp
+#usr/include/boost/fusion/include/make_cons.hpp
+#usr/include/boost/fusion/include/make_deque.hpp
+#usr/include/boost/fusion/include/make_fused.hpp
+#usr/include/boost/fusion/include/make_fused_function_object.hpp
+#usr/include/boost/fusion/include/make_fused_procedure.hpp
+#usr/include/boost/fusion/include/make_list.hpp
+#usr/include/boost/fusion/include/make_map.hpp
+#usr/include/boost/fusion/include/make_set.hpp
+#usr/include/boost/fusion/include/make_tuple.hpp
+#usr/include/boost/fusion/include/make_unfused.hpp
+#usr/include/boost/fusion/include/make_vector.hpp
+#usr/include/boost/fusion/include/map.hpp
+#usr/include/boost/fusion/include/map_fwd.hpp
+#usr/include/boost/fusion/include/map_tie.hpp
+#usr/include/boost/fusion/include/move.hpp
+#usr/include/boost/fusion/include/mpl.hpp
+#usr/include/boost/fusion/include/next.hpp
+#usr/include/boost/fusion/include/none.hpp
+#usr/include/boost/fusion/include/not_equal_to.hpp
+#usr/include/boost/fusion/include/nview.hpp
+#usr/include/boost/fusion/include/out.hpp
+#usr/include/boost/fusion/include/pair.hpp
+#usr/include/boost/fusion/include/pair_tie.hpp
+#usr/include/boost/fusion/include/pop_back.hpp
+#usr/include/boost/fusion/include/pop_front.hpp
+#usr/include/boost/fusion/include/prior.hpp
+#usr/include/boost/fusion/include/proxy_type.hpp
+#usr/include/boost/fusion/include/push_back.hpp
+#usr/include/boost/fusion/include/push_front.hpp
+#usr/include/boost/fusion/include/query.hpp
+#usr/include/boost/fusion/include/remove.hpp
+#usr/include/boost/fusion/include/remove_if.hpp
+#usr/include/boost/fusion/include/repetitive_view.hpp
+#usr/include/boost/fusion/include/replace.hpp
+#usr/include/boost/fusion/include/replace_if.hpp
+#usr/include/boost/fusion/include/reverse.hpp
+#usr/include/boost/fusion/include/reverse_fold.hpp
+#usr/include/boost/fusion/include/reverse_iter_fold.hpp
+#usr/include/boost/fusion/include/reverse_view.hpp
+#usr/include/boost/fusion/include/segmented_fold_until.hpp
+#usr/include/boost/fusion/include/segmented_iterator.hpp
+#usr/include/boost/fusion/include/segments.hpp
+#usr/include/boost/fusion/include/sequence.hpp
+#usr/include/boost/fusion/include/sequence_base.hpp
+#usr/include/boost/fusion/include/sequence_facade.hpp
+#usr/include/boost/fusion/include/set.hpp
+#usr/include/boost/fusion/include/set_fwd.hpp
+#usr/include/boost/fusion/include/single_view.hpp
+#usr/include/boost/fusion/include/size.hpp
+#usr/include/boost/fusion/include/std_pair.hpp
+#usr/include/boost/fusion/include/struct.hpp
+#usr/include/boost/fusion/include/support.hpp
+#usr/include/boost/fusion/include/swap.hpp
+#usr/include/boost/fusion/include/tag_of.hpp
+#usr/include/boost/fusion/include/tag_of_fwd.hpp
+#usr/include/boost/fusion/include/transform.hpp
+#usr/include/boost/fusion/include/transform_view.hpp
+#usr/include/boost/fusion/include/transformation.hpp
+#usr/include/boost/fusion/include/tuple.hpp
+#usr/include/boost/fusion/include/tuple_fwd.hpp
+#usr/include/boost/fusion/include/tuple_tie.hpp
+#usr/include/boost/fusion/include/unfused.hpp
+#usr/include/boost/fusion/include/unfused_typed.hpp
+#usr/include/boost/fusion/include/unused.hpp
+#usr/include/boost/fusion/include/value_at.hpp
+#usr/include/boost/fusion/include/value_at_key.hpp
+#usr/include/boost/fusion/include/value_of.hpp
+#usr/include/boost/fusion/include/value_of_data.hpp
+#usr/include/boost/fusion/include/vector.hpp
+#usr/include/boost/fusion/include/vector10.hpp
+#usr/include/boost/fusion/include/vector20.hpp
+#usr/include/boost/fusion/include/vector30.hpp
+#usr/include/boost/fusion/include/vector40.hpp
+#usr/include/boost/fusion/include/vector50.hpp
+#usr/include/boost/fusion/include/vector_fwd.hpp
+#usr/include/boost/fusion/include/vector_tie.hpp
+#usr/include/boost/fusion/include/view.hpp
+#usr/include/boost/fusion/include/void.hpp
+#usr/include/boost/fusion/include/zip.hpp
+#usr/include/boost/fusion/include/zip_view.hpp
+#usr/include/boost/fusion/iterator
+#usr/include/boost/fusion/iterator.hpp
+#usr/include/boost/fusion/iterator/advance.hpp
+#usr/include/boost/fusion/iterator/basic_iterator.hpp
+#usr/include/boost/fusion/iterator/deref.hpp
+#usr/include/boost/fusion/iterator/deref_data.hpp
+#usr/include/boost/fusion/iterator/detail
+#usr/include/boost/fusion/iterator/detail/adapt_deref_traits.hpp
+#usr/include/boost/fusion/iterator/detail/adapt_value_traits.hpp
+#usr/include/boost/fusion/iterator/detail/advance.hpp
+#usr/include/boost/fusion/iterator/detail/distance.hpp
+#usr/include/boost/fusion/iterator/detail/segment_sequence.hpp
+#usr/include/boost/fusion/iterator/detail/segmented_equal_to.hpp
+#usr/include/boost/fusion/iterator/detail/segmented_iterator.hpp
+#usr/include/boost/fusion/iterator/detail/segmented_next_impl.hpp
+#usr/include/boost/fusion/iterator/distance.hpp
+#usr/include/boost/fusion/iterator/equal_to.hpp
+#usr/include/boost/fusion/iterator/iterator_adapter.hpp
+#usr/include/boost/fusion/iterator/iterator_facade.hpp
+#usr/include/boost/fusion/iterator/key_of.hpp
+#usr/include/boost/fusion/iterator/mpl
+#usr/include/boost/fusion/iterator/mpl.hpp
+#usr/include/boost/fusion/iterator/mpl/convert_iterator.hpp
+#usr/include/boost/fusion/iterator/mpl/fusion_iterator.hpp
+#usr/include/boost/fusion/iterator/next.hpp
+#usr/include/boost/fusion/iterator/prior.hpp
+#usr/include/boost/fusion/iterator/segmented_iterator.hpp
+#usr/include/boost/fusion/iterator/value_of.hpp
+#usr/include/boost/fusion/iterator/value_of_data.hpp
+#usr/include/boost/fusion/mpl
+#usr/include/boost/fusion/mpl.hpp
+#usr/include/boost/fusion/mpl/at.hpp
+#usr/include/boost/fusion/mpl/back.hpp
+#usr/include/boost/fusion/mpl/begin.hpp
+#usr/include/boost/fusion/mpl/clear.hpp
+#usr/include/boost/fusion/mpl/detail
+#usr/include/boost/fusion/mpl/detail/clear.hpp
+#usr/include/boost/fusion/mpl/empty.hpp
+#usr/include/boost/fusion/mpl/end.hpp
+#usr/include/boost/fusion/mpl/erase.hpp
+#usr/include/boost/fusion/mpl/erase_key.hpp
+#usr/include/boost/fusion/mpl/front.hpp
+#usr/include/boost/fusion/mpl/has_key.hpp
+#usr/include/boost/fusion/mpl/insert.hpp
+#usr/include/boost/fusion/mpl/insert_range.hpp
+#usr/include/boost/fusion/mpl/pop_back.hpp
+#usr/include/boost/fusion/mpl/pop_front.hpp
+#usr/include/boost/fusion/mpl/push_back.hpp
+#usr/include/boost/fusion/mpl/push_front.hpp
+#usr/include/boost/fusion/mpl/size.hpp
+#usr/include/boost/fusion/sequence
+#usr/include/boost/fusion/sequence.hpp
+#usr/include/boost/fusion/sequence/comparison
+#usr/include/boost/fusion/sequence/comparison.hpp
+#usr/include/boost/fusion/sequence/comparison/detail
+#usr/include/boost/fusion/sequence/comparison/detail/equal_to.hpp
+#usr/include/boost/fusion/sequence/comparison/detail/greater.hpp
+#usr/include/boost/fusion/sequence/comparison/detail/greater_equal.hpp
+#usr/include/boost/fusion/sequence/comparison/detail/less.hpp
+#usr/include/boost/fusion/sequence/comparison/detail/less_equal.hpp
+#usr/include/boost/fusion/sequence/comparison/detail/not_equal_to.hpp
+#usr/include/boost/fusion/sequence/comparison/enable_comparison.hpp
+#usr/include/boost/fusion/sequence/comparison/equal_to.hpp
+#usr/include/boost/fusion/sequence/comparison/greater.hpp
+#usr/include/boost/fusion/sequence/comparison/greater_equal.hpp
+#usr/include/boost/fusion/sequence/comparison/less.hpp
+#usr/include/boost/fusion/sequence/comparison/less_equal.hpp
+#usr/include/boost/fusion/sequence/comparison/not_equal_to.hpp
+#usr/include/boost/fusion/sequence/convert.hpp
+#usr/include/boost/fusion/sequence/intrinsic
+#usr/include/boost/fusion/sequence/intrinsic.hpp
+#usr/include/boost/fusion/sequence/intrinsic/at.hpp
+#usr/include/boost/fusion/sequence/intrinsic/at_c.hpp
+#usr/include/boost/fusion/sequence/intrinsic/at_key.hpp
+#usr/include/boost/fusion/sequence/intrinsic/back.hpp
+#usr/include/boost/fusion/sequence/intrinsic/begin.hpp
+#usr/include/boost/fusion/sequence/intrinsic/detail
+#usr/include/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp
+#usr/include/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp
+#usr/include/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp
+#usr/include/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp
+#usr/include/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp
+#usr/include/boost/fusion/sequence/intrinsic/empty.hpp
+#usr/include/boost/fusion/sequence/intrinsic/end.hpp
+#usr/include/boost/fusion/sequence/intrinsic/front.hpp
+#usr/include/boost/fusion/sequence/intrinsic/has_key.hpp
+#usr/include/boost/fusion/sequence/intrinsic/segments.hpp
+#usr/include/boost/fusion/sequence/intrinsic/size.hpp
+#usr/include/boost/fusion/sequence/intrinsic/swap.hpp
+#usr/include/boost/fusion/sequence/intrinsic/value_at.hpp
+#usr/include/boost/fusion/sequence/intrinsic/value_at_key.hpp
+#usr/include/boost/fusion/sequence/intrinsic_fwd.hpp
+#usr/include/boost/fusion/sequence/io
+#usr/include/boost/fusion/sequence/io.hpp
+#usr/include/boost/fusion/sequence/io/detail
+#usr/include/boost/fusion/sequence/io/detail/in.hpp
+#usr/include/boost/fusion/sequence/io/detail/manip.hpp
+#usr/include/boost/fusion/sequence/io/detail/out.hpp
+#usr/include/boost/fusion/sequence/io/in.hpp
+#usr/include/boost/fusion/sequence/io/out.hpp
+#usr/include/boost/fusion/sequence/sequence_facade.hpp
+#usr/include/boost/fusion/support
+#usr/include/boost/fusion/support.hpp
+#usr/include/boost/fusion/support/as_const.hpp
+#usr/include/boost/fusion/support/category_of.hpp
+#usr/include/boost/fusion/support/deduce.hpp
+#usr/include/boost/fusion/support/deduce_sequence.hpp
+#usr/include/boost/fusion/support/detail
+#usr/include/boost/fusion/support/detail/access.hpp
+#usr/include/boost/fusion/support/detail/as_fusion_element.hpp
+#usr/include/boost/fusion/support/detail/category_of.hpp
+#usr/include/boost/fusion/support/detail/is_mpl_sequence.hpp
+#usr/include/boost/fusion/support/detail/is_view.hpp
+#usr/include/boost/fusion/support/detail/mpl_iterator_category.hpp
+#usr/include/boost/fusion/support/detail/pp_round.hpp
+#usr/include/boost/fusion/support/detail/segmented_fold_until_impl.hpp
+#usr/include/boost/fusion/support/detail/unknown_key.hpp
+#usr/include/boost/fusion/support/is_iterator.hpp
+#usr/include/boost/fusion/support/is_segmented.hpp
+#usr/include/boost/fusion/support/is_sequence.hpp
+#usr/include/boost/fusion/support/is_view.hpp
+#usr/include/boost/fusion/support/iterator_base.hpp
+#usr/include/boost/fusion/support/pair.hpp
+#usr/include/boost/fusion/support/segmented_fold_until.hpp
+#usr/include/boost/fusion/support/sequence_base.hpp
+#usr/include/boost/fusion/support/tag_of.hpp
+#usr/include/boost/fusion/support/tag_of_fwd.hpp
+#usr/include/boost/fusion/support/unused.hpp
+#usr/include/boost/fusion/support/void.hpp
+#usr/include/boost/fusion/tuple
+#usr/include/boost/fusion/tuple.hpp
+#usr/include/boost/fusion/tuple/detail
+#usr/include/boost/fusion/tuple/detail/preprocessed
+#usr/include/boost/fusion/tuple/detail/preprocessed/make_tuple.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/make_tuple10.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/make_tuple20.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/make_tuple30.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/make_tuple40.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/make_tuple50.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple10.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple10_fwd.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple20.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple20_fwd.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple30.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple30_fwd.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple40.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple40_fwd.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple50.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple50_fwd.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple_fwd.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple_tie.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple_tie10.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple_tie20.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple_tie30.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple_tie40.hpp
+#usr/include/boost/fusion/tuple/detail/preprocessed/tuple_tie50.hpp
+#usr/include/boost/fusion/tuple/detail/tuple_expand.hpp
+#usr/include/boost/fusion/tuple/make_tuple.hpp
+#usr/include/boost/fusion/tuple/tuple.hpp
+#usr/include/boost/fusion/tuple/tuple_fwd.hpp
+#usr/include/boost/fusion/tuple/tuple_tie.hpp
+#usr/include/boost/fusion/view
+#usr/include/boost/fusion/view.hpp
+#usr/include/boost/fusion/view/detail
+#usr/include/boost/fusion/view/detail/strictest_traversal.hpp
+#usr/include/boost/fusion/view/filter_view
+#usr/include/boost/fusion/view/filter_view.hpp
+#usr/include/boost/fusion/view/filter_view/detail
+#usr/include/boost/fusion/view/filter_view/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/deref_data_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/deref_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/end_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/equal_to_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/key_of_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/next_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/size_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/value_of_data_impl.hpp
+#usr/include/boost/fusion/view/filter_view/detail/value_of_impl.hpp
+#usr/include/boost/fusion/view/filter_view/filter_view.hpp
+#usr/include/boost/fusion/view/filter_view/filter_view_iterator.hpp
+#usr/include/boost/fusion/view/iterator_range
+#usr/include/boost/fusion/view/iterator_range.hpp
+#usr/include/boost/fusion/view/iterator_range/detail
+#usr/include/boost/fusion/view/iterator_range/detail/at_impl.hpp
+#usr/include/boost/fusion/view/iterator_range/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/iterator_range/detail/end_impl.hpp
+#usr/include/boost/fusion/view/iterator_range/detail/is_segmented_impl.hpp
+#usr/include/boost/fusion/view/iterator_range/detail/segmented_iterator_range.hpp
+#usr/include/boost/fusion/view/iterator_range/detail/segments_impl.hpp
+#usr/include/boost/fusion/view/iterator_range/detail/size_impl.hpp
+#usr/include/boost/fusion/view/iterator_range/detail/value_at_impl.hpp
+#usr/include/boost/fusion/view/iterator_range/iterator_range.hpp
+#usr/include/boost/fusion/view/joint_view
+#usr/include/boost/fusion/view/joint_view.hpp
+#usr/include/boost/fusion/view/joint_view/detail
+#usr/include/boost/fusion/view/joint_view/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/joint_view/detail/deref_data_impl.hpp
+#usr/include/boost/fusion/view/joint_view/detail/deref_impl.hpp
+#usr/include/boost/fusion/view/joint_view/detail/end_impl.hpp
+#usr/include/boost/fusion/view/joint_view/detail/key_of_impl.hpp
+#usr/include/boost/fusion/view/joint_view/detail/next_impl.hpp
+#usr/include/boost/fusion/view/joint_view/detail/value_of_data_impl.hpp
+#usr/include/boost/fusion/view/joint_view/detail/value_of_impl.hpp
+#usr/include/boost/fusion/view/joint_view/joint_view.hpp
+#usr/include/boost/fusion/view/joint_view/joint_view_fwd.hpp
+#usr/include/boost/fusion/view/joint_view/joint_view_iterator.hpp
+#usr/include/boost/fusion/view/nview
+#usr/include/boost/fusion/view/nview.hpp
+#usr/include/boost/fusion/view/nview/detail
+#usr/include/boost/fusion/view/nview/detail/advance_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/at_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/deref_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/distance_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/end_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/equal_to_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/next_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/nview_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/prior_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/size_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/value_at_impl.hpp
+#usr/include/boost/fusion/view/nview/detail/value_of_impl.hpp
+#usr/include/boost/fusion/view/nview/nview.hpp
+#usr/include/boost/fusion/view/nview/nview_iterator.hpp
+#usr/include/boost/fusion/view/repetitive_view
+#usr/include/boost/fusion/view/repetitive_view.hpp
+#usr/include/boost/fusion/view/repetitive_view/detail
+#usr/include/boost/fusion/view/repetitive_view/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/repetitive_view/detail/deref_impl.hpp
+#usr/include/boost/fusion/view/repetitive_view/detail/end_impl.hpp
+#usr/include/boost/fusion/view/repetitive_view/detail/next_impl.hpp
+#usr/include/boost/fusion/view/repetitive_view/detail/value_of_impl.hpp
+#usr/include/boost/fusion/view/repetitive_view/repetitive_view.hpp
+#usr/include/boost/fusion/view/repetitive_view/repetitive_view_fwd.hpp
+#usr/include/boost/fusion/view/repetitive_view/repetitive_view_iterator.hpp
+#usr/include/boost/fusion/view/reverse_view
+#usr/include/boost/fusion/view/reverse_view.hpp
+#usr/include/boost/fusion/view/reverse_view/detail
+#usr/include/boost/fusion/view/reverse_view/detail/advance_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/at_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/deref_data_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/deref_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/distance_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/end_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/key_of_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/next_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/prior_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/value_at_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/value_of_data_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/detail/value_of_impl.hpp
+#usr/include/boost/fusion/view/reverse_view/reverse_view.hpp
+#usr/include/boost/fusion/view/reverse_view/reverse_view_iterator.hpp
+#usr/include/boost/fusion/view/single_view
+#usr/include/boost/fusion/view/single_view.hpp
+#usr/include/boost/fusion/view/single_view/detail
+#usr/include/boost/fusion/view/single_view/detail/advance_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/at_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/deref_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/distance_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/end_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/equal_to_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/next_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/prior_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/size_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/value_at_impl.hpp
+#usr/include/boost/fusion/view/single_view/detail/value_of_impl.hpp
+#usr/include/boost/fusion/view/single_view/single_view.hpp
+#usr/include/boost/fusion/view/single_view/single_view_iterator.hpp
+#usr/include/boost/fusion/view/transform_view
+#usr/include/boost/fusion/view/transform_view.hpp
+#usr/include/boost/fusion/view/transform_view/detail
+#usr/include/boost/fusion/view/transform_view/detail/advance_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/apply_transform_result.hpp
+#usr/include/boost/fusion/view/transform_view/detail/at_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/deref_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/distance_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/end_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/equal_to_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/next_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/prior_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/value_at_impl.hpp
+#usr/include/boost/fusion/view/transform_view/detail/value_of_impl.hpp
+#usr/include/boost/fusion/view/transform_view/transform_view.hpp
+#usr/include/boost/fusion/view/transform_view/transform_view_fwd.hpp
+#usr/include/boost/fusion/view/transform_view/transform_view_iterator.hpp
+#usr/include/boost/fusion/view/zip_view
+#usr/include/boost/fusion/view/zip_view.hpp
+#usr/include/boost/fusion/view/zip_view/detail
+#usr/include/boost/fusion/view/zip_view/detail/advance_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/at_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/begin_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/deref_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/distance_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/end_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/equal_to_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/next_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/prior_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/size_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/value_at_impl.hpp
+#usr/include/boost/fusion/view/zip_view/detail/value_of_impl.hpp
+#usr/include/boost/fusion/view/zip_view/zip_view.hpp
+#usr/include/boost/fusion/view/zip_view/zip_view_iterator.hpp
+#usr/include/boost/fusion/view/zip_view/zip_view_iterator_fwd.hpp
+#usr/include/boost/generator_iterator.hpp
+#usr/include/boost/geometry
+#usr/include/boost/geometry.hpp
+#usr/include/boost/geometry/algorithms
+#usr/include/boost/geometry/algorithms/append.hpp
+#usr/include/boost/geometry/algorithms/area.hpp
+#usr/include/boost/geometry/algorithms/assign.hpp
+#usr/include/boost/geometry/algorithms/buffer.hpp
+#usr/include/boost/geometry/algorithms/centroid.hpp
+#usr/include/boost/geometry/algorithms/clear.hpp
+#usr/include/boost/geometry/algorithms/comparable_distance.hpp
+#usr/include/boost/geometry/algorithms/convert.hpp
+#usr/include/boost/geometry/algorithms/convex_hull.hpp
+#usr/include/boost/geometry/algorithms/correct.hpp
+#usr/include/boost/geometry/algorithms/covered_by.hpp
+#usr/include/boost/geometry/algorithms/detail
+#usr/include/boost/geometry/algorithms/detail/as_range.hpp
+#usr/include/boost/geometry/algorithms/detail/assign_box_corners.hpp
+#usr/include/boost/geometry/algorithms/detail/assign_indexed_point.hpp
+#usr/include/boost/geometry/algorithms/detail/assign_values.hpp
+#usr/include/boost/geometry/algorithms/detail/calculate_null.hpp
+#usr/include/boost/geometry/algorithms/detail/calculate_sum.hpp
+#usr/include/boost/geometry/algorithms/detail/convert_indexed_to_indexed.hpp
+#usr/include/boost/geometry/algorithms/detail/convert_point_to_point.hpp
+#usr/include/boost/geometry/algorithms/detail/disjoint.hpp
+#usr/include/boost/geometry/algorithms/detail/equals
+#usr/include/boost/geometry/algorithms/detail/equals/collect_vectors.hpp
+#usr/include/boost/geometry/algorithms/detail/for_each_range.hpp
+#usr/include/boost/geometry/algorithms/detail/get_left_turns.hpp
+#usr/include/boost/geometry/algorithms/detail/has_self_intersections.hpp
+#usr/include/boost/geometry/algorithms/detail/not.hpp
+#usr/include/boost/geometry/algorithms/detail/occupation_info.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay
+#usr/include/boost/geometry/algorithms/detail/overlay/add_rings.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/append_no_duplicates.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/append_no_dups_or_spikes.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/assign_parents.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/backtrack_check_si.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/calculate_distance_policy.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/check_enrich.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/clip_linestring.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/convert_ring.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/copy_segment_point.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/copy_segments.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/debug_turn_info.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/enrich_intersection_points.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/enrichment_info.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/follow.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/get_intersection_points.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/get_relative_order.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/get_ring.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/get_turns.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/handle_tangencies.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/intersection_insert.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/overlay.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/overlay_type.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/ring_properties.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/segment_identifier.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/select_rings.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/self_turn_points.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/stream_info.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/traversal_info.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/traverse.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/turn_info.hpp
+#usr/include/boost/geometry/algorithms/detail/overlay/visit_info.hpp
+#usr/include/boost/geometry/algorithms/detail/partition.hpp
+#usr/include/boost/geometry/algorithms/detail/point_is_spike_or_equal.hpp
+#usr/include/boost/geometry/algorithms/detail/point_on_border.hpp
+#usr/include/boost/geometry/algorithms/detail/ring_identifier.hpp
+#usr/include/boost/geometry/algorithms/detail/sections
+#usr/include/boost/geometry/algorithms/detail/sections/range_by_section.hpp
+#usr/include/boost/geometry/algorithms/detail/sections/sectionalize.hpp
+#usr/include/boost/geometry/algorithms/detail/throw_on_empty_input.hpp
+#usr/include/boost/geometry/algorithms/difference.hpp
+#usr/include/boost/geometry/algorithms/disjoint.hpp
+#usr/include/boost/geometry/algorithms/distance.hpp
+#usr/include/boost/geometry/algorithms/envelope.hpp
+#usr/include/boost/geometry/algorithms/equals.hpp
+#usr/include/boost/geometry/algorithms/expand.hpp
+#usr/include/boost/geometry/algorithms/for_each.hpp
+#usr/include/boost/geometry/algorithms/intersection.hpp
+#usr/include/boost/geometry/algorithms/intersects.hpp
+#usr/include/boost/geometry/algorithms/length.hpp
+#usr/include/boost/geometry/algorithms/make.hpp
+#usr/include/boost/geometry/algorithms/not_implemented.hpp
+#usr/include/boost/geometry/algorithms/num_geometries.hpp
+#usr/include/boost/geometry/algorithms/num_interior_rings.hpp
+#usr/include/boost/geometry/algorithms/num_points.hpp
+#usr/include/boost/geometry/algorithms/overlaps.hpp
+#usr/include/boost/geometry/algorithms/perimeter.hpp
+#usr/include/boost/geometry/algorithms/reverse.hpp
+#usr/include/boost/geometry/algorithms/simplify.hpp
+#usr/include/boost/geometry/algorithms/sym_difference.hpp
+#usr/include/boost/geometry/algorithms/touches.hpp
+#usr/include/boost/geometry/algorithms/transform.hpp
+#usr/include/boost/geometry/algorithms/union.hpp
+#usr/include/boost/geometry/algorithms/unique.hpp
+#usr/include/boost/geometry/algorithms/within.hpp
+#usr/include/boost/geometry/arithmetic
+#usr/include/boost/geometry/arithmetic/arithmetic.hpp
+#usr/include/boost/geometry/arithmetic/determinant.hpp
+#usr/include/boost/geometry/arithmetic/dot_product.hpp
+#usr/include/boost/geometry/core
+#usr/include/boost/geometry/core/access.hpp
+#usr/include/boost/geometry/core/closure.hpp
+#usr/include/boost/geometry/core/coordinate_dimension.hpp
+#usr/include/boost/geometry/core/coordinate_system.hpp
+#usr/include/boost/geometry/core/coordinate_type.hpp
+#usr/include/boost/geometry/core/cs.hpp
+#usr/include/boost/geometry/core/exception.hpp
+#usr/include/boost/geometry/core/exterior_ring.hpp
+#usr/include/boost/geometry/core/geometry_id.hpp
+#usr/include/boost/geometry/core/interior_rings.hpp
+#usr/include/boost/geometry/core/interior_type.hpp
+#usr/include/boost/geometry/core/is_areal.hpp
+#usr/include/boost/geometry/core/mutable_range.hpp
+#usr/include/boost/geometry/core/point_order.hpp
+#usr/include/boost/geometry/core/point_type.hpp
+#usr/include/boost/geometry/core/radian_access.hpp
+#usr/include/boost/geometry/core/reverse_dispatch.hpp
+#usr/include/boost/geometry/core/ring_type.hpp
+#usr/include/boost/geometry/core/tag.hpp
+#usr/include/boost/geometry/core/tag_cast.hpp
+#usr/include/boost/geometry/core/tags.hpp
+#usr/include/boost/geometry/core/topological_dimension.hpp
+#usr/include/boost/geometry/geometries
+#usr/include/boost/geometry/geometries/adapted
+#usr/include/boost/geometry/geometries/adapted/boost_array.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_fusion.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_polygon
+#usr/include/boost/geometry/geometries/adapted/boost_polygon.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_polygon/box.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_polygon/hole_iterator.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_polygon/holes_proxy.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_polygon/point.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_polygon/polygon.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_polygon/ring.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_polygon/ring_proxy.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_range
+#usr/include/boost/geometry/geometries/adapted/boost_range/adjacent_filtered.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_range/filtered.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_range/reversed.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_range/sliced.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_range/strided.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_range/uniqued.hpp
+#usr/include/boost/geometry/geometries/adapted/boost_tuple.hpp
+#usr/include/boost/geometry/geometries/adapted/c_array.hpp
+#usr/include/boost/geometry/geometries/adapted/std_pair_as_segment.hpp
+#usr/include/boost/geometry/geometries/box.hpp
+#usr/include/boost/geometry/geometries/concepts
+#usr/include/boost/geometry/geometries/concepts/box_concept.hpp
+#usr/include/boost/geometry/geometries/concepts/check.hpp
+#usr/include/boost/geometry/geometries/concepts/linestring_concept.hpp
+#usr/include/boost/geometry/geometries/concepts/point_concept.hpp
+#usr/include/boost/geometry/geometries/concepts/polygon_concept.hpp
+#usr/include/boost/geometry/geometries/concepts/ring_concept.hpp
+#usr/include/boost/geometry/geometries/concepts/segment_concept.hpp
+#usr/include/boost/geometry/geometries/geometries.hpp
+#usr/include/boost/geometry/geometries/linestring.hpp
+#usr/include/boost/geometry/geometries/point.hpp
+#usr/include/boost/geometry/geometries/point_xy.hpp
+#usr/include/boost/geometry/geometries/polygon.hpp
+#usr/include/boost/geometry/geometries/register
+#usr/include/boost/geometry/geometries/register/box.hpp
+#usr/include/boost/geometry/geometries/register/linestring.hpp
+#usr/include/boost/geometry/geometries/register/point.hpp
+#usr/include/boost/geometry/geometries/register/ring.hpp
+#usr/include/boost/geometry/geometries/register/segment.hpp
+#usr/include/boost/geometry/geometries/ring.hpp
+#usr/include/boost/geometry/geometries/segment.hpp
+#usr/include/boost/geometry/geometries/variant.hpp
+#usr/include/boost/geometry/geometry.hpp
+#usr/include/boost/geometry/index
+#usr/include/boost/geometry/index/adaptors
+#usr/include/boost/geometry/index/adaptors/query.hpp
+#usr/include/boost/geometry/index/detail
+#usr/include/boost/geometry/index/detail/algorithms
+#usr/include/boost/geometry/index/detail/algorithms/bounds.hpp
+#usr/include/boost/geometry/index/detail/algorithms/comparable_distance_centroid.hpp
+#usr/include/boost/geometry/index/detail/algorithms/comparable_distance_far.hpp
+#usr/include/boost/geometry/index/detail/algorithms/comparable_distance_near.hpp
+#usr/include/boost/geometry/index/detail/algorithms/content.hpp
+#usr/include/boost/geometry/index/detail/algorithms/diff_abs.hpp
+#usr/include/boost/geometry/index/detail/algorithms/intersection_content.hpp
+#usr/include/boost/geometry/index/detail/algorithms/is_valid.hpp
+#usr/include/boost/geometry/index/detail/algorithms/margin.hpp
+#usr/include/boost/geometry/index/detail/algorithms/minmaxdist.hpp
+#usr/include/boost/geometry/index/detail/algorithms/path_intersection.hpp
+#usr/include/boost/geometry/index/detail/algorithms/segment_intersection.hpp
+#usr/include/boost/geometry/index/detail/algorithms/smallest_for_indexable.hpp
+#usr/include/boost/geometry/index/detail/algorithms/sum_for_indexable.hpp
+#usr/include/boost/geometry/index/detail/algorithms/union_content.hpp
+#usr/include/boost/geometry/index/detail/assert.hpp
+#usr/include/boost/geometry/index/detail/config_begin.hpp
+#usr/include/boost/geometry/index/detail/config_end.hpp
+#usr/include/boost/geometry/index/detail/distance_predicates.hpp
+#usr/include/boost/geometry/index/detail/exception.hpp
+#usr/include/boost/geometry/index/detail/meta.hpp
+#usr/include/boost/geometry/index/detail/predicates.hpp
+#usr/include/boost/geometry/index/detail/pushable_array.hpp
+#usr/include/boost/geometry/index/detail/rtree
+#usr/include/boost/geometry/index/detail/rtree/adaptors.hpp
+#usr/include/boost/geometry/index/detail/rtree/kmeans
+#usr/include/boost/geometry/index/detail/rtree/kmeans/kmeans.hpp
+#usr/include/boost/geometry/index/detail/rtree/kmeans/split.hpp
+#usr/include/boost/geometry/index/detail/rtree/linear
+#usr/include/boost/geometry/index/detail/rtree/linear/linear.hpp
+#usr/include/boost/geometry/index/detail/rtree/linear/redistribute_elements.hpp
+#usr/include/boost/geometry/index/detail/rtree/node
+#usr/include/boost/geometry/index/detail/rtree/node/auto_deallocator.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/concept.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/dynamic_visitor.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/node.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/node_auto_ptr.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/node_d_mem_dynamic.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/node_d_mem_static.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/node_s_mem_dynamic.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/node_s_mem_static.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/pairs.hpp
+#usr/include/boost/geometry/index/detail/rtree/node/static_visitor.hpp
+#usr/include/boost/geometry/index/detail/rtree/options.hpp
+#usr/include/boost/geometry/index/detail/rtree/pack_create.hpp
+#usr/include/boost/geometry/index/detail/rtree/quadratic
+#usr/include/boost/geometry/index/detail/rtree/quadratic/quadratic.hpp
+#usr/include/boost/geometry/index/detail/rtree/quadratic/redistribute_elements.hpp
+#usr/include/boost/geometry/index/detail/rtree/query_iterators.hpp
+#usr/include/boost/geometry/index/detail/rtree/rstar
+#usr/include/boost/geometry/index/detail/rtree/rstar/choose_next_node.hpp
+#usr/include/boost/geometry/index/detail/rtree/rstar/insert.hpp
+#usr/include/boost/geometry/index/detail/rtree/rstar/redistribute_elements.hpp
+#usr/include/boost/geometry/index/detail/rtree/rstar/rstar.hpp
+#usr/include/boost/geometry/index/detail/rtree/utilities
+#usr/include/boost/geometry/index/detail/rtree/utilities/are_boxes_ok.hpp
+#usr/include/boost/geometry/index/detail/rtree/utilities/are_levels_ok.hpp
+#usr/include/boost/geometry/index/detail/rtree/utilities/gl_draw.hpp
+#usr/include/boost/geometry/index/detail/rtree/utilities/print.hpp
+#usr/include/boost/geometry/index/detail/rtree/utilities/statistics.hpp
+#usr/include/boost/geometry/index/detail/rtree/utilities/view.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors
+#usr/include/boost/geometry/index/detail/rtree/visitors/children_box.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors/copy.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors/count.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors/destroy.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors/distance_query.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors/insert.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors/is_leaf.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors/remove.hpp
+#usr/include/boost/geometry/index/detail/rtree/visitors/spatial_query.hpp
+#usr/include/boost/geometry/index/detail/serialization.hpp
+#usr/include/boost/geometry/index/detail/tags.hpp
+#usr/include/boost/geometry/index/detail/translator.hpp
+#usr/include/boost/geometry/index/detail/tuples.hpp
+#usr/include/boost/geometry/index/detail/utilities.hpp
+#usr/include/boost/geometry/index/detail/varray.hpp
+#usr/include/boost/geometry/index/detail/varray_detail.hpp
+#usr/include/boost/geometry/index/distance_predicates.hpp
+#usr/include/boost/geometry/index/equal_to.hpp
+#usr/include/boost/geometry/index/indexable.hpp
+#usr/include/boost/geometry/index/inserter.hpp
+#usr/include/boost/geometry/index/parameters.hpp
+#usr/include/boost/geometry/index/predicates.hpp
+#usr/include/boost/geometry/index/rtree.hpp
+#usr/include/boost/geometry/io
+#usr/include/boost/geometry/io/dsv
+#usr/include/boost/geometry/io/dsv/write.hpp
+#usr/include/boost/geometry/io/io.hpp
+#usr/include/boost/geometry/io/svg
+#usr/include/boost/geometry/io/svg/svg_mapper.hpp
+#usr/include/boost/geometry/io/svg/write_svg.hpp
+#usr/include/boost/geometry/io/svg/write_svg_multi.hpp
+#usr/include/boost/geometry/io/wkt
+#usr/include/boost/geometry/io/wkt/detail
+#usr/include/boost/geometry/io/wkt/detail/prefix.hpp
+#usr/include/boost/geometry/io/wkt/detail/wkt_multi.hpp
+#usr/include/boost/geometry/io/wkt/read.hpp
+#usr/include/boost/geometry/io/wkt/stream.hpp
+#usr/include/boost/geometry/io/wkt/wkt.hpp
+#usr/include/boost/geometry/io/wkt/write.hpp
+#usr/include/boost/geometry/iterators
+#usr/include/boost/geometry/iterators/base.hpp
+#usr/include/boost/geometry/iterators/closing_iterator.hpp
+#usr/include/boost/geometry/iterators/ever_circling_iterator.hpp
+#usr/include/boost/geometry/multi
+#usr/include/boost/geometry/multi/algorithms
+#usr/include/boost/geometry/multi/algorithms/append.hpp
+#usr/include/boost/geometry/multi/algorithms/area.hpp
+#usr/include/boost/geometry/multi/algorithms/centroid.hpp
+#usr/include/boost/geometry/multi/algorithms/clear.hpp
+#usr/include/boost/geometry/multi/algorithms/convert.hpp
+#usr/include/boost/geometry/multi/algorithms/correct.hpp
+#usr/include/boost/geometry/multi/algorithms/covered_by.hpp
+#usr/include/boost/geometry/multi/algorithms/detail
+#usr/include/boost/geometry/multi/algorithms/detail/for_each_range.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/modify.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/modify_with_predicate.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/multi_sum.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/overlay
+#usr/include/boost/geometry/multi/algorithms/detail/overlay/copy_segment_point.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/overlay/copy_segments.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/overlay/get_ring.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/overlay/get_turns.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/overlay/select_rings.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/overlay/self_turn_points.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/point_on_border.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/sections
+#usr/include/boost/geometry/multi/algorithms/detail/sections/range_by_section.hpp
+#usr/include/boost/geometry/multi/algorithms/detail/sections/sectionalize.hpp
+#usr/include/boost/geometry/multi/algorithms/disjoint.hpp
+#usr/include/boost/geometry/multi/algorithms/distance.hpp
+#usr/include/boost/geometry/multi/algorithms/envelope.hpp
+#usr/include/boost/geometry/multi/algorithms/equals.hpp
+#usr/include/boost/geometry/multi/algorithms/for_each.hpp
+#usr/include/boost/geometry/multi/algorithms/intersection.hpp
+#usr/include/boost/geometry/multi/algorithms/length.hpp
+#usr/include/boost/geometry/multi/algorithms/num_geometries.hpp
+#usr/include/boost/geometry/multi/algorithms/num_interior_rings.hpp
+#usr/include/boost/geometry/multi/algorithms/num_points.hpp
+#usr/include/boost/geometry/multi/algorithms/perimeter.hpp
+#usr/include/boost/geometry/multi/algorithms/reverse.hpp
+#usr/include/boost/geometry/multi/algorithms/simplify.hpp
+#usr/include/boost/geometry/multi/algorithms/transform.hpp
+#usr/include/boost/geometry/multi/algorithms/unique.hpp
+#usr/include/boost/geometry/multi/algorithms/within.hpp
+#usr/include/boost/geometry/multi/core
+#usr/include/boost/geometry/multi/core/closure.hpp
+#usr/include/boost/geometry/multi/core/geometry_id.hpp
+#usr/include/boost/geometry/multi/core/interior_rings.hpp
+#usr/include/boost/geometry/multi/core/is_areal.hpp
+#usr/include/boost/geometry/multi/core/point_order.hpp
+#usr/include/boost/geometry/multi/core/point_type.hpp
+#usr/include/boost/geometry/multi/core/ring_type.hpp
+#usr/include/boost/geometry/multi/core/tags.hpp
+#usr/include/boost/geometry/multi/core/topological_dimension.hpp
+#usr/include/boost/geometry/multi/geometries
+#usr/include/boost/geometry/multi/geometries/concepts
+#usr/include/boost/geometry/multi/geometries/concepts/check.hpp
+#usr/include/boost/geometry/multi/geometries/concepts/multi_linestring_concept.hpp
+#usr/include/boost/geometry/multi/geometries/concepts/multi_point_concept.hpp
+#usr/include/boost/geometry/multi/geometries/concepts/multi_polygon_concept.hpp
+#usr/include/boost/geometry/multi/geometries/multi_geometries.hpp
+#usr/include/boost/geometry/multi/geometries/multi_linestring.hpp
+#usr/include/boost/geometry/multi/geometries/multi_point.hpp
+#usr/include/boost/geometry/multi/geometries/multi_polygon.hpp
+#usr/include/boost/geometry/multi/geometries/register
+#usr/include/boost/geometry/multi/geometries/register/multi_linestring.hpp
+#usr/include/boost/geometry/multi/geometries/register/multi_point.hpp
+#usr/include/boost/geometry/multi/geometries/register/multi_polygon.hpp
+#usr/include/boost/geometry/multi/io
+#usr/include/boost/geometry/multi/io/dsv
+#usr/include/boost/geometry/multi/io/dsv/write.hpp
+#usr/include/boost/geometry/multi/io/wkt
+#usr/include/boost/geometry/multi/io/wkt/detail
+#usr/include/boost/geometry/multi/io/wkt/detail/prefix.hpp
+#usr/include/boost/geometry/multi/io/wkt/read.hpp
+#usr/include/boost/geometry/multi/io/wkt/wkt.hpp
+#usr/include/boost/geometry/multi/io/wkt/write.hpp
+#usr/include/boost/geometry/multi/multi.hpp
+#usr/include/boost/geometry/multi/strategies
+#usr/include/boost/geometry/multi/strategies/cartesian
+#usr/include/boost/geometry/multi/strategies/cartesian/centroid_average.hpp
+#usr/include/boost/geometry/multi/views
+#usr/include/boost/geometry/multi/views/detail
+#usr/include/boost/geometry/multi/views/detail/range_type.hpp
+#usr/include/boost/geometry/policies
+#usr/include/boost/geometry/policies/compare.hpp
+#usr/include/boost/geometry/policies/relate
+#usr/include/boost/geometry/policies/relate/de9im.hpp
+#usr/include/boost/geometry/policies/relate/direction.hpp
+#usr/include/boost/geometry/policies/relate/intersection_points.hpp
+#usr/include/boost/geometry/policies/relate/tupled.hpp
+#usr/include/boost/geometry/strategies
+#usr/include/boost/geometry/strategies/agnostic
+#usr/include/boost/geometry/strategies/agnostic/hull_graham_andrew.hpp
+#usr/include/boost/geometry/strategies/agnostic/point_in_box_by_side.hpp
+#usr/include/boost/geometry/strategies/agnostic/point_in_poly_oriented_winding.hpp
+#usr/include/boost/geometry/strategies/agnostic/point_in_poly_winding.hpp
+#usr/include/boost/geometry/strategies/agnostic/simplify_douglas_peucker.hpp
+#usr/include/boost/geometry/strategies/area.hpp
+#usr/include/boost/geometry/strategies/cartesian
+#usr/include/boost/geometry/strategies/cartesian/area_surveyor.hpp
+#usr/include/boost/geometry/strategies/cartesian/box_in_box.hpp
+#usr/include/boost/geometry/strategies/cartesian/cart_intersect.hpp
+#usr/include/boost/geometry/strategies/cartesian/centroid_bashein_detmer.hpp
+#usr/include/boost/geometry/strategies/cartesian/centroid_weighted_length.hpp
+#usr/include/boost/geometry/strategies/cartesian/distance_projected_point.hpp
+#usr/include/boost/geometry/strategies/cartesian/distance_pythagoras.hpp
+#usr/include/boost/geometry/strategies/cartesian/point_in_box.hpp
+#usr/include/boost/geometry/strategies/cartesian/point_in_poly_crossings_multiply.hpp
+#usr/include/boost/geometry/strategies/cartesian/point_in_poly_franklin.hpp
+#usr/include/boost/geometry/strategies/cartesian/side_by_triangle.hpp
+#usr/include/boost/geometry/strategies/centroid.hpp
+#usr/include/boost/geometry/strategies/compare.hpp
+#usr/include/boost/geometry/strategies/concepts
+#usr/include/boost/geometry/strategies/concepts/area_concept.hpp
+#usr/include/boost/geometry/strategies/concepts/centroid_concept.hpp
+#usr/include/boost/geometry/strategies/concepts/convex_hull_concept.hpp
+#usr/include/boost/geometry/strategies/concepts/distance_concept.hpp
+#usr/include/boost/geometry/strategies/concepts/segment_intersect_concept.hpp
+#usr/include/boost/geometry/strategies/concepts/simplify_concept.hpp
+#usr/include/boost/geometry/strategies/concepts/within_concept.hpp
+#usr/include/boost/geometry/strategies/convex_hull.hpp
+#usr/include/boost/geometry/strategies/covered_by.hpp
+#usr/include/boost/geometry/strategies/default_area_result.hpp
+#usr/include/boost/geometry/strategies/default_distance_result.hpp
+#usr/include/boost/geometry/strategies/default_length_result.hpp
+#usr/include/boost/geometry/strategies/distance.hpp
+#usr/include/boost/geometry/strategies/intersection.hpp
+#usr/include/boost/geometry/strategies/intersection_result.hpp
+#usr/include/boost/geometry/strategies/side.hpp
+#usr/include/boost/geometry/strategies/side_info.hpp
+#usr/include/boost/geometry/strategies/spherical
+#usr/include/boost/geometry/strategies/spherical/area_huiller.hpp
+#usr/include/boost/geometry/strategies/spherical/compare_circular.hpp
+#usr/include/boost/geometry/strategies/spherical/distance_cross_track.hpp
+#usr/include/boost/geometry/strategies/spherical/distance_haversine.hpp
+#usr/include/boost/geometry/strategies/spherical/side_by_cross_track.hpp
+#usr/include/boost/geometry/strategies/spherical/ssf.hpp
+#usr/include/boost/geometry/strategies/strategies.hpp
+#usr/include/boost/geometry/strategies/strategy_transform.hpp
+#usr/include/boost/geometry/strategies/tags.hpp
+#usr/include/boost/geometry/strategies/transform
+#usr/include/boost/geometry/strategies/transform.hpp
+#usr/include/boost/geometry/strategies/transform/inverse_transformer.hpp
+#usr/include/boost/geometry/strategies/transform/map_transformer.hpp
+#usr/include/boost/geometry/strategies/transform/matrix_transformers.hpp
+#usr/include/boost/geometry/strategies/within.hpp
+#usr/include/boost/geometry/util
+#usr/include/boost/geometry/util/add_const_if_c.hpp
+#usr/include/boost/geometry/util/bare_type.hpp
+#usr/include/boost/geometry/util/calculation_type.hpp
+#usr/include/boost/geometry/util/closure_as_bool.hpp
+#usr/include/boost/geometry/util/coordinate_cast.hpp
+#usr/include/boost/geometry/util/for_each_coordinate.hpp
+#usr/include/boost/geometry/util/math.hpp
+#usr/include/boost/geometry/util/order_as_direction.hpp
+#usr/include/boost/geometry/util/parameter_type_of.hpp
+#usr/include/boost/geometry/util/promote_floating_point.hpp
+#usr/include/boost/geometry/util/rational.hpp
+#usr/include/boost/geometry/util/select_calculation_type.hpp
+#usr/include/boost/geometry/util/select_coordinate_type.hpp
+#usr/include/boost/geometry/util/select_most_precise.hpp
+#usr/include/boost/geometry/views
+#usr/include/boost/geometry/views/box_view.hpp
+#usr/include/boost/geometry/views/closeable_view.hpp
+#usr/include/boost/geometry/views/detail
+#usr/include/boost/geometry/views/detail/points_view.hpp
+#usr/include/boost/geometry/views/detail/range_type.hpp
+#usr/include/boost/geometry/views/identity_view.hpp
+#usr/include/boost/geometry/views/reversible_view.hpp
+#usr/include/boost/geometry/views/segment_view.hpp
+#usr/include/boost/get_pointer.hpp
+#usr/include/boost/gil
+#usr/include/boost/gil/algorithm.hpp
+#usr/include/boost/gil/bit_aligned_pixel_iterator.hpp
+#usr/include/boost/gil/bit_aligned_pixel_reference.hpp
+#usr/include/boost/gil/channel.hpp
+#usr/include/boost/gil/channel_algorithm.hpp
+#usr/include/boost/gil/cmyk.hpp
+#usr/include/boost/gil/color_base.hpp
+#usr/include/boost/gil/color_base_algorithm.hpp
+#usr/include/boost/gil/color_convert.hpp
+#usr/include/boost/gil/deprecated.hpp
+#usr/include/boost/gil/device_n.hpp
+#usr/include/boost/gil/extension
+#usr/include/boost/gil/extension/dynamic_image
+#usr/include/boost/gil/extension/dynamic_image/algorithm.hpp
+#usr/include/boost/gil/extension/dynamic_image/any_image.hpp
+#usr/include/boost/gil/extension/dynamic_image/any_image_view.hpp
+#usr/include/boost/gil/extension/dynamic_image/apply_operation.hpp
+#usr/include/boost/gil/extension/dynamic_image/apply_operation_base.hpp
+#usr/include/boost/gil/extension/dynamic_image/dynamic_at_c.hpp
+#usr/include/boost/gil/extension/dynamic_image/dynamic_image_all.hpp
+#usr/include/boost/gil/extension/dynamic_image/image_view_factory.hpp
+#usr/include/boost/gil/extension/dynamic_image/reduce.hpp
+#usr/include/boost/gil/extension/dynamic_image/variant.hpp
+#usr/include/boost/gil/extension/io
+#usr/include/boost/gil/extension/io/dynamic_io.hpp
+#usr/include/boost/gil/extension/io/io_error.hpp
+#usr/include/boost/gil/extension/io/jpeg_dynamic_io.hpp
+#usr/include/boost/gil/extension/io/jpeg_io.hpp
+#usr/include/boost/gil/extension/io/jpeg_io_private.hpp
+#usr/include/boost/gil/extension/io/png_dynamic_io.hpp
+#usr/include/boost/gil/extension/io/png_io.hpp
+#usr/include/boost/gil/extension/io/png_io_private.hpp
+#usr/include/boost/gil/extension/io/tiff_dynamic_io.hpp
+#usr/include/boost/gil/extension/io/tiff_io.hpp
+#usr/include/boost/gil/gil_all.hpp
+#usr/include/boost/gil/gil_concept.hpp
+#usr/include/boost/gil/gil_config.hpp
+#usr/include/boost/gil/gray.hpp
+#usr/include/boost/gil/image.hpp
+#usr/include/boost/gil/image_view.hpp
+#usr/include/boost/gil/image_view_factory.hpp
+#usr/include/boost/gil/iterator_from_2d.hpp
+#usr/include/boost/gil/locator.hpp
+#usr/include/boost/gil/metafunctions.hpp
+#usr/include/boost/gil/packed_pixel.hpp
+#usr/include/boost/gil/pixel.hpp
+#usr/include/boost/gil/pixel_iterator.hpp
+#usr/include/boost/gil/pixel_iterator_adaptor.hpp
+#usr/include/boost/gil/planar_pixel_iterator.hpp
+#usr/include/boost/gil/planar_pixel_reference.hpp
+#usr/include/boost/gil/position_iterator.hpp
+#usr/include/boost/gil/rgb.hpp
+#usr/include/boost/gil/rgba.hpp
+#usr/include/boost/gil/step_iterator.hpp
+#usr/include/boost/gil/typedefs.hpp
+#usr/include/boost/gil/utilities.hpp
+#usr/include/boost/gil/virtual_locator.hpp
+#usr/include/boost/graph
+#usr/include/boost/graph/accounting.hpp
+#usr/include/boost/graph/adj_list_serialize.hpp
+#usr/include/boost/graph/adjacency_iterator.hpp
+#usr/include/boost/graph/adjacency_list.hpp
+#usr/include/boost/graph/adjacency_list_io.hpp
+#usr/include/boost/graph/adjacency_matrix.hpp
+#usr/include/boost/graph/astar_search.hpp
+#usr/include/boost/graph/bandwidth.hpp
+#usr/include/boost/graph/bc_clustering.hpp
+#usr/include/boost/graph/bellman_ford_shortest_paths.hpp
+#usr/include/boost/graph/betweenness_centrality.hpp
+#usr/include/boost/graph/biconnected_components.hpp
+#usr/include/boost/graph/bipartite.hpp
+#usr/include/boost/graph/boyer_myrvold_planar_test.hpp
+#usr/include/boost/graph/boykov_kolmogorov_max_flow.hpp
+#usr/include/boost/graph/breadth_first_search.hpp
+#usr/include/boost/graph/bron_kerbosch_all_cliques.hpp
+#usr/include/boost/graph/buffer_concepts.hpp
+#usr/include/boost/graph/chrobak_payne_drawing.hpp
+#usr/include/boost/graph/circle_layout.hpp
+#usr/include/boost/graph/closeness_centrality.hpp
+#usr/include/boost/graph/clustering_coefficient.hpp
+#usr/include/boost/graph/compressed_sparse_row_graph.hpp
+#usr/include/boost/graph/connected_components.hpp
+#usr/include/boost/graph/copy.hpp
+#usr/include/boost/graph/core_numbers.hpp
+#usr/include/boost/graph/create_condensation_graph.hpp
+#usr/include/boost/graph/cuthill_mckee_ordering.hpp
+#usr/include/boost/graph/cycle_canceling.hpp
+#usr/include/boost/graph/dag_shortest_paths.hpp
+#usr/include/boost/graph/degree_centrality.hpp
+#usr/include/boost/graph/depth_first_search.hpp
+#usr/include/boost/graph/detail
+#usr/include/boost/graph/detail/adj_list_edge_iterator.hpp
+#usr/include/boost/graph/detail/adjacency_list.hpp
+#usr/include/boost/graph/detail/array_binary_tree.hpp
+#usr/include/boost/graph/detail/augment.hpp
+#usr/include/boost/graph/detail/compressed_sparse_row_struct.hpp
+#usr/include/boost/graph/detail/connected_components.hpp
+#usr/include/boost/graph/detail/d_ary_heap.hpp
+#usr/include/boost/graph/detail/edge.hpp
+#usr/include/boost/graph/detail/geodesic.hpp
+#usr/include/boost/graph/detail/histogram_sort.hpp
+#usr/include/boost/graph/detail/incidence_iterator.hpp
+#usr/include/boost/graph/detail/incremental_components.hpp
+#usr/include/boost/graph/detail/index.hpp
+#usr/include/boost/graph/detail/indexed_properties.hpp
+#usr/include/boost/graph/detail/is_distributed_selector.hpp
+#usr/include/boost/graph/detail/labeled_graph_traits.hpp
+#usr/include/boost/graph/detail/list_base.hpp
+#usr/include/boost/graph/detail/permutation.hpp
+#usr/include/boost/graph/detail/read_graphviz_new.hpp
+#usr/include/boost/graph/detail/read_graphviz_spirit.hpp
+#usr/include/boost/graph/detail/self_avoiding_walk.hpp
+#usr/include/boost/graph/detail/set_adaptor.hpp
+#usr/include/boost/graph/detail/shadow_iterator.hpp
+#usr/include/boost/graph/detail/sparse_ordering.hpp
+#usr/include/boost/graph/dijkstra_shortest_paths.hpp
+#usr/include/boost/graph/dijkstra_shortest_paths_no_color_map.hpp
+#usr/include/boost/graph/dimacs.hpp
+#usr/include/boost/graph/directed_graph.hpp
+#usr/include/boost/graph/distributed
+#usr/include/boost/graph/distributed/adjacency_list.hpp
+#usr/include/boost/graph/distributed/adjlist
+#usr/include/boost/graph/distributed/adjlist/handlers.hpp
+#usr/include/boost/graph/distributed/adjlist/initialize.hpp
+#usr/include/boost/graph/distributed/adjlist/redistribute.hpp
+#usr/include/boost/graph/distributed/adjlist/serialization.hpp
+#usr/include/boost/graph/distributed/betweenness_centrality.hpp
+#usr/include/boost/graph/distributed/boman_et_al_graph_coloring.hpp
+#usr/include/boost/graph/distributed/breadth_first_search.hpp
+#usr/include/boost/graph/distributed/compressed_sparse_row_graph.hpp
+#usr/include/boost/graph/distributed/concepts.hpp
+#usr/include/boost/graph/distributed/connected_components.hpp
+#usr/include/boost/graph/distributed/connected_components_parallel_search.hpp
+#usr/include/boost/graph/distributed/crauser_et_al_shortest_paths.hpp
+#usr/include/boost/graph/distributed/dehne_gotz_min_spanning_tree.hpp
+#usr/include/boost/graph/distributed/delta_stepping_shortest_paths.hpp
+#usr/include/boost/graph/distributed/depth_first_search.hpp
+#usr/include/boost/graph/distributed/detail
+#usr/include/boost/graph/distributed/detail/dijkstra_shortest_paths.hpp
+#usr/include/boost/graph/distributed/detail/filtered_queue.hpp
+#usr/include/boost/graph/distributed/detail/mpi_process_group.ipp
+#usr/include/boost/graph/distributed/detail/queue.ipp
+#usr/include/boost/graph/distributed/detail/remote_update_set.hpp
+#usr/include/boost/graph/distributed/detail/tag_allocator.hpp
+#usr/include/boost/graph/distributed/dijkstra_shortest_paths.hpp
+#usr/include/boost/graph/distributed/distributed_graph_utility.hpp
+#usr/include/boost/graph/distributed/eager_dijkstra_shortest_paths.hpp
+#usr/include/boost/graph/distributed/filtered_graph.hpp
+#usr/include/boost/graph/distributed/fruchterman_reingold.hpp
+#usr/include/boost/graph/distributed/graphviz.hpp
+#usr/include/boost/graph/distributed/hohberg_biconnected_components.hpp
+#usr/include/boost/graph/distributed/local_subgraph.hpp
+#usr/include/boost/graph/distributed/mpi_process_group.hpp
+#usr/include/boost/graph/distributed/named_graph.hpp
+#usr/include/boost/graph/distributed/one_bit_color_map.hpp
+#usr/include/boost/graph/distributed/page_rank.hpp
+#usr/include/boost/graph/distributed/queue.hpp
+#usr/include/boost/graph/distributed/reverse_graph.hpp
+#usr/include/boost/graph/distributed/rmat_graph_generator.hpp
+#usr/include/boost/graph/distributed/selector.hpp
+#usr/include/boost/graph/distributed/shuffled_distribution.hpp
+#usr/include/boost/graph/distributed/st_connected.hpp
+#usr/include/boost/graph/distributed/strong_components.hpp
+#usr/include/boost/graph/distributed/two_bit_color_map.hpp
+#usr/include/boost/graph/distributed/unsafe_serialize.hpp
+#usr/include/boost/graph/distributed/vertex_list_adaptor.hpp
+#usr/include/boost/graph/dll_import_export.hpp
+#usr/include/boost/graph/dominator_tree.hpp
+#usr/include/boost/graph/eccentricity.hpp
+#usr/include/boost/graph/edge_coloring.hpp
+#usr/include/boost/graph/edge_connectivity.hpp
+#usr/include/boost/graph/edge_list.hpp
+#usr/include/boost/graph/edmonds_karp_max_flow.hpp
+#usr/include/boost/graph/edmunds_karp_max_flow.hpp
+#usr/include/boost/graph/erdos_renyi_generator.hpp
+#usr/include/boost/graph/exception.hpp
+#usr/include/boost/graph/exterior_property.hpp
+#usr/include/boost/graph/filtered_graph.hpp
+#usr/include/boost/graph/find_flow_cost.hpp
+#usr/include/boost/graph/floyd_warshall_shortest.hpp
+#usr/include/boost/graph/fruchterman_reingold.hpp
+#usr/include/boost/graph/geodesic_distance.hpp
+#usr/include/boost/graph/graph_archetypes.hpp
+#usr/include/boost/graph/graph_as_tree.hpp
+#usr/include/boost/graph/graph_concepts.hpp
+#usr/include/boost/graph/graph_mutability_traits.hpp
+#usr/include/boost/graph/graph_selectors.hpp
+#usr/include/boost/graph/graph_stats.hpp
+#usr/include/boost/graph/graph_test.hpp
+#usr/include/boost/graph/graph_traits.hpp
+#usr/include/boost/graph/graph_utility.hpp
+#usr/include/boost/graph/graphml.hpp
+#usr/include/boost/graph/graphviz.hpp
+#usr/include/boost/graph/grid_graph.hpp
+#usr/include/boost/graph/gursoy_atun_layout.hpp
+#usr/include/boost/graph/hawick_circuits.hpp
+#usr/include/boost/graph/howard_cycle_ratio.hpp
+#usr/include/boost/graph/incremental_components.hpp
+#usr/include/boost/graph/is_kuratowski_subgraph.hpp
+#usr/include/boost/graph/is_straight_line_drawing.hpp
+#usr/include/boost/graph/isomorphism.hpp
+#usr/include/boost/graph/iteration_macros.hpp
+#usr/include/boost/graph/iteration_macros_undef.hpp
+#usr/include/boost/graph/johnson_all_pairs_shortest.hpp
+#usr/include/boost/graph/kamada_kawai_spring_layout.hpp
+#usr/include/boost/graph/king_ordering.hpp
+#usr/include/boost/graph/kruskal_min_spanning_tree.hpp
+#usr/include/boost/graph/labeled_graph.hpp
+#usr/include/boost/graph/leda_graph.hpp
+#usr/include/boost/graph/lookup_edge.hpp
+#usr/include/boost/graph/loop_erased_random_walk.hpp
+#usr/include/boost/graph/make_biconnected_planar.hpp
+#usr/include/boost/graph/make_connected.hpp
+#usr/include/boost/graph/make_maximal_planar.hpp
+#usr/include/boost/graph/matrix_as_graph.hpp
+#usr/include/boost/graph/max_cardinality_matching.hpp
+#usr/include/boost/graph/maximum_adjacency_search.hpp
+#usr/include/boost/graph/mcgregor_common_subgraphs.hpp
+#usr/include/boost/graph/mesh_graph_generator.hpp
+#usr/include/boost/graph/metis.hpp
+#usr/include/boost/graph/metric_tsp_approx.hpp
+#usr/include/boost/graph/minimum_degree_ordering.hpp
+#usr/include/boost/graph/named_function_params.hpp
+#usr/include/boost/graph/named_graph.hpp
+#usr/include/boost/graph/neighbor_bfs.hpp
+#usr/include/boost/graph/numeric_values.hpp
+#usr/include/boost/graph/one_bit_color_map.hpp
+#usr/include/boost/graph/overloading.hpp
+#usr/include/boost/graph/page_rank.hpp
+#usr/include/boost/graph/parallel
+#usr/include/boost/graph/parallel/algorithm.hpp
+#usr/include/boost/graph/parallel/basic_reduce.hpp
+#usr/include/boost/graph/parallel/container_traits.hpp
+#usr/include/boost/graph/parallel/detail
+#usr/include/boost/graph/parallel/detail/inplace_all_to_all.hpp
+#usr/include/boost/graph/parallel/detail/property_holders.hpp
+#usr/include/boost/graph/parallel/detail/untracked_pair.hpp
+#usr/include/boost/graph/parallel/distribution.hpp
+#usr/include/boost/graph/parallel/process_group.hpp
+#usr/include/boost/graph/parallel/properties.hpp
+#usr/include/boost/graph/parallel/simple_trigger.hpp
+#usr/include/boost/graph/planar_canonical_ordering.hpp
+#usr/include/boost/graph/planar_detail
+#usr/include/boost/graph/planar_detail/add_edge_visitors.hpp
+#usr/include/boost/graph/planar_detail/boyer_myrvold_impl.hpp
+#usr/include/boost/graph/planar_detail/bucket_sort.hpp
+#usr/include/boost/graph/planar_detail/face_handles.hpp
+#usr/include/boost/graph/planar_detail/face_iterators.hpp
+#usr/include/boost/graph/planar_face_traversal.hpp
+#usr/include/boost/graph/plod_generator.hpp
+#usr/include/boost/graph/point_traits.hpp
+#usr/include/boost/graph/prim_minimum_spanning_tree.hpp
+#usr/include/boost/graph/profile.hpp
+#usr/include/boost/graph/properties.hpp
+#usr/include/boost/graph/property_iter_range.hpp
+#usr/include/boost/graph/property_maps
+#usr/include/boost/graph/property_maps/constant_property_map.hpp
+#usr/include/boost/graph/property_maps/container_property_map.hpp
+#usr/include/boost/graph/property_maps/matrix_property_map.hpp
+#usr/include/boost/graph/property_maps/null_property_map.hpp
+#usr/include/boost/graph/push_relabel_max_flow.hpp
+#usr/include/boost/graph/r_c_shortest_paths.hpp
+#usr/include/boost/graph/random.hpp
+#usr/include/boost/graph/random_layout.hpp
+#usr/include/boost/graph/random_spanning_tree.hpp
+#usr/include/boost/graph/read_dimacs.hpp
+#usr/include/boost/graph/relax.hpp
+#usr/include/boost/graph/reverse_graph.hpp
+#usr/include/boost/graph/rmat_graph_generator.hpp
+#usr/include/boost/graph/sequential_vertex_coloring.hpp
+#usr/include/boost/graph/simple_point.hpp
+#usr/include/boost/graph/sloan_ordering.hpp
+#usr/include/boost/graph/small_world_generator.hpp
+#usr/include/boost/graph/smallest_last_ordering.hpp
+#usr/include/boost/graph/ssca_graph_generator.hpp
+#usr/include/boost/graph/st_connected.hpp
+#usr/include/boost/graph/stanford_graph.hpp
+#usr/include/boost/graph/stoer_wagner_min_cut.hpp
+#usr/include/boost/graph/strong_components.hpp
+#usr/include/boost/graph/subgraph.hpp
+#usr/include/boost/graph/successive_shortest_path_nonnegative_weights.hpp
+#usr/include/boost/graph/tiernan_all_cycles.hpp
+#usr/include/boost/graph/topological_sort.hpp
+#usr/include/boost/graph/topology.hpp
+#usr/include/boost/graph/transitive_closure.hpp
+#usr/include/boost/graph/transitive_reduction.hpp
+#usr/include/boost/graph/transpose_graph.hpp
+#usr/include/boost/graph/tree_traits.hpp
+#usr/include/boost/graph/two_bit_color_map.hpp
+#usr/include/boost/graph/two_graphs_common_spanning_trees.hpp
+#usr/include/boost/graph/undirected_dfs.hpp
+#usr/include/boost/graph/undirected_graph.hpp
+#usr/include/boost/graph/use_mpi.hpp
+#usr/include/boost/graph/vector_as_graph.hpp
+#usr/include/boost/graph/vertex_and_edge_range.hpp
+#usr/include/boost/graph/vf2_sub_graph_iso.hpp
+#usr/include/boost/graph/visitors.hpp
+#usr/include/boost/graph/wavefront.hpp
+#usr/include/boost/graph/write_dimacs.hpp
+#usr/include/boost/heap
+#usr/include/boost/heap/binomial_heap.hpp
+#usr/include/boost/heap/d_ary_heap.hpp
+#usr/include/boost/heap/detail
+#usr/include/boost/heap/detail/heap_comparison.hpp
+#usr/include/boost/heap/detail/heap_node.hpp
+#usr/include/boost/heap/detail/ilog2.hpp
+#usr/include/boost/heap/detail/mutable_heap.hpp
+#usr/include/boost/heap/detail/ordered_adaptor_iterator.hpp
+#usr/include/boost/heap/detail/stable_heap.hpp
+#usr/include/boost/heap/detail/tree_iterator.hpp
+#usr/include/boost/heap/fibonacci_heap.hpp
+#usr/include/boost/heap/heap_concepts.hpp
+#usr/include/boost/heap/heap_merge.hpp
+#usr/include/boost/heap/pairing_heap.hpp
+#usr/include/boost/heap/policies.hpp
+#usr/include/boost/heap/priority_queue.hpp
+#usr/include/boost/heap/skew_heap.hpp
+#usr/include/boost/icl
+#usr/include/boost/icl/associative_element_container.hpp
+#usr/include/boost/icl/associative_interval_container.hpp
+#usr/include/boost/icl/closed_interval.hpp
+#usr/include/boost/icl/concept
+#usr/include/boost/icl/concept/comparable.hpp
+#usr/include/boost/icl/concept/container.hpp
+#usr/include/boost/icl/concept/element_associator.hpp
+#usr/include/boost/icl/concept/element_map.hpp
+#usr/include/boost/icl/concept/element_set.hpp
+#usr/include/boost/icl/concept/element_set_value.hpp
+#usr/include/boost/icl/concept/interval.hpp
+#usr/include/boost/icl/concept/interval_associator.hpp
+#usr/include/boost/icl/concept/interval_associator_base.hpp
+#usr/include/boost/icl/concept/interval_bounds.hpp
+#usr/include/boost/icl/concept/interval_map.hpp
+#usr/include/boost/icl/concept/interval_set.hpp
+#usr/include/boost/icl/concept/interval_set_value.hpp
+#usr/include/boost/icl/concept/joinable.hpp
+#usr/include/boost/icl/concept/map_value.hpp
+#usr/include/boost/icl/concept/set_value.hpp
+#usr/include/boost/icl/continuous_interval.hpp
+#usr/include/boost/icl/detail
+#usr/include/boost/icl/detail/associated_value.hpp
+#usr/include/boost/icl/detail/boost_config.hpp
+#usr/include/boost/icl/detail/concept_check.hpp
+#usr/include/boost/icl/detail/design_config.hpp
+#usr/include/boost/icl/detail/element_comparer.hpp
+#usr/include/boost/icl/detail/element_iterator.hpp
+#usr/include/boost/icl/detail/exclusive_less_than.hpp
+#usr/include/boost/icl/detail/interval_map_algo.hpp
+#usr/include/boost/icl/detail/interval_morphism.hpp
+#usr/include/boost/icl/detail/interval_set_algo.hpp
+#usr/include/boost/icl/detail/interval_subset_comparer.hpp
+#usr/include/boost/icl/detail/map_algo.hpp
+#usr/include/boost/icl/detail/mapped_reference.hpp
+#usr/include/boost/icl/detail/notate.hpp
+#usr/include/boost/icl/detail/on_absorbtion.hpp
+#usr/include/boost/icl/detail/relation_state.hpp
+#usr/include/boost/icl/detail/set_algo.hpp
+#usr/include/boost/icl/detail/std_set.hpp
+#usr/include/boost/icl/detail/subset_comparer.hpp
+#usr/include/boost/icl/discrete_interval.hpp
+#usr/include/boost/icl/dynamic_interval_traits.hpp
+#usr/include/boost/icl/functors.hpp
+#usr/include/boost/icl/gregorian.hpp
+#usr/include/boost/icl/impl_config.hpp
+#usr/include/boost/icl/interval.hpp
+#usr/include/boost/icl/interval_base_map.hpp
+#usr/include/boost/icl/interval_base_set.hpp
+#usr/include/boost/icl/interval_bounds.hpp
+#usr/include/boost/icl/interval_combining_style.hpp
+#usr/include/boost/icl/interval_map.hpp
+#usr/include/boost/icl/interval_set.hpp
+#usr/include/boost/icl/interval_traits.hpp
+#usr/include/boost/icl/iterator.hpp
+#usr/include/boost/icl/left_open_interval.hpp
+#usr/include/boost/icl/map.hpp
+#usr/include/boost/icl/open_interval.hpp
+#usr/include/boost/icl/predicates
+#usr/include/boost/icl/predicates/distinct_equal.hpp
+#usr/include/boost/icl/predicates/element_equal.hpp
+#usr/include/boost/icl/predicates/std_equal.hpp
+#usr/include/boost/icl/predicates/sub_super_set.hpp
+#usr/include/boost/icl/ptime.hpp
+#usr/include/boost/icl/rational.hpp
+#usr/include/boost/icl/right_open_interval.hpp
+#usr/include/boost/icl/separate_interval_set.hpp
+#usr/include/boost/icl/set.hpp
+#usr/include/boost/icl/split_interval_map.hpp
+#usr/include/boost/icl/split_interval_set.hpp
+#usr/include/boost/icl/type_traits
+#usr/include/boost/icl/type_traits/absorbs_identities.hpp
+#usr/include/boost/icl/type_traits/adds_inversely.hpp
+#usr/include/boost/icl/type_traits/codomain_type_of.hpp
+#usr/include/boost/icl/type_traits/difference.hpp
+#usr/include/boost/icl/type_traits/difference_type_of.hpp
+#usr/include/boost/icl/type_traits/domain_type_of.hpp
+#usr/include/boost/icl/type_traits/element_type_of.hpp
+#usr/include/boost/icl/type_traits/has_inverse.hpp
+#usr/include/boost/icl/type_traits/has_set_semantics.hpp
+#usr/include/boost/icl/type_traits/identity_element.hpp
+#usr/include/boost/icl/type_traits/infinity.hpp
+#usr/include/boost/icl/type_traits/interval_type_default.hpp
+#usr/include/boost/icl/type_traits/interval_type_of.hpp
+#usr/include/boost/icl/type_traits/is_associative_element_container.hpp
+#usr/include/boost/icl/type_traits/is_asymmetric_interval.hpp
+#usr/include/boost/icl/type_traits/is_combinable.hpp
+#usr/include/boost/icl/type_traits/is_concept_equivalent.hpp
+#usr/include/boost/icl/type_traits/is_container.hpp
+#usr/include/boost/icl/type_traits/is_continuous.hpp
+#usr/include/boost/icl/type_traits/is_continuous_interval.hpp
+#usr/include/boost/icl/type_traits/is_discrete.hpp
+#usr/include/boost/icl/type_traits/is_discrete_interval.hpp
+#usr/include/boost/icl/type_traits/is_element_container.hpp
+#usr/include/boost/icl/type_traits/is_icl_container.hpp
+#usr/include/boost/icl/type_traits/is_increasing.hpp
+#usr/include/boost/icl/type_traits/is_interval.hpp
+#usr/include/boost/icl/type_traits/is_interval_container.hpp
+#usr/include/boost/icl/type_traits/is_interval_joiner.hpp
+#usr/include/boost/icl/type_traits/is_interval_separator.hpp
+#usr/include/boost/icl/type_traits/is_interval_splitter.hpp
+#usr/include/boost/icl/type_traits/is_key_container_of.hpp
+#usr/include/boost/icl/type_traits/is_map.hpp
+#usr/include/boost/icl/type_traits/is_numeric.hpp
+#usr/include/boost/icl/type_traits/is_set.hpp
+#usr/include/boost/icl/type_traits/is_total.hpp
+#usr/include/boost/icl/type_traits/no_type.hpp
+#usr/include/boost/icl/type_traits/predicate.hpp
+#usr/include/boost/icl/type_traits/rep_type_of.hpp
+#usr/include/boost/icl/type_traits/segment_type_of.hpp
+#usr/include/boost/icl/type_traits/size.hpp
+#usr/include/boost/icl/type_traits/size_type_of.hpp
+#usr/include/boost/icl/type_traits/succ_pred.hpp
+#usr/include/boost/icl/type_traits/to_string.hpp
+#usr/include/boost/icl/type_traits/type_to_string.hpp
+#usr/include/boost/icl/type_traits/unit_element.hpp
+#usr/include/boost/icl/type_traits/value_size.hpp
+#usr/include/boost/implicit_cast.hpp
+#usr/include/boost/indirect_reference.hpp
+#usr/include/boost/integer
+#usr/include/boost/integer.hpp
+#usr/include/boost/integer/integer_mask.hpp
+#usr/include/boost/integer/static_log2.hpp
+#usr/include/boost/integer/static_min_max.hpp
+#usr/include/boost/integer_fwd.hpp
+#usr/include/boost/integer_traits.hpp
+#usr/include/boost/interprocess
+#usr/include/boost/interprocess/allocators
+#usr/include/boost/interprocess/allocators/adaptive_pool.hpp
+#usr/include/boost/interprocess/allocators/allocator.hpp
+#usr/include/boost/interprocess/allocators/cached_adaptive_pool.hpp
+#usr/include/boost/interprocess/allocators/cached_node_allocator.hpp
+#usr/include/boost/interprocess/allocators/detail
+#usr/include/boost/interprocess/allocators/detail/adaptive_node_pool.hpp
+#usr/include/boost/interprocess/allocators/detail/allocator_common.hpp
+#usr/include/boost/interprocess/allocators/detail/node_pool.hpp
+#usr/include/boost/interprocess/allocators/detail/node_tools.hpp
+#usr/include/boost/interprocess/allocators/node_allocator.hpp
+#usr/include/boost/interprocess/allocators/private_adaptive_pool.hpp
+#usr/include/boost/interprocess/allocators/private_node_allocator.hpp
+#usr/include/boost/interprocess/anonymous_shared_memory.hpp
+#usr/include/boost/interprocess/containers
+#usr/include/boost/interprocess/containers/allocation_type.hpp
+#usr/include/boost/interprocess/containers/containers_fwd.hpp
+#usr/include/boost/interprocess/containers/deque.hpp
+#usr/include/boost/interprocess/containers/flat_map.hpp
+#usr/include/boost/interprocess/containers/flat_set.hpp
+#usr/include/boost/interprocess/containers/list.hpp
+#usr/include/boost/interprocess/containers/map.hpp
+#usr/include/boost/interprocess/containers/pair.hpp
+#usr/include/boost/interprocess/containers/set.hpp
+#usr/include/boost/interprocess/containers/slist.hpp
+#usr/include/boost/interprocess/containers/stable_vector.hpp
+#usr/include/boost/interprocess/containers/string.hpp
+#usr/include/boost/interprocess/containers/vector.hpp
+#usr/include/boost/interprocess/containers/version_type.hpp
+#usr/include/boost/interprocess/creation_tags.hpp
+#usr/include/boost/interprocess/detail
+#usr/include/boost/interprocess/detail/atomic.hpp
+#usr/include/boost/interprocess/detail/cast_tags.hpp
+#usr/include/boost/interprocess/detail/config_begin.hpp
+#usr/include/boost/interprocess/detail/config_end.hpp
+#usr/include/boost/interprocess/detail/config_external_begin.hpp
+#usr/include/boost/interprocess/detail/config_external_end.hpp
+#usr/include/boost/interprocess/detail/file_locking_helpers.hpp
+#usr/include/boost/interprocess/detail/file_wrapper.hpp
+#usr/include/boost/interprocess/detail/in_place_interface.hpp
+#usr/include/boost/interprocess/detail/intermodule_singleton.hpp
+#usr/include/boost/interprocess/detail/intermodule_singleton_common.hpp
+#usr/include/boost/interprocess/detail/interprocess_tester.hpp
+#usr/include/boost/interprocess/detail/intersegment_ptr.hpp
+#usr/include/boost/interprocess/detail/managed_global_memory.hpp
+#usr/include/boost/interprocess/detail/managed_memory_impl.hpp
+#usr/include/boost/interprocess/detail/managed_multi_shared_memory.hpp
+#usr/include/boost/interprocess/detail/managed_open_or_create_impl.hpp
+#usr/include/boost/interprocess/detail/math_functions.hpp
+#usr/include/boost/interprocess/detail/min_max.hpp
+#usr/include/boost/interprocess/detail/move.hpp
+#usr/include/boost/interprocess/detail/mpl.hpp
+#usr/include/boost/interprocess/detail/multi_segment_services.hpp
+#usr/include/boost/interprocess/detail/named_proxy.hpp
+#usr/include/boost/interprocess/detail/os_file_functions.hpp
+#usr/include/boost/interprocess/detail/os_thread_functions.hpp
+#usr/include/boost/interprocess/detail/pointer_type.hpp
+#usr/include/boost/interprocess/detail/portable_intermodule_singleton.hpp
+#usr/include/boost/interprocess/detail/posix_time_types_wrk.hpp
+#usr/include/boost/interprocess/detail/preprocessor.hpp
+#usr/include/boost/interprocess/detail/ptime_wrk.hpp
+#usr/include/boost/interprocess/detail/robust_emulation.hpp
+#usr/include/boost/interprocess/detail/segment_manager_helper.hpp
+#usr/include/boost/interprocess/detail/tmp_dir_helpers.hpp
+#usr/include/boost/interprocess/detail/transform_iterator.hpp
+#usr/include/boost/interprocess/detail/type_traits.hpp
+#usr/include/boost/interprocess/detail/utilities.hpp
+#usr/include/boost/interprocess/detail/variadic_templates_tools.hpp
+#usr/include/boost/interprocess/detail/win32_api.hpp
+#usr/include/boost/interprocess/detail/windows_intermodule_singleton.hpp
+#usr/include/boost/interprocess/detail/workaround.hpp
+#usr/include/boost/interprocess/detail/xsi_shared_memory_device.hpp
+#usr/include/boost/interprocess/detail/xsi_shared_memory_file_wrapper.hpp
+#usr/include/boost/interprocess/errors.hpp
+#usr/include/boost/interprocess/exceptions.hpp
+#usr/include/boost/interprocess/file_mapping.hpp
+#usr/include/boost/interprocess/indexes
+#usr/include/boost/interprocess/indexes/flat_map_index.hpp
+#usr/include/boost/interprocess/indexes/iset_index.hpp
+#usr/include/boost/interprocess/indexes/iunordered_set_index.hpp
+#usr/include/boost/interprocess/indexes/map_index.hpp
+#usr/include/boost/interprocess/indexes/null_index.hpp
+#usr/include/boost/interprocess/indexes/unordered_map_index.hpp
+#usr/include/boost/interprocess/interprocess_fwd.hpp
+#usr/include/boost/interprocess/ipc
+#usr/include/boost/interprocess/ipc/message_queue.hpp
+#usr/include/boost/interprocess/managed_external_buffer.hpp
+#usr/include/boost/interprocess/managed_heap_memory.hpp
+#usr/include/boost/interprocess/managed_mapped_file.hpp
+#usr/include/boost/interprocess/managed_shared_memory.hpp
+#usr/include/boost/interprocess/managed_windows_shared_memory.hpp
+#usr/include/boost/interprocess/managed_xsi_shared_memory.hpp
+#usr/include/boost/interprocess/mapped_region.hpp
+#usr/include/boost/interprocess/mem_algo
+#usr/include/boost/interprocess/mem_algo/detail
+#usr/include/boost/interprocess/mem_algo/detail/mem_algo_common.hpp
+#usr/include/boost/interprocess/mem_algo/detail/multi_simple_seq_fit.hpp
+#usr/include/boost/interprocess/mem_algo/detail/multi_simple_seq_fit_impl.hpp
+#usr/include/boost/interprocess/mem_algo/detail/simple_seq_fit_impl.hpp
+#usr/include/boost/interprocess/mem_algo/rbtree_best_fit.hpp
+#usr/include/boost/interprocess/mem_algo/simple_seq_fit.hpp
+#usr/include/boost/interprocess/offset_ptr.hpp
+#usr/include/boost/interprocess/permissions.hpp
+#usr/include/boost/interprocess/segment_manager.hpp
+#usr/include/boost/interprocess/shared_memory_object.hpp
+#usr/include/boost/interprocess/smart_ptr
+#usr/include/boost/interprocess/smart_ptr/deleter.hpp
+#usr/include/boost/interprocess/smart_ptr/detail
+#usr/include/boost/interprocess/smart_ptr/detail/bad_weak_ptr.hpp
+#usr/include/boost/interprocess/smart_ptr/detail/shared_count.hpp
+#usr/include/boost/interprocess/smart_ptr/detail/sp_counted_base.hpp
+#usr/include/boost/interprocess/smart_ptr/detail/sp_counted_base_atomic.hpp
+#usr/include/boost/interprocess/smart_ptr/detail/sp_counted_impl.hpp
+#usr/include/boost/interprocess/smart_ptr/enable_shared_from_this.hpp
+#usr/include/boost/interprocess/smart_ptr/intrusive_ptr.hpp
+#usr/include/boost/interprocess/smart_ptr/scoped_ptr.hpp
+#usr/include/boost/interprocess/smart_ptr/shared_ptr.hpp
+#usr/include/boost/interprocess/smart_ptr/unique_ptr.hpp
+#usr/include/boost/interprocess/smart_ptr/weak_ptr.hpp
+#usr/include/boost/interprocess/streams
+#usr/include/boost/interprocess/streams/bufferstream.hpp
+#usr/include/boost/interprocess/streams/vectorstream.hpp
+#usr/include/boost/interprocess/sync
+#usr/include/boost/interprocess/sync/detail
+#usr/include/boost/interprocess/sync/detail/condition_algorithm_8a.hpp
+#usr/include/boost/interprocess/sync/detail/condition_any_algorithm.hpp
+#usr/include/boost/interprocess/sync/detail/locks.hpp
+#usr/include/boost/interprocess/sync/file_lock.hpp
+#usr/include/boost/interprocess/sync/interprocess_condition.hpp
+#usr/include/boost/interprocess/sync/interprocess_condition_any.hpp
+#usr/include/boost/interprocess/sync/interprocess_mutex.hpp
+#usr/include/boost/interprocess/sync/interprocess_recursive_mutex.hpp
+#usr/include/boost/interprocess/sync/interprocess_semaphore.hpp
+#usr/include/boost/interprocess/sync/interprocess_sharable_mutex.hpp
+#usr/include/boost/interprocess/sync/interprocess_upgradable_mutex.hpp
+#usr/include/boost/interprocess/sync/lock_options.hpp
+#usr/include/boost/interprocess/sync/mutex_family.hpp
+#usr/include/boost/interprocess/sync/named_condition.hpp
+#usr/include/boost/interprocess/sync/named_condition_any.hpp
+#usr/include/boost/interprocess/sync/named_mutex.hpp
+#usr/include/boost/interprocess/sync/named_recursive_mutex.hpp
+#usr/include/boost/interprocess/sync/named_semaphore.hpp
+#usr/include/boost/interprocess/sync/named_sharable_mutex.hpp
+#usr/include/boost/interprocess/sync/named_upgradable_mutex.hpp
+#usr/include/boost/interprocess/sync/null_mutex.hpp
+#usr/include/boost/interprocess/sync/posix
+#usr/include/boost/interprocess/sync/posix/condition.hpp
+#usr/include/boost/interprocess/sync/posix/mutex.hpp
+#usr/include/boost/interprocess/sync/posix/named_mutex.hpp
+#usr/include/boost/interprocess/sync/posix/named_semaphore.hpp
+#usr/include/boost/interprocess/sync/posix/pthread_helpers.hpp
+#usr/include/boost/interprocess/sync/posix/ptime_to_timespec.hpp
+#usr/include/boost/interprocess/sync/posix/recursive_mutex.hpp
+#usr/include/boost/interprocess/sync/posix/semaphore.hpp
+#usr/include/boost/interprocess/sync/posix/semaphore_wrapper.hpp
+#usr/include/boost/interprocess/sync/scoped_lock.hpp
+#usr/include/boost/interprocess/sync/sharable_lock.hpp
+#usr/include/boost/interprocess/sync/shm
+#usr/include/boost/interprocess/sync/shm/named_condition.hpp
+#usr/include/boost/interprocess/sync/shm/named_condition_any.hpp
+#usr/include/boost/interprocess/sync/shm/named_creation_functor.hpp
+#usr/include/boost/interprocess/sync/shm/named_mutex.hpp
+#usr/include/boost/interprocess/sync/shm/named_recursive_mutex.hpp
+#usr/include/boost/interprocess/sync/shm/named_semaphore.hpp
+#usr/include/boost/interprocess/sync/shm/named_upgradable_mutex.hpp
+#usr/include/boost/interprocess/sync/spin
+#usr/include/boost/interprocess/sync/spin/condition.hpp
+#usr/include/boost/interprocess/sync/spin/interprocess_barrier.hpp
+#usr/include/boost/interprocess/sync/spin/mutex.hpp
+#usr/include/boost/interprocess/sync/spin/recursive_mutex.hpp
+#usr/include/boost/interprocess/sync/spin/semaphore.hpp
+#usr/include/boost/interprocess/sync/spin/wait.hpp
+#usr/include/boost/interprocess/sync/upgradable_lock.hpp
+#usr/include/boost/interprocess/sync/windows
+#usr/include/boost/interprocess/sync/windows/condition.hpp
+#usr/include/boost/interprocess/sync/windows/mutex.hpp
+#usr/include/boost/interprocess/sync/windows/named_condition.hpp
+#usr/include/boost/interprocess/sync/windows/named_condition_any.hpp
+#usr/include/boost/interprocess/sync/windows/named_mutex.hpp
+#usr/include/boost/interprocess/sync/windows/named_recursive_mutex.hpp
+#usr/include/boost/interprocess/sync/windows/named_semaphore.hpp
+#usr/include/boost/interprocess/sync/windows/named_sync.hpp
+#usr/include/boost/interprocess/sync/windows/recursive_mutex.hpp
+#usr/include/boost/interprocess/sync/windows/semaphore.hpp
+#usr/include/boost/interprocess/sync/windows/sync_utils.hpp
+#usr/include/boost/interprocess/sync/windows/winapi_mutex_wrapper.hpp
+#usr/include/boost/interprocess/sync/windows/winapi_semaphore_wrapper.hpp
+#usr/include/boost/interprocess/sync/xsi
+#usr/include/boost/interprocess/sync/xsi/advanced_xsi_semaphore.hpp
+#usr/include/boost/interprocess/sync/xsi/simple_xsi_semaphore.hpp
+#usr/include/boost/interprocess/sync/xsi/xsi_named_mutex.hpp
+#usr/include/boost/interprocess/windows_shared_memory.hpp
+#usr/include/boost/interprocess/xsi_key.hpp
+#usr/include/boost/interprocess/xsi_shared_memory.hpp
+#usr/include/boost/intrusive
+#usr/include/boost/intrusive/any_hook.hpp
+#usr/include/boost/intrusive/avl_set.hpp
+#usr/include/boost/intrusive/avl_set_hook.hpp
+#usr/include/boost/intrusive/avltree.hpp
+#usr/include/boost/intrusive/avltree_algorithms.hpp
+#usr/include/boost/intrusive/bs_set.hpp
+#usr/include/boost/intrusive/bs_set_hook.hpp
+#usr/include/boost/intrusive/bstree.hpp
+#usr/include/boost/intrusive/bstree_algorithms.hpp
+#usr/include/boost/intrusive/circular_list_algorithms.hpp
+#usr/include/boost/intrusive/circular_slist_algorithms.hpp
+#usr/include/boost/intrusive/derivation_value_traits.hpp
+#usr/include/boost/intrusive/detail
+#usr/include/boost/intrusive/detail/any_node_and_algorithms.hpp
+#usr/include/boost/intrusive/detail/assert.hpp
+#usr/include/boost/intrusive/detail/avltree_node.hpp
+#usr/include/boost/intrusive/detail/clear_on_destructor_base.hpp
+#usr/include/boost/intrusive/detail/common_slist_algorithms.hpp
+#usr/include/boost/intrusive/detail/config_begin.hpp
+#usr/include/boost/intrusive/detail/config_end.hpp
+#usr/include/boost/intrusive/detail/ebo_functor_holder.hpp
+#usr/include/boost/intrusive/detail/function_detector.hpp
+#usr/include/boost/intrusive/detail/generic_hook.hpp
+#usr/include/boost/intrusive/detail/has_member_function_callable_with.hpp
+#usr/include/boost/intrusive/detail/hashtable_node.hpp
+#usr/include/boost/intrusive/detail/is_stateful_value_traits.hpp
+#usr/include/boost/intrusive/detail/list_node.hpp
+#usr/include/boost/intrusive/detail/memory_util.hpp
+#usr/include/boost/intrusive/detail/mpl.hpp
+#usr/include/boost/intrusive/detail/parent_from_member.hpp
+#usr/include/boost/intrusive/detail/preprocessor.hpp
+#usr/include/boost/intrusive/detail/rbtree_node.hpp
+#usr/include/boost/intrusive/detail/slist_node.hpp
+#usr/include/boost/intrusive/detail/transform_iterator.hpp
+#usr/include/boost/intrusive/detail/tree_node.hpp
+#usr/include/boost/intrusive/detail/utilities.hpp
+#usr/include/boost/intrusive/detail/workaround.hpp
+#usr/include/boost/intrusive/hashtable.hpp
+#usr/include/boost/intrusive/intrusive_fwd.hpp
+#usr/include/boost/intrusive/linear_slist_algorithms.hpp
+#usr/include/boost/intrusive/link_mode.hpp
+#usr/include/boost/intrusive/list.hpp
+#usr/include/boost/intrusive/list_hook.hpp
+#usr/include/boost/intrusive/member_value_traits.hpp
+#usr/include/boost/intrusive/options.hpp
+#usr/include/boost/intrusive/parent_from_member.hpp
+#usr/include/boost/intrusive/pointer_plus_bits.hpp
+#usr/include/boost/intrusive/pointer_traits.hpp
+#usr/include/boost/intrusive/priority_compare.hpp
+#usr/include/boost/intrusive/rbtree.hpp
+#usr/include/boost/intrusive/rbtree_algorithms.hpp
+#usr/include/boost/intrusive/set.hpp
+#usr/include/boost/intrusive/set_hook.hpp
+#usr/include/boost/intrusive/sg_set.hpp
+#usr/include/boost/intrusive/sgtree.hpp
+#usr/include/boost/intrusive/sgtree_algorithms.hpp
+#usr/include/boost/intrusive/slist.hpp
+#usr/include/boost/intrusive/slist_hook.hpp
+#usr/include/boost/intrusive/splay_set.hpp
+#usr/include/boost/intrusive/splay_set_hook.hpp
+#usr/include/boost/intrusive/splaytree.hpp
+#usr/include/boost/intrusive/splaytree_algorithms.hpp
+#usr/include/boost/intrusive/treap.hpp
+#usr/include/boost/intrusive/treap_algorithms.hpp
+#usr/include/boost/intrusive/treap_set.hpp
+#usr/include/boost/intrusive/trivial_value_traits.hpp
+#usr/include/boost/intrusive/unordered_set.hpp
+#usr/include/boost/intrusive/unordered_set_hook.hpp
+#usr/include/boost/intrusive_ptr.hpp
+#usr/include/boost/io
+#usr/include/boost/io/detail
+#usr/include/boost/io/detail/quoted_manip.hpp
+#usr/include/boost/io/ios_state.hpp
+#usr/include/boost/io_fwd.hpp
+#usr/include/boost/iostreams
+#usr/include/boost/iostreams/categories.hpp
+#usr/include/boost/iostreams/chain.hpp
+#usr/include/boost/iostreams/char_traits.hpp
+#usr/include/boost/iostreams/checked_operations.hpp
+#usr/include/boost/iostreams/close.hpp
+#usr/include/boost/iostreams/code_converter.hpp
+#usr/include/boost/iostreams/combine.hpp
+#usr/include/boost/iostreams/compose.hpp
+#usr/include/boost/iostreams/concepts.hpp
+#usr/include/boost/iostreams/constants.hpp
+#usr/include/boost/iostreams/copy.hpp
+#usr/include/boost/iostreams/detail
+#usr/include/boost/iostreams/detail/absolute_path.hpp
+#usr/include/boost/iostreams/detail/access_control.hpp
+#usr/include/boost/iostreams/detail/adapter
+#usr/include/boost/iostreams/detail/adapter/concept_adapter.hpp
+#usr/include/boost/iostreams/detail/adapter/device_adapter.hpp
+#usr/include/boost/iostreams/detail/adapter/direct_adapter.hpp
+#usr/include/boost/iostreams/detail/adapter/filter_adapter.hpp
+#usr/include/boost/iostreams/detail/adapter/mode_adapter.hpp
+#usr/include/boost/iostreams/detail/adapter/non_blocking_adapter.hpp
+#usr/include/boost/iostreams/detail/adapter/output_iterator_adapter.hpp
+#usr/include/boost/iostreams/detail/adapter/range_adapter.hpp
+#usr/include/boost/iostreams/detail/add_facet.hpp
+#usr/include/boost/iostreams/detail/bool_trait_def.hpp
+#usr/include/boost/iostreams/detail/broken_overload_resolution
+#usr/include/boost/iostreams/detail/broken_overload_resolution/forward.hpp
+#usr/include/boost/iostreams/detail/broken_overload_resolution/stream.hpp
+#usr/include/boost/iostreams/detail/broken_overload_resolution/stream_buffer.hpp
+#usr/include/boost/iostreams/detail/buffer.hpp
+#usr/include/boost/iostreams/detail/call_traits.hpp
+#usr/include/boost/iostreams/detail/char_traits.hpp
+#usr/include/boost/iostreams/detail/codecvt_helper.hpp
+#usr/include/boost/iostreams/detail/codecvt_holder.hpp
+#usr/include/boost/iostreams/detail/config
+#usr/include/boost/iostreams/detail/config/auto_link.hpp
+#usr/include/boost/iostreams/detail/config/bzip2.hpp
+#usr/include/boost/iostreams/detail/config/codecvt.hpp
+#usr/include/boost/iostreams/detail/config/disable_warnings.hpp
+#usr/include/boost/iostreams/detail/config/dyn_link.hpp
+#usr/include/boost/iostreams/detail/config/enable_warnings.hpp
+#usr/include/boost/iostreams/detail/config/fpos.hpp
+#usr/include/boost/iostreams/detail/config/gcc.hpp
+#usr/include/boost/iostreams/detail/config/limits.hpp
+#usr/include/boost/iostreams/detail/config/overload_resolution.hpp
+#usr/include/boost/iostreams/detail/config/rtl.hpp
+#usr/include/boost/iostreams/detail/config/unreachable_return.hpp
+#usr/include/boost/iostreams/detail/config/wide_streams.hpp
+#usr/include/boost/iostreams/detail/config/windows_posix.hpp
+#usr/include/boost/iostreams/detail/config/zlib.hpp
+#usr/include/boost/iostreams/detail/counted_array.hpp
+#usr/include/boost/iostreams/detail/current_directory.hpp
+#usr/include/boost/iostreams/detail/default_arg.hpp
+#usr/include/boost/iostreams/detail/dispatch.hpp
+#usr/include/boost/iostreams/detail/double_object.hpp
+#usr/include/boost/iostreams/detail/enable_if_stream.hpp
+#usr/include/boost/iostreams/detail/error.hpp
+#usr/include/boost/iostreams/detail/execute.hpp
+#usr/include/boost/iostreams/detail/file_handle.hpp
+#usr/include/boost/iostreams/detail/forward.hpp
+#usr/include/boost/iostreams/detail/fstream.hpp
+#usr/include/boost/iostreams/detail/functional.hpp
+#usr/include/boost/iostreams/detail/ios.hpp
+#usr/include/boost/iostreams/detail/iostream.hpp
+#usr/include/boost/iostreams/detail/is_dereferenceable.hpp
+#usr/include/boost/iostreams/detail/is_iterator_range.hpp
+#usr/include/boost/iostreams/detail/newline.hpp
+#usr/include/boost/iostreams/detail/optional.hpp
+#usr/include/boost/iostreams/detail/param_type.hpp
+#usr/include/boost/iostreams/detail/path.hpp
+#usr/include/boost/iostreams/detail/push.hpp
+#usr/include/boost/iostreams/detail/push_params.hpp
+#usr/include/boost/iostreams/detail/resolve.hpp
+#usr/include/boost/iostreams/detail/restrict_impl.hpp
+#usr/include/boost/iostreams/detail/select.hpp
+#usr/include/boost/iostreams/detail/select_by_size.hpp
+#usr/include/boost/iostreams/detail/streambuf
+#usr/include/boost/iostreams/detail/streambuf.hpp
+#usr/include/boost/iostreams/detail/streambuf/chainbuf.hpp
+#usr/include/boost/iostreams/detail/streambuf/direct_streambuf.hpp
+#usr/include/boost/iostreams/detail/streambuf/indirect_streambuf.hpp
+#usr/include/boost/iostreams/detail/streambuf/linked_streambuf.hpp
+#usr/include/boost/iostreams/detail/system_failure.hpp
+#usr/include/boost/iostreams/detail/template_params.hpp
+#usr/include/boost/iostreams/detail/translate_int_type.hpp
+#usr/include/boost/iostreams/detail/vc6
+#usr/include/boost/iostreams/detail/vc6/close.hpp
+#usr/include/boost/iostreams/detail/vc6/read.hpp
+#usr/include/boost/iostreams/detail/vc6/write.hpp
+#usr/include/boost/iostreams/detail/wrap_unwrap.hpp
+#usr/include/boost/iostreams/device
+#usr/include/boost/iostreams/device/array.hpp
+#usr/include/boost/iostreams/device/back_inserter.hpp
+#usr/include/boost/iostreams/device/file.hpp
+#usr/include/boost/iostreams/device/file_descriptor.hpp
+#usr/include/boost/iostreams/device/mapped_file.hpp
+#usr/include/boost/iostreams/device/null.hpp
+#usr/include/boost/iostreams/filter
+#usr/include/boost/iostreams/filter/aggregate.hpp
+#usr/include/boost/iostreams/filter/bzip2.hpp
+#usr/include/boost/iostreams/filter/counter.hpp
+#usr/include/boost/iostreams/filter/grep.hpp
+#usr/include/boost/iostreams/filter/gzip.hpp
+#usr/include/boost/iostreams/filter/line.hpp
+#usr/include/boost/iostreams/filter/newline.hpp
+#usr/include/boost/iostreams/filter/regex.hpp
+#usr/include/boost/iostreams/filter/stdio.hpp
+#usr/include/boost/iostreams/filter/symmetric.hpp
+#usr/include/boost/iostreams/filter/test.hpp
+#usr/include/boost/iostreams/filter/zlib.hpp
+#usr/include/boost/iostreams/filtering_stream.hpp
+#usr/include/boost/iostreams/filtering_streambuf.hpp
+#usr/include/boost/iostreams/flush.hpp
+#usr/include/boost/iostreams/get.hpp
+#usr/include/boost/iostreams/imbue.hpp
+#usr/include/boost/iostreams/input_sequence.hpp
+#usr/include/boost/iostreams/invert.hpp
+#usr/include/boost/iostreams/operations.hpp
+#usr/include/boost/iostreams/operations_fwd.hpp
+#usr/include/boost/iostreams/optimal_buffer_size.hpp
+#usr/include/boost/iostreams/output_sequence.hpp
+#usr/include/boost/iostreams/pipeline.hpp
+#usr/include/boost/iostreams/positioning.hpp
+#usr/include/boost/iostreams/put.hpp
+#usr/include/boost/iostreams/putback.hpp
+#usr/include/boost/iostreams/read.hpp
+#usr/include/boost/iostreams/restrict.hpp
+#usr/include/boost/iostreams/seek.hpp
+#usr/include/boost/iostreams/skip.hpp
+#usr/include/boost/iostreams/slice.hpp
+#usr/include/boost/iostreams/stream.hpp
+#usr/include/boost/iostreams/stream_buffer.hpp
+#usr/include/boost/iostreams/tee.hpp
+#usr/include/boost/iostreams/traits.hpp
+#usr/include/boost/iostreams/traits_fwd.hpp
+#usr/include/boost/iostreams/write.hpp
+#usr/include/boost/is_placeholder.hpp
+#usr/include/boost/iterator
+#usr/include/boost/iterator.hpp
+#usr/include/boost/iterator/counting_iterator.hpp
+#usr/include/boost/iterator/detail
+#usr/include/boost/iterator/detail/any_conversion_eater.hpp
+#usr/include/boost/iterator/detail/config_def.hpp
+#usr/include/boost/iterator/detail/config_undef.hpp
+#usr/include/boost/iterator/detail/enable_if.hpp
+#usr/include/boost/iterator/detail/facade_iterator_category.hpp
+#usr/include/boost/iterator/detail/minimum_category.hpp
+#usr/include/boost/iterator/filter_iterator.hpp
+#usr/include/boost/iterator/function_input_iterator.hpp
+#usr/include/boost/iterator/indirect_iterator.hpp
+#usr/include/boost/iterator/interoperable.hpp
+#usr/include/boost/iterator/is_lvalue_iterator.hpp
+#usr/include/boost/iterator/is_readable_iterator.hpp
+#usr/include/boost/iterator/iterator_adaptor.hpp
+#usr/include/boost/iterator/iterator_archetypes.hpp
+#usr/include/boost/iterator/iterator_categories.hpp
+#usr/include/boost/iterator/iterator_concepts.hpp
+#usr/include/boost/iterator/iterator_facade.hpp
+#usr/include/boost/iterator/iterator_traits.hpp
+#usr/include/boost/iterator/new_iterator_tests.hpp
+#usr/include/boost/iterator/permutation_iterator.hpp
+#usr/include/boost/iterator/reverse_iterator.hpp
+#usr/include/boost/iterator/transform_iterator.hpp
+#usr/include/boost/iterator/zip_iterator.hpp
+#usr/include/boost/iterator_adaptors.hpp
+#usr/include/boost/lambda
+#usr/include/boost/lambda/algorithm.hpp
+#usr/include/boost/lambda/bind.hpp
+#usr/include/boost/lambda/casts.hpp
+#usr/include/boost/lambda/closures.hpp
+#usr/include/boost/lambda/construct.hpp
+#usr/include/boost/lambda/control_structures.hpp
+#usr/include/boost/lambda/core.hpp
+#usr/include/boost/lambda/detail
+#usr/include/boost/lambda/detail/actions.hpp
+#usr/include/boost/lambda/detail/arity_code.hpp
+#usr/include/boost/lambda/detail/bind_functions.hpp
+#usr/include/boost/lambda/detail/control_constructs_common.hpp
+#usr/include/boost/lambda/detail/function_adaptors.hpp
+#usr/include/boost/lambda/detail/is_instance_of.hpp
+#usr/include/boost/lambda/detail/lambda_config.hpp
+#usr/include/boost/lambda/detail/lambda_functor_base.hpp
+#usr/include/boost/lambda/detail/lambda_functors.hpp
+#usr/include/boost/lambda/detail/lambda_fwd.hpp
+#usr/include/boost/lambda/detail/lambda_traits.hpp
+#usr/include/boost/lambda/detail/member_ptr.hpp
+#usr/include/boost/lambda/detail/operator_actions.hpp
+#usr/include/boost/lambda/detail/operator_lambda_func_base.hpp
+#usr/include/boost/lambda/detail/operator_return_type_traits.hpp
+#usr/include/boost/lambda/detail/operators.hpp
+#usr/include/boost/lambda/detail/ret.hpp
+#usr/include/boost/lambda/detail/return_type_traits.hpp
+#usr/include/boost/lambda/detail/select_functions.hpp
+#usr/include/boost/lambda/detail/suppress_unused.hpp
+#usr/include/boost/lambda/exceptions.hpp
+#usr/include/boost/lambda/if.hpp
+#usr/include/boost/lambda/lambda.hpp
+#usr/include/boost/lambda/loops.hpp
+#usr/include/boost/lambda/numeric.hpp
+#usr/include/boost/lambda/switch.hpp
+#usr/include/boost/last_value.hpp
+#usr/include/boost/lexical_cast.hpp
+#usr/include/boost/limits.hpp
+#usr/include/boost/local_function
+#usr/include/boost/local_function.hpp
+#usr/include/boost/local_function/aux_
+#usr/include/boost/local_function/aux_/add_pointed_const.hpp
+#usr/include/boost/local_function/aux_/function.hpp
+#usr/include/boost/local_function/aux_/macro
+#usr/include/boost/local_function/aux_/macro/code_
+#usr/include/boost/local_function/aux_/macro/code_/bind.hpp
+#usr/include/boost/local_function/aux_/macro/code_/functor.hpp
+#usr/include/boost/local_function/aux_/macro/code_/result.hpp
+#usr/include/boost/local_function/aux_/macro/decl.hpp
+#usr/include/boost/local_function/aux_/macro/name.hpp
+#usr/include/boost/local_function/aux_/macro/typeof.hpp
+#usr/include/boost/local_function/aux_/member.hpp
+#usr/include/boost/local_function/aux_/nobind.hpp
+#usr/include/boost/local_function/aux_/preprocessor
+#usr/include/boost/local_function/aux_/preprocessor/traits
+#usr/include/boost/local_function/aux_/preprocessor/traits/bind.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_/append.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_/index.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_/nil.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_/set_error.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_/validate.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_/validate_
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_/validate_/return_count.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_/validate_/this_count.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_binds.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_const_binds.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_error.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_params.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_returns.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_sign_
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_sign_/any_bind_type.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_sign_/sign.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_sign_/validate.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_sign_/validate_
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_sign_/validate_/defaults.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/decl_sign_/validate_/this.hpp
+#usr/include/boost/local_function/aux_/preprocessor/traits/param.hpp
+#usr/include/boost/local_function/aux_/symbol.hpp
+#usr/include/boost/local_function/config.hpp
+#usr/include/boost/local_function/detail
+#usr/include/boost/local_function/detail/preprocessor
+#usr/include/boost/local_function/detail/preprocessor/keyword
+#usr/include/boost/local_function/detail/preprocessor/keyword/auto.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/bind.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/const.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/const_bind.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/default.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/facility
+#usr/include/boost/local_function/detail/preprocessor/keyword/facility/add.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/facility/is.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/facility/remove.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/inline.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/recursive.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/register.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/return.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/this.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/thisunderscore.hpp
+#usr/include/boost/local_function/detail/preprocessor/keyword/void.hpp
+#usr/include/boost/local_function/detail/preprocessor/line_counter.hpp
+#usr/include/boost/local_function/detail/preprocessor/void_list.hpp
+#usr/include/boost/locale
+#usr/include/boost/locale.hpp
+#usr/include/boost/locale/boundary
+#usr/include/boost/locale/boundary.hpp
+#usr/include/boost/locale/boundary/boundary_point.hpp
+#usr/include/boost/locale/boundary/facets.hpp
+#usr/include/boost/locale/boundary/index.hpp
+#usr/include/boost/locale/boundary/segment.hpp
+#usr/include/boost/locale/boundary/types.hpp
+#usr/include/boost/locale/collator.hpp
+#usr/include/boost/locale/config.hpp
+#usr/include/boost/locale/conversion.hpp
+#usr/include/boost/locale/date_time.hpp
+#usr/include/boost/locale/date_time_facet.hpp
+#usr/include/boost/locale/definitions.hpp
+#usr/include/boost/locale/encoding.hpp
+#usr/include/boost/locale/encoding_errors.hpp
+#usr/include/boost/locale/encoding_utf.hpp
+#usr/include/boost/locale/format.hpp
+#usr/include/boost/locale/formatting.hpp
+#usr/include/boost/locale/generator.hpp
+#usr/include/boost/locale/gnu_gettext.hpp
+#usr/include/boost/locale/hold_ptr.hpp
+#usr/include/boost/locale/info.hpp
+#usr/include/boost/locale/localization_backend.hpp
+#usr/include/boost/locale/message.hpp
+#usr/include/boost/locale/time_zone.hpp
+#usr/include/boost/locale/utf.hpp
+#usr/include/boost/locale/util.hpp
+#usr/include/boost/lockfree
+#usr/include/boost/lockfree/detail
+#usr/include/boost/lockfree/detail/atomic.hpp
+#usr/include/boost/lockfree/detail/branch_hints.hpp
+#usr/include/boost/lockfree/detail/copy_payload.hpp
+#usr/include/boost/lockfree/detail/freelist.hpp
+#usr/include/boost/lockfree/detail/parameter.hpp
+#usr/include/boost/lockfree/detail/prefix.hpp
+#usr/include/boost/lockfree/detail/tagged_ptr.hpp
+#usr/include/boost/lockfree/detail/tagged_ptr_dcas.hpp
+#usr/include/boost/lockfree/detail/tagged_ptr_ptrcompression.hpp
+#usr/include/boost/lockfree/policies.hpp
+#usr/include/boost/lockfree/queue.hpp
+#usr/include/boost/lockfree/spsc_queue.hpp
+#usr/include/boost/lockfree/stack.hpp
+#usr/include/boost/log
+#usr/include/boost/log/attributes
+#usr/include/boost/log/attributes.hpp
+#usr/include/boost/log/attributes/attribute.hpp
+#usr/include/boost/log/attributes/attribute_cast.hpp
+#usr/include/boost/log/attributes/attribute_name.hpp
+#usr/include/boost/log/attributes/attribute_set.hpp
+#usr/include/boost/log/attributes/attribute_value.hpp
+#usr/include/boost/log/attributes/attribute_value_impl.hpp
+#usr/include/boost/log/attributes/attribute_value_set.hpp
+#usr/include/boost/log/attributes/clock.hpp
+#usr/include/boost/log/attributes/constant.hpp
+#usr/include/boost/log/attributes/counter.hpp
+#usr/include/boost/log/attributes/current_process_id.hpp
+#usr/include/boost/log/attributes/current_process_name.hpp
+#usr/include/boost/log/attributes/current_thread_id.hpp
+#usr/include/boost/log/attributes/fallback_policy.hpp
+#usr/include/boost/log/attributes/fallback_policy_fwd.hpp
+#usr/include/boost/log/attributes/function.hpp
+#usr/include/boost/log/attributes/mutable_constant.hpp
+#usr/include/boost/log/attributes/named_scope.hpp
+#usr/include/boost/log/attributes/scoped_attribute.hpp
+#usr/include/boost/log/attributes/time_traits.hpp
+#usr/include/boost/log/attributes/timer.hpp
+#usr/include/boost/log/attributes/value_extraction.hpp
+#usr/include/boost/log/attributes/value_extraction_fwd.hpp
+#usr/include/boost/log/attributes/value_visitation.hpp
+#usr/include/boost/log/attributes/value_visitation_fwd.hpp
+#usr/include/boost/log/common.hpp
+#usr/include/boost/log/core
+#usr/include/boost/log/core.hpp
+#usr/include/boost/log/core/core.hpp
+#usr/include/boost/log/core/record.hpp
+#usr/include/boost/log/core/record_view.hpp
+#usr/include/boost/log/detail
+#usr/include/boost/log/detail/asio_fwd.hpp
+#usr/include/boost/log/detail/attachable_sstream_buf.hpp
+#usr/include/boost/log/detail/attr_output_impl.hpp
+#usr/include/boost/log/detail/attr_output_terminal.hpp
+#usr/include/boost/log/detail/attribute_get_value_impl.hpp
+#usr/include/boost/log/detail/attribute_predicate.hpp
+#usr/include/boost/log/detail/cleanup_scope_guard.hpp
+#usr/include/boost/log/detail/code_conversion.hpp
+#usr/include/boost/log/detail/config.hpp
+#usr/include/boost/log/detail/custom_terminal_spec.hpp
+#usr/include/boost/log/detail/date_time_fmt_gen_traits_fwd.hpp
+#usr/include/boost/log/detail/date_time_format_parser.hpp
+#usr/include/boost/log/detail/decomposed_time.hpp
+#usr/include/boost/log/detail/deduce_char_type.hpp
+#usr/include/boost/log/detail/default_attribute_names.hpp
+#usr/include/boost/log/detail/embedded_string_type.hpp
+#usr/include/boost/log/detail/event.hpp
+#usr/include/boost/log/detail/fake_mutex.hpp
+#usr/include/boost/log/detail/footer.hpp
+#usr/include/boost/log/detail/format.hpp
+#usr/include/boost/log/detail/function_traits.hpp
+#usr/include/boost/log/detail/generate_overloads.hpp
+#usr/include/boost/log/detail/header.hpp
+#usr/include/boost/log/detail/id.hpp
+#usr/include/boost/log/detail/light_function.hpp
+#usr/include/boost/log/detail/light_function_pp.hpp
+#usr/include/boost/log/detail/light_rw_mutex.hpp
+#usr/include/boost/log/detail/locking_ptr.hpp
+#usr/include/boost/log/detail/locks.hpp
+#usr/include/boost/log/detail/malloc_aligned.hpp
+#usr/include/boost/log/detail/named_scope_fmt_pp.hpp
+#usr/include/boost/log/detail/native_typeof.hpp
+#usr/include/boost/log/detail/parameter_tools.hpp
+#usr/include/boost/log/detail/pp_identity.hpp
+#usr/include/boost/log/detail/process_id.hpp
+#usr/include/boost/log/detail/setup_config.hpp
+#usr/include/boost/log/detail/singleton.hpp
+#usr/include/boost/log/detail/sink_init_helpers.hpp
+#usr/include/boost/log/detail/snprintf.hpp
+#usr/include/boost/log/detail/spin_mutex.hpp
+#usr/include/boost/log/detail/tagged_integer.hpp
+#usr/include/boost/log/detail/thread_id.hpp
+#usr/include/boost/log/detail/thread_specific.hpp
+#usr/include/boost/log/detail/threadsafe_queue.hpp
+#usr/include/boost/log/detail/timestamp.hpp
+#usr/include/boost/log/detail/trivial_keyword.hpp
+#usr/include/boost/log/detail/unary_function_terminal.hpp
+#usr/include/boost/log/detail/unhandled_exception_count.hpp
+#usr/include/boost/log/detail/value_ref_visitation.hpp
+#usr/include/boost/log/detail/visible_type.hpp
+#usr/include/boost/log/exceptions.hpp
+#usr/include/boost/log/expressions
+#usr/include/boost/log/expressions.hpp
+#usr/include/boost/log/expressions/attr.hpp
+#usr/include/boost/log/expressions/attr_fwd.hpp
+#usr/include/boost/log/expressions/filter.hpp
+#usr/include/boost/log/expressions/formatter.hpp
+#usr/include/boost/log/expressions/formatters
+#usr/include/boost/log/expressions/formatters.hpp
+#usr/include/boost/log/expressions/formatters/c_decorator.hpp
+#usr/include/boost/log/expressions/formatters/char_decorator.hpp
+#usr/include/boost/log/expressions/formatters/csv_decorator.hpp
+#usr/include/boost/log/expressions/formatters/date_time.hpp
+#usr/include/boost/log/expressions/formatters/format.hpp
+#usr/include/boost/log/expressions/formatters/if.hpp
+#usr/include/boost/log/expressions/formatters/named_scope.hpp
+#usr/include/boost/log/expressions/formatters/stream.hpp
+#usr/include/boost/log/expressions/formatters/wrap_formatter.hpp
+#usr/include/boost/log/expressions/formatters/xml_decorator.hpp
+#usr/include/boost/log/expressions/is_keyword_descriptor.hpp
+#usr/include/boost/log/expressions/keyword.hpp
+#usr/include/boost/log/expressions/keyword_fwd.hpp
+#usr/include/boost/log/expressions/message.hpp
+#usr/include/boost/log/expressions/predicates
+#usr/include/boost/log/expressions/predicates.hpp
+#usr/include/boost/log/expressions/predicates/begins_with.hpp
+#usr/include/boost/log/expressions/predicates/channel_severity_filter.hpp
+#usr/include/boost/log/expressions/predicates/contains.hpp
+#usr/include/boost/log/expressions/predicates/ends_with.hpp
+#usr/include/boost/log/expressions/predicates/has_attr.hpp
+#usr/include/boost/log/expressions/predicates/is_debugger_present.hpp
+#usr/include/boost/log/expressions/predicates/is_in_range.hpp
+#usr/include/boost/log/expressions/predicates/matches.hpp
+#usr/include/boost/log/expressions/record.hpp
+#usr/include/boost/log/keywords
+#usr/include/boost/log/keywords/auto_flush.hpp
+#usr/include/boost/log/keywords/channel.hpp
+#usr/include/boost/log/keywords/delimiter.hpp
+#usr/include/boost/log/keywords/depth.hpp
+#usr/include/boost/log/keywords/facility.hpp
+#usr/include/boost/log/keywords/file_name.hpp
+#usr/include/boost/log/keywords/filter.hpp
+#usr/include/boost/log/keywords/format.hpp
+#usr/include/boost/log/keywords/ident.hpp
+#usr/include/boost/log/keywords/ip_version.hpp
+#usr/include/boost/log/keywords/iteration.hpp
+#usr/include/boost/log/keywords/log_name.hpp
+#usr/include/boost/log/keywords/log_source.hpp
+#usr/include/boost/log/keywords/max_size.hpp
+#usr/include/boost/log/keywords/message_file.hpp
+#usr/include/boost/log/keywords/min_free_space.hpp
+#usr/include/boost/log/keywords/open_mode.hpp
+#usr/include/boost/log/keywords/order.hpp
+#usr/include/boost/log/keywords/ordering_window.hpp
+#usr/include/boost/log/keywords/registration.hpp
+#usr/include/boost/log/keywords/rotation_size.hpp
+#usr/include/boost/log/keywords/scan_method.hpp
+#usr/include/boost/log/keywords/severity.hpp
+#usr/include/boost/log/keywords/start_thread.hpp
+#usr/include/boost/log/keywords/target.hpp
+#usr/include/boost/log/keywords/time_based_rotation.hpp
+#usr/include/boost/log/keywords/use_impl.hpp
+#usr/include/boost/log/sinks
+#usr/include/boost/log/sinks.hpp
+#usr/include/boost/log/sinks/async_frontend.hpp
+#usr/include/boost/log/sinks/attribute_mapping.hpp
+#usr/include/boost/log/sinks/basic_sink_backend.hpp
+#usr/include/boost/log/sinks/basic_sink_frontend.hpp
+#usr/include/boost/log/sinks/block_on_overflow.hpp
+#usr/include/boost/log/sinks/bounded_fifo_queue.hpp
+#usr/include/boost/log/sinks/bounded_ordering_queue.hpp
+#usr/include/boost/log/sinks/debug_output_backend.hpp
+#usr/include/boost/log/sinks/drop_on_overflow.hpp
+#usr/include/boost/log/sinks/event_log_backend.hpp
+#usr/include/boost/log/sinks/event_log_constants.hpp
+#usr/include/boost/log/sinks/frontend_requirements.hpp
+#usr/include/boost/log/sinks/sink.hpp
+#usr/include/boost/log/sinks/sync_frontend.hpp
+#usr/include/boost/log/sinks/syslog_backend.hpp
+#usr/include/boost/log/sinks/syslog_constants.hpp
+#usr/include/boost/log/sinks/text_file_backend.hpp
+#usr/include/boost/log/sinks/text_multifile_backend.hpp
+#usr/include/boost/log/sinks/text_ostream_backend.hpp
+#usr/include/boost/log/sinks/unbounded_fifo_queue.hpp
+#usr/include/boost/log/sinks/unbounded_ordering_queue.hpp
+#usr/include/boost/log/sinks/unlocked_frontend.hpp
+#usr/include/boost/log/sources
+#usr/include/boost/log/sources/basic_logger.hpp
+#usr/include/boost/log/sources/channel_feature.hpp
+#usr/include/boost/log/sources/channel_logger.hpp
+#usr/include/boost/log/sources/exception_handler_feature.hpp
+#usr/include/boost/log/sources/features.hpp
+#usr/include/boost/log/sources/global_logger_storage.hpp
+#usr/include/boost/log/sources/logger.hpp
+#usr/include/boost/log/sources/record_ostream.hpp
+#usr/include/boost/log/sources/severity_channel_logger.hpp
+#usr/include/boost/log/sources/severity_feature.hpp
+#usr/include/boost/log/sources/severity_logger.hpp
+#usr/include/boost/log/sources/threading_models.hpp
+#usr/include/boost/log/support
+#usr/include/boost/log/support/date_time.hpp
+#usr/include/boost/log/support/exception.hpp
+#usr/include/boost/log/support/regex.hpp
+#usr/include/boost/log/support/spirit_classic.hpp
+#usr/include/boost/log/support/spirit_qi.hpp
+#usr/include/boost/log/support/xpressive.hpp
+#usr/include/boost/log/trivial.hpp
+#usr/include/boost/log/utility
+#usr/include/boost/log/utility/empty_deleter.hpp
+#usr/include/boost/log/utility/exception_handler.hpp
+#usr/include/boost/log/utility/explicit_operator_bool.hpp
+#usr/include/boost/log/utility/formatting_ostream.hpp
+#usr/include/boost/log/utility/formatting_ostream_fwd.hpp
+#usr/include/boost/log/utility/functional
+#usr/include/boost/log/utility/functional.hpp
+#usr/include/boost/log/utility/functional/as_action.hpp
+#usr/include/boost/log/utility/functional/begins_with.hpp
+#usr/include/boost/log/utility/functional/bind.hpp
+#usr/include/boost/log/utility/functional/bind_assign.hpp
+#usr/include/boost/log/utility/functional/bind_output.hpp
+#usr/include/boost/log/utility/functional/bind_to_log.hpp
+#usr/include/boost/log/utility/functional/contains.hpp
+#usr/include/boost/log/utility/functional/ends_with.hpp
+#usr/include/boost/log/utility/functional/fun_ref.hpp
+#usr/include/boost/log/utility/functional/in_range.hpp
+#usr/include/boost/log/utility/functional/logical.hpp
+#usr/include/boost/log/utility/functional/matches.hpp
+#usr/include/boost/log/utility/functional/nop.hpp
+#usr/include/boost/log/utility/functional/save_result.hpp
+#usr/include/boost/log/utility/intrusive_ref_counter.hpp
+#usr/include/boost/log/utility/manipulators
+#usr/include/boost/log/utility/manipulators.hpp
+#usr/include/boost/log/utility/manipulators/add_value.hpp
+#usr/include/boost/log/utility/manipulators/dump.hpp
+#usr/include/boost/log/utility/manipulators/to_log.hpp
+#usr/include/boost/log/utility/once_block.hpp
+#usr/include/boost/log/utility/record_ordering.hpp
+#usr/include/boost/log/utility/setup
+#usr/include/boost/log/utility/setup.hpp
+#usr/include/boost/log/utility/setup/common_attributes.hpp
+#usr/include/boost/log/utility/setup/console.hpp
+#usr/include/boost/log/utility/setup/file.hpp
+#usr/include/boost/log/utility/setup/filter_parser.hpp
+#usr/include/boost/log/utility/setup/formatter_parser.hpp
+#usr/include/boost/log/utility/setup/from_settings.hpp
+#usr/include/boost/log/utility/setup/from_stream.hpp
+#usr/include/boost/log/utility/setup/settings.hpp
+#usr/include/boost/log/utility/setup/settings_parser.hpp
+#usr/include/boost/log/utility/strictest_lock.hpp
+#usr/include/boost/log/utility/string_literal.hpp
+#usr/include/boost/log/utility/string_literal_fwd.hpp
+#usr/include/boost/log/utility/type_dispatch
+#usr/include/boost/log/utility/type_dispatch/date_time_types.hpp
+#usr/include/boost/log/utility/type_dispatch/dynamic_type_dispatcher.hpp
+#usr/include/boost/log/utility/type_dispatch/standard_types.hpp
+#usr/include/boost/log/utility/type_dispatch/static_type_dispatcher.hpp
+#usr/include/boost/log/utility/type_dispatch/type_dispatcher.hpp
+#usr/include/boost/log/utility/type_info_wrapper.hpp
+#usr/include/boost/log/utility/unique_identifier_name.hpp
+#usr/include/boost/log/utility/unused_variable.hpp
+#usr/include/boost/log/utility/value_ref.hpp
+#usr/include/boost/log/utility/value_ref_fwd.hpp
+#usr/include/boost/logic
+#usr/include/boost/logic/tribool.hpp
+#usr/include/boost/logic/tribool_fwd.hpp
+#usr/include/boost/logic/tribool_io.hpp
+#usr/include/boost/make_shared.hpp
+#usr/include/boost/math
+#usr/include/boost/math/bindings
+#usr/include/boost/math/bindings/detail
+#usr/include/boost/math/bindings/detail/big_digamma.hpp
+#usr/include/boost/math/bindings/detail/big_lanczos.hpp
+#usr/include/boost/math/bindings/e_float.hpp
+#usr/include/boost/math/bindings/mpfr.hpp
+#usr/include/boost/math/bindings/mpreal.hpp
+#usr/include/boost/math/bindings/rr.hpp
+#usr/include/boost/math/common_factor.hpp
+#usr/include/boost/math/common_factor_ct.hpp
+#usr/include/boost/math/common_factor_rt.hpp
+#usr/include/boost/math/complex
+#usr/include/boost/math/complex.hpp
+#usr/include/boost/math/complex/acos.hpp
+#usr/include/boost/math/complex/acosh.hpp
+#usr/include/boost/math/complex/asin.hpp
+#usr/include/boost/math/complex/asinh.hpp
+#usr/include/boost/math/complex/atan.hpp
+#usr/include/boost/math/complex/atanh.hpp
+#usr/include/boost/math/complex/details.hpp
+#usr/include/boost/math/complex/fabs.hpp
+#usr/include/boost/math/concepts
+#usr/include/boost/math/concepts/distributions.hpp
+#usr/include/boost/math/concepts/real_concept.hpp
+#usr/include/boost/math/concepts/real_type_concept.hpp
+#usr/include/boost/math/concepts/std_real_concept.hpp
+#usr/include/boost/math/constants
+#usr/include/boost/math/constants/calculate_constants.hpp
+#usr/include/boost/math/constants/constants.hpp
+#usr/include/boost/math/constants/generate.hpp
+#usr/include/boost/math/constants/info.hpp
+#usr/include/boost/math/distributions
+#usr/include/boost/math/distributions.hpp
+#usr/include/boost/math/distributions/bernoulli.hpp
+#usr/include/boost/math/distributions/beta.hpp
+#usr/include/boost/math/distributions/binomial.hpp
+#usr/include/boost/math/distributions/cauchy.hpp
+#usr/include/boost/math/distributions/chi_squared.hpp
+#usr/include/boost/math/distributions/complement.hpp
+#usr/include/boost/math/distributions/detail
+#usr/include/boost/math/distributions/detail/common_error_handling.hpp
+#usr/include/boost/math/distributions/detail/derived_accessors.hpp
+#usr/include/boost/math/distributions/detail/generic_mode.hpp
+#usr/include/boost/math/distributions/detail/generic_quantile.hpp
+#usr/include/boost/math/distributions/detail/hypergeometric_cdf.hpp
+#usr/include/boost/math/distributions/detail/hypergeometric_pdf.hpp
+#usr/include/boost/math/distributions/detail/hypergeometric_quantile.hpp
+#usr/include/boost/math/distributions/detail/inv_discrete_quantile.hpp
+#usr/include/boost/math/distributions/exponential.hpp
+#usr/include/boost/math/distributions/extreme_value.hpp
+#usr/include/boost/math/distributions/find_location.hpp
+#usr/include/boost/math/distributions/find_scale.hpp
+#usr/include/boost/math/distributions/fisher_f.hpp
+#usr/include/boost/math/distributions/fwd.hpp
+#usr/include/boost/math/distributions/gamma.hpp
+#usr/include/boost/math/distributions/geometric.hpp
+#usr/include/boost/math/distributions/hypergeometric.hpp
+#usr/include/boost/math/distributions/inverse_chi_squared.hpp
+#usr/include/boost/math/distributions/inverse_gamma.hpp
+#usr/include/boost/math/distributions/inverse_gaussian.hpp
+#usr/include/boost/math/distributions/laplace.hpp
+#usr/include/boost/math/distributions/logistic.hpp
+#usr/include/boost/math/distributions/lognormal.hpp
+#usr/include/boost/math/distributions/negative_binomial.hpp
+#usr/include/boost/math/distributions/non_central_beta.hpp
+#usr/include/boost/math/distributions/non_central_chi_squared.hpp
+#usr/include/boost/math/distributions/non_central_f.hpp
+#usr/include/boost/math/distributions/non_central_t.hpp
+#usr/include/boost/math/distributions/normal.hpp
+#usr/include/boost/math/distributions/pareto.hpp
+#usr/include/boost/math/distributions/poisson.hpp
+#usr/include/boost/math/distributions/rayleigh.hpp
+#usr/include/boost/math/distributions/skew_normal.hpp
+#usr/include/boost/math/distributions/students_t.hpp
+#usr/include/boost/math/distributions/triangular.hpp
+#usr/include/boost/math/distributions/uniform.hpp
+#usr/include/boost/math/distributions/weibull.hpp
+#usr/include/boost/math/octonion.hpp
+#usr/include/boost/math/policies
+#usr/include/boost/math/policies/error_handling.hpp
+#usr/include/boost/math/policies/policy.hpp
+#usr/include/boost/math/quaternion.hpp
+#usr/include/boost/math/special_functions
+#usr/include/boost/math/special_functions.hpp
+#usr/include/boost/math/special_functions/acosh.hpp
+#usr/include/boost/math/special_functions/airy.hpp
+#usr/include/boost/math/special_functions/asinh.hpp
+#usr/include/boost/math/special_functions/atanh.hpp
+#usr/include/boost/math/special_functions/bessel.hpp
+#usr/include/boost/math/special_functions/beta.hpp
+#usr/include/boost/math/special_functions/binomial.hpp
+#usr/include/boost/math/special_functions/cbrt.hpp
+#usr/include/boost/math/special_functions/cos_pi.hpp
+#usr/include/boost/math/special_functions/detail
+#usr/include/boost/math/special_functions/detail/airy_ai_bi_zero.hpp
+#usr/include/boost/math/special_functions/detail/bessel_i0.hpp
+#usr/include/boost/math/special_functions/detail/bessel_i1.hpp
+#usr/include/boost/math/special_functions/detail/bessel_ik.hpp
+#usr/include/boost/math/special_functions/detail/bessel_j0.hpp
+#usr/include/boost/math/special_functions/detail/bessel_j1.hpp
+#usr/include/boost/math/special_functions/detail/bessel_jn.hpp
+#usr/include/boost/math/special_functions/detail/bessel_jy.hpp
+#usr/include/boost/math/special_functions/detail/bessel_jy_asym.hpp
+#usr/include/boost/math/special_functions/detail/bessel_jy_series.hpp
+#usr/include/boost/math/special_functions/detail/bessel_jy_zero.hpp
+#usr/include/boost/math/special_functions/detail/bessel_k0.hpp
+#usr/include/boost/math/special_functions/detail/bessel_k1.hpp
+#usr/include/boost/math/special_functions/detail/bessel_kn.hpp
+#usr/include/boost/math/special_functions/detail/bessel_y0.hpp
+#usr/include/boost/math/special_functions/detail/bessel_y1.hpp
+#usr/include/boost/math/special_functions/detail/bessel_yn.hpp
+#usr/include/boost/math/special_functions/detail/erf_inv.hpp
+#usr/include/boost/math/special_functions/detail/fp_traits.hpp
+#usr/include/boost/math/special_functions/detail/gamma_inva.hpp
+#usr/include/boost/math/special_functions/detail/ibeta_inv_ab.hpp
+#usr/include/boost/math/special_functions/detail/ibeta_inverse.hpp
+#usr/include/boost/math/special_functions/detail/iconv.hpp
+#usr/include/boost/math/special_functions/detail/igamma_inverse.hpp
+#usr/include/boost/math/special_functions/detail/igamma_large.hpp
+#usr/include/boost/math/special_functions/detail/lanczos_sse2.hpp
+#usr/include/boost/math/special_functions/detail/lgamma_small.hpp
+#usr/include/boost/math/special_functions/detail/round_fwd.hpp
+#usr/include/boost/math/special_functions/detail/t_distribution_inv.hpp
+#usr/include/boost/math/special_functions/detail/unchecked_factorial.hpp
+#usr/include/boost/math/special_functions/digamma.hpp
+#usr/include/boost/math/special_functions/ellint_1.hpp
+#usr/include/boost/math/special_functions/ellint_2.hpp
+#usr/include/boost/math/special_functions/ellint_3.hpp
+#usr/include/boost/math/special_functions/ellint_rc.hpp
+#usr/include/boost/math/special_functions/ellint_rd.hpp
+#usr/include/boost/math/special_functions/ellint_rf.hpp
+#usr/include/boost/math/special_functions/ellint_rj.hpp
+#usr/include/boost/math/special_functions/erf.hpp
+#usr/include/boost/math/special_functions/expint.hpp
+#usr/include/boost/math/special_functions/expm1.hpp
+#usr/include/boost/math/special_functions/factorials.hpp
+#usr/include/boost/math/special_functions/fpclassify.hpp
+#usr/include/boost/math/special_functions/gamma.hpp
+#usr/include/boost/math/special_functions/hankel.hpp
+#usr/include/boost/math/special_functions/hermite.hpp
+#usr/include/boost/math/special_functions/hypot.hpp
+#usr/include/boost/math/special_functions/jacobi_elliptic.hpp
+#usr/include/boost/math/special_functions/laguerre.hpp
+#usr/include/boost/math/special_functions/lanczos.hpp
+#usr/include/boost/math/special_functions/legendre.hpp
+#usr/include/boost/math/special_functions/log1p.hpp
+#usr/include/boost/math/special_functions/math_fwd.hpp
+#usr/include/boost/math/special_functions/modf.hpp
+#usr/include/boost/math/special_functions/next.hpp
+#usr/include/boost/math/special_functions/nonfinite_num_facets.hpp
+#usr/include/boost/math/special_functions/owens_t.hpp
+#usr/include/boost/math/special_functions/pow.hpp
+#usr/include/boost/math/special_functions/powm1.hpp
+#usr/include/boost/math/special_functions/prime.hpp
+#usr/include/boost/math/special_functions/round.hpp
+#usr/include/boost/math/special_functions/sign.hpp
+#usr/include/boost/math/special_functions/sin_pi.hpp
+#usr/include/boost/math/special_functions/sinc.hpp
+#usr/include/boost/math/special_functions/sinhc.hpp
+#usr/include/boost/math/special_functions/spherical_harmonic.hpp
+#usr/include/boost/math/special_functions/sqrt1pm1.hpp
+#usr/include/boost/math/special_functions/trunc.hpp
+#usr/include/boost/math/special_functions/zeta.hpp
+#usr/include/boost/math/tools
+#usr/include/boost/math/tools/big_constant.hpp
+#usr/include/boost/math/tools/config.hpp
+#usr/include/boost/math/tools/detail
+#usr/include/boost/math/tools/detail/polynomial_horner1_10.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_11.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_12.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_13.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_14.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_15.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_16.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_17.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_18.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_19.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_2.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_20.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_3.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_4.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_5.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_6.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_7.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_8.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner1_9.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_10.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_11.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_12.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_13.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_14.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_15.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_16.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_17.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_18.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_19.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_2.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_20.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_3.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_4.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_5.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_6.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_7.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_8.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner2_9.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_10.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_11.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_12.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_13.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_14.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_15.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_16.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_17.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_18.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_19.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_2.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_20.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_3.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_4.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_5.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_6.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_7.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_8.hpp
+#usr/include/boost/math/tools/detail/polynomial_horner3_9.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_10.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_11.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_12.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_13.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_14.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_15.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_16.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_17.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_18.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_19.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_2.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_20.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_3.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_4.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_5.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_6.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_7.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_8.hpp
+#usr/include/boost/math/tools/detail/rational_horner1_9.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_10.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_11.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_12.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_13.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_14.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_15.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_16.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_17.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_18.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_19.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_2.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_20.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_3.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_4.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_5.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_6.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_7.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_8.hpp
+#usr/include/boost/math/tools/detail/rational_horner2_9.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_10.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_11.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_12.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_13.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_14.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_15.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_16.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_17.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_18.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_19.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_2.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_20.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_3.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_4.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_5.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_6.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_7.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_8.hpp
+#usr/include/boost/math/tools/detail/rational_horner3_9.hpp
+#usr/include/boost/math/tools/fraction.hpp
+#usr/include/boost/math/tools/minima.hpp
+#usr/include/boost/math/tools/polynomial.hpp
+#usr/include/boost/math/tools/precision.hpp
+#usr/include/boost/math/tools/promotion.hpp
+#usr/include/boost/math/tools/rational.hpp
+#usr/include/boost/math/tools/real_cast.hpp
+#usr/include/boost/math/tools/remez.hpp
+#usr/include/boost/math/tools/roots.hpp
+#usr/include/boost/math/tools/series.hpp
+#usr/include/boost/math/tools/solve.hpp
+#usr/include/boost/math/tools/stats.hpp
+#usr/include/boost/math/tools/test.hpp
+#usr/include/boost/math/tools/test_data.hpp
+#usr/include/boost/math/tools/toms748_solve.hpp
+#usr/include/boost/math/tools/traits.hpp
+#usr/include/boost/math/tools/tuple.hpp
+#usr/include/boost/math/tools/user.hpp
+#usr/include/boost/math/tools/workaround.hpp
+#usr/include/boost/math/tr1.hpp
+#usr/include/boost/math/tr1_c_macros.ipp
+#usr/include/boost/math_fwd.hpp
+#usr/include/boost/mem_fn.hpp
+#usr/include/boost/memory_order.hpp
+#usr/include/boost/move
+#usr/include/boost/move/algorithm.hpp
+#usr/include/boost/move/core.hpp
+#usr/include/boost/move/detail
+#usr/include/boost/move/detail/config_begin.hpp
+#usr/include/boost/move/detail/config_end.hpp
+#usr/include/boost/move/detail/meta_utils.hpp
+#usr/include/boost/move/detail/move_helpers.hpp
+#usr/include/boost/move/iterator.hpp
+#usr/include/boost/move/move.hpp
+#usr/include/boost/move/traits.hpp
+#usr/include/boost/move/utility.hpp
+#usr/include/boost/mpi
+#usr/include/boost/mpi.hpp
+#usr/include/boost/mpi/allocator.hpp
+#usr/include/boost/mpi/collectives
+#usr/include/boost/mpi/collectives.hpp
+#usr/include/boost/mpi/collectives/all_gather.hpp
+#usr/include/boost/mpi/collectives/all_reduce.hpp
+#usr/include/boost/mpi/collectives/all_to_all.hpp
+#usr/include/boost/mpi/collectives/broadcast.hpp
+#usr/include/boost/mpi/collectives/gather.hpp
+#usr/include/boost/mpi/collectives/reduce.hpp
+#usr/include/boost/mpi/collectives/scan.hpp
+#usr/include/boost/mpi/collectives/scatter.hpp
+#usr/include/boost/mpi/collectives_fwd.hpp
+#usr/include/boost/mpi/communicator.hpp
+#usr/include/boost/mpi/config.hpp
+#usr/include/boost/mpi/datatype.hpp
+#usr/include/boost/mpi/datatype_fwd.hpp
+#usr/include/boost/mpi/detail
+#usr/include/boost/mpi/detail/binary_buffer_iprimitive.hpp
+#usr/include/boost/mpi/detail/binary_buffer_oprimitive.hpp
+#usr/include/boost/mpi/detail/broadcast_sc.hpp
+#usr/include/boost/mpi/detail/communicator_sc.hpp
+#usr/include/boost/mpi/detail/computation_tree.hpp
+#usr/include/boost/mpi/detail/content_oarchive.hpp
+#usr/include/boost/mpi/detail/forward_iprimitive.hpp
+#usr/include/boost/mpi/detail/forward_oprimitive.hpp
+#usr/include/boost/mpi/detail/forward_skeleton_iarchive.hpp
+#usr/include/boost/mpi/detail/forward_skeleton_oarchive.hpp
+#usr/include/boost/mpi/detail/ignore_iprimitive.hpp
+#usr/include/boost/mpi/detail/ignore_oprimitive.hpp
+#usr/include/boost/mpi/detail/ignore_skeleton_oarchive.hpp
+#usr/include/boost/mpi/detail/mpi_datatype_cache.hpp
+#usr/include/boost/mpi/detail/mpi_datatype_oarchive.hpp
+#usr/include/boost/mpi/detail/mpi_datatype_primitive.hpp
+#usr/include/boost/mpi/detail/packed_iprimitive.hpp
+#usr/include/boost/mpi/detail/packed_oprimitive.hpp
+#usr/include/boost/mpi/detail/point_to_point.hpp
+#usr/include/boost/mpi/detail/text_skeleton_oarchive.hpp
+#usr/include/boost/mpi/environment.hpp
+#usr/include/boost/mpi/exception.hpp
+#usr/include/boost/mpi/graph_communicator.hpp
+#usr/include/boost/mpi/group.hpp
+#usr/include/boost/mpi/inplace.hpp
+#usr/include/boost/mpi/intercommunicator.hpp
+#usr/include/boost/mpi/nonblocking.hpp
+#usr/include/boost/mpi/operations.hpp
+#usr/include/boost/mpi/packed_iarchive.hpp
+#usr/include/boost/mpi/packed_oarchive.hpp
+#usr/include/boost/mpi/python
+#usr/include/boost/mpi/python.hpp
+#usr/include/boost/mpi/python/config.hpp
+#usr/include/boost/mpi/python/serialize.hpp
+#usr/include/boost/mpi/python/skeleton_and_content.hpp
+#usr/include/boost/mpi/request.hpp
+#usr/include/boost/mpi/skeleton_and_content.hpp
+#usr/include/boost/mpi/skeleton_and_content_fwd.hpp
+#usr/include/boost/mpi/status.hpp
+#usr/include/boost/mpi/timer.hpp
+#usr/include/boost/mpl
+#usr/include/boost/mpl/O1_size.hpp
+#usr/include/boost/mpl/O1_size_fwd.hpp
+#usr/include/boost/mpl/accumulate.hpp
+#usr/include/boost/mpl/advance.hpp
+#usr/include/boost/mpl/advance_fwd.hpp
+#usr/include/boost/mpl/alias.hpp
+#usr/include/boost/mpl/always.hpp
+#usr/include/boost/mpl/and.hpp
+#usr/include/boost/mpl/apply.hpp
+#usr/include/boost/mpl/apply_fwd.hpp
+#usr/include/boost/mpl/apply_wrap.hpp
+#usr/include/boost/mpl/arg.hpp
+#usr/include/boost/mpl/arg_fwd.hpp
+#usr/include/boost/mpl/arithmetic.hpp
+#usr/include/boost/mpl/as_sequence.hpp
+#usr/include/boost/mpl/assert.hpp
+#usr/include/boost/mpl/at.hpp
+#usr/include/boost/mpl/at_fwd.hpp
+#usr/include/boost/mpl/aux_
+#usr/include/boost/mpl/aux_/O1_size_impl.hpp
+#usr/include/boost/mpl/aux_/adl_barrier.hpp
+#usr/include/boost/mpl/aux_/advance_backward.hpp
+#usr/include/boost/mpl/aux_/advance_forward.hpp
+#usr/include/boost/mpl/aux_/apply_1st.hpp
+#usr/include/boost/mpl/aux_/arg_typedef.hpp
+#usr/include/boost/mpl/aux_/arithmetic_op.hpp
+#usr/include/boost/mpl/aux_/arity.hpp
+#usr/include/boost/mpl/aux_/arity_spec.hpp
+#usr/include/boost/mpl/aux_/at_impl.hpp
+#usr/include/boost/mpl/aux_/back_impl.hpp
+#usr/include/boost/mpl/aux_/basic_bind.hpp
+#usr/include/boost/mpl/aux_/begin_end_impl.hpp
+#usr/include/boost/mpl/aux_/clear_impl.hpp
+#usr/include/boost/mpl/aux_/common_name_wknd.hpp
+#usr/include/boost/mpl/aux_/comparison_op.hpp
+#usr/include/boost/mpl/aux_/config
+#usr/include/boost/mpl/aux_/config/adl.hpp
+#usr/include/boost/mpl/aux_/config/arrays.hpp
+#usr/include/boost/mpl/aux_/config/bcc.hpp
+#usr/include/boost/mpl/aux_/config/bind.hpp
+#usr/include/boost/mpl/aux_/config/compiler.hpp
+#usr/include/boost/mpl/aux_/config/ctps.hpp
+#usr/include/boost/mpl/aux_/config/dependent_nttp.hpp
+#usr/include/boost/mpl/aux_/config/dmc_ambiguous_ctps.hpp
+#usr/include/boost/mpl/aux_/config/dtp.hpp
+#usr/include/boost/mpl/aux_/config/eti.hpp
+#usr/include/boost/mpl/aux_/config/forwarding.hpp
+#usr/include/boost/mpl/aux_/config/gcc.hpp
+#usr/include/boost/mpl/aux_/config/has_apply.hpp
+#usr/include/boost/mpl/aux_/config/has_xxx.hpp
+#usr/include/boost/mpl/aux_/config/integral.hpp
+#usr/include/boost/mpl/aux_/config/intel.hpp
+#usr/include/boost/mpl/aux_/config/lambda.hpp
+#usr/include/boost/mpl/aux_/config/msvc.hpp
+#usr/include/boost/mpl/aux_/config/msvc_typename.hpp
+#usr/include/boost/mpl/aux_/config/nttp.hpp
+#usr/include/boost/mpl/aux_/config/operators.hpp
+#usr/include/boost/mpl/aux_/config/overload_resolution.hpp
+#usr/include/boost/mpl/aux_/config/pp_counter.hpp
+#usr/include/boost/mpl/aux_/config/preprocessor.hpp
+#usr/include/boost/mpl/aux_/config/static_constant.hpp
+#usr/include/boost/mpl/aux_/config/ttp.hpp
+#usr/include/boost/mpl/aux_/config/typeof.hpp
+#usr/include/boost/mpl/aux_/config/use_preprocessed.hpp
+#usr/include/boost/mpl/aux_/config/workaround.hpp
+#usr/include/boost/mpl/aux_/contains_impl.hpp
+#usr/include/boost/mpl/aux_/count_args.hpp
+#usr/include/boost/mpl/aux_/count_impl.hpp
+#usr/include/boost/mpl/aux_/empty_impl.hpp
+#usr/include/boost/mpl/aux_/erase_impl.hpp
+#usr/include/boost/mpl/aux_/erase_key_impl.hpp
+#usr/include/boost/mpl/aux_/filter_iter.hpp
+#usr/include/boost/mpl/aux_/find_if_pred.hpp
+#usr/include/boost/mpl/aux_/fold_impl.hpp
+#usr/include/boost/mpl/aux_/fold_impl_body.hpp
+#usr/include/boost/mpl/aux_/fold_op.hpp
+#usr/include/boost/mpl/aux_/fold_pred.hpp
+#usr/include/boost/mpl/aux_/front_impl.hpp
+#usr/include/boost/mpl/aux_/full_lambda.hpp
+#usr/include/boost/mpl/aux_/has_apply.hpp
+#usr/include/boost/mpl/aux_/has_begin.hpp
+#usr/include/boost/mpl/aux_/has_key_impl.hpp
+#usr/include/boost/mpl/aux_/has_rebind.hpp
+#usr/include/boost/mpl/aux_/has_size.hpp
+#usr/include/boost/mpl/aux_/has_tag.hpp
+#usr/include/boost/mpl/aux_/has_type.hpp
+#usr/include/boost/mpl/aux_/include_preprocessed.hpp
+#usr/include/boost/mpl/aux_/insert_impl.hpp
+#usr/include/boost/mpl/aux_/insert_range_impl.hpp
+#usr/include/boost/mpl/aux_/inserter_algorithm.hpp
+#usr/include/boost/mpl/aux_/integral_wrapper.hpp
+#usr/include/boost/mpl/aux_/is_msvc_eti_arg.hpp
+#usr/include/boost/mpl/aux_/iter_apply.hpp
+#usr/include/boost/mpl/aux_/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/iter_push_front.hpp
+#usr/include/boost/mpl/aux_/joint_iter.hpp
+#usr/include/boost/mpl/aux_/lambda_arity_param.hpp
+#usr/include/boost/mpl/aux_/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/lambda_spec.hpp
+#usr/include/boost/mpl/aux_/lambda_support.hpp
+#usr/include/boost/mpl/aux_/largest_int.hpp
+#usr/include/boost/mpl/aux_/logical_op.hpp
+#usr/include/boost/mpl/aux_/msvc_dtw.hpp
+#usr/include/boost/mpl/aux_/msvc_eti_base.hpp
+#usr/include/boost/mpl/aux_/msvc_is_class.hpp
+#usr/include/boost/mpl/aux_/msvc_never_true.hpp
+#usr/include/boost/mpl/aux_/msvc_type.hpp
+#usr/include/boost/mpl/aux_/na.hpp
+#usr/include/boost/mpl/aux_/na_assert.hpp
+#usr/include/boost/mpl/aux_/na_fwd.hpp
+#usr/include/boost/mpl/aux_/na_spec.hpp
+#usr/include/boost/mpl/aux_/nested_type_wknd.hpp
+#usr/include/boost/mpl/aux_/nttp_decl.hpp
+#usr/include/boost/mpl/aux_/numeric_cast_utils.hpp
+#usr/include/boost/mpl/aux_/numeric_op.hpp
+#usr/include/boost/mpl/aux_/order_impl.hpp
+#usr/include/boost/mpl/aux_/overload_names.hpp
+#usr/include/boost/mpl/aux_/partition_op.hpp
+#usr/include/boost/mpl/aux_/pop_back_impl.hpp
+#usr/include/boost/mpl/aux_/pop_front_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed
+#usr/include/boost/mpl/aux_/preprocessed/bcc
+#usr/include/boost/mpl/aux_/preprocessed/bcc/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc551/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/bcc_pre590/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc
+#usr/include/boost/mpl/aux_/preprocessed/dmc/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/dmc/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc
+#usr/include/boost/mpl/aux_/preprocessed/gcc/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/gcc/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc60/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/msvc70/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/mwcw/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ctps/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/no_ttp/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain
+#usr/include/boost/mpl/aux_/preprocessed/plain/advance_backward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/advance_forward.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/and.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/apply.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/apply_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/arg.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/basic_bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/bind.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/bind_fwd.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/bitand.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/bitor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/bitxor.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/deque.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/divides.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/full_lambda.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/greater.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/greater_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/inherit.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/iter_fold_if_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/lambda_no_ctps.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/less.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/less_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/list.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/list_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/map.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/minus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/modulus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/not_equal_to.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/or.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/placeholders.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/plus.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/quote.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/set.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/set_c.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/shift_left.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/shift_right.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/template_arity.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/times.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/unpack_args.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/vector.hpp
+#usr/include/boost/mpl/aux_/preprocessed/plain/vector_c.hpp
+#usr/include/boost/mpl/aux_/preprocessor
+#usr/include/boost/mpl/aux_/preprocessor/add.hpp
+#usr/include/boost/mpl/aux_/preprocessor/def_params_tail.hpp
+#usr/include/boost/mpl/aux_/preprocessor/default_params.hpp
+#usr/include/boost/mpl/aux_/preprocessor/enum.hpp
+#usr/include/boost/mpl/aux_/preprocessor/ext_params.hpp
+#usr/include/boost/mpl/aux_/preprocessor/filter_params.hpp
+#usr/include/boost/mpl/aux_/preprocessor/is_seq.hpp
+#usr/include/boost/mpl/aux_/preprocessor/params.hpp
+#usr/include/boost/mpl/aux_/preprocessor/partial_spec_params.hpp
+#usr/include/boost/mpl/aux_/preprocessor/range.hpp
+#usr/include/boost/mpl/aux_/preprocessor/repeat.hpp
+#usr/include/boost/mpl/aux_/preprocessor/sub.hpp
+#usr/include/boost/mpl/aux_/preprocessor/token_equal.hpp
+#usr/include/boost/mpl/aux_/preprocessor/tuple.hpp
+#usr/include/boost/mpl/aux_/ptr_to_ref.hpp
+#usr/include/boost/mpl/aux_/push_back_impl.hpp
+#usr/include/boost/mpl/aux_/push_front_impl.hpp
+#usr/include/boost/mpl/aux_/range_c
+#usr/include/boost/mpl/aux_/range_c/O1_size.hpp
+#usr/include/boost/mpl/aux_/range_c/back.hpp
+#usr/include/boost/mpl/aux_/range_c/empty.hpp
+#usr/include/boost/mpl/aux_/range_c/front.hpp
+#usr/include/boost/mpl/aux_/range_c/iterator.hpp
+#usr/include/boost/mpl/aux_/range_c/size.hpp
+#usr/include/boost/mpl/aux_/range_c/tag.hpp
+#usr/include/boost/mpl/aux_/reverse_fold_impl.hpp
+#usr/include/boost/mpl/aux_/reverse_fold_impl_body.hpp
+#usr/include/boost/mpl/aux_/reverse_iter_fold_impl.hpp
+#usr/include/boost/mpl/aux_/sequence_wrapper.hpp
+#usr/include/boost/mpl/aux_/shift_op.hpp
+#usr/include/boost/mpl/aux_/single_element_iter.hpp
+#usr/include/boost/mpl/aux_/size_impl.hpp
+#usr/include/boost/mpl/aux_/sort_impl.hpp
+#usr/include/boost/mpl/aux_/static_cast.hpp
+#usr/include/boost/mpl/aux_/template_arity.hpp
+#usr/include/boost/mpl/aux_/template_arity_fwd.hpp
+#usr/include/boost/mpl/aux_/test
+#usr/include/boost/mpl/aux_/test.hpp
+#usr/include/boost/mpl/aux_/test/assert.hpp
+#usr/include/boost/mpl/aux_/test/data.hpp
+#usr/include/boost/mpl/aux_/test/test_case.hpp
+#usr/include/boost/mpl/aux_/traits_lambda_spec.hpp
+#usr/include/boost/mpl/aux_/transform_iter.hpp
+#usr/include/boost/mpl/aux_/type_wrapper.hpp
+#usr/include/boost/mpl/aux_/unwrap.hpp
+#usr/include/boost/mpl/aux_/value_wknd.hpp
+#usr/include/boost/mpl/aux_/yes_no.hpp
+#usr/include/boost/mpl/back.hpp
+#usr/include/boost/mpl/back_fwd.hpp
+#usr/include/boost/mpl/back_inserter.hpp
+#usr/include/boost/mpl/base.hpp
+#usr/include/boost/mpl/begin.hpp
+#usr/include/boost/mpl/begin_end.hpp
+#usr/include/boost/mpl/begin_end_fwd.hpp
+#usr/include/boost/mpl/bind.hpp
+#usr/include/boost/mpl/bind_fwd.hpp
+#usr/include/boost/mpl/bitand.hpp
+#usr/include/boost/mpl/bitor.hpp
+#usr/include/boost/mpl/bitwise.hpp
+#usr/include/boost/mpl/bitxor.hpp
+#usr/include/boost/mpl/bool.hpp
+#usr/include/boost/mpl/bool_fwd.hpp
+#usr/include/boost/mpl/char.hpp
+#usr/include/boost/mpl/char_fwd.hpp
+#usr/include/boost/mpl/clear.hpp
+#usr/include/boost/mpl/clear_fwd.hpp
+#usr/include/boost/mpl/comparison.hpp
+#usr/include/boost/mpl/contains.hpp
+#usr/include/boost/mpl/contains_fwd.hpp
+#usr/include/boost/mpl/copy.hpp
+#usr/include/boost/mpl/copy_if.hpp
+#usr/include/boost/mpl/count.hpp
+#usr/include/boost/mpl/count_fwd.hpp
+#usr/include/boost/mpl/count_if.hpp
+#usr/include/boost/mpl/deque.hpp
+#usr/include/boost/mpl/deref.hpp
+#usr/include/boost/mpl/distance.hpp
+#usr/include/boost/mpl/distance_fwd.hpp
+#usr/include/boost/mpl/divides.hpp
+#usr/include/boost/mpl/empty.hpp
+#usr/include/boost/mpl/empty_base.hpp
+#usr/include/boost/mpl/empty_fwd.hpp
+#usr/include/boost/mpl/empty_sequence.hpp
+#usr/include/boost/mpl/end.hpp
+#usr/include/boost/mpl/equal.hpp
+#usr/include/boost/mpl/equal_to.hpp
+#usr/include/boost/mpl/erase.hpp
+#usr/include/boost/mpl/erase_fwd.hpp
+#usr/include/boost/mpl/erase_key.hpp
+#usr/include/boost/mpl/erase_key_fwd.hpp
+#usr/include/boost/mpl/eval_if.hpp
+#usr/include/boost/mpl/filter_view.hpp
+#usr/include/boost/mpl/find.hpp
+#usr/include/boost/mpl/find_if.hpp
+#usr/include/boost/mpl/fold.hpp
+#usr/include/boost/mpl/for_each.hpp
+#usr/include/boost/mpl/front.hpp
+#usr/include/boost/mpl/front_fwd.hpp
+#usr/include/boost/mpl/front_inserter.hpp
+#usr/include/boost/mpl/greater.hpp
+#usr/include/boost/mpl/greater_equal.hpp
+#usr/include/boost/mpl/has_key.hpp
+#usr/include/boost/mpl/has_key_fwd.hpp
+#usr/include/boost/mpl/has_xxx.hpp
+#usr/include/boost/mpl/identity.hpp
+#usr/include/boost/mpl/if.hpp
+#usr/include/boost/mpl/index_if.hpp
+#usr/include/boost/mpl/index_of.hpp
+#usr/include/boost/mpl/inherit.hpp
+#usr/include/boost/mpl/inherit_linearly.hpp
+#usr/include/boost/mpl/insert.hpp
+#usr/include/boost/mpl/insert_fwd.hpp
+#usr/include/boost/mpl/insert_range.hpp
+#usr/include/boost/mpl/insert_range_fwd.hpp
+#usr/include/boost/mpl/inserter.hpp
+#usr/include/boost/mpl/int.hpp
+#usr/include/boost/mpl/int_fwd.hpp
+#usr/include/boost/mpl/integral_c.hpp
+#usr/include/boost/mpl/integral_c_fwd.hpp
+#usr/include/boost/mpl/integral_c_tag.hpp
+#usr/include/boost/mpl/is_placeholder.hpp
+#usr/include/boost/mpl/is_sequence.hpp
+#usr/include/boost/mpl/iter_fold.hpp
+#usr/include/boost/mpl/iter_fold_if.hpp
+#usr/include/boost/mpl/iterator_category.hpp
+#usr/include/boost/mpl/iterator_range.hpp
+#usr/include/boost/mpl/iterator_tags.hpp
+#usr/include/boost/mpl/joint_view.hpp
+#usr/include/boost/mpl/key_type.hpp
+#usr/include/boost/mpl/key_type_fwd.hpp
+#usr/include/boost/mpl/lambda.hpp
+#usr/include/boost/mpl/lambda_fwd.hpp
+#usr/include/boost/mpl/less.hpp
+#usr/include/boost/mpl/less_equal.hpp
+#usr/include/boost/mpl/limits
+#usr/include/boost/mpl/limits/arity.hpp
+#usr/include/boost/mpl/limits/list.hpp
+#usr/include/boost/mpl/limits/map.hpp
+#usr/include/boost/mpl/limits/set.hpp
+#usr/include/boost/mpl/limits/string.hpp
+#usr/include/boost/mpl/limits/unrolling.hpp
+#usr/include/boost/mpl/limits/vector.hpp
+#usr/include/boost/mpl/list
+#usr/include/boost/mpl/list.hpp
+#usr/include/boost/mpl/list/aux_
+#usr/include/boost/mpl/list/aux_/O1_size.hpp
+#usr/include/boost/mpl/list/aux_/begin_end.hpp
+#usr/include/boost/mpl/list/aux_/clear.hpp
+#usr/include/boost/mpl/list/aux_/empty.hpp
+#usr/include/boost/mpl/list/aux_/front.hpp
+#usr/include/boost/mpl/list/aux_/include_preprocessed.hpp
+#usr/include/boost/mpl/list/aux_/item.hpp
+#usr/include/boost/mpl/list/aux_/iterator.hpp
+#usr/include/boost/mpl/list/aux_/numbered.hpp
+#usr/include/boost/mpl/list/aux_/numbered_c.hpp
+#usr/include/boost/mpl/list/aux_/pop_front.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed
+#usr/include/boost/mpl/list/aux_/preprocessed/plain
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list10.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list10_c.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list20.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list20_c.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list30.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list30_c.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list40.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list40_c.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list50.hpp
+#usr/include/boost/mpl/list/aux_/preprocessed/plain/list50_c.hpp
+#usr/include/boost/mpl/list/aux_/push_back.hpp
+#usr/include/boost/mpl/list/aux_/push_front.hpp
+#usr/include/boost/mpl/list/aux_/size.hpp
+#usr/include/boost/mpl/list/aux_/tag.hpp
+#usr/include/boost/mpl/list/list0.hpp
+#usr/include/boost/mpl/list/list0_c.hpp
+#usr/include/boost/mpl/list/list10.hpp
+#usr/include/boost/mpl/list/list10_c.hpp
+#usr/include/boost/mpl/list/list20.hpp
+#usr/include/boost/mpl/list/list20_c.hpp
+#usr/include/boost/mpl/list/list30.hpp
+#usr/include/boost/mpl/list/list30_c.hpp
+#usr/include/boost/mpl/list/list40.hpp
+#usr/include/boost/mpl/list/list40_c.hpp
+#usr/include/boost/mpl/list/list50.hpp
+#usr/include/boost/mpl/list/list50_c.hpp
+#usr/include/boost/mpl/list_c.hpp
+#usr/include/boost/mpl/logical.hpp
+#usr/include/boost/mpl/long.hpp
+#usr/include/boost/mpl/long_fwd.hpp
+#usr/include/boost/mpl/lower_bound.hpp
+#usr/include/boost/mpl/map
+#usr/include/boost/mpl/map.hpp
+#usr/include/boost/mpl/map/aux_
+#usr/include/boost/mpl/map/aux_/at_impl.hpp
+#usr/include/boost/mpl/map/aux_/begin_end_impl.hpp
+#usr/include/boost/mpl/map/aux_/clear_impl.hpp
+#usr/include/boost/mpl/map/aux_/contains_impl.hpp
+#usr/include/boost/mpl/map/aux_/empty_impl.hpp
+#usr/include/boost/mpl/map/aux_/erase_impl.hpp
+#usr/include/boost/mpl/map/aux_/erase_key_impl.hpp
+#usr/include/boost/mpl/map/aux_/has_key_impl.hpp
+#usr/include/boost/mpl/map/aux_/include_preprocessed.hpp
+#usr/include/boost/mpl/map/aux_/insert_impl.hpp
+#usr/include/boost/mpl/map/aux_/item.hpp
+#usr/include/boost/mpl/map/aux_/iterator.hpp
+#usr/include/boost/mpl/map/aux_/key_type_impl.hpp
+#usr/include/boost/mpl/map/aux_/map0.hpp
+#usr/include/boost/mpl/map/aux_/numbered.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed
+#usr/include/boost/mpl/map/aux_/preprocessed/no_ctps
+#usr/include/boost/mpl/map/aux_/preprocessed/no_ctps/map10.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/no_ctps/map20.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/no_ctps/map30.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/no_ctps/map40.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/no_ctps/map50.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/plain
+#usr/include/boost/mpl/map/aux_/preprocessed/plain/map10.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/plain/map20.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/plain/map30.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/plain/map40.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/plain/map50.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/typeof_based
+#usr/include/boost/mpl/map/aux_/preprocessed/typeof_based/map10.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/typeof_based/map20.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/typeof_based/map30.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/typeof_based/map40.hpp
+#usr/include/boost/mpl/map/aux_/preprocessed/typeof_based/map50.hpp
+#usr/include/boost/mpl/map/aux_/size_impl.hpp
+#usr/include/boost/mpl/map/aux_/tag.hpp
+#usr/include/boost/mpl/map/aux_/value_type_impl.hpp
+#usr/include/boost/mpl/map/map0.hpp
+#usr/include/boost/mpl/map/map10.hpp
+#usr/include/boost/mpl/map/map20.hpp
+#usr/include/boost/mpl/map/map30.hpp
+#usr/include/boost/mpl/map/map40.hpp
+#usr/include/boost/mpl/map/map50.hpp
+#usr/include/boost/mpl/math
+#usr/include/boost/mpl/math/fixed_c.hpp
+#usr/include/boost/mpl/math/is_even.hpp
+#usr/include/boost/mpl/math/rational_c.hpp
+#usr/include/boost/mpl/max.hpp
+#usr/include/boost/mpl/max_element.hpp
+#usr/include/boost/mpl/min.hpp
+#usr/include/boost/mpl/min_element.hpp
+#usr/include/boost/mpl/min_max.hpp
+#usr/include/boost/mpl/minus.hpp
+#usr/include/boost/mpl/modulus.hpp
+#usr/include/boost/mpl/multiplies.hpp
+#usr/include/boost/mpl/multiset
+#usr/include/boost/mpl/multiset/aux_
+#usr/include/boost/mpl/multiset/aux_/count_impl.hpp
+#usr/include/boost/mpl/multiset/aux_/insert_impl.hpp
+#usr/include/boost/mpl/multiset/aux_/item.hpp
+#usr/include/boost/mpl/multiset/aux_/multiset0.hpp
+#usr/include/boost/mpl/multiset/aux_/tag.hpp
+#usr/include/boost/mpl/multiset/multiset0.hpp
+#usr/include/boost/mpl/negate.hpp
+#usr/include/boost/mpl/next.hpp
+#usr/include/boost/mpl/next_prior.hpp
+#usr/include/boost/mpl/not.hpp
+#usr/include/boost/mpl/not_equal_to.hpp
+#usr/include/boost/mpl/numeric_cast.hpp
+#usr/include/boost/mpl/or.hpp
+#usr/include/boost/mpl/order.hpp
+#usr/include/boost/mpl/order_fwd.hpp
+#usr/include/boost/mpl/pair.hpp
+#usr/include/boost/mpl/pair_view.hpp
+#usr/include/boost/mpl/partition.hpp
+#usr/include/boost/mpl/placeholders.hpp
+#usr/include/boost/mpl/plus.hpp
+#usr/include/boost/mpl/pop_back.hpp
+#usr/include/boost/mpl/pop_back_fwd.hpp
+#usr/include/boost/mpl/pop_front.hpp
+#usr/include/boost/mpl/pop_front_fwd.hpp
+#usr/include/boost/mpl/print.hpp
+#usr/include/boost/mpl/prior.hpp
+#usr/include/boost/mpl/protect.hpp
+#usr/include/boost/mpl/push_back.hpp
+#usr/include/boost/mpl/push_back_fwd.hpp
+#usr/include/boost/mpl/push_front.hpp
+#usr/include/boost/mpl/push_front_fwd.hpp
+#usr/include/boost/mpl/quote.hpp
+#usr/include/boost/mpl/range_c.hpp
+#usr/include/boost/mpl/remove.hpp
+#usr/include/boost/mpl/remove_if.hpp
+#usr/include/boost/mpl/replace.hpp
+#usr/include/boost/mpl/replace_if.hpp
+#usr/include/boost/mpl/reverse.hpp
+#usr/include/boost/mpl/reverse_fold.hpp
+#usr/include/boost/mpl/reverse_iter_fold.hpp
+#usr/include/boost/mpl/same_as.hpp
+#usr/include/boost/mpl/sequence_tag.hpp
+#usr/include/boost/mpl/sequence_tag_fwd.hpp
+#usr/include/boost/mpl/set
+#usr/include/boost/mpl/set.hpp
+#usr/include/boost/mpl/set/aux_
+#usr/include/boost/mpl/set/aux_/at_impl.hpp
+#usr/include/boost/mpl/set/aux_/begin_end_impl.hpp
+#usr/include/boost/mpl/set/aux_/clear_impl.hpp
+#usr/include/boost/mpl/set/aux_/empty_impl.hpp
+#usr/include/boost/mpl/set/aux_/erase_impl.hpp
+#usr/include/boost/mpl/set/aux_/erase_key_impl.hpp
+#usr/include/boost/mpl/set/aux_/has_key_impl.hpp
+#usr/include/boost/mpl/set/aux_/include_preprocessed.hpp
+#usr/include/boost/mpl/set/aux_/insert_impl.hpp
+#usr/include/boost/mpl/set/aux_/item.hpp
+#usr/include/boost/mpl/set/aux_/iterator.hpp
+#usr/include/boost/mpl/set/aux_/key_type_impl.hpp
+#usr/include/boost/mpl/set/aux_/numbered.hpp
+#usr/include/boost/mpl/set/aux_/numbered_c.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed
+#usr/include/boost/mpl/set/aux_/preprocessed/plain
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set10.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set10_c.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set20.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set20_c.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set30.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set30_c.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set40.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set40_c.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set50.hpp
+#usr/include/boost/mpl/set/aux_/preprocessed/plain/set50_c.hpp
+#usr/include/boost/mpl/set/aux_/set0.hpp
+#usr/include/boost/mpl/set/aux_/size_impl.hpp
+#usr/include/boost/mpl/set/aux_/tag.hpp
+#usr/include/boost/mpl/set/aux_/value_type_impl.hpp
+#usr/include/boost/mpl/set/set0.hpp
+#usr/include/boost/mpl/set/set0_c.hpp
+#usr/include/boost/mpl/set/set10.hpp
+#usr/include/boost/mpl/set/set10_c.hpp
+#usr/include/boost/mpl/set/set20.hpp
+#usr/include/boost/mpl/set/set20_c.hpp
+#usr/include/boost/mpl/set/set30.hpp
+#usr/include/boost/mpl/set/set30_c.hpp
+#usr/include/boost/mpl/set/set40.hpp
+#usr/include/boost/mpl/set/set40_c.hpp
+#usr/include/boost/mpl/set/set50.hpp
+#usr/include/boost/mpl/set/set50_c.hpp
+#usr/include/boost/mpl/set_c.hpp
+#usr/include/boost/mpl/shift_left.hpp
+#usr/include/boost/mpl/shift_right.hpp
+#usr/include/boost/mpl/single_view.hpp
+#usr/include/boost/mpl/size.hpp
+#usr/include/boost/mpl/size_fwd.hpp
+#usr/include/boost/mpl/size_t.hpp
+#usr/include/boost/mpl/size_t_fwd.hpp
+#usr/include/boost/mpl/sizeof.hpp
+#usr/include/boost/mpl/sort.hpp
+#usr/include/boost/mpl/stable_partition.hpp
+#usr/include/boost/mpl/string.hpp
+#usr/include/boost/mpl/switch.hpp
+#usr/include/boost/mpl/tag.hpp
+#usr/include/boost/mpl/times.hpp
+#usr/include/boost/mpl/transform.hpp
+#usr/include/boost/mpl/transform_view.hpp
+#usr/include/boost/mpl/unique.hpp
+#usr/include/boost/mpl/unpack_args.hpp
+#usr/include/boost/mpl/upper_bound.hpp
+#usr/include/boost/mpl/value_type.hpp
+#usr/include/boost/mpl/value_type_fwd.hpp
+#usr/include/boost/mpl/vector
+#usr/include/boost/mpl/vector.hpp
+#usr/include/boost/mpl/vector/aux_
+#usr/include/boost/mpl/vector/aux_/O1_size.hpp
+#usr/include/boost/mpl/vector/aux_/at.hpp
+#usr/include/boost/mpl/vector/aux_/back.hpp
+#usr/include/boost/mpl/vector/aux_/begin_end.hpp
+#usr/include/boost/mpl/vector/aux_/clear.hpp
+#usr/include/boost/mpl/vector/aux_/empty.hpp
+#usr/include/boost/mpl/vector/aux_/front.hpp
+#usr/include/boost/mpl/vector/aux_/include_preprocessed.hpp
+#usr/include/boost/mpl/vector/aux_/item.hpp
+#usr/include/boost/mpl/vector/aux_/iterator.hpp
+#usr/include/boost/mpl/vector/aux_/numbered.hpp
+#usr/include/boost/mpl/vector/aux_/numbered_c.hpp
+#usr/include/boost/mpl/vector/aux_/pop_back.hpp
+#usr/include/boost/mpl/vector/aux_/pop_front.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector10.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector10_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector20.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector20_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector30.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector30_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector40.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector40_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector50.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/no_ctps/vector50_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector10.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector10_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector20.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector20_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector30.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector30_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector40.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector40_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector50.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/plain/vector50_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector10.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector10_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector20.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector20_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector30.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector30_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector40.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector40_c.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector50.hpp
+#usr/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector50_c.hpp
+#usr/include/boost/mpl/vector/aux_/push_back.hpp
+#usr/include/boost/mpl/vector/aux_/push_front.hpp
+#usr/include/boost/mpl/vector/aux_/size.hpp
+#usr/include/boost/mpl/vector/aux_/tag.hpp
+#usr/include/boost/mpl/vector/aux_/vector0.hpp
+#usr/include/boost/mpl/vector/vector0.hpp
+#usr/include/boost/mpl/vector/vector0_c.hpp
+#usr/include/boost/mpl/vector/vector10.hpp
+#usr/include/boost/mpl/vector/vector10_c.hpp
+#usr/include/boost/mpl/vector/vector20.hpp
+#usr/include/boost/mpl/vector/vector20_c.hpp
+#usr/include/boost/mpl/vector/vector30.hpp
+#usr/include/boost/mpl/vector/vector30_c.hpp
+#usr/include/boost/mpl/vector/vector40.hpp
+#usr/include/boost/mpl/vector/vector40_c.hpp
+#usr/include/boost/mpl/vector/vector50.hpp
+#usr/include/boost/mpl/vector/vector50_c.hpp
+#usr/include/boost/mpl/vector_c.hpp
+#usr/include/boost/mpl/void.hpp
+#usr/include/boost/mpl/void_fwd.hpp
+#usr/include/boost/mpl/zip_view.hpp
+#usr/include/boost/msm
+#usr/include/boost/msm/active_state_switching_policies.hpp
+#usr/include/boost/msm/back
+#usr/include/boost/msm/back/args.hpp
+#usr/include/boost/msm/back/bind_helpers.hpp
+#usr/include/boost/msm/back/common_types.hpp
+#usr/include/boost/msm/back/copy_policies.hpp
+#usr/include/boost/msm/back/default_compile_policy.hpp
+#usr/include/boost/msm/back/dispatch_table.hpp
+#usr/include/boost/msm/back/favor_compile_time.hpp
+#usr/include/boost/msm/back/fold_to_list.hpp
+#usr/include/boost/msm/back/history_policies.hpp
+#usr/include/boost/msm/back/metafunctions.hpp
+#usr/include/boost/msm/back/mpl_graph_fsm_check.hpp
+#usr/include/boost/msm/back/no_fsm_check.hpp
+#usr/include/boost/msm/back/queue_container_circular.hpp
+#usr/include/boost/msm/back/queue_container_deque.hpp
+#usr/include/boost/msm/back/state_machine.hpp
+#usr/include/boost/msm/back/tools.hpp
+#usr/include/boost/msm/common.hpp
+#usr/include/boost/msm/event_traits.hpp
+#usr/include/boost/msm/front
+#usr/include/boost/msm/front/common_states.hpp
+#usr/include/boost/msm/front/completion_event.hpp
+#usr/include/boost/msm/front/detail
+#usr/include/boost/msm/front/detail/common_states.hpp
+#usr/include/boost/msm/front/detail/row2_helper.hpp
+#usr/include/boost/msm/front/euml
+#usr/include/boost/msm/front/euml/algorithm.hpp
+#usr/include/boost/msm/front/euml/common.hpp
+#usr/include/boost/msm/front/euml/container.hpp
+#usr/include/boost/msm/front/euml/euml.hpp
+#usr/include/boost/msm/front/euml/euml_typeof.hpp
+#usr/include/boost/msm/front/euml/guard_grammar.hpp
+#usr/include/boost/msm/front/euml/iteration.hpp
+#usr/include/boost/msm/front/euml/operator.hpp
+#usr/include/boost/msm/front/euml/phoenix_placeholders.hpp
+#usr/include/boost/msm/front/euml/querying.hpp
+#usr/include/boost/msm/front/euml/state_grammar.hpp
+#usr/include/boost/msm/front/euml/stl.hpp
+#usr/include/boost/msm/front/euml/stt_grammar.hpp
+#usr/include/boost/msm/front/euml/transformation.hpp
+#usr/include/boost/msm/front/functor_row.hpp
+#usr/include/boost/msm/front/internal_row.hpp
+#usr/include/boost/msm/front/row2.hpp
+#usr/include/boost/msm/front/state_machine_def.hpp
+#usr/include/boost/msm/front/states.hpp
+#usr/include/boost/msm/mpl_graph
+#usr/include/boost/msm/mpl_graph/adjacency_list_graph.hpp
+#usr/include/boost/msm/mpl_graph/breadth_first_search.hpp
+#usr/include/boost/msm/mpl_graph/depth_first_search.hpp
+#usr/include/boost/msm/mpl_graph/detail
+#usr/include/boost/msm/mpl_graph/detail/adjacency_list_graph.ipp
+#usr/include/boost/msm/mpl_graph/detail/graph_implementation_interface.ipp
+#usr/include/boost/msm/mpl_graph/detail/incidence_list_graph.ipp
+#usr/include/boost/msm/mpl_graph/incidence_list_graph.hpp
+#usr/include/boost/msm/mpl_graph/mpl_graph.hpp
+#usr/include/boost/msm/mpl_graph/mpl_utils.hpp
+#usr/include/boost/msm/mpl_graph/search_colors.hpp
+#usr/include/boost/msm/msm_grammar.hpp
+#usr/include/boost/msm/proto_config.hpp
+#usr/include/boost/msm/row_tags.hpp
+#usr/include/boost/multi_array
+#usr/include/boost/multi_array.hpp
+#usr/include/boost/multi_array/algorithm.hpp
+#usr/include/boost/multi_array/base.hpp
+#usr/include/boost/multi_array/collection_concept.hpp
+#usr/include/boost/multi_array/concept_checks.hpp
+#usr/include/boost/multi_array/copy_array.hpp
+#usr/include/boost/multi_array/extent_gen.hpp
+#usr/include/boost/multi_array/extent_range.hpp
+#usr/include/boost/multi_array/index_gen.hpp
+#usr/include/boost/multi_array/index_range.hpp
+#usr/include/boost/multi_array/iterator.hpp
+#usr/include/boost/multi_array/multi_array_ref.hpp
+#usr/include/boost/multi_array/range_list.hpp
+#usr/include/boost/multi_array/storage_order.hpp
+#usr/include/boost/multi_array/subarray.hpp
+#usr/include/boost/multi_array/types.hpp
+#usr/include/boost/multi_array/view.hpp
+#usr/include/boost/multi_index
+#usr/include/boost/multi_index/composite_key.hpp
+#usr/include/boost/multi_index/detail
+#usr/include/boost/multi_index/detail/access_specifier.hpp
+#usr/include/boost/multi_index/detail/adl_swap.hpp
+#usr/include/boost/multi_index/detail/archive_constructed.hpp
+#usr/include/boost/multi_index/detail/auto_space.hpp
+#usr/include/boost/multi_index/detail/base_type.hpp
+#usr/include/boost/multi_index/detail/bidir_node_iterator.hpp
+#usr/include/boost/multi_index/detail/bucket_array.hpp
+#usr/include/boost/multi_index/detail/converter.hpp
+#usr/include/boost/multi_index/detail/copy_map.hpp
+#usr/include/boost/multi_index/detail/do_not_copy_elements_tag.hpp
+#usr/include/boost/multi_index/detail/duplicates_iterator.hpp
+#usr/include/boost/multi_index/detail/has_tag.hpp
+#usr/include/boost/multi_index/detail/hash_index_args.hpp
+#usr/include/boost/multi_index/detail/hash_index_iterator.hpp
+#usr/include/boost/multi_index/detail/hash_index_node.hpp
+#usr/include/boost/multi_index/detail/header_holder.hpp
+#usr/include/boost/multi_index/detail/index_base.hpp
+#usr/include/boost/multi_index/detail/index_loader.hpp
+#usr/include/boost/multi_index/detail/index_matcher.hpp
+#usr/include/boost/multi_index/detail/index_node_base.hpp
+#usr/include/boost/multi_index/detail/index_saver.hpp
+#usr/include/boost/multi_index/detail/invariant_assert.hpp
+#usr/include/boost/multi_index/detail/is_index_list.hpp
+#usr/include/boost/multi_index/detail/iter_adaptor.hpp
+#usr/include/boost/multi_index/detail/modify_key_adaptor.hpp
+#usr/include/boost/multi_index/detail/msvc_index_specifier.hpp
+#usr/include/boost/multi_index/detail/no_duplicate_tags.hpp
+#usr/include/boost/multi_index/detail/node_type.hpp
+#usr/include/boost/multi_index/detail/ord_index_args.hpp
+#usr/include/boost/multi_index/detail/ord_index_node.hpp
+#usr/include/boost/multi_index/detail/ord_index_ops.hpp
+#usr/include/boost/multi_index/detail/prevent_eti.hpp
+#usr/include/boost/multi_index/detail/rnd_index_loader.hpp
+#usr/include/boost/multi_index/detail/rnd_index_node.hpp
+#usr/include/boost/multi_index/detail/rnd_index_ops.hpp
+#usr/include/boost/multi_index/detail/rnd_index_ptr_array.hpp
+#usr/include/boost/multi_index/detail/rnd_node_iterator.hpp
+#usr/include/boost/multi_index/detail/safe_ctr_proxy.hpp
+#usr/include/boost/multi_index/detail/safe_mode.hpp
+#usr/include/boost/multi_index/detail/scope_guard.hpp
+#usr/include/boost/multi_index/detail/seq_index_node.hpp
+#usr/include/boost/multi_index/detail/seq_index_ops.hpp
+#usr/include/boost/multi_index/detail/serialization_version.hpp
+#usr/include/boost/multi_index/detail/uintptr_type.hpp
+#usr/include/boost/multi_index/detail/unbounded.hpp
+#usr/include/boost/multi_index/detail/value_compare.hpp
+#usr/include/boost/multi_index/detail/vartempl_support.hpp
+#usr/include/boost/multi_index/global_fun.hpp
+#usr/include/boost/multi_index/hashed_index.hpp
+#usr/include/boost/multi_index/hashed_index_fwd.hpp
+#usr/include/boost/multi_index/identity.hpp
+#usr/include/boost/multi_index/identity_fwd.hpp
+#usr/include/boost/multi_index/indexed_by.hpp
+#usr/include/boost/multi_index/key_extractors.hpp
+#usr/include/boost/multi_index/mem_fun.hpp
+#usr/include/boost/multi_index/member.hpp
+#usr/include/boost/multi_index/ordered_index.hpp
+#usr/include/boost/multi_index/ordered_index_fwd.hpp
+#usr/include/boost/multi_index/random_access_index.hpp
+#usr/include/boost/multi_index/random_access_index_fwd.hpp
+#usr/include/boost/multi_index/safe_mode_errors.hpp
+#usr/include/boost/multi_index/sequenced_index.hpp
+#usr/include/boost/multi_index/sequenced_index_fwd.hpp
+#usr/include/boost/multi_index/tag.hpp
+#usr/include/boost/multi_index_container.hpp
+#usr/include/boost/multi_index_container_fwd.hpp
+#usr/include/boost/multiprecision
+#usr/include/boost/multiprecision/concepts
+#usr/include/boost/multiprecision/concepts/mp_number_archetypes.hpp
+#usr/include/boost/multiprecision/cpp_dec_float.hpp
+#usr/include/boost/multiprecision/cpp_int
+#usr/include/boost/multiprecision/cpp_int.hpp
+#usr/include/boost/multiprecision/cpp_int/add.hpp
+#usr/include/boost/multiprecision/cpp_int/bitwise.hpp
+#usr/include/boost/multiprecision/cpp_int/checked.hpp
+#usr/include/boost/multiprecision/cpp_int/comparison.hpp
+#usr/include/boost/multiprecision/cpp_int/cpp_int_config.hpp
+#usr/include/boost/multiprecision/cpp_int/divide.hpp
+#usr/include/boost/multiprecision/cpp_int/limits.hpp
+#usr/include/boost/multiprecision/cpp_int/literals.hpp
+#usr/include/boost/multiprecision/cpp_int/misc.hpp
+#usr/include/boost/multiprecision/cpp_int/multiply.hpp
+#usr/include/boost/multiprecision/cpp_int/serialize.hpp
+#usr/include/boost/multiprecision/cpp_int/value_pack.hpp
+#usr/include/boost/multiprecision/debug_adaptor.hpp
+#usr/include/boost/multiprecision/detail
+#usr/include/boost/multiprecision/detail/big_lanczos.hpp
+#usr/include/boost/multiprecision/detail/bitscan.hpp
+#usr/include/boost/multiprecision/detail/default_ops.hpp
+#usr/include/boost/multiprecision/detail/digits.hpp
+#usr/include/boost/multiprecision/detail/dynamic_array.hpp
+#usr/include/boost/multiprecision/detail/et_ops.hpp
+#usr/include/boost/multiprecision/detail/float_string_cvt.hpp
+#usr/include/boost/multiprecision/detail/functions
+#usr/include/boost/multiprecision/detail/functions/constants.hpp
+#usr/include/boost/multiprecision/detail/functions/pow.hpp
+#usr/include/boost/multiprecision/detail/functions/trig.hpp
+#usr/include/boost/multiprecision/detail/generic_interconvert.hpp
+#usr/include/boost/multiprecision/detail/integer_ops.hpp
+#usr/include/boost/multiprecision/detail/no_et_ops.hpp
+#usr/include/boost/multiprecision/detail/number_base.hpp
+#usr/include/boost/multiprecision/detail/number_compare.hpp
+#usr/include/boost/multiprecision/detail/rebind.hpp
+#usr/include/boost/multiprecision/detail/ublas_interop.hpp
+#usr/include/boost/multiprecision/detail/utype_helper.hpp
+#usr/include/boost/multiprecision/float128.hpp
+#usr/include/boost/multiprecision/gmp.hpp
+#usr/include/boost/multiprecision/integer.hpp
+#usr/include/boost/multiprecision/logged_adaptor.hpp
+#usr/include/boost/multiprecision/miller_rabin.hpp
+#usr/include/boost/multiprecision/mpfi.hpp
+#usr/include/boost/multiprecision/mpfr.hpp
+#usr/include/boost/multiprecision/number.hpp
+#usr/include/boost/multiprecision/random.hpp
+#usr/include/boost/multiprecision/rational_adaptor.hpp
+#usr/include/boost/multiprecision/tommath.hpp
+#usr/include/boost/multiprecision/traits
+#usr/include/boost/multiprecision/traits/explicit_conversion.hpp
+#usr/include/boost/multiprecision/traits/extract_exponent_type.hpp
+#usr/include/boost/multiprecision/traits/is_restricted_conversion.hpp
+#usr/include/boost/next_prior.hpp
+#usr/include/boost/non_type.hpp
+#usr/include/boost/noncopyable.hpp
+#usr/include/boost/nondet_random.hpp
+#usr/include/boost/none.hpp
+#usr/include/boost/none_t.hpp
+#usr/include/boost/numeric
+#usr/include/boost/numeric/conversion
+#usr/include/boost/numeric/conversion/bounds.hpp
+#usr/include/boost/numeric/conversion/cast.hpp
+#usr/include/boost/numeric/conversion/conversion_traits.hpp
+#usr/include/boost/numeric/conversion/converter.hpp
+#usr/include/boost/numeric/conversion/converter_policies.hpp
+#usr/include/boost/numeric/conversion/detail
+#usr/include/boost/numeric/conversion/detail/bounds.hpp
+#usr/include/boost/numeric/conversion/detail/conversion_traits.hpp
+#usr/include/boost/numeric/conversion/detail/converter.hpp
+#usr/include/boost/numeric/conversion/detail/int_float_mixture.hpp
+#usr/include/boost/numeric/conversion/detail/is_subranged.hpp
+#usr/include/boost/numeric/conversion/detail/meta.hpp
+#usr/include/boost/numeric/conversion/detail/numeric_cast_traits.hpp
+#usr/include/boost/numeric/conversion/detail/old_numeric_cast.hpp
+#usr/include/boost/numeric/conversion/detail/preprocessed
+#usr/include/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_common.hpp
+#usr/include/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_long_long.hpp
+#usr/include/boost/numeric/conversion/detail/sign_mixture.hpp
+#usr/include/boost/numeric/conversion/detail/udt_builtin_mixture.hpp
+#usr/include/boost/numeric/conversion/int_float_mixture.hpp
+#usr/include/boost/numeric/conversion/int_float_mixture_enum.hpp
+#usr/include/boost/numeric/conversion/is_subranged.hpp
+#usr/include/boost/numeric/conversion/numeric_cast_traits.hpp
+#usr/include/boost/numeric/conversion/sign_mixture.hpp
+#usr/include/boost/numeric/conversion/sign_mixture_enum.hpp
+#usr/include/boost/numeric/conversion/udt_builtin_mixture.hpp
+#usr/include/boost/numeric/conversion/udt_builtin_mixture_enum.hpp
+#usr/include/boost/numeric/interval
+#usr/include/boost/numeric/interval.hpp
+#usr/include/boost/numeric/interval/arith.hpp
+#usr/include/boost/numeric/interval/arith2.hpp
+#usr/include/boost/numeric/interval/arith3.hpp
+#usr/include/boost/numeric/interval/checking.hpp
+#usr/include/boost/numeric/interval/compare
+#usr/include/boost/numeric/interval/compare.hpp
+#usr/include/boost/numeric/interval/compare/certain.hpp
+#usr/include/boost/numeric/interval/compare/explicit.hpp
+#usr/include/boost/numeric/interval/compare/lexicographic.hpp
+#usr/include/boost/numeric/interval/compare/possible.hpp
+#usr/include/boost/numeric/interval/compare/set.hpp
+#usr/include/boost/numeric/interval/compare/tribool.hpp
+#usr/include/boost/numeric/interval/constants.hpp
+#usr/include/boost/numeric/interval/detail
+#usr/include/boost/numeric/interval/detail/alpha_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/bcc_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/bugs.hpp
+#usr/include/boost/numeric/interval/detail/c99_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/c99sub_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/division.hpp
+#usr/include/boost/numeric/interval/detail/ia64_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/interval_prototype.hpp
+#usr/include/boost/numeric/interval/detail/msvc_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/ppc_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/sparc_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/test_input.hpp
+#usr/include/boost/numeric/interval/detail/x86_rounding_control.hpp
+#usr/include/boost/numeric/interval/detail/x86gcc_rounding_control.hpp
+#usr/include/boost/numeric/interval/ext
+#usr/include/boost/numeric/interval/ext/integer.hpp
+#usr/include/boost/numeric/interval/ext/x86_fast_rounding_control.hpp
+#usr/include/boost/numeric/interval/hw_rounding.hpp
+#usr/include/boost/numeric/interval/interval.hpp
+#usr/include/boost/numeric/interval/io.hpp
+#usr/include/boost/numeric/interval/limits.hpp
+#usr/include/boost/numeric/interval/policies.hpp
+#usr/include/boost/numeric/interval/rounded_arith.hpp
+#usr/include/boost/numeric/interval/rounded_transc.hpp
+#usr/include/boost/numeric/interval/rounding.hpp
+#usr/include/boost/numeric/interval/transc.hpp
+#usr/include/boost/numeric/interval/utility.hpp
+#usr/include/boost/numeric/odeint
+#usr/include/boost/numeric/odeint.hpp
+#usr/include/boost/numeric/odeint/algebra
+#usr/include/boost/numeric/odeint/algebra/array_algebra.hpp
+#usr/include/boost/numeric/odeint/algebra/default_operations.hpp
+#usr/include/boost/numeric/odeint/algebra/detail
+#usr/include/boost/numeric/odeint/algebra/detail/for_each.hpp
+#usr/include/boost/numeric/odeint/algebra/detail/macros.hpp
+#usr/include/boost/numeric/odeint/algebra/detail/reduce.hpp
+#usr/include/boost/numeric/odeint/algebra/fusion_algebra.hpp
+#usr/include/boost/numeric/odeint/algebra/range_algebra.hpp
+#usr/include/boost/numeric/odeint/algebra/vector_space_algebra.hpp
+#usr/include/boost/numeric/odeint/config.hpp
+#usr/include/boost/numeric/odeint/external
+#usr/include/boost/numeric/odeint/external/gsl
+#usr/include/boost/numeric/odeint/external/gsl/gsl_wrapper.hpp
+#usr/include/boost/numeric/odeint/external/mkl
+#usr/include/boost/numeric/odeint/external/mkl/mkl_operations.hpp
+#usr/include/boost/numeric/odeint/external/mtl4
+#usr/include/boost/numeric/odeint/external/mtl4/implicit_euler_mtl4.hpp
+#usr/include/boost/numeric/odeint/external/mtl4/mtl4_resize.hpp
+#usr/include/boost/numeric/odeint/external/thrust
+#usr/include/boost/numeric/odeint/external/thrust/thrust_algebra.hpp
+#usr/include/boost/numeric/odeint/external/thrust/thrust_operations.hpp
+#usr/include/boost/numeric/odeint/external/thrust/thrust_resize.hpp
+#usr/include/boost/numeric/odeint/external/vexcl
+#usr/include/boost/numeric/odeint/external/vexcl/vexcl_resize.hpp
+#usr/include/boost/numeric/odeint/external/viennacl
+#usr/include/boost/numeric/odeint/external/viennacl/viennacl_operations.hpp
+#usr/include/boost/numeric/odeint/external/viennacl/viennacl_resize.hpp
+#usr/include/boost/numeric/odeint/integrate
+#usr/include/boost/numeric/odeint/integrate/detail
+#usr/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp
+#usr/include/boost/numeric/odeint/integrate/detail/integrate_const.hpp
+#usr/include/boost/numeric/odeint/integrate/detail/integrate_n_steps.hpp
+#usr/include/boost/numeric/odeint/integrate/detail/integrate_times.hpp
+#usr/include/boost/numeric/odeint/integrate/integrate.hpp
+#usr/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp
+#usr/include/boost/numeric/odeint/integrate/integrate_const.hpp
+#usr/include/boost/numeric/odeint/integrate/integrate_n_steps.hpp
+#usr/include/boost/numeric/odeint/integrate/integrate_times.hpp
+#usr/include/boost/numeric/odeint/integrate/null_observer.hpp
+#usr/include/boost/numeric/odeint/integrate/observer_collection.hpp
+#usr/include/boost/numeric/odeint/stepper
+#usr/include/boost/numeric/odeint/stepper/adams_bashforth.hpp
+#usr/include/boost/numeric/odeint/stepper/adams_bashforth_moulton.hpp
+#usr/include/boost/numeric/odeint/stepper/adams_moulton.hpp
+#usr/include/boost/numeric/odeint/stepper/base
+#usr/include/boost/numeric/odeint/stepper/base/algebra_stepper_base.hpp
+#usr/include/boost/numeric/odeint/stepper/base/explicit_error_stepper_base.hpp
+#usr/include/boost/numeric/odeint/stepper/base/explicit_error_stepper_fsal_base.hpp
+#usr/include/boost/numeric/odeint/stepper/base/explicit_stepper_base.hpp
+#usr/include/boost/numeric/odeint/stepper/base/symplectic_rkn_stepper_base.hpp
+#usr/include/boost/numeric/odeint/stepper/bulirsch_stoer.hpp
+#usr/include/boost/numeric/odeint/stepper/bulirsch_stoer_dense_out.hpp
+#usr/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp
+#usr/include/boost/numeric/odeint/stepper/controlled_step_result.hpp
+#usr/include/boost/numeric/odeint/stepper/dense_output_runge_kutta.hpp
+#usr/include/boost/numeric/odeint/stepper/detail
+#usr/include/boost/numeric/odeint/stepper/detail/adams_bashforth_call_algebra.hpp
+#usr/include/boost/numeric/odeint/stepper/detail/adams_bashforth_coefficients.hpp
+#usr/include/boost/numeric/odeint/stepper/detail/adams_moulton_call_algebra.hpp
+#usr/include/boost/numeric/odeint/stepper/detail/adams_moulton_coefficients.hpp
+#usr/include/boost/numeric/odeint/stepper/detail/generic_rk_algorithm.hpp
+#usr/include/boost/numeric/odeint/stepper/detail/generic_rk_call_algebra.hpp
+#usr/include/boost/numeric/odeint/stepper/detail/generic_rk_operations.hpp
+#usr/include/boost/numeric/odeint/stepper/detail/rotating_buffer.hpp
+#usr/include/boost/numeric/odeint/stepper/euler.hpp
+#usr/include/boost/numeric/odeint/stepper/explicit_error_generic_rk.hpp
+#usr/include/boost/numeric/odeint/stepper/explicit_generic_rk.hpp
+#usr/include/boost/numeric/odeint/stepper/generation
+#usr/include/boost/numeric/odeint/stepper/generation.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/generation_controlled_runge_kutta.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/generation_dense_output_runge_kutta.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/generation_rosenbrock4.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/generation_runge_kutta_cash_karp54.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/generation_runge_kutta_cash_karp54_classic.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/generation_runge_kutta_dopri5.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/generation_runge_kutta_fehlberg78.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/make_controlled.hpp
+#usr/include/boost/numeric/odeint/stepper/generation/make_dense_output.hpp
+#usr/include/boost/numeric/odeint/stepper/implicit_euler.hpp
+#usr/include/boost/numeric/odeint/stepper/modified_midpoint.hpp
+#usr/include/boost/numeric/odeint/stepper/rosenbrock4.hpp
+#usr/include/boost/numeric/odeint/stepper/rosenbrock4_controller.hpp
+#usr/include/boost/numeric/odeint/stepper/rosenbrock4_dense_output.hpp
+#usr/include/boost/numeric/odeint/stepper/runge_kutta4.hpp
+#usr/include/boost/numeric/odeint/stepper/runge_kutta4_classic.hpp
+#usr/include/boost/numeric/odeint/stepper/runge_kutta_cash_karp54.hpp
+#usr/include/boost/numeric/odeint/stepper/runge_kutta_cash_karp54_classic.hpp
+#usr/include/boost/numeric/odeint/stepper/runge_kutta_dopri5.hpp
+#usr/include/boost/numeric/odeint/stepper/runge_kutta_fehlberg78.hpp
+#usr/include/boost/numeric/odeint/stepper/stepper_categories.hpp
+#usr/include/boost/numeric/odeint/stepper/symplectic_euler.hpp
+#usr/include/boost/numeric/odeint/stepper/symplectic_rkn_sb3a_m4_mclachlan.hpp
+#usr/include/boost/numeric/odeint/stepper/symplectic_rkn_sb3a_mclachlan.hpp
+#usr/include/boost/numeric/odeint/util
+#usr/include/boost/numeric/odeint/util/bind.hpp
+#usr/include/boost/numeric/odeint/util/copy.hpp
+#usr/include/boost/numeric/odeint/util/detail
+#usr/include/boost/numeric/odeint/util/detail/is_range.hpp
+#usr/include/boost/numeric/odeint/util/detail/less_with_sign.hpp
+#usr/include/boost/numeric/odeint/util/is_pair.hpp
+#usr/include/boost/numeric/odeint/util/is_resizeable.hpp
+#usr/include/boost/numeric/odeint/util/resize.hpp
+#usr/include/boost/numeric/odeint/util/resizer.hpp
+#usr/include/boost/numeric/odeint/util/same_instance.hpp
+#usr/include/boost/numeric/odeint/util/same_size.hpp
+#usr/include/boost/numeric/odeint/util/state_wrapper.hpp
+#usr/include/boost/numeric/odeint/util/ublas_wrapper.hpp
+#usr/include/boost/numeric/odeint/util/unit_helper.hpp
+#usr/include/boost/numeric/odeint/util/unwrap_reference.hpp
+#usr/include/boost/numeric/odeint/version.hpp
+#usr/include/boost/numeric/ublas
+#usr/include/boost/numeric/ublas/assignment.hpp
+#usr/include/boost/numeric/ublas/banded.hpp
+#usr/include/boost/numeric/ublas/blas.hpp
+#usr/include/boost/numeric/ublas/detail
+#usr/include/boost/numeric/ublas/detail/concepts.hpp
+#usr/include/boost/numeric/ublas/detail/config.hpp
+#usr/include/boost/numeric/ublas/detail/definitions.hpp
+#usr/include/boost/numeric/ublas/detail/documentation.hpp
+#usr/include/boost/numeric/ublas/detail/duff.hpp
+#usr/include/boost/numeric/ublas/detail/iterator.hpp
+#usr/include/boost/numeric/ublas/detail/matrix_assign.hpp
+#usr/include/boost/numeric/ublas/detail/raw.hpp
+#usr/include/boost/numeric/ublas/detail/returntype_deduction.hpp
+#usr/include/boost/numeric/ublas/detail/temporary.hpp
+#usr/include/boost/numeric/ublas/detail/vector_assign.hpp
+#usr/include/boost/numeric/ublas/doxydoc.hpp
+#usr/include/boost/numeric/ublas/exception.hpp
+#usr/include/boost/numeric/ublas/experimental
+#usr/include/boost/numeric/ublas/experimental/sparse_view.hpp
+#usr/include/boost/numeric/ublas/expression_types.hpp
+#usr/include/boost/numeric/ublas/functional.hpp
+#usr/include/boost/numeric/ublas/fwd.hpp
+#usr/include/boost/numeric/ublas/hermitian.hpp
+#usr/include/boost/numeric/ublas/io.hpp
+#usr/include/boost/numeric/ublas/lu.hpp
+#usr/include/boost/numeric/ublas/matrix.hpp
+#usr/include/boost/numeric/ublas/matrix_expression.hpp
+#usr/include/boost/numeric/ublas/matrix_proxy.hpp
+#usr/include/boost/numeric/ublas/matrix_sparse.hpp
+#usr/include/boost/numeric/ublas/operation
+#usr/include/boost/numeric/ublas/operation.hpp
+#usr/include/boost/numeric/ublas/operation/begin.hpp
+#usr/include/boost/numeric/ublas/operation/c_array.hpp
+#usr/include/boost/numeric/ublas/operation/end.hpp
+#usr/include/boost/numeric/ublas/operation/num_columns.hpp
+#usr/include/boost/numeric/ublas/operation/num_rows.hpp
+#usr/include/boost/numeric/ublas/operation/size.hpp
+#usr/include/boost/numeric/ublas/operation_blocked.hpp
+#usr/include/boost/numeric/ublas/operation_sparse.hpp
+#usr/include/boost/numeric/ublas/operations.hpp
+#usr/include/boost/numeric/ublas/storage.hpp
+#usr/include/boost/numeric/ublas/storage_sparse.hpp
+#usr/include/boost/numeric/ublas/symmetric.hpp
+#usr/include/boost/numeric/ublas/tags.hpp
+#usr/include/boost/numeric/ublas/traits
+#usr/include/boost/numeric/ublas/traits.hpp
+#usr/include/boost/numeric/ublas/traits/c_array.hpp
+#usr/include/boost/numeric/ublas/traits/const_iterator_type.hpp
+#usr/include/boost/numeric/ublas/traits/iterator_type.hpp
+#usr/include/boost/numeric/ublas/triangular.hpp
+#usr/include/boost/numeric/ublas/vector.hpp
+#usr/include/boost/numeric/ublas/vector_expression.hpp
+#usr/include/boost/numeric/ublas/vector_of_vector.hpp
+#usr/include/boost/numeric/ublas/vector_proxy.hpp
+#usr/include/boost/numeric/ublas/vector_sparse.hpp
+#usr/include/boost/operators.hpp
+#usr/include/boost/optional
+#usr/include/boost/optional.hpp
+#usr/include/boost/optional/optional.hpp
+#usr/include/boost/optional/optional_fwd.hpp
+#usr/include/boost/optional/optional_io.hpp
+#usr/include/boost/parameter
+#usr/include/boost/parameter.hpp
+#usr/include/boost/parameter/aux_
+#usr/include/boost/parameter/aux_/arg_list.hpp
+#usr/include/boost/parameter/aux_/cast.hpp
+#usr/include/boost/parameter/aux_/default.hpp
+#usr/include/boost/parameter/aux_/is_maybe.hpp
+#usr/include/boost/parameter/aux_/maybe.hpp
+#usr/include/boost/parameter/aux_/overloads.hpp
+#usr/include/boost/parameter/aux_/parameter_requirements.hpp
+#usr/include/boost/parameter/aux_/parenthesized_type.hpp
+#usr/include/boost/parameter/aux_/preprocessor
+#usr/include/boost/parameter/aux_/preprocessor/flatten.hpp
+#usr/include/boost/parameter/aux_/preprocessor/for_each.hpp
+#usr/include/boost/parameter/aux_/python
+#usr/include/boost/parameter/aux_/python/invoker.hpp
+#usr/include/boost/parameter/aux_/python/invoker_iterate.hpp
+#usr/include/boost/parameter/aux_/result_of0.hpp
+#usr/include/boost/parameter/aux_/set.hpp
+#usr/include/boost/parameter/aux_/tag.hpp
+#usr/include/boost/parameter/aux_/tagged_argument.hpp
+#usr/include/boost/parameter/aux_/template_keyword.hpp
+#usr/include/boost/parameter/aux_/unwrap_cv_reference.hpp
+#usr/include/boost/parameter/aux_/void.hpp
+#usr/include/boost/parameter/aux_/yesno.hpp
+#usr/include/boost/parameter/binding.hpp
+#usr/include/boost/parameter/config.hpp
+#usr/include/boost/parameter/keyword.hpp
+#usr/include/boost/parameter/macros.hpp
+#usr/include/boost/parameter/match.hpp
+#usr/include/boost/parameter/name.hpp
+#usr/include/boost/parameter/parameters.hpp
+#usr/include/boost/parameter/preprocessor.hpp
+#usr/include/boost/parameter/python.hpp
+#usr/include/boost/parameter/value_type.hpp
+#usr/include/boost/pending
+#usr/include/boost/pending/bucket_sorter.hpp
+#usr/include/boost/pending/container_traits.hpp
+#usr/include/boost/pending/cstddef.hpp
+#usr/include/boost/pending/detail
+#usr/include/boost/pending/detail/disjoint_sets.hpp
+#usr/include/boost/pending/detail/int_iterator.hpp
+#usr/include/boost/pending/detail/property.hpp
+#usr/include/boost/pending/disjoint_sets.hpp
+#usr/include/boost/pending/fenced_priority_queue.hpp
+#usr/include/boost/pending/fibonacci_heap.hpp
+#usr/include/boost/pending/indirect_cmp.hpp
+#usr/include/boost/pending/integer_log2.hpp
+#usr/include/boost/pending/is_heap.hpp
+#usr/include/boost/pending/iterator_adaptors.hpp
+#usr/include/boost/pending/iterator_tests.hpp
+#usr/include/boost/pending/lowest_bit.hpp
+#usr/include/boost/pending/mutable_heap.hpp
+#usr/include/boost/pending/mutable_queue.hpp
+#usr/include/boost/pending/property.hpp
+#usr/include/boost/pending/property_serialize.hpp
+#usr/include/boost/pending/queue.hpp
+#usr/include/boost/pending/relaxed_heap.hpp
+#usr/include/boost/pending/stringtok.hpp
+#usr/include/boost/phoenix
+#usr/include/boost/phoenix.hpp
+#usr/include/boost/phoenix/bind
+#usr/include/boost/phoenix/bind.hpp
+#usr/include/boost/phoenix/bind/bind_function.hpp
+#usr/include/boost/phoenix/bind/bind_function_object.hpp
+#usr/include/boost/phoenix/bind/bind_member_function.hpp
+#usr/include/boost/phoenix/bind/bind_member_variable.hpp
+#usr/include/boost/phoenix/bind/detail
+#usr/include/boost/phoenix/bind/detail/function_ptr.hpp
+#usr/include/boost/phoenix/bind/detail/member_function_ptr.hpp
+#usr/include/boost/phoenix/bind/detail/member_variable.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed
+#usr/include/boost/phoenix/bind/detail/preprocessed/function_ptr.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/function_ptr_10.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/function_ptr_20.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/function_ptr_30.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/function_ptr_40.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/function_ptr_50.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/member_function_ptr.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/member_function_ptr_10.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/member_function_ptr_20.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/member_function_ptr_30.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/member_function_ptr_40.hpp
+#usr/include/boost/phoenix/bind/detail/preprocessed/member_function_ptr_50.hpp
+#usr/include/boost/phoenix/bind/preprocessed
+#usr/include/boost/phoenix/bind/preprocessed/bind_function.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_10.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_20.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_30.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_40.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_50.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_object.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_object_10.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_object_20.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_object_30.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_object_40.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_function_object_50.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_member_function.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_member_function_10.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_member_function_20.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_member_function_30.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_member_function_40.hpp
+#usr/include/boost/phoenix/bind/preprocessed/bind_member_function_50.hpp
+#usr/include/boost/phoenix/core
+#usr/include/boost/phoenix/core.hpp
+#usr/include/boost/phoenix/core/actor.hpp
+#usr/include/boost/phoenix/core/argument.hpp
+#usr/include/boost/phoenix/core/arity.hpp
+#usr/include/boost/phoenix/core/as_actor.hpp
+#usr/include/boost/phoenix/core/call.hpp
+#usr/include/boost/phoenix/core/detail
+#usr/include/boost/phoenix/core/detail/actor_operator.hpp
+#usr/include/boost/phoenix/core/detail/actor_result_of.hpp
+#usr/include/boost/phoenix/core/detail/argument.hpp
+#usr/include/boost/phoenix/core/detail/call.hpp
+#usr/include/boost/phoenix/core/detail/expression.hpp
+#usr/include/boost/phoenix/core/detail/function_eval.hpp
+#usr/include/boost/phoenix/core/detail/phx2_result.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_operator.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_operator_10.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_operator_20.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_operator_30.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_operator_40.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_operator_50.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_result_of.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_result_of_10.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_result_of_20.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_result_of_30.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_result_of_40.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/actor_result_of_50.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/call.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/call_10.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/call_20.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/call_30.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/call_40.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/call_50.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/function_eval.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/function_eval_10.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/function_eval_20.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/function_eval_30.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/function_eval_40.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/function_eval_50.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/phx2_result.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/phx2_result_10.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/phx2_result_20.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/phx2_result_30.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/phx2_result_40.hpp
+#usr/include/boost/phoenix/core/detail/preprocessed/phx2_result_50.hpp
+#usr/include/boost/phoenix/core/domain.hpp
+#usr/include/boost/phoenix/core/environment.hpp
+#usr/include/boost/phoenix/core/expression.hpp
+#usr/include/boost/phoenix/core/function_equal.hpp
+#usr/include/boost/phoenix/core/is_actor.hpp
+#usr/include/boost/phoenix/core/is_nullary.hpp
+#usr/include/boost/phoenix/core/limits.hpp
+#usr/include/boost/phoenix/core/meta_grammar.hpp
+#usr/include/boost/phoenix/core/nothing.hpp
+#usr/include/boost/phoenix/core/preprocessed
+#usr/include/boost/phoenix/core/preprocessed/actor.hpp
+#usr/include/boost/phoenix/core/preprocessed/actor_10.hpp
+#usr/include/boost/phoenix/core/preprocessed/actor_20.hpp
+#usr/include/boost/phoenix/core/preprocessed/actor_30.hpp
+#usr/include/boost/phoenix/core/preprocessed/actor_40.hpp
+#usr/include/boost/phoenix/core/preprocessed/actor_50.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_10.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_no_predefined_10.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_no_predefined_20.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_no_predefined_30.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_no_predefined_40.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_no_predefined_50.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_predefined_20.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_predefined_30.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_predefined_40.hpp
+#usr/include/boost/phoenix/core/preprocessed/argument_predefined_50.hpp
+#usr/include/boost/phoenix/core/preprocessed/expression.hpp
+#usr/include/boost/phoenix/core/preprocessed/expression_10.hpp
+#usr/include/boost/phoenix/core/preprocessed/expression_20.hpp
+#usr/include/boost/phoenix/core/preprocessed/expression_30.hpp
+#usr/include/boost/phoenix/core/preprocessed/expression_40.hpp
+#usr/include/boost/phoenix/core/preprocessed/expression_50.hpp
+#usr/include/boost/phoenix/core/preprocessed/function_equal.hpp
+#usr/include/boost/phoenix/core/preprocessed/function_equal_10.hpp
+#usr/include/boost/phoenix/core/preprocessed/function_equal_20.hpp
+#usr/include/boost/phoenix/core/preprocessed/function_equal_30.hpp
+#usr/include/boost/phoenix/core/preprocessed/function_equal_40.hpp
+#usr/include/boost/phoenix/core/preprocessed/function_equal_50.hpp
+#usr/include/boost/phoenix/core/reference.hpp
+#usr/include/boost/phoenix/core/terminal.hpp
+#usr/include/boost/phoenix/core/terminal_fwd.hpp
+#usr/include/boost/phoenix/core/v2_eval.hpp
+#usr/include/boost/phoenix/core/value.hpp
+#usr/include/boost/phoenix/core/visit_each.hpp
+#usr/include/boost/phoenix/function
+#usr/include/boost/phoenix/function.hpp
+#usr/include/boost/phoenix/function/adapt_callable.hpp
+#usr/include/boost/phoenix/function/adapt_function.hpp
+#usr/include/boost/phoenix/function/detail
+#usr/include/boost/phoenix/function/detail/function_operator.hpp
+#usr/include/boost/phoenix/function/detail/function_result_of.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed
+#usr/include/boost/phoenix/function/detail/preprocessed/function_operator.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_operator_10.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_operator_20.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_operator_30.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_operator_40.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_operator_50.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_result_of.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_result_of_10.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_result_of_20.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_result_of_30.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_result_of_40.hpp
+#usr/include/boost/phoenix/function/detail/preprocessed/function_result_of_50.hpp
+#usr/include/boost/phoenix/function/function.hpp
+#usr/include/boost/phoenix/fusion
+#usr/include/boost/phoenix/fusion.hpp
+#usr/include/boost/phoenix/fusion/at.hpp
+#usr/include/boost/phoenix/object
+#usr/include/boost/phoenix/object.hpp
+#usr/include/boost/phoenix/object/const_cast.hpp
+#usr/include/boost/phoenix/object/construct.hpp
+#usr/include/boost/phoenix/object/delete.hpp
+#usr/include/boost/phoenix/object/detail
+#usr/include/boost/phoenix/object/detail/construct.hpp
+#usr/include/boost/phoenix/object/detail/construct_eval.hpp
+#usr/include/boost/phoenix/object/detail/new.hpp
+#usr/include/boost/phoenix/object/detail/new_eval.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed
+#usr/include/boost/phoenix/object/detail/preprocessed/construct.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_10.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_20.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_30.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_40.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_50.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_eval.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_eval_10.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_eval_20.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_eval_30.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_eval_40.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/construct_eval_50.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_10.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_20.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_30.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_40.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_50.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_eval.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_eval_10.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_eval_20.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_eval_30.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_eval_40.hpp
+#usr/include/boost/phoenix/object/detail/preprocessed/new_eval_50.hpp
+#usr/include/boost/phoenix/object/detail/target.hpp
+#usr/include/boost/phoenix/object/dynamic_cast.hpp
+#usr/include/boost/phoenix/object/new.hpp
+#usr/include/boost/phoenix/object/reinterpret_cast.hpp
+#usr/include/boost/phoenix/object/static_cast.hpp
+#usr/include/boost/phoenix/operator
+#usr/include/boost/phoenix/operator.hpp
+#usr/include/boost/phoenix/operator/arithmetic.hpp
+#usr/include/boost/phoenix/operator/bitwise.hpp
+#usr/include/boost/phoenix/operator/comparison.hpp
+#usr/include/boost/phoenix/operator/detail
+#usr/include/boost/phoenix/operator/detail/define_operator.hpp
+#usr/include/boost/phoenix/operator/detail/mem_fun_ptr_eval_result_of.hpp
+#usr/include/boost/phoenix/operator/detail/mem_fun_ptr_gen.hpp
+#usr/include/boost/phoenix/operator/detail/preprocessed
+#usr/include/boost/phoenix/operator/detail/preprocessed/mem_fun_ptr_gen.hpp
+#usr/include/boost/phoenix/operator/detail/preprocessed/mem_fun_ptr_gen_10.hpp
+#usr/include/boost/phoenix/operator/detail/preprocessed/mem_fun_ptr_gen_20.hpp
+#usr/include/boost/phoenix/operator/detail/preprocessed/mem_fun_ptr_gen_30.hpp
+#usr/include/boost/phoenix/operator/detail/preprocessed/mem_fun_ptr_gen_40.hpp
+#usr/include/boost/phoenix/operator/detail/preprocessed/mem_fun_ptr_gen_50.hpp
+#usr/include/boost/phoenix/operator/detail/undef_operator.hpp
+#usr/include/boost/phoenix/operator/if_else.hpp
+#usr/include/boost/phoenix/operator/io.hpp
+#usr/include/boost/phoenix/operator/logical.hpp
+#usr/include/boost/phoenix/operator/member.hpp
+#usr/include/boost/phoenix/operator/preprocessed
+#usr/include/boost/phoenix/operator/preprocessed/member.hpp
+#usr/include/boost/phoenix/operator/preprocessed/member_10.hpp
+#usr/include/boost/phoenix/operator/preprocessed/member_20.hpp
+#usr/include/boost/phoenix/operator/preprocessed/member_30.hpp
+#usr/include/boost/phoenix/operator/preprocessed/member_40.hpp
+#usr/include/boost/phoenix/operator/preprocessed/member_50.hpp
+#usr/include/boost/phoenix/operator/self.hpp
+#usr/include/boost/phoenix/phoenix.hpp
+#usr/include/boost/phoenix/scope
+#usr/include/boost/phoenix/scope.hpp
+#usr/include/boost/phoenix/scope/detail
+#usr/include/boost/phoenix/scope/detail/dynamic.hpp
+#usr/include/boost/phoenix/scope/detail/local_gen.hpp
+#usr/include/boost/phoenix/scope/detail/local_variable.hpp
+#usr/include/boost/phoenix/scope/detail/make_locals.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed
+#usr/include/boost/phoenix/scope/detail/preprocessed/dynamic.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/dynamic_10.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/dynamic_20.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/dynamic_30.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/dynamic_40.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/dynamic_50.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/make_locals.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/make_locals_10.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/make_locals_20.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/make_locals_30.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/make_locals_40.hpp
+#usr/include/boost/phoenix/scope/detail/preprocessed/make_locals_50.hpp
+#usr/include/boost/phoenix/scope/dynamic.hpp
+#usr/include/boost/phoenix/scope/lambda.hpp
+#usr/include/boost/phoenix/scope/let.hpp
+#usr/include/boost/phoenix/scope/local_variable.hpp
+#usr/include/boost/phoenix/scope/preprocessed
+#usr/include/boost/phoenix/scope/preprocessed/lambda.hpp
+#usr/include/boost/phoenix/scope/preprocessed/lambda_10.hpp
+#usr/include/boost/phoenix/scope/preprocessed/lambda_20.hpp
+#usr/include/boost/phoenix/scope/preprocessed/lambda_30.hpp
+#usr/include/boost/phoenix/scope/preprocessed/lambda_40.hpp
+#usr/include/boost/phoenix/scope/preprocessed/lambda_50.hpp
+#usr/include/boost/phoenix/scope/scoped_environment.hpp
+#usr/include/boost/phoenix/scope/this.hpp
+#usr/include/boost/phoenix/statement
+#usr/include/boost/phoenix/statement.hpp
+#usr/include/boost/phoenix/statement/detail
+#usr/include/boost/phoenix/statement/detail/catch_push_back.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed
+#usr/include/boost/phoenix/statement/detail/preprocessed/catch_push_back.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/catch_push_back_10.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/catch_push_back_20.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/catch_push_back_30.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/catch_push_back_40.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/catch_push_back_50.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/switch.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/switch_10.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/switch_20.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/switch_30.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/switch_40.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/switch_50.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_eval.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_eval_10.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_eval_20.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_eval_30.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_eval_40.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_eval_50.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_expression.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_expression_10.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_expression_20.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_expression_30.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_expression_40.hpp
+#usr/include/boost/phoenix/statement/detail/preprocessed/try_catch_expression_50.hpp
+#usr/include/boost/phoenix/statement/detail/switch.hpp
+#usr/include/boost/phoenix/statement/detail/try_catch_eval.hpp
+#usr/include/boost/phoenix/statement/detail/try_catch_expression.hpp
+#usr/include/boost/phoenix/statement/do_while.hpp
+#usr/include/boost/phoenix/statement/for.hpp
+#usr/include/boost/phoenix/statement/if.hpp
+#usr/include/boost/phoenix/statement/sequence.hpp
+#usr/include/boost/phoenix/statement/switch.hpp
+#usr/include/boost/phoenix/statement/throw.hpp
+#usr/include/boost/phoenix/statement/try_catch.hpp
+#usr/include/boost/phoenix/statement/while.hpp
+#usr/include/boost/phoenix/stl
+#usr/include/boost/phoenix/stl.hpp
+#usr/include/boost/phoenix/stl/algorithm
+#usr/include/boost/phoenix/stl/algorithm.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail
+#usr/include/boost/phoenix/stl/algorithm/detail/begin.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/decay_array.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/end.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_equal_range.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_find.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_lower_bound.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_remove.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_remove_if.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_reverse.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_sort.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_unique.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/has_upper_bound.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/is_std_hash_map.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/is_std_hash_set.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/is_std_list.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/is_std_map.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/is_std_set.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/std_hash_map_fwd.hpp
+#usr/include/boost/phoenix/stl/algorithm/detail/std_hash_set_fwd.hpp
+#usr/include/boost/phoenix/stl/algorithm/iteration.hpp
+#usr/include/boost/phoenix/stl/algorithm/querying.hpp
+#usr/include/boost/phoenix/stl/algorithm/transformation.hpp
+#usr/include/boost/phoenix/stl/cmath.hpp
+#usr/include/boost/phoenix/stl/container
+#usr/include/boost/phoenix/stl/container.hpp
+#usr/include/boost/phoenix/stl/container/container.hpp
+#usr/include/boost/phoenix/stl/container/detail
+#usr/include/boost/phoenix/stl/container/detail/container.hpp
+#usr/include/boost/phoenix/support
+#usr/include/boost/phoenix/support/detail
+#usr/include/boost/phoenix/support/detail/iterate.hpp
+#usr/include/boost/phoenix/support/detail/iterate_define.hpp
+#usr/include/boost/phoenix/support/detail/iterate_undef.hpp
+#usr/include/boost/phoenix/support/iterate.hpp
+#usr/include/boost/phoenix/support/preprocessed
+#usr/include/boost/phoenix/support/preprocessed/vector.hpp
+#usr/include/boost/phoenix/support/preprocessed/vector_10.hpp
+#usr/include/boost/phoenix/support/preprocessed/vector_20.hpp
+#usr/include/boost/phoenix/support/preprocessed/vector_30.hpp
+#usr/include/boost/phoenix/support/preprocessed/vector_40.hpp
+#usr/include/boost/phoenix/support/preprocessed/vector_50.hpp
+#usr/include/boost/phoenix/support/preprocessor
+#usr/include/boost/phoenix/support/preprocessor/round.hpp
+#usr/include/boost/phoenix/support/vector.hpp
+#usr/include/boost/phoenix/version.hpp
+#usr/include/boost/pointee.hpp
+#usr/include/boost/pointer_cast.hpp
+#usr/include/boost/pointer_to_other.hpp
+#usr/include/boost/polygon
+#usr/include/boost/polygon/detail
+#usr/include/boost/polygon/detail/boolean_op.hpp
+#usr/include/boost/polygon/detail/boolean_op_45.hpp
+#usr/include/boost/polygon/detail/iterator_compact_to_points.hpp
+#usr/include/boost/polygon/detail/iterator_geometry_to_set.hpp
+#usr/include/boost/polygon/detail/iterator_points_to_compact.hpp
+#usr/include/boost/polygon/detail/max_cover.hpp
+#usr/include/boost/polygon/detail/minkowski.hpp
+#usr/include/boost/polygon/detail/polygon_45_formation.hpp
+#usr/include/boost/polygon/detail/polygon_45_set_view.hpp
+#usr/include/boost/polygon/detail/polygon_45_touch.hpp
+#usr/include/boost/polygon/detail/polygon_90_set_view.hpp
+#usr/include/boost/polygon/detail/polygon_90_touch.hpp
+#usr/include/boost/polygon/detail/polygon_arbitrary_formation.hpp
+#usr/include/boost/polygon/detail/polygon_formation.hpp
+#usr/include/boost/polygon/detail/polygon_set_view.hpp
+#usr/include/boost/polygon/detail/polygon_simplify.hpp
+#usr/include/boost/polygon/detail/polygon_sort_adaptor.hpp
+#usr/include/boost/polygon/detail/property_merge.hpp
+#usr/include/boost/polygon/detail/property_merge_45.hpp
+#usr/include/boost/polygon/detail/rectangle_formation.hpp
+#usr/include/boost/polygon/detail/scan_arbitrary.hpp
+#usr/include/boost/polygon/detail/voronoi_ctypes.hpp
+#usr/include/boost/polygon/detail/voronoi_predicates.hpp
+#usr/include/boost/polygon/detail/voronoi_robust_fpt.hpp
+#usr/include/boost/polygon/detail/voronoi_structures.hpp
+#usr/include/boost/polygon/gmp_override.hpp
+#usr/include/boost/polygon/gtl.hpp
+#usr/include/boost/polygon/interval_concept.hpp
+#usr/include/boost/polygon/interval_data.hpp
+#usr/include/boost/polygon/interval_traits.hpp
+#usr/include/boost/polygon/isotropy.hpp
+#usr/include/boost/polygon/point_concept.hpp
+#usr/include/boost/polygon/point_data.hpp
+#usr/include/boost/polygon/point_traits.hpp
+#usr/include/boost/polygon/polygon.hpp
+#usr/include/boost/polygon/polygon_45_data.hpp
+#usr/include/boost/polygon/polygon_45_set_concept.hpp
+#usr/include/boost/polygon/polygon_45_set_data.hpp
+#usr/include/boost/polygon/polygon_45_set_traits.hpp
+#usr/include/boost/polygon/polygon_45_with_holes_data.hpp
+#usr/include/boost/polygon/polygon_90_data.hpp
+#usr/include/boost/polygon/polygon_90_set_concept.hpp
+#usr/include/boost/polygon/polygon_90_set_data.hpp
+#usr/include/boost/polygon/polygon_90_set_traits.hpp
+#usr/include/boost/polygon/polygon_90_with_holes_data.hpp
+#usr/include/boost/polygon/polygon_data.hpp
+#usr/include/boost/polygon/polygon_set_concept.hpp
+#usr/include/boost/polygon/polygon_set_data.hpp
+#usr/include/boost/polygon/polygon_set_traits.hpp
+#usr/include/boost/polygon/polygon_traits.hpp
+#usr/include/boost/polygon/polygon_with_holes_data.hpp
+#usr/include/boost/polygon/rectangle_concept.hpp
+#usr/include/boost/polygon/rectangle_data.hpp
+#usr/include/boost/polygon/rectangle_traits.hpp
+#usr/include/boost/polygon/segment_concept.hpp
+#usr/include/boost/polygon/segment_data.hpp
+#usr/include/boost/polygon/segment_traits.hpp
+#usr/include/boost/polygon/segment_utils.hpp
+#usr/include/boost/polygon/transform.hpp
+#usr/include/boost/polygon/voronoi.hpp
+#usr/include/boost/polygon/voronoi_builder.hpp
+#usr/include/boost/polygon/voronoi_diagram.hpp
+#usr/include/boost/polygon/voronoi_geometry_type.hpp
+#usr/include/boost/pool
+#usr/include/boost/pool/detail
+#usr/include/boost/pool/detail/guard.hpp
+#usr/include/boost/pool/detail/mutex.hpp
+#usr/include/boost/pool/detail/pool_construct.ipp
+#usr/include/boost/pool/detail/pool_construct_simple.ipp
+#usr/include/boost/pool/object_pool.hpp
+#usr/include/boost/pool/pool.hpp
+#usr/include/boost/pool/pool_alloc.hpp
+#usr/include/boost/pool/poolfwd.hpp
+#usr/include/boost/pool/simple_segregated_storage.hpp
+#usr/include/boost/pool/singleton_pool.hpp
+#usr/include/boost/predef
+#usr/include/boost/predef.h
+#usr/include/boost/predef/architecture
+#usr/include/boost/predef/architecture.h
+#usr/include/boost/predef/architecture/alpha.h
+#usr/include/boost/predef/architecture/arm.h
+#usr/include/boost/predef/architecture/blackfin.h
+#usr/include/boost/predef/architecture/convex.h
+#usr/include/boost/predef/architecture/ia64.h
+#usr/include/boost/predef/architecture/m68k.h
+#usr/include/boost/predef/architecture/mips.h
+#usr/include/boost/predef/architecture/parisc.h
+#usr/include/boost/predef/architecture/ppc.h
+#usr/include/boost/predef/architecture/pyramid.h
+#usr/include/boost/predef/architecture/rs6k.h
+#usr/include/boost/predef/architecture/sparc.h
+#usr/include/boost/predef/architecture/superh.h
+#usr/include/boost/predef/architecture/sys370.h
+#usr/include/boost/predef/architecture/sys390.h
+#usr/include/boost/predef/architecture/x86
+#usr/include/boost/predef/architecture/x86.h
+#usr/include/boost/predef/architecture/x86/32.h
+#usr/include/boost/predef/architecture/x86/64.h
+#usr/include/boost/predef/architecture/z.h
+#usr/include/boost/predef/compiler
+#usr/include/boost/predef/compiler.h
+#usr/include/boost/predef/compiler/borland.h
+#usr/include/boost/predef/compiler/clang.h
+#usr/include/boost/predef/compiler/comeau.h
+#usr/include/boost/predef/compiler/compaq.h
+#usr/include/boost/predef/compiler/diab.h
+#usr/include/boost/predef/compiler/digitalmars.h
+#usr/include/boost/predef/compiler/dignus.h
+#usr/include/boost/predef/compiler/edg.h
+#usr/include/boost/predef/compiler/ekopath.h
+#usr/include/boost/predef/compiler/gcc.h
+#usr/include/boost/predef/compiler/gcc_xml.h
+#usr/include/boost/predef/compiler/greenhills.h
+#usr/include/boost/predef/compiler/hp_acc.h
+#usr/include/boost/predef/compiler/iar.h
+#usr/include/boost/predef/compiler/ibm.h
+#usr/include/boost/predef/compiler/intel.h
+#usr/include/boost/predef/compiler/kai.h
+#usr/include/boost/predef/compiler/llvm.h
+#usr/include/boost/predef/compiler/metaware.h
+#usr/include/boost/predef/compiler/metrowerks.h
+#usr/include/boost/predef/compiler/microtec.h
+#usr/include/boost/predef/compiler/mpw.h
+#usr/include/boost/predef/compiler/palm.h
+#usr/include/boost/predef/compiler/pgi.h
+#usr/include/boost/predef/compiler/sgi_mipspro.h
+#usr/include/boost/predef/compiler/sunpro.h
+#usr/include/boost/predef/compiler/tendra.h
+#usr/include/boost/predef/compiler/visualc.h
+#usr/include/boost/predef/compiler/watcom.h
+#usr/include/boost/predef/detail
+#usr/include/boost/predef/detail/_cassert.h
+#usr/include/boost/predef/detail/_exception.h
+#usr/include/boost/predef/detail/endian_compat.h
+#usr/include/boost/predef/detail/os_detected.h
+#usr/include/boost/predef/detail/test.h
+#usr/include/boost/predef/language
+#usr/include/boost/predef/language.h
+#usr/include/boost/predef/language/objc.h
+#usr/include/boost/predef/language/stdc.h
+#usr/include/boost/predef/language/stdcpp.h
+#usr/include/boost/predef/library
+#usr/include/boost/predef/library.h
+#usr/include/boost/predef/library/c
+#usr/include/boost/predef/library/c.h
+#usr/include/boost/predef/library/c/_prefix.h
+#usr/include/boost/predef/library/c/gnu.h
+#usr/include/boost/predef/library/c/uc.h
+#usr/include/boost/predef/library/c/vms.h
+#usr/include/boost/predef/library/c/zos.h
+#usr/include/boost/predef/library/std
+#usr/include/boost/predef/library/std.h
+#usr/include/boost/predef/library/std/_prefix.h
+#usr/include/boost/predef/library/std/cxx.h
+#usr/include/boost/predef/library/std/dinkumware.h
+#usr/include/boost/predef/library/std/libcomo.h
+#usr/include/boost/predef/library/std/modena.h
+#usr/include/boost/predef/library/std/msl.h
+#usr/include/boost/predef/library/std/roguewave.h
+#usr/include/boost/predef/library/std/sgi.h
+#usr/include/boost/predef/library/std/stdcpp3.h
+#usr/include/boost/predef/library/std/stlport.h
+#usr/include/boost/predef/library/std/vacpp.h
+#usr/include/boost/predef/make.h
+#usr/include/boost/predef/os
+#usr/include/boost/predef/os.h
+#usr/include/boost/predef/os/aix.h
+#usr/include/boost/predef/os/amigaos.h
+#usr/include/boost/predef/os/android.h
+#usr/include/boost/predef/os/beos.h
+#usr/include/boost/predef/os/bsd
+#usr/include/boost/predef/os/bsd.h
+#usr/include/boost/predef/os/bsd/bsdi.h
+#usr/include/boost/predef/os/bsd/dragonfly.h
+#usr/include/boost/predef/os/bsd/free.h
+#usr/include/boost/predef/os/bsd/net.h
+#usr/include/boost/predef/os/bsd/open.h
+#usr/include/boost/predef/os/cygwin.h
+#usr/include/boost/predef/os/hpux.h
+#usr/include/boost/predef/os/irix.h
+#usr/include/boost/predef/os/linux.h
+#usr/include/boost/predef/os/macos.h
+#usr/include/boost/predef/os/os400.h
+#usr/include/boost/predef/os/qnxnto.h
+#usr/include/boost/predef/os/solaris.h
+#usr/include/boost/predef/os/unix.h
+#usr/include/boost/predef/os/vms.h
+#usr/include/boost/predef/os/windows.h
+#usr/include/boost/predef/other
+#usr/include/boost/predef/other.h
+#usr/include/boost/predef/other/endian.h
+#usr/include/boost/predef/platform
+#usr/include/boost/predef/platform.h
+#usr/include/boost/predef/platform/mingw.h
+#usr/include/boost/predef/version_number.h
+#usr/include/boost/preprocessor
+#usr/include/boost/preprocessor.hpp
+#usr/include/boost/preprocessor/arithmetic
+#usr/include/boost/preprocessor/arithmetic.hpp
+#usr/include/boost/preprocessor/arithmetic/add.hpp
+#usr/include/boost/preprocessor/arithmetic/dec.hpp
+#usr/include/boost/preprocessor/arithmetic/detail
+#usr/include/boost/preprocessor/arithmetic/detail/div_base.hpp
+#usr/include/boost/preprocessor/arithmetic/div.hpp
+#usr/include/boost/preprocessor/arithmetic/inc.hpp
+#usr/include/boost/preprocessor/arithmetic/mod.hpp
+#usr/include/boost/preprocessor/arithmetic/mul.hpp
+#usr/include/boost/preprocessor/arithmetic/sub.hpp
+#usr/include/boost/preprocessor/array
+#usr/include/boost/preprocessor/array.hpp
+#usr/include/boost/preprocessor/array/data.hpp
+#usr/include/boost/preprocessor/array/elem.hpp
+#usr/include/boost/preprocessor/array/enum.hpp
+#usr/include/boost/preprocessor/array/insert.hpp
+#usr/include/boost/preprocessor/array/pop_back.hpp
+#usr/include/boost/preprocessor/array/pop_front.hpp
+#usr/include/boost/preprocessor/array/push_back.hpp
+#usr/include/boost/preprocessor/array/push_front.hpp
+#usr/include/boost/preprocessor/array/remove.hpp
+#usr/include/boost/preprocessor/array/replace.hpp
+#usr/include/boost/preprocessor/array/reverse.hpp
+#usr/include/boost/preprocessor/array/size.hpp
+#usr/include/boost/preprocessor/array/to_list.hpp
+#usr/include/boost/preprocessor/array/to_seq.hpp
+#usr/include/boost/preprocessor/array/to_tuple.hpp
+#usr/include/boost/preprocessor/assert_msg.hpp
+#usr/include/boost/preprocessor/cat.hpp
+#usr/include/boost/preprocessor/comma.hpp
+#usr/include/boost/preprocessor/comma_if.hpp
+#usr/include/boost/preprocessor/comparison
+#usr/include/boost/preprocessor/comparison.hpp
+#usr/include/boost/preprocessor/comparison/equal.hpp
+#usr/include/boost/preprocessor/comparison/greater.hpp
+#usr/include/boost/preprocessor/comparison/greater_equal.hpp
+#usr/include/boost/preprocessor/comparison/less.hpp
+#usr/include/boost/preprocessor/comparison/less_equal.hpp
+#usr/include/boost/preprocessor/comparison/not_equal.hpp
+#usr/include/boost/preprocessor/config
+#usr/include/boost/preprocessor/config/config.hpp
+#usr/include/boost/preprocessor/config/limits.hpp
+#usr/include/boost/preprocessor/control
+#usr/include/boost/preprocessor/control.hpp
+#usr/include/boost/preprocessor/control/deduce_d.hpp
+#usr/include/boost/preprocessor/control/detail
+#usr/include/boost/preprocessor/control/detail/dmc
+#usr/include/boost/preprocessor/control/detail/dmc/while.hpp
+#usr/include/boost/preprocessor/control/detail/edg
+#usr/include/boost/preprocessor/control/detail/edg/while.hpp
+#usr/include/boost/preprocessor/control/detail/msvc
+#usr/include/boost/preprocessor/control/detail/msvc/while.hpp
+#usr/include/boost/preprocessor/control/detail/while.hpp
+#usr/include/boost/preprocessor/control/expr_if.hpp
+#usr/include/boost/preprocessor/control/expr_iif.hpp
+#usr/include/boost/preprocessor/control/if.hpp
+#usr/include/boost/preprocessor/control/iif.hpp
+#usr/include/boost/preprocessor/control/while.hpp
+#usr/include/boost/preprocessor/debug
+#usr/include/boost/preprocessor/debug.hpp
+#usr/include/boost/preprocessor/debug/assert.hpp
+#usr/include/boost/preprocessor/debug/error.hpp
+#usr/include/boost/preprocessor/debug/line.hpp
+#usr/include/boost/preprocessor/dec.hpp
+#usr/include/boost/preprocessor/detail
+#usr/include/boost/preprocessor/detail/auto_rec.hpp
+#usr/include/boost/preprocessor/detail/check.hpp
+#usr/include/boost/preprocessor/detail/dmc
+#usr/include/boost/preprocessor/detail/dmc/auto_rec.hpp
+#usr/include/boost/preprocessor/detail/is_binary.hpp
+#usr/include/boost/preprocessor/detail/is_nullary.hpp
+#usr/include/boost/preprocessor/detail/is_unary.hpp
+#usr/include/boost/preprocessor/detail/null.hpp
+#usr/include/boost/preprocessor/detail/split.hpp
+#usr/include/boost/preprocessor/empty.hpp
+#usr/include/boost/preprocessor/enum.hpp
+#usr/include/boost/preprocessor/enum_params.hpp
+#usr/include/boost/preprocessor/enum_params_with_a_default.hpp
+#usr/include/boost/preprocessor/enum_params_with_defaults.hpp
+#usr/include/boost/preprocessor/enum_shifted.hpp
+#usr/include/boost/preprocessor/enum_shifted_params.hpp
+#usr/include/boost/preprocessor/expand.hpp
+#usr/include/boost/preprocessor/expr_if.hpp
+#usr/include/boost/preprocessor/facilities
+#usr/include/boost/preprocessor/facilities.hpp
+#usr/include/boost/preprocessor/facilities/apply.hpp
+#usr/include/boost/preprocessor/facilities/empty.hpp
+#usr/include/boost/preprocessor/facilities/expand.hpp
+#usr/include/boost/preprocessor/facilities/identity.hpp
+#usr/include/boost/preprocessor/facilities/intercept.hpp
+#usr/include/boost/preprocessor/facilities/is_1.hpp
+#usr/include/boost/preprocessor/facilities/is_empty.hpp
+#usr/include/boost/preprocessor/facilities/is_empty_or_1.hpp
+#usr/include/boost/preprocessor/facilities/overload.hpp
+#usr/include/boost/preprocessor/for.hpp
+#usr/include/boost/preprocessor/identity.hpp
+#usr/include/boost/preprocessor/if.hpp
+#usr/include/boost/preprocessor/inc.hpp
+#usr/include/boost/preprocessor/iterate.hpp
+#usr/include/boost/preprocessor/iteration
+#usr/include/boost/preprocessor/iteration.hpp
+#usr/include/boost/preprocessor/iteration/detail
+#usr/include/boost/preprocessor/iteration/detail/bounds
+#usr/include/boost/preprocessor/iteration/detail/bounds/lower1.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/lower2.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/lower3.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/lower4.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/lower5.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/upper1.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/upper2.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/upper3.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/upper4.hpp
+#usr/include/boost/preprocessor/iteration/detail/bounds/upper5.hpp
+#usr/include/boost/preprocessor/iteration/detail/finish.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter
+#usr/include/boost/preprocessor/iteration/detail/iter/forward1.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/forward2.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/forward3.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/forward4.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/forward5.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/reverse1.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/reverse2.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/reverse3.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/reverse4.hpp
+#usr/include/boost/preprocessor/iteration/detail/iter/reverse5.hpp
+#usr/include/boost/preprocessor/iteration/detail/local.hpp
+#usr/include/boost/preprocessor/iteration/detail/rlocal.hpp
+#usr/include/boost/preprocessor/iteration/detail/self.hpp
+#usr/include/boost/preprocessor/iteration/detail/start.hpp
+#usr/include/boost/preprocessor/iteration/iterate.hpp
+#usr/include/boost/preprocessor/iteration/local.hpp
+#usr/include/boost/preprocessor/iteration/self.hpp
+#usr/include/boost/preprocessor/library.hpp
+#usr/include/boost/preprocessor/limits.hpp
+#usr/include/boost/preprocessor/list
+#usr/include/boost/preprocessor/list.hpp
+#usr/include/boost/preprocessor/list/adt.hpp
+#usr/include/boost/preprocessor/list/append.hpp
+#usr/include/boost/preprocessor/list/at.hpp
+#usr/include/boost/preprocessor/list/cat.hpp
+#usr/include/boost/preprocessor/list/detail
+#usr/include/boost/preprocessor/list/detail/dmc
+#usr/include/boost/preprocessor/list/detail/dmc/fold_left.hpp
+#usr/include/boost/preprocessor/list/detail/edg
+#usr/include/boost/preprocessor/list/detail/edg/fold_left.hpp
+#usr/include/boost/preprocessor/list/detail/edg/fold_right.hpp
+#usr/include/boost/preprocessor/list/detail/fold_left.hpp
+#usr/include/boost/preprocessor/list/detail/fold_right.hpp
+#usr/include/boost/preprocessor/list/enum.hpp
+#usr/include/boost/preprocessor/list/filter.hpp
+#usr/include/boost/preprocessor/list/first_n.hpp
+#usr/include/boost/preprocessor/list/fold_left.hpp
+#usr/include/boost/preprocessor/list/fold_right.hpp
+#usr/include/boost/preprocessor/list/for_each.hpp
+#usr/include/boost/preprocessor/list/for_each_i.hpp
+#usr/include/boost/preprocessor/list/for_each_product.hpp
+#usr/include/boost/preprocessor/list/rest_n.hpp
+#usr/include/boost/preprocessor/list/reverse.hpp
+#usr/include/boost/preprocessor/list/size.hpp
+#usr/include/boost/preprocessor/list/to_array.hpp
+#usr/include/boost/preprocessor/list/to_seq.hpp
+#usr/include/boost/preprocessor/list/to_tuple.hpp
+#usr/include/boost/preprocessor/list/transform.hpp
+#usr/include/boost/preprocessor/logical
+#usr/include/boost/preprocessor/logical.hpp
+#usr/include/boost/preprocessor/logical/and.hpp
+#usr/include/boost/preprocessor/logical/bitand.hpp
+#usr/include/boost/preprocessor/logical/bitnor.hpp
+#usr/include/boost/preprocessor/logical/bitor.hpp
+#usr/include/boost/preprocessor/logical/bitxor.hpp
+#usr/include/boost/preprocessor/logical/bool.hpp
+#usr/include/boost/preprocessor/logical/compl.hpp
+#usr/include/boost/preprocessor/logical/nor.hpp
+#usr/include/boost/preprocessor/logical/not.hpp
+#usr/include/boost/preprocessor/logical/or.hpp
+#usr/include/boost/preprocessor/logical/xor.hpp
+#usr/include/boost/preprocessor/max.hpp
+#usr/include/boost/preprocessor/min.hpp
+#usr/include/boost/preprocessor/punctuation
+#usr/include/boost/preprocessor/punctuation.hpp
+#usr/include/boost/preprocessor/punctuation/comma.hpp
+#usr/include/boost/preprocessor/punctuation/comma_if.hpp
+#usr/include/boost/preprocessor/punctuation/paren.hpp
+#usr/include/boost/preprocessor/punctuation/paren_if.hpp
+#usr/include/boost/preprocessor/repeat.hpp
+#usr/include/boost/preprocessor/repeat_2nd.hpp
+#usr/include/boost/preprocessor/repeat_3rd.hpp
+#usr/include/boost/preprocessor/repeat_from_to.hpp
+#usr/include/boost/preprocessor/repeat_from_to_2nd.hpp
+#usr/include/boost/preprocessor/repeat_from_to_3rd.hpp
+#usr/include/boost/preprocessor/repetition
+#usr/include/boost/preprocessor/repetition.hpp
+#usr/include/boost/preprocessor/repetition/deduce_r.hpp
+#usr/include/boost/preprocessor/repetition/deduce_z.hpp
+#usr/include/boost/preprocessor/repetition/detail
+#usr/include/boost/preprocessor/repetition/detail/dmc
+#usr/include/boost/preprocessor/repetition/detail/dmc/for.hpp
+#usr/include/boost/preprocessor/repetition/detail/edg
+#usr/include/boost/preprocessor/repetition/detail/edg/for.hpp
+#usr/include/boost/preprocessor/repetition/detail/for.hpp
+#usr/include/boost/preprocessor/repetition/detail/msvc
+#usr/include/boost/preprocessor/repetition/detail/msvc/for.hpp
+#usr/include/boost/preprocessor/repetition/enum.hpp
+#usr/include/boost/preprocessor/repetition/enum_binary_params.hpp
+#usr/include/boost/preprocessor/repetition/enum_params.hpp
+#usr/include/boost/preprocessor/repetition/enum_params_with_a_default.hpp
+#usr/include/boost/preprocessor/repetition/enum_params_with_defaults.hpp
+#usr/include/boost/preprocessor/repetition/enum_shifted.hpp
+#usr/include/boost/preprocessor/repetition/enum_shifted_binary_params.hpp
+#usr/include/boost/preprocessor/repetition/enum_shifted_params.hpp
+#usr/include/boost/preprocessor/repetition/enum_trailing.hpp
+#usr/include/boost/preprocessor/repetition/enum_trailing_binary_params.hpp
+#usr/include/boost/preprocessor/repetition/enum_trailing_params.hpp
+#usr/include/boost/preprocessor/repetition/for.hpp
+#usr/include/boost/preprocessor/repetition/repeat.hpp
+#usr/include/boost/preprocessor/repetition/repeat_from_to.hpp
+#usr/include/boost/preprocessor/selection
+#usr/include/boost/preprocessor/selection.hpp
+#usr/include/boost/preprocessor/selection/max.hpp
+#usr/include/boost/preprocessor/selection/min.hpp
+#usr/include/boost/preprocessor/seq
+#usr/include/boost/preprocessor/seq.hpp
+#usr/include/boost/preprocessor/seq/cat.hpp
+#usr/include/boost/preprocessor/seq/detail
+#usr/include/boost/preprocessor/seq/detail/binary_transform.hpp
+#usr/include/boost/preprocessor/seq/detail/split.hpp
+#usr/include/boost/preprocessor/seq/elem.hpp
+#usr/include/boost/preprocessor/seq/enum.hpp
+#usr/include/boost/preprocessor/seq/filter.hpp
+#usr/include/boost/preprocessor/seq/first_n.hpp
+#usr/include/boost/preprocessor/seq/fold_left.hpp
+#usr/include/boost/preprocessor/seq/fold_right.hpp
+#usr/include/boost/preprocessor/seq/for_each.hpp
+#usr/include/boost/preprocessor/seq/for_each_i.hpp
+#usr/include/boost/preprocessor/seq/for_each_product.hpp
+#usr/include/boost/preprocessor/seq/insert.hpp
+#usr/include/boost/preprocessor/seq/pop_back.hpp
+#usr/include/boost/preprocessor/seq/pop_front.hpp
+#usr/include/boost/preprocessor/seq/push_back.hpp
+#usr/include/boost/preprocessor/seq/push_front.hpp
+#usr/include/boost/preprocessor/seq/remove.hpp
+#usr/include/boost/preprocessor/seq/replace.hpp
+#usr/include/boost/preprocessor/seq/rest_n.hpp
+#usr/include/boost/preprocessor/seq/reverse.hpp
+#usr/include/boost/preprocessor/seq/seq.hpp
+#usr/include/boost/preprocessor/seq/size.hpp
+#usr/include/boost/preprocessor/seq/subseq.hpp
+#usr/include/boost/preprocessor/seq/to_array.hpp
+#usr/include/boost/preprocessor/seq/to_list.hpp
+#usr/include/boost/preprocessor/seq/to_tuple.hpp
+#usr/include/boost/preprocessor/seq/transform.hpp
+#usr/include/boost/preprocessor/slot
+#usr/include/boost/preprocessor/slot.hpp
+#usr/include/boost/preprocessor/slot/counter.hpp
+#usr/include/boost/preprocessor/slot/detail
+#usr/include/boost/preprocessor/slot/detail/counter.hpp
+#usr/include/boost/preprocessor/slot/detail/def.hpp
+#usr/include/boost/preprocessor/slot/detail/shared.hpp
+#usr/include/boost/preprocessor/slot/detail/slot1.hpp
+#usr/include/boost/preprocessor/slot/detail/slot2.hpp
+#usr/include/boost/preprocessor/slot/detail/slot3.hpp
+#usr/include/boost/preprocessor/slot/detail/slot4.hpp
+#usr/include/boost/preprocessor/slot/detail/slot5.hpp
+#usr/include/boost/preprocessor/slot/slot.hpp
+#usr/include/boost/preprocessor/stringize.hpp
+#usr/include/boost/preprocessor/tuple
+#usr/include/boost/preprocessor/tuple.hpp
+#usr/include/boost/preprocessor/tuple/eat.hpp
+#usr/include/boost/preprocessor/tuple/elem.hpp
+#usr/include/boost/preprocessor/tuple/enum.hpp
+#usr/include/boost/preprocessor/tuple/rem.hpp
+#usr/include/boost/preprocessor/tuple/reverse.hpp
+#usr/include/boost/preprocessor/tuple/size.hpp
+#usr/include/boost/preprocessor/tuple/to_array.hpp
+#usr/include/boost/preprocessor/tuple/to_list.hpp
+#usr/include/boost/preprocessor/tuple/to_seq.hpp
+#usr/include/boost/preprocessor/variadic
+#usr/include/boost/preprocessor/variadic.hpp
+#usr/include/boost/preprocessor/variadic/elem.hpp
+#usr/include/boost/preprocessor/variadic/size.hpp
+#usr/include/boost/preprocessor/variadic/to_array.hpp
+#usr/include/boost/preprocessor/variadic/to_list.hpp
+#usr/include/boost/preprocessor/variadic/to_seq.hpp
+#usr/include/boost/preprocessor/variadic/to_tuple.hpp
+#usr/include/boost/preprocessor/while.hpp
+#usr/include/boost/preprocessor/wstringize.hpp
+#usr/include/boost/program_options
+#usr/include/boost/program_options.hpp
+#usr/include/boost/program_options/cmdline.hpp
+#usr/include/boost/program_options/config.hpp
+#usr/include/boost/program_options/detail
+#usr/include/boost/program_options/detail/cmdline.hpp
+#usr/include/boost/program_options/detail/config_file.hpp
+#usr/include/boost/program_options/detail/convert.hpp
+#usr/include/boost/program_options/detail/parsers.hpp
+#usr/include/boost/program_options/detail/utf8_codecvt_facet.hpp
+#usr/include/boost/program_options/detail/value_semantic.hpp
+#usr/include/boost/program_options/environment_iterator.hpp
+#usr/include/boost/program_options/eof_iterator.hpp
+#usr/include/boost/program_options/errors.hpp
+#usr/include/boost/program_options/option.hpp
+#usr/include/boost/program_options/options_description.hpp
+#usr/include/boost/program_options/parsers.hpp
+#usr/include/boost/program_options/positional_options.hpp
+#usr/include/boost/program_options/value_semantic.hpp
+#usr/include/boost/program_options/variables_map.hpp
+#usr/include/boost/program_options/version.hpp
+#usr/include/boost/progress.hpp
+#usr/include/boost/property_map
+#usr/include/boost/property_map/compose_property_map.hpp
+#usr/include/boost/property_map/dynamic_property_map.hpp
+#usr/include/boost/property_map/function_property_map.hpp
+#usr/include/boost/property_map/parallel
+#usr/include/boost/property_map/parallel/caching_property_map.hpp
+#usr/include/boost/property_map/parallel/distributed_property_map.hpp
+#usr/include/boost/property_map/parallel/global_index_map.hpp
+#usr/include/boost/property_map/parallel/impl
+#usr/include/boost/property_map/parallel/impl/distributed_property_map.ipp
+#usr/include/boost/property_map/parallel/local_property_map.hpp
+#usr/include/boost/property_map/property_map.hpp
+#usr/include/boost/property_map/property_map_iterator.hpp
+#usr/include/boost/property_map/shared_array_property_map.hpp
+#usr/include/boost/property_map/transform_value_property_map.hpp
+#usr/include/boost/property_map/vector_property_map.hpp
+#usr/include/boost/property_tree
+#usr/include/boost/property_tree/detail
+#usr/include/boost/property_tree/detail/exception_implementation.hpp
+#usr/include/boost/property_tree/detail/file_parser_error.hpp
+#usr/include/boost/property_tree/detail/info_parser_error.hpp
+#usr/include/boost/property_tree/detail/info_parser_read.hpp
+#usr/include/boost/property_tree/detail/info_parser_utils.hpp
+#usr/include/boost/property_tree/detail/info_parser_write.hpp
+#usr/include/boost/property_tree/detail/info_parser_writer_settings.hpp
+#usr/include/boost/property_tree/detail/json_parser_error.hpp
+#usr/include/boost/property_tree/detail/json_parser_read.hpp
+#usr/include/boost/property_tree/detail/json_parser_write.hpp
+#usr/include/boost/property_tree/detail/ptree_implementation.hpp
+#usr/include/boost/property_tree/detail/ptree_utils.hpp
+#usr/include/boost/property_tree/detail/rapidxml.hpp
+#usr/include/boost/property_tree/detail/xml_parser_error.hpp
+#usr/include/boost/property_tree/detail/xml_parser_flags.hpp
+#usr/include/boost/property_tree/detail/xml_parser_read_rapidxml.hpp
+#usr/include/boost/property_tree/detail/xml_parser_utils.hpp
+#usr/include/boost/property_tree/detail/xml_parser_write.hpp
+#usr/include/boost/property_tree/detail/xml_parser_writer_settings.hpp
+#usr/include/boost/property_tree/exceptions.hpp
+#usr/include/boost/property_tree/id_translator.hpp
+#usr/include/boost/property_tree/info_parser.hpp
+#usr/include/boost/property_tree/ini_parser.hpp
+#usr/include/boost/property_tree/json_parser.hpp
+#usr/include/boost/property_tree/ptree.hpp
+#usr/include/boost/property_tree/ptree_fwd.hpp
+#usr/include/boost/property_tree/ptree_serialization.hpp
+#usr/include/boost/property_tree/stream_translator.hpp
+#usr/include/boost/property_tree/string_path.hpp
+#usr/include/boost/property_tree/xml_parser.hpp
+#usr/include/boost/proto
+#usr/include/boost/proto/args.hpp
+#usr/include/boost/proto/context
+#usr/include/boost/proto/context.hpp
+#usr/include/boost/proto/context/callable.hpp
+#usr/include/boost/proto/context/default.hpp
+#usr/include/boost/proto/context/detail
+#usr/include/boost/proto/context/detail/callable_eval.hpp
+#usr/include/boost/proto/context/detail/default_eval.hpp
+#usr/include/boost/proto/context/detail/null_eval.hpp
+#usr/include/boost/proto/context/detail/preprocessed
+#usr/include/boost/proto/context/detail/preprocessed/callable_eval.hpp
+#usr/include/boost/proto/context/detail/preprocessed/default_eval.hpp
+#usr/include/boost/proto/context/detail/preprocessed/null_eval.hpp
+#usr/include/boost/proto/context/null.hpp
+#usr/include/boost/proto/core.hpp
+#usr/include/boost/proto/debug.hpp
+#usr/include/boost/proto/deep_copy.hpp
+#usr/include/boost/proto/detail
+#usr/include/boost/proto/detail/and_n.hpp
+#usr/include/boost/proto/detail/any.hpp
+#usr/include/boost/proto/detail/args.hpp
+#usr/include/boost/proto/detail/as_expr.hpp
+#usr/include/boost/proto/detail/as_lvalue.hpp
+#usr/include/boost/proto/detail/basic_expr.hpp
+#usr/include/boost/proto/detail/class_member_traits.hpp
+#usr/include/boost/proto/detail/decltype.hpp
+#usr/include/boost/proto/detail/deduce_domain.hpp
+#usr/include/boost/proto/detail/deduce_domain_n.hpp
+#usr/include/boost/proto/detail/deep_copy.hpp
+#usr/include/boost/proto/detail/deprecated.hpp
+#usr/include/boost/proto/detail/dont_care.hpp
+#usr/include/boost/proto/detail/expr.hpp
+#usr/include/boost/proto/detail/expr_funop.hpp
+#usr/include/boost/proto/detail/extends_funop.hpp
+#usr/include/boost/proto/detail/extends_funop_const.hpp
+#usr/include/boost/proto/detail/funop.hpp
+#usr/include/boost/proto/detail/generate_by_value.hpp
+#usr/include/boost/proto/detail/ignore_unused.hpp
+#usr/include/boost/proto/detail/is_noncopyable.hpp
+#usr/include/boost/proto/detail/lambda_matches.hpp
+#usr/include/boost/proto/detail/local.hpp
+#usr/include/boost/proto/detail/make_expr.hpp
+#usr/include/boost/proto/detail/make_expr_.hpp
+#usr/include/boost/proto/detail/make_expr_funop.hpp
+#usr/include/boost/proto/detail/matches_.hpp
+#usr/include/boost/proto/detail/memfun_funop.hpp
+#usr/include/boost/proto/detail/or_n.hpp
+#usr/include/boost/proto/detail/poly_function.hpp
+#usr/include/boost/proto/detail/poly_function_funop.hpp
+#usr/include/boost/proto/detail/poly_function_traits.hpp
+#usr/include/boost/proto/detail/preprocessed
+#usr/include/boost/proto/detail/preprocessed/and_n.hpp
+#usr/include/boost/proto/detail/preprocessed/args.hpp
+#usr/include/boost/proto/detail/preprocessed/basic_expr.hpp
+#usr/include/boost/proto/detail/preprocessed/class_member_traits.hpp
+#usr/include/boost/proto/detail/preprocessed/deduce_domain_n.hpp
+#usr/include/boost/proto/detail/preprocessed/deep_copy.hpp
+#usr/include/boost/proto/detail/preprocessed/expr.hpp
+#usr/include/boost/proto/detail/preprocessed/expr_variadic.hpp
+#usr/include/boost/proto/detail/preprocessed/extends_funop.hpp
+#usr/include/boost/proto/detail/preprocessed/extends_funop_const.hpp
+#usr/include/boost/proto/detail/preprocessed/funop.hpp
+#usr/include/boost/proto/detail/preprocessed/generate_by_value.hpp
+#usr/include/boost/proto/detail/preprocessed/lambda_matches.hpp
+#usr/include/boost/proto/detail/preprocessed/make_expr.hpp
+#usr/include/boost/proto/detail/preprocessed/make_expr_.hpp
+#usr/include/boost/proto/detail/preprocessed/make_expr_funop.hpp
+#usr/include/boost/proto/detail/preprocessed/matches_.hpp
+#usr/include/boost/proto/detail/preprocessed/memfun_funop.hpp
+#usr/include/boost/proto/detail/preprocessed/or_n.hpp
+#usr/include/boost/proto/detail/preprocessed/poly_function_funop.hpp
+#usr/include/boost/proto/detail/preprocessed/poly_function_traits.hpp
+#usr/include/boost/proto/detail/preprocessed/template_arity_helper.hpp
+#usr/include/boost/proto/detail/preprocessed/traits.hpp
+#usr/include/boost/proto/detail/preprocessed/unpack_expr_.hpp
+#usr/include/boost/proto/detail/preprocessed/vararg_matches_impl.hpp
+#usr/include/boost/proto/detail/remove_typename.hpp
+#usr/include/boost/proto/detail/static_const.hpp
+#usr/include/boost/proto/detail/template_arity.hpp
+#usr/include/boost/proto/detail/template_arity_helper.hpp
+#usr/include/boost/proto/detail/traits.hpp
+#usr/include/boost/proto/detail/unpack_expr_.hpp
+#usr/include/boost/proto/detail/vararg_matches_impl.hpp
+#usr/include/boost/proto/domain.hpp
+#usr/include/boost/proto/eval.hpp
+#usr/include/boost/proto/expr.hpp
+#usr/include/boost/proto/extends.hpp
+#usr/include/boost/proto/functional
+#usr/include/boost/proto/functional.hpp
+#usr/include/boost/proto/functional/fusion
+#usr/include/boost/proto/functional/fusion.hpp
+#usr/include/boost/proto/functional/fusion/at.hpp
+#usr/include/boost/proto/functional/fusion/pop_back.hpp
+#usr/include/boost/proto/functional/fusion/pop_front.hpp
+#usr/include/boost/proto/functional/fusion/push_back.hpp
+#usr/include/boost/proto/functional/fusion/push_front.hpp
+#usr/include/boost/proto/functional/fusion/reverse.hpp
+#usr/include/boost/proto/functional/range
+#usr/include/boost/proto/functional/range.hpp
+#usr/include/boost/proto/functional/range/begin.hpp
+#usr/include/boost/proto/functional/range/empty.hpp
+#usr/include/boost/proto/functional/range/end.hpp
+#usr/include/boost/proto/functional/range/rbegin.hpp
+#usr/include/boost/proto/functional/range/rend.hpp
+#usr/include/boost/proto/functional/range/size.hpp
+#usr/include/boost/proto/functional/std
+#usr/include/boost/proto/functional/std.hpp
+#usr/include/boost/proto/functional/std/iterator.hpp
+#usr/include/boost/proto/functional/std/utility.hpp
+#usr/include/boost/proto/fusion.hpp
+#usr/include/boost/proto/generate.hpp
+#usr/include/boost/proto/literal.hpp
+#usr/include/boost/proto/make_expr.hpp
+#usr/include/boost/proto/matches.hpp
+#usr/include/boost/proto/operators.hpp
+#usr/include/boost/proto/proto.hpp
+#usr/include/boost/proto/proto_fwd.hpp
+#usr/include/boost/proto/proto_typeof.hpp
+#usr/include/boost/proto/repeat.hpp
+#usr/include/boost/proto/tags.hpp
+#usr/include/boost/proto/traits.hpp
+#usr/include/boost/proto/transform
+#usr/include/boost/proto/transform.hpp
+#usr/include/boost/proto/transform/arg.hpp
+#usr/include/boost/proto/transform/call.hpp
+#usr/include/boost/proto/transform/default.hpp
+#usr/include/boost/proto/transform/detail
+#usr/include/boost/proto/transform/detail/call.hpp
+#usr/include/boost/proto/transform/detail/construct_funop.hpp
+#usr/include/boost/proto/transform/detail/construct_pod_funop.hpp
+#usr/include/boost/proto/transform/detail/default_function_impl.hpp
+#usr/include/boost/proto/transform/detail/expand_pack.hpp
+#usr/include/boost/proto/transform/detail/fold_impl.hpp
+#usr/include/boost/proto/transform/detail/lazy.hpp
+#usr/include/boost/proto/transform/detail/make.hpp
+#usr/include/boost/proto/transform/detail/make_gcc_workaround.hpp
+#usr/include/boost/proto/transform/detail/pack.hpp
+#usr/include/boost/proto/transform/detail/pack_impl.hpp
+#usr/include/boost/proto/transform/detail/pass_through_impl.hpp
+#usr/include/boost/proto/transform/detail/preprocessed
+#usr/include/boost/proto/transform/detail/preprocessed/call.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/construct_funop.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/construct_pod_funop.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/default_function_impl.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/expand_pack.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/fold_impl.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/lazy.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/make.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/make_gcc_workaround.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/pack_impl.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/pass_through_impl.hpp
+#usr/include/boost/proto/transform/detail/preprocessed/when.hpp
+#usr/include/boost/proto/transform/detail/when.hpp
+#usr/include/boost/proto/transform/env.hpp
+#usr/include/boost/proto/transform/fold.hpp
+#usr/include/boost/proto/transform/fold_tree.hpp
+#usr/include/boost/proto/transform/impl.hpp
+#usr/include/boost/proto/transform/integral_c.hpp
+#usr/include/boost/proto/transform/lazy.hpp
+#usr/include/boost/proto/transform/make.hpp
+#usr/include/boost/proto/transform/pass_through.hpp
+#usr/include/boost/proto/transform/when.hpp
+#usr/include/boost/ptr_container
+#usr/include/boost/ptr_container/clone_allocator.hpp
+#usr/include/boost/ptr_container/detail
+#usr/include/boost/ptr_container/detail/associative_ptr_container.hpp
+#usr/include/boost/ptr_container/detail/default_deleter.hpp
+#usr/include/boost/ptr_container/detail/is_convertible.hpp
+#usr/include/boost/ptr_container/detail/map_iterator.hpp
+#usr/include/boost/ptr_container/detail/meta_functions.hpp
+#usr/include/boost/ptr_container/detail/move.hpp
+#usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp
+#usr/include/boost/ptr_container/detail/scoped_deleter.hpp
+#usr/include/boost/ptr_container/detail/serialize_ptr_map_adapter.hpp
+#usr/include/boost/ptr_container/detail/serialize_reversible_cont.hpp
+#usr/include/boost/ptr_container/detail/serialize_xml_names.hpp
+#usr/include/boost/ptr_container/detail/static_move_ptr.hpp
+#usr/include/boost/ptr_container/detail/throw_exception.hpp
+#usr/include/boost/ptr_container/detail/void_ptr_iterator.hpp
+#usr/include/boost/ptr_container/exception.hpp
+#usr/include/boost/ptr_container/indirect_fun.hpp
+#usr/include/boost/ptr_container/nullable.hpp
+#usr/include/boost/ptr_container/ptr_array.hpp
+#usr/include/boost/ptr_container/ptr_circular_buffer.hpp
+#usr/include/boost/ptr_container/ptr_container.hpp
+#usr/include/boost/ptr_container/ptr_deque.hpp
+#usr/include/boost/ptr_container/ptr_inserter.hpp
+#usr/include/boost/ptr_container/ptr_list.hpp
+#usr/include/boost/ptr_container/ptr_map.hpp
+#usr/include/boost/ptr_container/ptr_map_adapter.hpp
+#usr/include/boost/ptr_container/ptr_sequence_adapter.hpp
+#usr/include/boost/ptr_container/ptr_set.hpp
+#usr/include/boost/ptr_container/ptr_set_adapter.hpp
+#usr/include/boost/ptr_container/ptr_unordered_map.hpp
+#usr/include/boost/ptr_container/ptr_unordered_set.hpp
+#usr/include/boost/ptr_container/ptr_vector.hpp
+#usr/include/boost/ptr_container/serialize_ptr_array.hpp
+#usr/include/boost/ptr_container/serialize_ptr_circular_buffer.hpp
+#usr/include/boost/ptr_container/serialize_ptr_container.hpp
+#usr/include/boost/ptr_container/serialize_ptr_deque.hpp
+#usr/include/boost/ptr_container/serialize_ptr_list.hpp
+#usr/include/boost/ptr_container/serialize_ptr_map.hpp
+#usr/include/boost/ptr_container/serialize_ptr_set.hpp
+#usr/include/boost/ptr_container/serialize_ptr_unordered_map.hpp
+#usr/include/boost/ptr_container/serialize_ptr_unordered_set.hpp
+#usr/include/boost/ptr_container/serialize_ptr_vector.hpp
+#usr/include/boost/python
+#usr/include/boost/python.hpp
+#usr/include/boost/python/arg_from_python.hpp
+#usr/include/boost/python/args.hpp
+#usr/include/boost/python/args_fwd.hpp
+#usr/include/boost/python/back_reference.hpp
+#usr/include/boost/python/base_type_traits.hpp
+#usr/include/boost/python/bases.hpp
+#usr/include/boost/python/borrowed.hpp
+#usr/include/boost/python/call.hpp
+#usr/include/boost/python/call_method.hpp
+#usr/include/boost/python/cast.hpp
+#usr/include/boost/python/class.hpp
+#usr/include/boost/python/class_fwd.hpp
+#usr/include/boost/python/converter
+#usr/include/boost/python/converter/arg_from_python.hpp
+#usr/include/boost/python/converter/arg_to_python.hpp
+#usr/include/boost/python/converter/arg_to_python_base.hpp
+#usr/include/boost/python/converter/as_to_python_function.hpp
+#usr/include/boost/python/converter/builtin_converters.hpp
+#usr/include/boost/python/converter/constructor_function.hpp
+#usr/include/boost/python/converter/context_result_converter.hpp
+#usr/include/boost/python/converter/convertible_function.hpp
+#usr/include/boost/python/converter/from_python.hpp
+#usr/include/boost/python/converter/implicit.hpp
+#usr/include/boost/python/converter/obj_mgr_arg_from_python.hpp
+#usr/include/boost/python/converter/object_manager.hpp
+#usr/include/boost/python/converter/pointer_type_id.hpp
+#usr/include/boost/python/converter/pyobject_traits.hpp
+#usr/include/boost/python/converter/pyobject_type.hpp
+#usr/include/boost/python/converter/pytype_function.hpp
+#usr/include/boost/python/converter/pytype_object_mgr_traits.hpp
+#usr/include/boost/python/converter/registered.hpp
+#usr/include/boost/python/converter/registered_pointee.hpp
+#usr/include/boost/python/converter/registrations.hpp
+#usr/include/boost/python/converter/registry.hpp
+#usr/include/boost/python/converter/return_from_python.hpp
+#usr/include/boost/python/converter/rvalue_from_python_data.hpp
+#usr/include/boost/python/converter/shared_ptr_deleter.hpp
+#usr/include/boost/python/converter/shared_ptr_from_python.hpp
+#usr/include/boost/python/converter/shared_ptr_to_python.hpp
+#usr/include/boost/python/converter/to_python_function_type.hpp
+#usr/include/boost/python/copy_const_reference.hpp
+#usr/include/boost/python/copy_non_const_reference.hpp
+#usr/include/boost/python/data_members.hpp
+#usr/include/boost/python/def.hpp
+#usr/include/boost/python/def_visitor.hpp
+#usr/include/boost/python/default_call_policies.hpp
+#usr/include/boost/python/detail
+#usr/include/boost/python/detail/aix_init_module.hpp
+#usr/include/boost/python/detail/api_placeholder.hpp
+#usr/include/boost/python/detail/borrowed_ptr.hpp
+#usr/include/boost/python/detail/caller.hpp
+#usr/include/boost/python/detail/config.hpp
+#usr/include/boost/python/detail/construct.hpp
+#usr/include/boost/python/detail/convertible.hpp
+#usr/include/boost/python/detail/copy_ctor_mutates_rhs.hpp
+#usr/include/boost/python/detail/cv_category.hpp
+#usr/include/boost/python/detail/dealloc.hpp
+#usr/include/boost/python/detail/decorated_type_id.hpp
+#usr/include/boost/python/detail/decref_guard.hpp
+#usr/include/boost/python/detail/def_helper.hpp
+#usr/include/boost/python/detail/def_helper_fwd.hpp
+#usr/include/boost/python/detail/defaults_def.hpp
+#usr/include/boost/python/detail/defaults_gen.hpp
+#usr/include/boost/python/detail/dependent.hpp
+#usr/include/boost/python/detail/destroy.hpp
+#usr/include/boost/python/detail/enable_if.hpp
+#usr/include/boost/python/detail/exception_handler.hpp
+#usr/include/boost/python/detail/force_instantiate.hpp
+#usr/include/boost/python/detail/if_else.hpp
+#usr/include/boost/python/detail/indirect_traits.hpp
+#usr/include/boost/python/detail/invoke.hpp
+#usr/include/boost/python/detail/is_auto_ptr.hpp
+#usr/include/boost/python/detail/is_shared_ptr.hpp
+#usr/include/boost/python/detail/is_wrapper.hpp
+#usr/include/boost/python/detail/is_xxx.hpp
+#usr/include/boost/python/detail/make_keyword_range_fn.hpp
+#usr/include/boost/python/detail/make_tuple.hpp
+#usr/include/boost/python/detail/map_entry.hpp
+#usr/include/boost/python/detail/mpl_lambda.hpp
+#usr/include/boost/python/detail/msvc_typeinfo.hpp
+#usr/include/boost/python/detail/none.hpp
+#usr/include/boost/python/detail/not_specified.hpp
+#usr/include/boost/python/detail/nullary_function_adaptor.hpp
+#usr/include/boost/python/detail/operator_id.hpp
+#usr/include/boost/python/detail/overloads_fwd.hpp
+#usr/include/boost/python/detail/pointee.hpp
+#usr/include/boost/python/detail/prefix.hpp
+#usr/include/boost/python/detail/preprocessor.hpp
+#usr/include/boost/python/detail/python22_fixed.h
+#usr/include/boost/python/detail/python_type.hpp
+#usr/include/boost/python/detail/raw_pyobject.hpp
+#usr/include/boost/python/detail/referent_storage.hpp
+#usr/include/boost/python/detail/result.hpp
+#usr/include/boost/python/detail/scope.hpp
+#usr/include/boost/python/detail/sfinae.hpp
+#usr/include/boost/python/detail/signature.hpp
+#usr/include/boost/python/detail/string_literal.hpp
+#usr/include/boost/python/detail/target.hpp
+#usr/include/boost/python/detail/translate_exception.hpp
+#usr/include/boost/python/detail/type_list.hpp
+#usr/include/boost/python/detail/type_list_impl.hpp
+#usr/include/boost/python/detail/type_list_impl_no_pts.hpp
+#usr/include/boost/python/detail/unwind_type.hpp
+#usr/include/boost/python/detail/unwrap_type_id.hpp
+#usr/include/boost/python/detail/unwrap_wrapper.hpp
+#usr/include/boost/python/detail/value_arg.hpp
+#usr/include/boost/python/detail/value_is_shared_ptr.hpp
+#usr/include/boost/python/detail/value_is_xxx.hpp
+#usr/include/boost/python/detail/void_ptr.hpp
+#usr/include/boost/python/detail/void_return.hpp
+#usr/include/boost/python/detail/wrap_python.hpp
+#usr/include/boost/python/detail/wrapper_base.hpp
+#usr/include/boost/python/dict.hpp
+#usr/include/boost/python/docstring_options.hpp
+#usr/include/boost/python/enum.hpp
+#usr/include/boost/python/errors.hpp
+#usr/include/boost/python/exception_translator.hpp
+#usr/include/boost/python/exec.hpp
+#usr/include/boost/python/extract.hpp
+#usr/include/boost/python/handle.hpp
+#usr/include/boost/python/handle_fwd.hpp
+#usr/include/boost/python/has_back_reference.hpp
+#usr/include/boost/python/implicit.hpp
+#usr/include/boost/python/import.hpp
+#usr/include/boost/python/init.hpp
+#usr/include/boost/python/instance_holder.hpp
+#usr/include/boost/python/iterator.hpp
+#usr/include/boost/python/list.hpp
+#usr/include/boost/python/long.hpp
+#usr/include/boost/python/lvalue_from_pytype.hpp
+#usr/include/boost/python/make_constructor.hpp
+#usr/include/boost/python/make_function.hpp
+#usr/include/boost/python/manage_new_object.hpp
+#usr/include/boost/python/module.hpp
+#usr/include/boost/python/module_init.hpp
+#usr/include/boost/python/numeric.hpp
+#usr/include/boost/python/object
+#usr/include/boost/python/object.hpp
+#usr/include/boost/python/object/add_to_namespace.hpp
+#usr/include/boost/python/object/class.hpp
+#usr/include/boost/python/object/class_detail.hpp
+#usr/include/boost/python/object/class_metadata.hpp
+#usr/include/boost/python/object/class_wrapper.hpp
+#usr/include/boost/python/object/enum_base.hpp
+#usr/include/boost/python/object/find_instance.hpp
+#usr/include/boost/python/object/forward.hpp
+#usr/include/boost/python/object/function.hpp
+#usr/include/boost/python/object/function_doc_signature.hpp
+#usr/include/boost/python/object/function_handle.hpp
+#usr/include/boost/python/object/function_object.hpp
+#usr/include/boost/python/object/inheritance.hpp
+#usr/include/boost/python/object/inheritance_query.hpp
+#usr/include/boost/python/object/instance.hpp
+#usr/include/boost/python/object/iterator.hpp
+#usr/include/boost/python/object/iterator_core.hpp
+#usr/include/boost/python/object/life_support.hpp
+#usr/include/boost/python/object/make_holder.hpp
+#usr/include/boost/python/object/make_instance.hpp
+#usr/include/boost/python/object/make_ptr_instance.hpp
+#usr/include/boost/python/object/pickle_support.hpp
+#usr/include/boost/python/object/pointer_holder.hpp
+#usr/include/boost/python/object/py_function.hpp
+#usr/include/boost/python/object/stl_iterator_core.hpp
+#usr/include/boost/python/object/value_holder.hpp
+#usr/include/boost/python/object/value_holder_fwd.hpp
+#usr/include/boost/python/object_attributes.hpp
+#usr/include/boost/python/object_call.hpp
+#usr/include/boost/python/object_core.hpp
+#usr/include/boost/python/object_fwd.hpp
+#usr/include/boost/python/object_items.hpp
+#usr/include/boost/python/object_operators.hpp
+#usr/include/boost/python/object_protocol.hpp
+#usr/include/boost/python/object_protocol_core.hpp
+#usr/include/boost/python/object_slices.hpp
+#usr/include/boost/python/opaque_pointer_converter.hpp
+#usr/include/boost/python/operators.hpp
+#usr/include/boost/python/other.hpp
+#usr/include/boost/python/overloads.hpp
+#usr/include/boost/python/override.hpp
+#usr/include/boost/python/pointee.hpp
+#usr/include/boost/python/proxy.hpp
+#usr/include/boost/python/ptr.hpp
+#usr/include/boost/python/pure_virtual.hpp
+#usr/include/boost/python/raw_function.hpp
+#usr/include/boost/python/refcount.hpp
+#usr/include/boost/python/reference_existing_object.hpp
+#usr/include/boost/python/register_ptr_to_python.hpp
+#usr/include/boost/python/return_arg.hpp
+#usr/include/boost/python/return_by_value.hpp
+#usr/include/boost/python/return_internal_reference.hpp
+#usr/include/boost/python/return_opaque_pointer.hpp
+#usr/include/boost/python/return_value_policy.hpp
+#usr/include/boost/python/scope.hpp
+#usr/include/boost/python/self.hpp
+#usr/include/boost/python/signature.hpp
+#usr/include/boost/python/slice.hpp
+#usr/include/boost/python/slice_nil.hpp
+#usr/include/boost/python/ssize_t.hpp
+#usr/include/boost/python/stl_iterator.hpp
+#usr/include/boost/python/str.hpp
+#usr/include/boost/python/suite
+#usr/include/boost/python/suite/indexing
+#usr/include/boost/python/suite/indexing/container_utils.hpp
+#usr/include/boost/python/suite/indexing/detail
+#usr/include/boost/python/suite/indexing/detail/indexing_suite_detail.hpp
+#usr/include/boost/python/suite/indexing/indexing_suite.hpp
+#usr/include/boost/python/suite/indexing/map_indexing_suite.hpp
+#usr/include/boost/python/suite/indexing/vector_indexing_suite.hpp
+#usr/include/boost/python/tag.hpp
+#usr/include/boost/python/to_python_converter.hpp
+#usr/include/boost/python/to_python_indirect.hpp
+#usr/include/boost/python/to_python_value.hpp
+#usr/include/boost/python/tuple.hpp
+#usr/include/boost/python/type_id.hpp
+#usr/include/boost/python/with_custodian_and_ward.hpp
+#usr/include/boost/python/wrapper.hpp
+#usr/include/boost/random
+#usr/include/boost/random.hpp
+#usr/include/boost/random/additive_combine.hpp
+#usr/include/boost/random/bernoulli_distribution.hpp
+#usr/include/boost/random/binomial_distribution.hpp
+#usr/include/boost/random/cauchy_distribution.hpp
+#usr/include/boost/random/chi_squared_distribution.hpp
+#usr/include/boost/random/detail
+#usr/include/boost/random/detail/auto_link.hpp
+#usr/include/boost/random/detail/config.hpp
+#usr/include/boost/random/detail/const_mod.hpp
+#usr/include/boost/random/detail/disable_warnings.hpp
+#usr/include/boost/random/detail/enable_warnings.hpp
+#usr/include/boost/random/detail/generator_bits.hpp
+#usr/include/boost/random/detail/generator_seed_seq.hpp
+#usr/include/boost/random/detail/integer_log2.hpp
+#usr/include/boost/random/detail/iterator_mixin.hpp
+#usr/include/boost/random/detail/large_arithmetic.hpp
+#usr/include/boost/random/detail/operators.hpp
+#usr/include/boost/random/detail/ptr_helper.hpp
+#usr/include/boost/random/detail/seed.hpp
+#usr/include/boost/random/detail/seed_impl.hpp
+#usr/include/boost/random/detail/signed_unsigned_tools.hpp
+#usr/include/boost/random/detail/uniform_int_float.hpp
+#usr/include/boost/random/detail/vector_io.hpp
+#usr/include/boost/random/discard_block.hpp
+#usr/include/boost/random/discrete_distribution.hpp
+#usr/include/boost/random/exponential_distribution.hpp
+#usr/include/boost/random/extreme_value_distribution.hpp
+#usr/include/boost/random/fisher_f_distribution.hpp
+#usr/include/boost/random/gamma_distribution.hpp
+#usr/include/boost/random/generate_canonical.hpp
+#usr/include/boost/random/geometric_distribution.hpp
+#usr/include/boost/random/independent_bits.hpp
+#usr/include/boost/random/inversive_congruential.hpp
+#usr/include/boost/random/lagged_fibonacci.hpp
+#usr/include/boost/random/linear_congruential.hpp
+#usr/include/boost/random/linear_feedback_shift.hpp
+#usr/include/boost/random/lognormal_distribution.hpp
+#usr/include/boost/random/mersenne_twister.hpp
+#usr/include/boost/random/negative_binomial_distribution.hpp
+#usr/include/boost/random/normal_distribution.hpp
+#usr/include/boost/random/piecewise_constant_distribution.hpp
+#usr/include/boost/random/piecewise_linear_distribution.hpp
+#usr/include/boost/random/poisson_distribution.hpp
+#usr/include/boost/random/random_device.hpp
+#usr/include/boost/random/random_number_generator.hpp
+#usr/include/boost/random/ranlux.hpp
+#usr/include/boost/random/seed_seq.hpp
+#usr/include/boost/random/shuffle_order.hpp
+#usr/include/boost/random/shuffle_output.hpp
+#usr/include/boost/random/student_t_distribution.hpp
+#usr/include/boost/random/subtract_with_carry.hpp
+#usr/include/boost/random/taus88.hpp
+#usr/include/boost/random/triangle_distribution.hpp
+#usr/include/boost/random/uniform_01.hpp
+#usr/include/boost/random/uniform_int.hpp
+#usr/include/boost/random/uniform_int_distribution.hpp
+#usr/include/boost/random/uniform_on_sphere.hpp
+#usr/include/boost/random/uniform_real.hpp
+#usr/include/boost/random/uniform_real_distribution.hpp
+#usr/include/boost/random/uniform_smallint.hpp
+#usr/include/boost/random/variate_generator.hpp
+#usr/include/boost/random/weibull_distribution.hpp
+#usr/include/boost/random/xor_combine.hpp
+#usr/include/boost/range
+#usr/include/boost/range.hpp
+#usr/include/boost/range/adaptor
+#usr/include/boost/range/adaptor/adjacent_filtered.hpp
+#usr/include/boost/range/adaptor/argument_fwd.hpp
+#usr/include/boost/range/adaptor/copied.hpp
+#usr/include/boost/range/adaptor/define_adaptor.hpp
+#usr/include/boost/range/adaptor/filtered.hpp
+#usr/include/boost/range/adaptor/indexed.hpp
+#usr/include/boost/range/adaptor/indirected.hpp
+#usr/include/boost/range/adaptor/map.hpp
+#usr/include/boost/range/adaptor/replaced.hpp
+#usr/include/boost/range/adaptor/replaced_if.hpp
+#usr/include/boost/range/adaptor/reversed.hpp
+#usr/include/boost/range/adaptor/sliced.hpp
+#usr/include/boost/range/adaptor/strided.hpp
+#usr/include/boost/range/adaptor/tokenized.hpp
+#usr/include/boost/range/adaptor/transformed.hpp
+#usr/include/boost/range/adaptor/type_erased.hpp
+#usr/include/boost/range/adaptor/uniqued.hpp
+#usr/include/boost/range/adaptors.hpp
+#usr/include/boost/range/algorithm
+#usr/include/boost/range/algorithm.hpp
+#usr/include/boost/range/algorithm/adjacent_find.hpp
+#usr/include/boost/range/algorithm/binary_search.hpp
+#usr/include/boost/range/algorithm/copy.hpp
+#usr/include/boost/range/algorithm/copy_backward.hpp
+#usr/include/boost/range/algorithm/count.hpp
+#usr/include/boost/range/algorithm/count_if.hpp
+#usr/include/boost/range/algorithm/equal.hpp
+#usr/include/boost/range/algorithm/equal_range.hpp
+#usr/include/boost/range/algorithm/fill.hpp
+#usr/include/boost/range/algorithm/fill_n.hpp
+#usr/include/boost/range/algorithm/find.hpp
+#usr/include/boost/range/algorithm/find_end.hpp
+#usr/include/boost/range/algorithm/find_first_of.hpp
+#usr/include/boost/range/algorithm/find_if.hpp
+#usr/include/boost/range/algorithm/for_each.hpp
+#usr/include/boost/range/algorithm/generate.hpp
+#usr/include/boost/range/algorithm/heap_algorithm.hpp
+#usr/include/boost/range/algorithm/inplace_merge.hpp
+#usr/include/boost/range/algorithm/lexicographical_compare.hpp
+#usr/include/boost/range/algorithm/lower_bound.hpp
+#usr/include/boost/range/algorithm/max_element.hpp
+#usr/include/boost/range/algorithm/merge.hpp
+#usr/include/boost/range/algorithm/min_element.hpp
+#usr/include/boost/range/algorithm/mismatch.hpp
+#usr/include/boost/range/algorithm/nth_element.hpp
+#usr/include/boost/range/algorithm/partial_sort.hpp
+#usr/include/boost/range/algorithm/partial_sort_copy.hpp
+#usr/include/boost/range/algorithm/partition.hpp
+#usr/include/boost/range/algorithm/permutation.hpp
+#usr/include/boost/range/algorithm/random_shuffle.hpp
+#usr/include/boost/range/algorithm/remove.hpp
+#usr/include/boost/range/algorithm/remove_copy.hpp
+#usr/include/boost/range/algorithm/remove_copy_if.hpp
+#usr/include/boost/range/algorithm/remove_if.hpp
+#usr/include/boost/range/algorithm/replace.hpp
+#usr/include/boost/range/algorithm/replace_copy.hpp
+#usr/include/boost/range/algorithm/replace_copy_if.hpp
+#usr/include/boost/range/algorithm/replace_if.hpp
+#usr/include/boost/range/algorithm/reverse.hpp
+#usr/include/boost/range/algorithm/reverse_copy.hpp
+#usr/include/boost/range/algorithm/rotate.hpp
+#usr/include/boost/range/algorithm/rotate_copy.hpp
+#usr/include/boost/range/algorithm/search.hpp
+#usr/include/boost/range/algorithm/search_n.hpp
+#usr/include/boost/range/algorithm/set_algorithm.hpp
+#usr/include/boost/range/algorithm/sort.hpp
+#usr/include/boost/range/algorithm/stable_partition.hpp
+#usr/include/boost/range/algorithm/stable_sort.hpp
+#usr/include/boost/range/algorithm/swap_ranges.hpp
+#usr/include/boost/range/algorithm/transform.hpp
+#usr/include/boost/range/algorithm/unique.hpp
+#usr/include/boost/range/algorithm/unique_copy.hpp
+#usr/include/boost/range/algorithm/upper_bound.hpp
+#usr/include/boost/range/algorithm_ext
+#usr/include/boost/range/algorithm_ext.hpp
+#usr/include/boost/range/algorithm_ext/copy_n.hpp
+#usr/include/boost/range/algorithm_ext/erase.hpp
+#usr/include/boost/range/algorithm_ext/for_each.hpp
+#usr/include/boost/range/algorithm_ext/insert.hpp
+#usr/include/boost/range/algorithm_ext/iota.hpp
+#usr/include/boost/range/algorithm_ext/is_sorted.hpp
+#usr/include/boost/range/algorithm_ext/overwrite.hpp
+#usr/include/boost/range/algorithm_ext/push_back.hpp
+#usr/include/boost/range/algorithm_ext/push_front.hpp
+#usr/include/boost/range/any_range.hpp
+#usr/include/boost/range/as_array.hpp
+#usr/include/boost/range/as_literal.hpp
+#usr/include/boost/range/atl.hpp
+#usr/include/boost/range/begin.hpp
+#usr/include/boost/range/category.hpp
+#usr/include/boost/range/combine.hpp
+#usr/include/boost/range/concepts.hpp
+#usr/include/boost/range/config.hpp
+#usr/include/boost/range/const_iterator.hpp
+#usr/include/boost/range/const_reverse_iterator.hpp
+#usr/include/boost/range/counting_range.hpp
+#usr/include/boost/range/detail
+#usr/include/boost/range/detail/any_iterator.hpp
+#usr/include/boost/range/detail/any_iterator_buffer.hpp
+#usr/include/boost/range/detail/any_iterator_interface.hpp
+#usr/include/boost/range/detail/any_iterator_wrapper.hpp
+#usr/include/boost/range/detail/as_literal.hpp
+#usr/include/boost/range/detail/begin.hpp
+#usr/include/boost/range/detail/collection_traits.hpp
+#usr/include/boost/range/detail/collection_traits_detail.hpp
+#usr/include/boost/range/detail/common.hpp
+#usr/include/boost/range/detail/const_iterator.hpp
+#usr/include/boost/range/detail/demote_iterator_traversal_tag.hpp
+#usr/include/boost/range/detail/detail_str.hpp
+#usr/include/boost/range/detail/difference_type.hpp
+#usr/include/boost/range/detail/empty.hpp
+#usr/include/boost/range/detail/end.hpp
+#usr/include/boost/range/detail/extract_optional_type.hpp
+#usr/include/boost/range/detail/implementation_help.hpp
+#usr/include/boost/range/detail/iterator.hpp
+#usr/include/boost/range/detail/join_iterator.hpp
+#usr/include/boost/range/detail/microsoft.hpp
+#usr/include/boost/range/detail/misc_concept.hpp
+#usr/include/boost/range/detail/range_return.hpp
+#usr/include/boost/range/detail/remove_extent.hpp
+#usr/include/boost/range/detail/safe_bool.hpp
+#usr/include/boost/range/detail/sfinae.hpp
+#usr/include/boost/range/detail/size.hpp
+#usr/include/boost/range/detail/size_type.hpp
+#usr/include/boost/range/detail/sizer.hpp
+#usr/include/boost/range/detail/str_types.hpp
+#usr/include/boost/range/detail/value_type.hpp
+#usr/include/boost/range/detail/vc6
+#usr/include/boost/range/detail/vc6/end.hpp
+#usr/include/boost/range/detail/vc6/size.hpp
+#usr/include/boost/range/difference_type.hpp
+#usr/include/boost/range/distance.hpp
+#usr/include/boost/range/empty.hpp
+#usr/include/boost/range/end.hpp
+#usr/include/boost/range/functions.hpp
+#usr/include/boost/range/has_range_iterator.hpp
+#usr/include/boost/range/irange.hpp
+#usr/include/boost/range/istream_range.hpp
+#usr/include/boost/range/iterator.hpp
+#usr/include/boost/range/iterator_range.hpp
+#usr/include/boost/range/iterator_range_core.hpp
+#usr/include/boost/range/iterator_range_io.hpp
+#usr/include/boost/range/join.hpp
+#usr/include/boost/range/metafunctions.hpp
+#usr/include/boost/range/mfc.hpp
+#usr/include/boost/range/mutable_iterator.hpp
+#usr/include/boost/range/numeric.hpp
+#usr/include/boost/range/pointer.hpp
+#usr/include/boost/range/rbegin.hpp
+#usr/include/boost/range/reference.hpp
+#usr/include/boost/range/rend.hpp
+#usr/include/boost/range/result_iterator.hpp
+#usr/include/boost/range/reverse_iterator.hpp
+#usr/include/boost/range/reverse_result_iterator.hpp
+#usr/include/boost/range/size.hpp
+#usr/include/boost/range/size_type.hpp
+#usr/include/boost/range/sub_range.hpp
+#usr/include/boost/range/value_type.hpp
+#usr/include/boost/ratio
+#usr/include/boost/ratio.hpp
+#usr/include/boost/ratio/config.hpp
+#usr/include/boost/ratio/detail
+#usr/include/boost/ratio/detail/mpl
+#usr/include/boost/ratio/detail/mpl/abs.hpp
+#usr/include/boost/ratio/detail/mpl/gcd.hpp
+#usr/include/boost/ratio/detail/mpl/lcm.hpp
+#usr/include/boost/ratio/detail/mpl/sign.hpp
+#usr/include/boost/ratio/detail/overflow_helpers.hpp
+#usr/include/boost/ratio/detail/ratio_io.hpp
+#usr/include/boost/ratio/include.hpp
+#usr/include/boost/ratio/mpl
+#usr/include/boost/ratio/mpl/abs.hpp
+#usr/include/boost/ratio/mpl/arithmetic.hpp
+#usr/include/boost/ratio/mpl/comparison.hpp
+#usr/include/boost/ratio/mpl/divides.hpp
+#usr/include/boost/ratio/mpl/equal_to.hpp
+#usr/include/boost/ratio/mpl/gcd.hpp
+#usr/include/boost/ratio/mpl/greater.hpp
+#usr/include/boost/ratio/mpl/greater_equal.hpp
+#usr/include/boost/ratio/mpl/lcm.hpp
+#usr/include/boost/ratio/mpl/less.hpp
+#usr/include/boost/ratio/mpl/less_equal.hpp
+#usr/include/boost/ratio/mpl/minus.hpp
+#usr/include/boost/ratio/mpl/negate.hpp
+#usr/include/boost/ratio/mpl/not_equal_to.hpp
+#usr/include/boost/ratio/mpl/numeric_cast.hpp
+#usr/include/boost/ratio/mpl/plus.hpp
+#usr/include/boost/ratio/mpl/rational_c_tag.hpp
+#usr/include/boost/ratio/mpl/rational_constant.hpp
+#usr/include/boost/ratio/mpl/sign.hpp
+#usr/include/boost/ratio/mpl/times.hpp
+#usr/include/boost/ratio/ratio.hpp
+#usr/include/boost/ratio/ratio_fwd.hpp
+#usr/include/boost/ratio/ratio_io.hpp
+#usr/include/boost/ratio/ratio_static_string.hpp
+#usr/include/boost/rational.hpp
+#usr/include/boost/ref.hpp
+#usr/include/boost/regex
+#usr/include/boost/regex.h
+#usr/include/boost/regex.hpp
+#usr/include/boost/regex/concepts.hpp
+#usr/include/boost/regex/config
+#usr/include/boost/regex/config.hpp
+#usr/include/boost/regex/config/borland.hpp
+#usr/include/boost/regex/config/cwchar.hpp
+#usr/include/boost/regex/icu.hpp
+#usr/include/boost/regex/mfc.hpp
+#usr/include/boost/regex/pattern_except.hpp
+#usr/include/boost/regex/pending
+#usr/include/boost/regex/pending/object_cache.hpp
+#usr/include/boost/regex/pending/static_mutex.hpp
+#usr/include/boost/regex/pending/unicode_iterator.hpp
+#usr/include/boost/regex/regex_traits.hpp
+#usr/include/boost/regex/user.hpp
+#usr/include/boost/regex/v4
+#usr/include/boost/regex/v4/basic_regex.hpp
+#usr/include/boost/regex/v4/basic_regex_creator.hpp
+#usr/include/boost/regex/v4/basic_regex_parser.hpp
+#usr/include/boost/regex/v4/c_regex_traits.hpp
+#usr/include/boost/regex/v4/char_regex_traits.hpp
+#usr/include/boost/regex/v4/cpp_regex_traits.hpp
+#usr/include/boost/regex/v4/cregex.hpp
+#usr/include/boost/regex/v4/error_type.hpp
+#usr/include/boost/regex/v4/fileiter.hpp
+#usr/include/boost/regex/v4/instances.hpp
+#usr/include/boost/regex/v4/iterator_category.hpp
+#usr/include/boost/regex/v4/iterator_traits.hpp
+#usr/include/boost/regex/v4/match_flags.hpp
+#usr/include/boost/regex/v4/match_results.hpp
+#usr/include/boost/regex/v4/mem_block_cache.hpp
+#usr/include/boost/regex/v4/perl_matcher.hpp
+#usr/include/boost/regex/v4/perl_matcher_common.hpp
+#usr/include/boost/regex/v4/perl_matcher_non_recursive.hpp
+#usr/include/boost/regex/v4/perl_matcher_recursive.hpp
+#usr/include/boost/regex/v4/primary_transform.hpp
+#usr/include/boost/regex/v4/protected_call.hpp
+#usr/include/boost/regex/v4/regbase.hpp
+#usr/include/boost/regex/v4/regex.hpp
+#usr/include/boost/regex/v4/regex_format.hpp
+#usr/include/boost/regex/v4/regex_fwd.hpp
+#usr/include/boost/regex/v4/regex_grep.hpp
+#usr/include/boost/regex/v4/regex_iterator.hpp
+#usr/include/boost/regex/v4/regex_match.hpp
+#usr/include/boost/regex/v4/regex_merge.hpp
+#usr/include/boost/regex/v4/regex_raw_buffer.hpp
+#usr/include/boost/regex/v4/regex_replace.hpp
+#usr/include/boost/regex/v4/regex_search.hpp
+#usr/include/boost/regex/v4/regex_split.hpp
+#usr/include/boost/regex/v4/regex_token_iterator.hpp
+#usr/include/boost/regex/v4/regex_traits.hpp
+#usr/include/boost/regex/v4/regex_traits_defaults.hpp
+#usr/include/boost/regex/v4/regex_workaround.hpp
+#usr/include/boost/regex/v4/states.hpp
+#usr/include/boost/regex/v4/sub_match.hpp
+#usr/include/boost/regex/v4/syntax_type.hpp
+#usr/include/boost/regex/v4/u32regex_iterator.hpp
+#usr/include/boost/regex/v4/u32regex_token_iterator.hpp
+#usr/include/boost/regex/v4/w32_regex_traits.hpp
+#usr/include/boost/regex_fwd.hpp
+#usr/include/boost/scope_exit.hpp
+#usr/include/boost/scoped_array.hpp
+#usr/include/boost/scoped_ptr.hpp
+#usr/include/boost/serialization
+#usr/include/boost/serialization/access.hpp
+#usr/include/boost/serialization/array.hpp
+#usr/include/boost/serialization/assume_abstract.hpp
+#usr/include/boost/serialization/base_object.hpp
+#usr/include/boost/serialization/binary_object.hpp
+#usr/include/boost/serialization/bitset.hpp
+#usr/include/boost/serialization/collection_size_type.hpp
+#usr/include/boost/serialization/collection_traits.hpp
+#usr/include/boost/serialization/collections_load_imp.hpp
+#usr/include/boost/serialization/collections_save_imp.hpp
+#usr/include/boost/serialization/complex.hpp
+#usr/include/boost/serialization/config.hpp
+#usr/include/boost/serialization/deque.hpp
+#usr/include/boost/serialization/detail
+#usr/include/boost/serialization/detail/get_data.hpp
+#usr/include/boost/serialization/detail/shared_count_132.hpp
+#usr/include/boost/serialization/detail/shared_ptr_132.hpp
+#usr/include/boost/serialization/detail/shared_ptr_nmt_132.hpp
+#usr/include/boost/serialization/detail/stack_constructor.hpp
+#usr/include/boost/serialization/ephemeral.hpp
+#usr/include/boost/serialization/export.hpp
+#usr/include/boost/serialization/extended_type_info.hpp
+#usr/include/boost/serialization/extended_type_info_no_rtti.hpp
+#usr/include/boost/serialization/extended_type_info_typeid.hpp
+#usr/include/boost/serialization/factory.hpp
+#usr/include/boost/serialization/force_include.hpp
+#usr/include/boost/serialization/hash_collections_load_imp.hpp
+#usr/include/boost/serialization/hash_collections_save_imp.hpp
+#usr/include/boost/serialization/hash_map.hpp
+#usr/include/boost/serialization/hash_set.hpp
+#usr/include/boost/serialization/is_bitwise_serializable.hpp
+#usr/include/boost/serialization/item_version_type.hpp
+#usr/include/boost/serialization/level.hpp
+#usr/include/boost/serialization/level_enum.hpp
+#usr/include/boost/serialization/list.hpp
+#usr/include/boost/serialization/map.hpp
+#usr/include/boost/serialization/nvp.hpp
+#usr/include/boost/serialization/optional.hpp
+#usr/include/boost/serialization/pfto.hpp
+#usr/include/boost/serialization/scoped_ptr.hpp
+#usr/include/boost/serialization/serialization.hpp
+#usr/include/boost/serialization/set.hpp
+#usr/include/boost/serialization/shared_ptr.hpp
+#usr/include/boost/serialization/shared_ptr_132.hpp
+#usr/include/boost/serialization/singleton.hpp
+#usr/include/boost/serialization/slist.hpp
+#usr/include/boost/serialization/smart_cast.hpp
+#usr/include/boost/serialization/split_free.hpp
+#usr/include/boost/serialization/split_member.hpp
+#usr/include/boost/serialization/state_saver.hpp
+#usr/include/boost/serialization/static_warning.hpp
+#usr/include/boost/serialization/string.hpp
+#usr/include/boost/serialization/strong_typedef.hpp
+#usr/include/boost/serialization/throw_exception.hpp
+#usr/include/boost/serialization/tracking.hpp
+#usr/include/boost/serialization/tracking_enum.hpp
+#usr/include/boost/serialization/traits.hpp
+#usr/include/boost/serialization/type_info_implementation.hpp
+#usr/include/boost/serialization/utility.hpp
+#usr/include/boost/serialization/valarray.hpp
+#usr/include/boost/serialization/variant.hpp
+#usr/include/boost/serialization/vector.hpp
+#usr/include/boost/serialization/vector_135.hpp
+#usr/include/boost/serialization/version.hpp
+#usr/include/boost/serialization/void_cast.hpp
+#usr/include/boost/serialization/void_cast_fwd.hpp
+#usr/include/boost/serialization/weak_ptr.hpp
+#usr/include/boost/serialization/wrapper.hpp
+#usr/include/boost/shared_array.hpp
+#usr/include/boost/shared_container_iterator.hpp
+#usr/include/boost/shared_ptr.hpp
+#usr/include/boost/signal.hpp
+#usr/include/boost/signals
+#usr/include/boost/signals.hpp
+#usr/include/boost/signals/connection.hpp
+#usr/include/boost/signals/detail
+#usr/include/boost/signals/detail/config.hpp
+#usr/include/boost/signals/detail/named_slot_map.hpp
+#usr/include/boost/signals/detail/signal_base.hpp
+#usr/include/boost/signals/detail/signals_common.hpp
+#usr/include/boost/signals/detail/slot_call_iterator.hpp
+#usr/include/boost/signals/signal0.hpp
+#usr/include/boost/signals/signal1.hpp
+#usr/include/boost/signals/signal10.hpp
+#usr/include/boost/signals/signal2.hpp
+#usr/include/boost/signals/signal3.hpp
+#usr/include/boost/signals/signal4.hpp
+#usr/include/boost/signals/signal5.hpp
+#usr/include/boost/signals/signal6.hpp
+#usr/include/boost/signals/signal7.hpp
+#usr/include/boost/signals/signal8.hpp
+#usr/include/boost/signals/signal9.hpp
+#usr/include/boost/signals/signal_template.hpp
+#usr/include/boost/signals/slot.hpp
+#usr/include/boost/signals/trackable.hpp
+#usr/include/boost/signals2
+#usr/include/boost/signals2.hpp
+#usr/include/boost/signals2/connection.hpp
+#usr/include/boost/signals2/deconstruct.hpp
+#usr/include/boost/signals2/deconstruct_ptr.hpp
+#usr/include/boost/signals2/detail
+#usr/include/boost/signals2/detail/auto_buffer.hpp
+#usr/include/boost/signals2/detail/foreign_ptr.hpp
+#usr/include/boost/signals2/detail/lwm_nop.hpp
+#usr/include/boost/signals2/detail/lwm_pthreads.hpp
+#usr/include/boost/signals2/detail/lwm_win32_cs.hpp
+#usr/include/boost/signals2/detail/null_output_iterator.hpp
+#usr/include/boost/signals2/detail/preprocessed_arg_type.hpp
+#usr/include/boost/signals2/detail/preprocessed_arg_type_template.hpp
+#usr/include/boost/signals2/detail/replace_slot_function.hpp
+#usr/include/boost/signals2/detail/result_type_wrapper.hpp
+#usr/include/boost/signals2/detail/signal_template.hpp
+#usr/include/boost/signals2/detail/signals_common.hpp
+#usr/include/boost/signals2/detail/signals_common_macros.hpp
+#usr/include/boost/signals2/detail/slot_call_iterator.hpp
+#usr/include/boost/signals2/detail/slot_groups.hpp
+#usr/include/boost/signals2/detail/slot_template.hpp
+#usr/include/boost/signals2/detail/tracked_objects_visitor.hpp
+#usr/include/boost/signals2/detail/unique_lock.hpp
+#usr/include/boost/signals2/detail/variadic_arg_type.hpp
+#usr/include/boost/signals2/detail/variadic_slot_invoker.hpp
+#usr/include/boost/signals2/dummy_mutex.hpp
+#usr/include/boost/signals2/expired_slot.hpp
+#usr/include/boost/signals2/last_value.hpp
+#usr/include/boost/signals2/mutex.hpp
+#usr/include/boost/signals2/optional_last_value.hpp
+#usr/include/boost/signals2/postconstructible.hpp
+#usr/include/boost/signals2/predestructible.hpp
+#usr/include/boost/signals2/preprocessed_signal.hpp
+#usr/include/boost/signals2/preprocessed_slot.hpp
+#usr/include/boost/signals2/shared_connection_block.hpp
+#usr/include/boost/signals2/signal.hpp
+#usr/include/boost/signals2/signal_base.hpp
+#usr/include/boost/signals2/signal_type.hpp
+#usr/include/boost/signals2/slot.hpp
+#usr/include/boost/signals2/slot_base.hpp
+#usr/include/boost/signals2/trackable.hpp
+#usr/include/boost/signals2/variadic_signal.hpp
+#usr/include/boost/signals2/variadic_slot.hpp
+#usr/include/boost/smart_ptr
+#usr/include/boost/smart_ptr.hpp
+#usr/include/boost/smart_ptr/allocate_shared_array.hpp
+#usr/include/boost/smart_ptr/bad_weak_ptr.hpp
+#usr/include/boost/smart_ptr/detail
+#usr/include/boost/smart_ptr/detail/allocate_array_helper.hpp
+#usr/include/boost/smart_ptr/detail/array_deleter.hpp
+#usr/include/boost/smart_ptr/detail/array_traits.hpp
+#usr/include/boost/smart_ptr/detail/array_utility.hpp
+#usr/include/boost/smart_ptr/detail/atomic_count.hpp
+#usr/include/boost/smart_ptr/detail/atomic_count_gcc.hpp
+#usr/include/boost/smart_ptr/detail/atomic_count_gcc_x86.hpp
+#usr/include/boost/smart_ptr/detail/atomic_count_pthreads.hpp
+#usr/include/boost/smart_ptr/detail/atomic_count_solaris.hpp
+#usr/include/boost/smart_ptr/detail/atomic_count_sync.hpp
+#usr/include/boost/smart_ptr/detail/atomic_count_win32.hpp
+#usr/include/boost/smart_ptr/detail/lightweight_mutex.hpp
+#usr/include/boost/smart_ptr/detail/lwm_nop.hpp
+#usr/include/boost/smart_ptr/detail/lwm_pthreads.hpp
+#usr/include/boost/smart_ptr/detail/lwm_win32_cs.hpp
+#usr/include/boost/smart_ptr/detail/make_array_helper.hpp
+#usr/include/boost/smart_ptr/detail/operator_bool.hpp
+#usr/include/boost/smart_ptr/detail/quick_allocator.hpp
+#usr/include/boost/smart_ptr/detail/shared_array_nmt.hpp
+#usr/include/boost/smart_ptr/detail/shared_count.hpp
+#usr/include/boost/smart_ptr/detail/shared_ptr_nmt.hpp
+#usr/include/boost/smart_ptr/detail/sp_convertible.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_acc_ia64.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_aix.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_cw_ppc.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_cw_x86.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_ia64.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_mips.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_ppc.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_sparc.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_nt.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_pt.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_snc_ps3.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_solaris.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_spin.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_sync.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_vacpp_ppc.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_base_w32.hpp
+#usr/include/boost/smart_ptr/detail/sp_counted_impl.hpp
+#usr/include/boost/smart_ptr/detail/sp_forward.hpp
+#usr/include/boost/smart_ptr/detail/sp_has_sync.hpp
+#usr/include/boost/smart_ptr/detail/sp_if_array.hpp
+#usr/include/boost/smart_ptr/detail/sp_nullptr_t.hpp
+#usr/include/boost/smart_ptr/detail/spinlock.hpp
+#usr/include/boost/smart_ptr/detail/spinlock_gcc_arm.hpp
+#usr/include/boost/smart_ptr/detail/spinlock_nt.hpp
+#usr/include/boost/smart_ptr/detail/spinlock_pool.hpp
+#usr/include/boost/smart_ptr/detail/spinlock_pt.hpp
+#usr/include/boost/smart_ptr/detail/spinlock_sync.hpp
+#usr/include/boost/smart_ptr/detail/spinlock_w32.hpp
+#usr/include/boost/smart_ptr/detail/yield_k.hpp
+#usr/include/boost/smart_ptr/enable_shared_from_raw.hpp
+#usr/include/boost/smart_ptr/enable_shared_from_this.hpp
+#usr/include/boost/smart_ptr/intrusive_ptr.hpp
+#usr/include/boost/smart_ptr/intrusive_ref_counter.hpp
+#usr/include/boost/smart_ptr/make_shared.hpp
+#usr/include/boost/smart_ptr/make_shared_array.hpp
+#usr/include/boost/smart_ptr/make_shared_object.hpp
+#usr/include/boost/smart_ptr/owner_less.hpp
+#usr/include/boost/smart_ptr/scoped_array.hpp
+#usr/include/boost/smart_ptr/scoped_ptr.hpp
+#usr/include/boost/smart_ptr/shared_array.hpp
+#usr/include/boost/smart_ptr/shared_ptr.hpp
+#usr/include/boost/smart_ptr/weak_ptr.hpp
+#usr/include/boost/spirit
+#usr/include/boost/spirit.hpp
+#usr/include/boost/spirit/home
+#usr/include/boost/spirit/home/classic
+#usr/include/boost/spirit/home/classic.hpp
+#usr/include/boost/spirit/home/classic/actor
+#usr/include/boost/spirit/home/classic/actor.hpp
+#usr/include/boost/spirit/home/classic/actor/assign_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/assign_key_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/clear_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/decrement_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/erase_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/increment_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/insert_at_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/insert_key_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/push_back_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/push_front_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/ref_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/ref_const_ref_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/ref_const_ref_const_ref_a.hpp
+#usr/include/boost/spirit/home/classic/actor/ref_const_ref_value_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/ref_value_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/swap_actor.hpp
+#usr/include/boost/spirit/home/classic/actor/typeof.hpp
+#usr/include/boost/spirit/home/classic/attribute
+#usr/include/boost/spirit/home/classic/attribute.hpp
+#usr/include/boost/spirit/home/classic/attribute/closure.hpp
+#usr/include/boost/spirit/home/classic/attribute/closure_context.hpp
+#usr/include/boost/spirit/home/classic/attribute/closure_fwd.hpp
+#usr/include/boost/spirit/home/classic/attribute/parametric.hpp
+#usr/include/boost/spirit/home/classic/attribute/typeof.hpp
+#usr/include/boost/spirit/home/classic/core
+#usr/include/boost/spirit/home/classic/core.hpp
+#usr/include/boost/spirit/home/classic/core/assert.hpp
+#usr/include/boost/spirit/home/classic/core/composite
+#usr/include/boost/spirit/home/classic/core/composite/actions.hpp
+#usr/include/boost/spirit/home/classic/core/composite/alternative.hpp
+#usr/include/boost/spirit/home/classic/core/composite/composite.hpp
+#usr/include/boost/spirit/home/classic/core/composite/difference.hpp
+#usr/include/boost/spirit/home/classic/core/composite/directives.hpp
+#usr/include/boost/spirit/home/classic/core/composite/epsilon.hpp
+#usr/include/boost/spirit/home/classic/core/composite/exclusive_or.hpp
+#usr/include/boost/spirit/home/classic/core/composite/impl
+#usr/include/boost/spirit/home/classic/core/composite/impl/alternative.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/difference.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/directives.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/exclusive_or.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/intersection.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/kleene_star.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/list.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/optional.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/positive.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/sequence.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/sequential_and.ipp
+#usr/include/boost/spirit/home/classic/core/composite/impl/sequential_or.ipp
+#usr/include/boost/spirit/home/classic/core/composite/intersection.hpp
+#usr/include/boost/spirit/home/classic/core/composite/kleene_star.hpp
+#usr/include/boost/spirit/home/classic/core/composite/list.hpp
+#usr/include/boost/spirit/home/classic/core/composite/no_actions.hpp
+#usr/include/boost/spirit/home/classic/core/composite/operators.hpp
+#usr/include/boost/spirit/home/classic/core/composite/optional.hpp
+#usr/include/boost/spirit/home/classic/core/composite/positive.hpp
+#usr/include/boost/spirit/home/classic/core/composite/sequence.hpp
+#usr/include/boost/spirit/home/classic/core/composite/sequential_and.hpp
+#usr/include/boost/spirit/home/classic/core/composite/sequential_or.hpp
+#usr/include/boost/spirit/home/classic/core/config.hpp
+#usr/include/boost/spirit/home/classic/core/impl
+#usr/include/boost/spirit/home/classic/core/impl/match.ipp
+#usr/include/boost/spirit/home/classic/core/impl/match_attr_traits.ipp
+#usr/include/boost/spirit/home/classic/core/impl/parser.ipp
+#usr/include/boost/spirit/home/classic/core/match.hpp
+#usr/include/boost/spirit/home/classic/core/nil.hpp
+#usr/include/boost/spirit/home/classic/core/non_terminal
+#usr/include/boost/spirit/home/classic/core/non_terminal/grammar.hpp
+#usr/include/boost/spirit/home/classic/core/non_terminal/impl
+#usr/include/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp
+#usr/include/boost/spirit/home/classic/core/non_terminal/impl/object_with_id.ipp
+#usr/include/boost/spirit/home/classic/core/non_terminal/impl/rule.ipp
+#usr/include/boost/spirit/home/classic/core/non_terminal/impl/static.hpp
+#usr/include/boost/spirit/home/classic/core/non_terminal/impl/subrule.ipp
+#usr/include/boost/spirit/home/classic/core/non_terminal/parser_context.hpp
+#usr/include/boost/spirit/home/classic/core/non_terminal/parser_id.hpp
+#usr/include/boost/spirit/home/classic/core/non_terminal/rule.hpp
+#usr/include/boost/spirit/home/classic/core/non_terminal/subrule.hpp
+#usr/include/boost/spirit/home/classic/core/non_terminal/subrule_fwd.hpp
+#usr/include/boost/spirit/home/classic/core/parser.hpp
+#usr/include/boost/spirit/home/classic/core/primitives
+#usr/include/boost/spirit/home/classic/core/primitives/impl
+#usr/include/boost/spirit/home/classic/core/primitives/impl/numerics.ipp
+#usr/include/boost/spirit/home/classic/core/primitives/impl/primitives.ipp
+#usr/include/boost/spirit/home/classic/core/primitives/numerics.hpp
+#usr/include/boost/spirit/home/classic/core/primitives/numerics_fwd.hpp
+#usr/include/boost/spirit/home/classic/core/primitives/primitives.hpp
+#usr/include/boost/spirit/home/classic/core/safe_bool.hpp
+#usr/include/boost/spirit/home/classic/core/scanner
+#usr/include/boost/spirit/home/classic/core/scanner/impl
+#usr/include/boost/spirit/home/classic/core/scanner/impl/skipper.ipp
+#usr/include/boost/spirit/home/classic/core/scanner/scanner.hpp
+#usr/include/boost/spirit/home/classic/core/scanner/scanner_fwd.hpp
+#usr/include/boost/spirit/home/classic/core/scanner/skipper.hpp
+#usr/include/boost/spirit/home/classic/core/scanner/skipper_fwd.hpp
+#usr/include/boost/spirit/home/classic/core/typeof.hpp
+#usr/include/boost/spirit/home/classic/debug
+#usr/include/boost/spirit/home/classic/debug.hpp
+#usr/include/boost/spirit/home/classic/debug/debug_node.hpp
+#usr/include/boost/spirit/home/classic/debug/impl
+#usr/include/boost/spirit/home/classic/debug/impl/parser_names.ipp
+#usr/include/boost/spirit/home/classic/debug/minimal.hpp
+#usr/include/boost/spirit/home/classic/debug/parser_names.hpp
+#usr/include/boost/spirit/home/classic/debug/typeof.hpp
+#usr/include/boost/spirit/home/classic/dynamic
+#usr/include/boost/spirit/home/classic/dynamic.hpp
+#usr/include/boost/spirit/home/classic/dynamic/for.hpp
+#usr/include/boost/spirit/home/classic/dynamic/if.hpp
+#usr/include/boost/spirit/home/classic/dynamic/impl
+#usr/include/boost/spirit/home/classic/dynamic/impl/conditions.ipp
+#usr/include/boost/spirit/home/classic/dynamic/impl/select.ipp
+#usr/include/boost/spirit/home/classic/dynamic/impl/switch.ipp
+#usr/include/boost/spirit/home/classic/dynamic/lazy.hpp
+#usr/include/boost/spirit/home/classic/dynamic/rule_alias.hpp
+#usr/include/boost/spirit/home/classic/dynamic/select.hpp
+#usr/include/boost/spirit/home/classic/dynamic/stored_rule.hpp
+#usr/include/boost/spirit/home/classic/dynamic/stored_rule_fwd.hpp
+#usr/include/boost/spirit/home/classic/dynamic/switch.hpp
+#usr/include/boost/spirit/home/classic/dynamic/typeof.hpp
+#usr/include/boost/spirit/home/classic/dynamic/while.hpp
+#usr/include/boost/spirit/home/classic/error_handling
+#usr/include/boost/spirit/home/classic/error_handling.hpp
+#usr/include/boost/spirit/home/classic/error_handling/exceptions.hpp
+#usr/include/boost/spirit/home/classic/error_handling/exceptions_fwd.hpp
+#usr/include/boost/spirit/home/classic/error_handling/impl
+#usr/include/boost/spirit/home/classic/error_handling/impl/exceptions.ipp
+#usr/include/boost/spirit/home/classic/error_handling/typeof.hpp
+#usr/include/boost/spirit/home/classic/iterator
+#usr/include/boost/spirit/home/classic/iterator.hpp
+#usr/include/boost/spirit/home/classic/iterator/file_iterator.hpp
+#usr/include/boost/spirit/home/classic/iterator/file_iterator_fwd.hpp
+#usr/include/boost/spirit/home/classic/iterator/fixed_size_queue.hpp
+#usr/include/boost/spirit/home/classic/iterator/impl
+#usr/include/boost/spirit/home/classic/iterator/impl/file_iterator.ipp
+#usr/include/boost/spirit/home/classic/iterator/impl/position_iterator.ipp
+#usr/include/boost/spirit/home/classic/iterator/multi_pass.hpp
+#usr/include/boost/spirit/home/classic/iterator/multi_pass_fwd.hpp
+#usr/include/boost/spirit/home/classic/iterator/position_iterator.hpp
+#usr/include/boost/spirit/home/classic/iterator/position_iterator_fwd.hpp
+#usr/include/boost/spirit/home/classic/iterator/typeof.hpp
+#usr/include/boost/spirit/home/classic/meta
+#usr/include/boost/spirit/home/classic/meta.hpp
+#usr/include/boost/spirit/home/classic/meta/as_parser.hpp
+#usr/include/boost/spirit/home/classic/meta/fundamental.hpp
+#usr/include/boost/spirit/home/classic/meta/impl
+#usr/include/boost/spirit/home/classic/meta/impl/fundamental.ipp
+#usr/include/boost/spirit/home/classic/meta/impl/parser_traits.ipp
+#usr/include/boost/spirit/home/classic/meta/impl/refactoring.ipp
+#usr/include/boost/spirit/home/classic/meta/impl/traverse.ipp
+#usr/include/boost/spirit/home/classic/meta/parser_traits.hpp
+#usr/include/boost/spirit/home/classic/meta/refactoring.hpp
+#usr/include/boost/spirit/home/classic/meta/traverse.hpp
+#usr/include/boost/spirit/home/classic/namespace.hpp
+#usr/include/boost/spirit/home/classic/phoenix
+#usr/include/boost/spirit/home/classic/phoenix.hpp
+#usr/include/boost/spirit/home/classic/phoenix/actor.hpp
+#usr/include/boost/spirit/home/classic/phoenix/binders.hpp
+#usr/include/boost/spirit/home/classic/phoenix/casts.hpp
+#usr/include/boost/spirit/home/classic/phoenix/closures.hpp
+#usr/include/boost/spirit/home/classic/phoenix/composite.hpp
+#usr/include/boost/spirit/home/classic/phoenix/functions.hpp
+#usr/include/boost/spirit/home/classic/phoenix/new.hpp
+#usr/include/boost/spirit/home/classic/phoenix/operators.hpp
+#usr/include/boost/spirit/home/classic/phoenix/primitives.hpp
+#usr/include/boost/spirit/home/classic/phoenix/special_ops.hpp
+#usr/include/boost/spirit/home/classic/phoenix/statements.hpp
+#usr/include/boost/spirit/home/classic/phoenix/tuple_helpers.hpp
+#usr/include/boost/spirit/home/classic/phoenix/tuples.hpp
+#usr/include/boost/spirit/home/classic/symbols
+#usr/include/boost/spirit/home/classic/symbols.hpp
+#usr/include/boost/spirit/home/classic/symbols/impl
+#usr/include/boost/spirit/home/classic/symbols/impl/symbols.ipp
+#usr/include/boost/spirit/home/classic/symbols/impl/tst.ipp
+#usr/include/boost/spirit/home/classic/symbols/symbols.hpp
+#usr/include/boost/spirit/home/classic/symbols/symbols_fwd.hpp
+#usr/include/boost/spirit/home/classic/symbols/typeof.hpp
+#usr/include/boost/spirit/home/classic/tree
+#usr/include/boost/spirit/home/classic/tree/ast.hpp
+#usr/include/boost/spirit/home/classic/tree/ast_fwd.hpp
+#usr/include/boost/spirit/home/classic/tree/common.hpp
+#usr/include/boost/spirit/home/classic/tree/common_fwd.hpp
+#usr/include/boost/spirit/home/classic/tree/impl
+#usr/include/boost/spirit/home/classic/tree/impl/parse_tree_utils.ipp
+#usr/include/boost/spirit/home/classic/tree/impl/tree_to_xml.ipp
+#usr/include/boost/spirit/home/classic/tree/parse_tree.hpp
+#usr/include/boost/spirit/home/classic/tree/parse_tree_fwd.hpp
+#usr/include/boost/spirit/home/classic/tree/parse_tree_utils.hpp
+#usr/include/boost/spirit/home/classic/tree/tree_to_xml.hpp
+#usr/include/boost/spirit/home/classic/tree/typeof.hpp
+#usr/include/boost/spirit/home/classic/utility
+#usr/include/boost/spirit/home/classic/utility.hpp
+#usr/include/boost/spirit/home/classic/utility/chset.hpp
+#usr/include/boost/spirit/home/classic/utility/chset_operators.hpp
+#usr/include/boost/spirit/home/classic/utility/confix.hpp
+#usr/include/boost/spirit/home/classic/utility/confix_fwd.hpp
+#usr/include/boost/spirit/home/classic/utility/distinct.hpp
+#usr/include/boost/spirit/home/classic/utility/distinct_fwd.hpp
+#usr/include/boost/spirit/home/classic/utility/escape_char.hpp
+#usr/include/boost/spirit/home/classic/utility/escape_char_fwd.hpp
+#usr/include/boost/spirit/home/classic/utility/flush_multi_pass.hpp
+#usr/include/boost/spirit/home/classic/utility/functor_parser.hpp
+#usr/include/boost/spirit/home/classic/utility/grammar_def.hpp
+#usr/include/boost/spirit/home/classic/utility/grammar_def_fwd.hpp
+#usr/include/boost/spirit/home/classic/utility/impl
+#usr/include/boost/spirit/home/classic/utility/impl/chset
+#usr/include/boost/spirit/home/classic/utility/impl/chset.ipp
+#usr/include/boost/spirit/home/classic/utility/impl/chset/basic_chset.hpp
+#usr/include/boost/spirit/home/classic/utility/impl/chset/basic_chset.ipp
+#usr/include/boost/spirit/home/classic/utility/impl/chset/range_run.hpp
+#usr/include/boost/spirit/home/classic/utility/impl/chset/range_run.ipp
+#usr/include/boost/spirit/home/classic/utility/impl/chset_operators.ipp
+#usr/include/boost/spirit/home/classic/utility/impl/confix.ipp
+#usr/include/boost/spirit/home/classic/utility/impl/escape_char.ipp
+#usr/include/boost/spirit/home/classic/utility/impl/lists.ipp
+#usr/include/boost/spirit/home/classic/utility/impl/regex.ipp
+#usr/include/boost/spirit/home/classic/utility/lists.hpp
+#usr/include/boost/spirit/home/classic/utility/lists_fwd.hpp
+#usr/include/boost/spirit/home/classic/utility/loops.hpp
+#usr/include/boost/spirit/home/classic/utility/regex.hpp
+#usr/include/boost/spirit/home/classic/utility/rule_parser.hpp
+#usr/include/boost/spirit/home/classic/utility/scoped_lock.hpp
+#usr/include/boost/spirit/home/classic/utility/typeof.hpp
+#usr/include/boost/spirit/home/classic/version.hpp
+#usr/include/boost/spirit/home/karma
+#usr/include/boost/spirit/home/karma.hpp
+#usr/include/boost/spirit/home/karma/action
+#usr/include/boost/spirit/home/karma/action.hpp
+#usr/include/boost/spirit/home/karma/action/action.hpp
+#usr/include/boost/spirit/home/karma/auto
+#usr/include/boost/spirit/home/karma/auto.hpp
+#usr/include/boost/spirit/home/karma/auto/auto.hpp
+#usr/include/boost/spirit/home/karma/auto/create_generator.hpp
+#usr/include/boost/spirit/home/karma/auto/meta_create.hpp
+#usr/include/boost/spirit/home/karma/auxiliary
+#usr/include/boost/spirit/home/karma/auxiliary.hpp
+#usr/include/boost/spirit/home/karma/auxiliary/attr_cast.hpp
+#usr/include/boost/spirit/home/karma/auxiliary/eol.hpp
+#usr/include/boost/spirit/home/karma/auxiliary/eps.hpp
+#usr/include/boost/spirit/home/karma/auxiliary/lazy.hpp
+#usr/include/boost/spirit/home/karma/binary
+#usr/include/boost/spirit/home/karma/binary.hpp
+#usr/include/boost/spirit/home/karma/binary/binary.hpp
+#usr/include/boost/spirit/home/karma/binary/padding.hpp
+#usr/include/boost/spirit/home/karma/char
+#usr/include/boost/spirit/home/karma/char.hpp
+#usr/include/boost/spirit/home/karma/char/char.hpp
+#usr/include/boost/spirit/home/karma/char/char_class.hpp
+#usr/include/boost/spirit/home/karma/char/char_generator.hpp
+#usr/include/boost/spirit/home/karma/delimit_flag.hpp
+#usr/include/boost/spirit/home/karma/delimit_out.hpp
+#usr/include/boost/spirit/home/karma/detail
+#usr/include/boost/spirit/home/karma/detail/alternative_function.hpp
+#usr/include/boost/spirit/home/karma/detail/as.hpp
+#usr/include/boost/spirit/home/karma/detail/attributes.hpp
+#usr/include/boost/spirit/home/karma/detail/default_width.hpp
+#usr/include/boost/spirit/home/karma/detail/enable_lit.hpp
+#usr/include/boost/spirit/home/karma/detail/extract_from.hpp
+#usr/include/boost/spirit/home/karma/detail/fail_function.hpp
+#usr/include/boost/spirit/home/karma/detail/generate.hpp
+#usr/include/boost/spirit/home/karma/detail/generate_auto.hpp
+#usr/include/boost/spirit/home/karma/detail/generate_to.hpp
+#usr/include/boost/spirit/home/karma/detail/get_casetag.hpp
+#usr/include/boost/spirit/home/karma/detail/get_stricttag.hpp
+#usr/include/boost/spirit/home/karma/detail/indirect_iterator.hpp
+#usr/include/boost/spirit/home/karma/detail/output_iterator.hpp
+#usr/include/boost/spirit/home/karma/detail/pass_container.hpp
+#usr/include/boost/spirit/home/karma/detail/string_compare.hpp
+#usr/include/boost/spirit/home/karma/detail/string_generate.hpp
+#usr/include/boost/spirit/home/karma/detail/unused_delimiter.hpp
+#usr/include/boost/spirit/home/karma/directive
+#usr/include/boost/spirit/home/karma/directive.hpp
+#usr/include/boost/spirit/home/karma/directive/as.hpp
+#usr/include/boost/spirit/home/karma/directive/buffer.hpp
+#usr/include/boost/spirit/home/karma/directive/center_alignment.hpp
+#usr/include/boost/spirit/home/karma/directive/columns.hpp
+#usr/include/boost/spirit/home/karma/directive/delimit.hpp
+#usr/include/boost/spirit/home/karma/directive/duplicate.hpp
+#usr/include/boost/spirit/home/karma/directive/encoding.hpp
+#usr/include/boost/spirit/home/karma/directive/left_alignment.hpp
+#usr/include/boost/spirit/home/karma/directive/maxwidth.hpp
+#usr/include/boost/spirit/home/karma/directive/no_delimit.hpp
+#usr/include/boost/spirit/home/karma/directive/omit.hpp
+#usr/include/boost/spirit/home/karma/directive/repeat.hpp
+#usr/include/boost/spirit/home/karma/directive/right_alignment.hpp
+#usr/include/boost/spirit/home/karma/directive/strict_relaxed.hpp
+#usr/include/boost/spirit/home/karma/directive/upper_lower_case.hpp
+#usr/include/boost/spirit/home/karma/directive/verbatim.hpp
+#usr/include/boost/spirit/home/karma/domain.hpp
+#usr/include/boost/spirit/home/karma/format.hpp
+#usr/include/boost/spirit/home/karma/format_auto.hpp
+#usr/include/boost/spirit/home/karma/generate.hpp
+#usr/include/boost/spirit/home/karma/generate_attr.hpp
+#usr/include/boost/spirit/home/karma/generator.hpp
+#usr/include/boost/spirit/home/karma/meta_compiler.hpp
+#usr/include/boost/spirit/home/karma/nonterminal
+#usr/include/boost/spirit/home/karma/nonterminal.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/debug_handler.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/debug_handler_state.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/detail
+#usr/include/boost/spirit/home/karma/nonterminal/detail/fcall.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/detail/generator_binder.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/detail/parameterized.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/grammar.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/nonterminal_fwd.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/rule.hpp
+#usr/include/boost/spirit/home/karma/nonterminal/simple_trace.hpp
+#usr/include/boost/spirit/home/karma/numeric
+#usr/include/boost/spirit/home/karma/numeric.hpp
+#usr/include/boost/spirit/home/karma/numeric/bool.hpp
+#usr/include/boost/spirit/home/karma/numeric/bool_policies.hpp
+#usr/include/boost/spirit/home/karma/numeric/detail
+#usr/include/boost/spirit/home/karma/numeric/detail/bool_utils.hpp
+#usr/include/boost/spirit/home/karma/numeric/detail/numeric_utils.hpp
+#usr/include/boost/spirit/home/karma/numeric/detail/real_utils.hpp
+#usr/include/boost/spirit/home/karma/numeric/int.hpp
+#usr/include/boost/spirit/home/karma/numeric/real.hpp
+#usr/include/boost/spirit/home/karma/numeric/real_policies.hpp
+#usr/include/boost/spirit/home/karma/numeric/uint.hpp
+#usr/include/boost/spirit/home/karma/operator
+#usr/include/boost/spirit/home/karma/operator.hpp
+#usr/include/boost/spirit/home/karma/operator/alternative.hpp
+#usr/include/boost/spirit/home/karma/operator/and_predicate.hpp
+#usr/include/boost/spirit/home/karma/operator/kleene.hpp
+#usr/include/boost/spirit/home/karma/operator/list.hpp
+#usr/include/boost/spirit/home/karma/operator/not_predicate.hpp
+#usr/include/boost/spirit/home/karma/operator/optional.hpp
+#usr/include/boost/spirit/home/karma/operator/plus.hpp
+#usr/include/boost/spirit/home/karma/operator/sequence.hpp
+#usr/include/boost/spirit/home/karma/phoenix_attributes.hpp
+#usr/include/boost/spirit/home/karma/reference.hpp
+#usr/include/boost/spirit/home/karma/stream
+#usr/include/boost/spirit/home/karma/stream.hpp
+#usr/include/boost/spirit/home/karma/stream/detail
+#usr/include/boost/spirit/home/karma/stream/detail/format_manip.hpp
+#usr/include/boost/spirit/home/karma/stream/detail/format_manip_auto.hpp
+#usr/include/boost/spirit/home/karma/stream/detail/iterator_sink.hpp
+#usr/include/boost/spirit/home/karma/stream/format_manip.hpp
+#usr/include/boost/spirit/home/karma/stream/format_manip_attr.hpp
+#usr/include/boost/spirit/home/karma/stream/ostream_iterator.hpp
+#usr/include/boost/spirit/home/karma/stream/stream.hpp
+#usr/include/boost/spirit/home/karma/string
+#usr/include/boost/spirit/home/karma/string.hpp
+#usr/include/boost/spirit/home/karma/string/lit.hpp
+#usr/include/boost/spirit/home/karma/string/symbols.hpp
+#usr/include/boost/spirit/home/karma/what.hpp
+#usr/include/boost/spirit/home/lex
+#usr/include/boost/spirit/home/lex.hpp
+#usr/include/boost/spirit/home/lex/argument.hpp
+#usr/include/boost/spirit/home/lex/argument_phoenix.hpp
+#usr/include/boost/spirit/home/lex/detail
+#usr/include/boost/spirit/home/lex/detail/sequence_function.hpp
+#usr/include/boost/spirit/home/lex/domain.hpp
+#usr/include/boost/spirit/home/lex/lexer
+#usr/include/boost/spirit/home/lex/lexer.hpp
+#usr/include/boost/spirit/home/lex/lexer/action.hpp
+#usr/include/boost/spirit/home/lex/lexer/char_token_def.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexer.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl
+#usr/include/boost/spirit/home/lex/lexer/lexertl/functor.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/functor_data.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/generate_static.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/iterator.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/iterator_tokenizer.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/lexer.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/position_token.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/semantic_action_data.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/static_functor_data.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/static_lexer.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/static_version.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/token.hpp
+#usr/include/boost/spirit/home/lex/lexer/lexertl/wrap_action.hpp
+#usr/include/boost/spirit/home/lex/lexer/pass_flags.hpp
+#usr/include/boost/spirit/home/lex/lexer/sequence.hpp
+#usr/include/boost/spirit/home/lex/lexer/string_token_def.hpp
+#usr/include/boost/spirit/home/lex/lexer/support_functions.hpp
+#usr/include/boost/spirit/home/lex/lexer/support_functions_expression.hpp
+#usr/include/boost/spirit/home/lex/lexer/terminals.hpp
+#usr/include/boost/spirit/home/lex/lexer/token_def.hpp
+#usr/include/boost/spirit/home/lex/lexer_lexertl.hpp
+#usr/include/boost/spirit/home/lex/lexer_static_lexertl.hpp
+#usr/include/boost/spirit/home/lex/lexer_type.hpp
+#usr/include/boost/spirit/home/lex/meta_compiler.hpp
+#usr/include/boost/spirit/home/lex/primitives.hpp
+#usr/include/boost/spirit/home/lex/qi
+#usr/include/boost/spirit/home/lex/qi.hpp
+#usr/include/boost/spirit/home/lex/qi/in_state.hpp
+#usr/include/boost/spirit/home/lex/qi/plain_raw_token.hpp
+#usr/include/boost/spirit/home/lex/qi/plain_token.hpp
+#usr/include/boost/spirit/home/lex/qi/plain_tokenid.hpp
+#usr/include/boost/spirit/home/lex/qi/plain_tokenid_mask.hpp
+#usr/include/boost/spirit/home/lex/qi/state_switcher.hpp
+#usr/include/boost/spirit/home/lex/reference.hpp
+#usr/include/boost/spirit/home/lex/tokenize_and_parse.hpp
+#usr/include/boost/spirit/home/lex/tokenize_and_parse_attr.hpp
+#usr/include/boost/spirit/home/phoenix
+#usr/include/boost/spirit/home/phoenix.hpp
+#usr/include/boost/spirit/home/phoenix/algorithm.hpp
+#usr/include/boost/spirit/home/phoenix/bind
+#usr/include/boost/spirit/home/phoenix/bind.hpp
+#usr/include/boost/spirit/home/phoenix/bind/bind_function.hpp
+#usr/include/boost/spirit/home/phoenix/bind/bind_function_object.hpp
+#usr/include/boost/spirit/home/phoenix/bind/bind_member_function.hpp
+#usr/include/boost/spirit/home/phoenix/bind/bind_member_variable.hpp
+#usr/include/boost/spirit/home/phoenix/bind/detail
+#usr/include/boost/spirit/home/phoenix/bind/detail/bind_function.hpp
+#usr/include/boost/spirit/home/phoenix/bind/detail/bind_function_object.hpp
+#usr/include/boost/spirit/home/phoenix/bind/detail/bind_member_function.hpp
+#usr/include/boost/spirit/home/phoenix/bind/detail/function_ptr.hpp
+#usr/include/boost/spirit/home/phoenix/bind/detail/member_function_ptr.hpp
+#usr/include/boost/spirit/home/phoenix/container.hpp
+#usr/include/boost/spirit/home/phoenix/core
+#usr/include/boost/spirit/home/phoenix/core.hpp
+#usr/include/boost/spirit/home/phoenix/core/actor.hpp
+#usr/include/boost/spirit/home/phoenix/core/argument.hpp
+#usr/include/boost/spirit/home/phoenix/core/as_actor.hpp
+#usr/include/boost/spirit/home/phoenix/core/basic_environment.hpp
+#usr/include/boost/spirit/home/phoenix/core/compose.hpp
+#usr/include/boost/spirit/home/phoenix/core/composite.hpp
+#usr/include/boost/spirit/home/phoenix/core/detail
+#usr/include/boost/spirit/home/phoenix/core/detail/actor.hpp
+#usr/include/boost/spirit/home/phoenix/core/detail/basic_environment.hpp
+#usr/include/boost/spirit/home/phoenix/core/detail/compose.hpp
+#usr/include/boost/spirit/home/phoenix/core/detail/composite.hpp
+#usr/include/boost/spirit/home/phoenix/core/detail/composite_eval.hpp
+#usr/include/boost/spirit/home/phoenix/core/detail/composite_info.hpp
+#usr/include/boost/spirit/home/phoenix/core/detail/function_eval.hpp
+#usr/include/boost/spirit/home/phoenix/core/is_actor.hpp
+#usr/include/boost/spirit/home/phoenix/core/limits.hpp
+#usr/include/boost/spirit/home/phoenix/core/nothing.hpp
+#usr/include/boost/spirit/home/phoenix/core/reference.hpp
+#usr/include/boost/spirit/home/phoenix/core/value.hpp
+#usr/include/boost/spirit/home/phoenix/detail
+#usr/include/boost/spirit/home/phoenix/detail/local_reference.hpp
+#usr/include/boost/spirit/home/phoenix/detail/type_deduction.hpp
+#usr/include/boost/spirit/home/phoenix/function
+#usr/include/boost/spirit/home/phoenix/function.hpp
+#usr/include/boost/spirit/home/phoenix/function/detail
+#usr/include/boost/spirit/home/phoenix/function/detail/function_call.hpp
+#usr/include/boost/spirit/home/phoenix/function/function.hpp
+#usr/include/boost/spirit/home/phoenix/fusion
+#usr/include/boost/spirit/home/phoenix/fusion.hpp
+#usr/include/boost/spirit/home/phoenix/fusion/at.hpp
+#usr/include/boost/spirit/home/phoenix/object
+#usr/include/boost/spirit/home/phoenix/object.hpp
+#usr/include/boost/spirit/home/phoenix/object/const_cast.hpp
+#usr/include/boost/spirit/home/phoenix/object/construct.hpp
+#usr/include/boost/spirit/home/phoenix/object/delete.hpp
+#usr/include/boost/spirit/home/phoenix/object/detail
+#usr/include/boost/spirit/home/phoenix/object/detail/construct.hpp
+#usr/include/boost/spirit/home/phoenix/object/detail/construct_eval.hpp
+#usr/include/boost/spirit/home/phoenix/object/detail/new.hpp
+#usr/include/boost/spirit/home/phoenix/object/detail/new_eval.hpp
+#usr/include/boost/spirit/home/phoenix/object/dynamic_cast.hpp
+#usr/include/boost/spirit/home/phoenix/object/new.hpp
+#usr/include/boost/spirit/home/phoenix/object/reinterpret_cast.hpp
+#usr/include/boost/spirit/home/phoenix/object/static_cast.hpp
+#usr/include/boost/spirit/home/phoenix/operator
+#usr/include/boost/spirit/home/phoenix/operator.hpp
+#usr/include/boost/spirit/home/phoenix/operator/arithmetic.hpp
+#usr/include/boost/spirit/home/phoenix/operator/bitwise.hpp
+#usr/include/boost/spirit/home/phoenix/operator/comparison.hpp
+#usr/include/boost/spirit/home/phoenix/operator/detail
+#usr/include/boost/spirit/home/phoenix/operator/detail/binary_compose.hpp
+#usr/include/boost/spirit/home/phoenix/operator/detail/binary_eval.hpp
+#usr/include/boost/spirit/home/phoenix/operator/detail/io.hpp
+#usr/include/boost/spirit/home/phoenix/operator/detail/mem_fun_ptr_eval.hpp
+#usr/include/boost/spirit/home/phoenix/operator/detail/mem_fun_ptr_gen.hpp
+#usr/include/boost/spirit/home/phoenix/operator/detail/mem_fun_ptr_return.hpp
+#usr/include/boost/spirit/home/phoenix/operator/detail/unary_compose.hpp
+#usr/include/boost/spirit/home/phoenix/operator/detail/unary_eval.hpp
+#usr/include/boost/spirit/home/phoenix/operator/if_else.hpp
+#usr/include/boost/spirit/home/phoenix/operator/io.hpp
+#usr/include/boost/spirit/home/phoenix/operator/logical.hpp
+#usr/include/boost/spirit/home/phoenix/operator/member.hpp
+#usr/include/boost/spirit/home/phoenix/operator/self.hpp
+#usr/include/boost/spirit/home/phoenix/scope
+#usr/include/boost/spirit/home/phoenix/scope.hpp
+#usr/include/boost/spirit/home/phoenix/scope/detail
+#usr/include/boost/spirit/home/phoenix/scope/detail/local_gen.hpp
+#usr/include/boost/spirit/home/phoenix/scope/detail/local_variable.hpp
+#usr/include/boost/spirit/home/phoenix/scope/dynamic.hpp
+#usr/include/boost/spirit/home/phoenix/scope/lambda.hpp
+#usr/include/boost/spirit/home/phoenix/scope/let.hpp
+#usr/include/boost/spirit/home/phoenix/scope/local_variable.hpp
+#usr/include/boost/spirit/home/phoenix/scope/scoped_environment.hpp
+#usr/include/boost/spirit/home/phoenix/statement
+#usr/include/boost/spirit/home/phoenix/statement.hpp
+#usr/include/boost/spirit/home/phoenix/statement/detail
+#usr/include/boost/spirit/home/phoenix/statement/detail/catch_all_eval.hpp
+#usr/include/boost/spirit/home/phoenix/statement/detail/catch_composite.hpp
+#usr/include/boost/spirit/home/phoenix/statement/detail/catch_eval.hpp
+#usr/include/boost/spirit/home/phoenix/statement/detail/switch.hpp
+#usr/include/boost/spirit/home/phoenix/statement/detail/switch_eval.hpp
+#usr/include/boost/spirit/home/phoenix/statement/detail/switch_eval.ipp
+#usr/include/boost/spirit/home/phoenix/statement/do_while.hpp
+#usr/include/boost/spirit/home/phoenix/statement/for.hpp
+#usr/include/boost/spirit/home/phoenix/statement/if.hpp
+#usr/include/boost/spirit/home/phoenix/statement/sequence.hpp
+#usr/include/boost/spirit/home/phoenix/statement/switch.hpp
+#usr/include/boost/spirit/home/phoenix/statement/throw.hpp
+#usr/include/boost/spirit/home/phoenix/statement/try_catch.hpp
+#usr/include/boost/spirit/home/phoenix/statement/while.hpp
+#usr/include/boost/spirit/home/phoenix/stl
+#usr/include/boost/spirit/home/phoenix/stl.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm
+#usr/include/boost/spirit/home/phoenix/stl/algorithm.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/begin.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/decay_array.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/end.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_equal_range.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_find.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_lower_bound.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_remove.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_remove_if.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_reverse.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_sort.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_unique.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/has_upper_bound.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/is_std_hash_map.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/is_std_hash_set.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/is_std_list.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/is_std_map.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/is_std_set.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/std_hash_map_fwd.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/detail/std_hash_set_fwd.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/iteration.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/querying.hpp
+#usr/include/boost/spirit/home/phoenix/stl/algorithm/transformation.hpp
+#usr/include/boost/spirit/home/phoenix/stl/container
+#usr/include/boost/spirit/home/phoenix/stl/container.hpp
+#usr/include/boost/spirit/home/phoenix/stl/container/container.hpp
+#usr/include/boost/spirit/home/phoenix/stl/container/detail
+#usr/include/boost/spirit/home/phoenix/stl/container/detail/container.hpp
+#usr/include/boost/spirit/home/phoenix/version.hpp
+#usr/include/boost/spirit/home/qi
+#usr/include/boost/spirit/home/qi.hpp
+#usr/include/boost/spirit/home/qi/action
+#usr/include/boost/spirit/home/qi/action.hpp
+#usr/include/boost/spirit/home/qi/action/action.hpp
+#usr/include/boost/spirit/home/qi/auto
+#usr/include/boost/spirit/home/qi/auto.hpp
+#usr/include/boost/spirit/home/qi/auto/auto.hpp
+#usr/include/boost/spirit/home/qi/auto/create_parser.hpp
+#usr/include/boost/spirit/home/qi/auto/meta_create.hpp
+#usr/include/boost/spirit/home/qi/auxiliary
+#usr/include/boost/spirit/home/qi/auxiliary.hpp
+#usr/include/boost/spirit/home/qi/auxiliary/attr.hpp
+#usr/include/boost/spirit/home/qi/auxiliary/attr_cast.hpp
+#usr/include/boost/spirit/home/qi/auxiliary/eoi.hpp
+#usr/include/boost/spirit/home/qi/auxiliary/eol.hpp
+#usr/include/boost/spirit/home/qi/auxiliary/eps.hpp
+#usr/include/boost/spirit/home/qi/auxiliary/lazy.hpp
+#usr/include/boost/spirit/home/qi/binary
+#usr/include/boost/spirit/home/qi/binary.hpp
+#usr/include/boost/spirit/home/qi/binary/binary.hpp
+#usr/include/boost/spirit/home/qi/char
+#usr/include/boost/spirit/home/qi/char.hpp
+#usr/include/boost/spirit/home/qi/char/char.hpp
+#usr/include/boost/spirit/home/qi/char/char_class.hpp
+#usr/include/boost/spirit/home/qi/char/char_parser.hpp
+#usr/include/boost/spirit/home/qi/detail
+#usr/include/boost/spirit/home/qi/detail/alternative_function.hpp
+#usr/include/boost/spirit/home/qi/detail/assign_to.hpp
+#usr/include/boost/spirit/home/qi/detail/attributes.hpp
+#usr/include/boost/spirit/home/qi/detail/construct.hpp
+#usr/include/boost/spirit/home/qi/detail/enable_lit.hpp
+#usr/include/boost/spirit/home/qi/detail/expect_function.hpp
+#usr/include/boost/spirit/home/qi/detail/fail_function.hpp
+#usr/include/boost/spirit/home/qi/detail/parse.hpp
+#usr/include/boost/spirit/home/qi/detail/parse_auto.hpp
+#usr/include/boost/spirit/home/qi/detail/pass_container.hpp
+#usr/include/boost/spirit/home/qi/detail/pass_function.hpp
+#usr/include/boost/spirit/home/qi/detail/permute_function.hpp
+#usr/include/boost/spirit/home/qi/detail/string_parse.hpp
+#usr/include/boost/spirit/home/qi/detail/unused_skipper.hpp
+#usr/include/boost/spirit/home/qi/directive
+#usr/include/boost/spirit/home/qi/directive.hpp
+#usr/include/boost/spirit/home/qi/directive/as.hpp
+#usr/include/boost/spirit/home/qi/directive/encoding.hpp
+#usr/include/boost/spirit/home/qi/directive/hold.hpp
+#usr/include/boost/spirit/home/qi/directive/lexeme.hpp
+#usr/include/boost/spirit/home/qi/directive/matches.hpp
+#usr/include/boost/spirit/home/qi/directive/no_case.hpp
+#usr/include/boost/spirit/home/qi/directive/no_skip.hpp
+#usr/include/boost/spirit/home/qi/directive/omit.hpp
+#usr/include/boost/spirit/home/qi/directive/raw.hpp
+#usr/include/boost/spirit/home/qi/directive/repeat.hpp
+#usr/include/boost/spirit/home/qi/directive/skip.hpp
+#usr/include/boost/spirit/home/qi/domain.hpp
+#usr/include/boost/spirit/home/qi/match.hpp
+#usr/include/boost/spirit/home/qi/match_auto.hpp
+#usr/include/boost/spirit/home/qi/meta_compiler.hpp
+#usr/include/boost/spirit/home/qi/nonterminal
+#usr/include/boost/spirit/home/qi/nonterminal.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/debug_handler.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/debug_handler_state.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/detail
+#usr/include/boost/spirit/home/qi/nonterminal/detail/fcall.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/detail/parameterized.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/detail/parser_binder.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/error_handler.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/grammar.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/nonterminal_fwd.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/rule.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/simple_trace.hpp
+#usr/include/boost/spirit/home/qi/nonterminal/success_handler.hpp
+#usr/include/boost/spirit/home/qi/numeric
+#usr/include/boost/spirit/home/qi/numeric.hpp
+#usr/include/boost/spirit/home/qi/numeric/bool.hpp
+#usr/include/boost/spirit/home/qi/numeric/bool_policies.hpp
+#usr/include/boost/spirit/home/qi/numeric/detail
+#usr/include/boost/spirit/home/qi/numeric/detail/numeric_utils.hpp
+#usr/include/boost/spirit/home/qi/numeric/detail/real_impl.hpp
+#usr/include/boost/spirit/home/qi/numeric/int.hpp
+#usr/include/boost/spirit/home/qi/numeric/numeric_utils.hpp
+#usr/include/boost/spirit/home/qi/numeric/real.hpp
+#usr/include/boost/spirit/home/qi/numeric/real_policies.hpp
+#usr/include/boost/spirit/home/qi/numeric/uint.hpp
+#usr/include/boost/spirit/home/qi/operator
+#usr/include/boost/spirit/home/qi/operator.hpp
+#usr/include/boost/spirit/home/qi/operator/alternative.hpp
+#usr/include/boost/spirit/home/qi/operator/and_predicate.hpp
+#usr/include/boost/spirit/home/qi/operator/difference.hpp
+#usr/include/boost/spirit/home/qi/operator/expect.hpp
+#usr/include/boost/spirit/home/qi/operator/kleene.hpp
+#usr/include/boost/spirit/home/qi/operator/list.hpp
+#usr/include/boost/spirit/home/qi/operator/not_predicate.hpp
+#usr/include/boost/spirit/home/qi/operator/optional.hpp
+#usr/include/boost/spirit/home/qi/operator/permutation.hpp
+#usr/include/boost/spirit/home/qi/operator/plus.hpp
+#usr/include/boost/spirit/home/qi/operator/sequence.hpp
+#usr/include/boost/spirit/home/qi/operator/sequence_base.hpp
+#usr/include/boost/spirit/home/qi/operator/sequential_or.hpp
+#usr/include/boost/spirit/home/qi/parse.hpp
+#usr/include/boost/spirit/home/qi/parse_attr.hpp
+#usr/include/boost/spirit/home/qi/parser.hpp
+#usr/include/boost/spirit/home/qi/reference.hpp
+#usr/include/boost/spirit/home/qi/skip_flag.hpp
+#usr/include/boost/spirit/home/qi/skip_over.hpp
+#usr/include/boost/spirit/home/qi/stream
+#usr/include/boost/spirit/home/qi/stream.hpp
+#usr/include/boost/spirit/home/qi/stream/detail
+#usr/include/boost/spirit/home/qi/stream/detail/iterator_source.hpp
+#usr/include/boost/spirit/home/qi/stream/detail/match_manip.hpp
+#usr/include/boost/spirit/home/qi/stream/detail/match_manip_auto.hpp
+#usr/include/boost/spirit/home/qi/stream/match_manip.hpp
+#usr/include/boost/spirit/home/qi/stream/match_manip_attr.hpp
+#usr/include/boost/spirit/home/qi/stream/stream.hpp
+#usr/include/boost/spirit/home/qi/string
+#usr/include/boost/spirit/home/qi/string.hpp
+#usr/include/boost/spirit/home/qi/string/detail
+#usr/include/boost/spirit/home/qi/string/detail/tst.hpp
+#usr/include/boost/spirit/home/qi/string/lit.hpp
+#usr/include/boost/spirit/home/qi/string/symbols.hpp
+#usr/include/boost/spirit/home/qi/string/tst.hpp
+#usr/include/boost/spirit/home/qi/string/tst_map.hpp
+#usr/include/boost/spirit/home/qi/what.hpp
+#usr/include/boost/spirit/home/support
+#usr/include/boost/spirit/home/support.hpp
+#usr/include/boost/spirit/home/support/action_dispatch.hpp
+#usr/include/boost/spirit/home/support/adapt_adt_attributes.hpp
+#usr/include/boost/spirit/home/support/algorithm
+#usr/include/boost/spirit/home/support/algorithm/any.hpp
+#usr/include/boost/spirit/home/support/algorithm/any_if.hpp
+#usr/include/boost/spirit/home/support/algorithm/any_if_ns.hpp
+#usr/include/boost/spirit/home/support/algorithm/any_ns.hpp
+#usr/include/boost/spirit/home/support/argument.hpp
+#usr/include/boost/spirit/home/support/argument_expression.hpp
+#usr/include/boost/spirit/home/support/assert_msg.hpp
+#usr/include/boost/spirit/home/support/attributes.hpp
+#usr/include/boost/spirit/home/support/attributes_fwd.hpp
+#usr/include/boost/spirit/home/support/auto
+#usr/include/boost/spirit/home/support/auto/meta_create.hpp
+#usr/include/boost/spirit/home/support/auxiliary
+#usr/include/boost/spirit/home/support/auxiliary/attr_cast.hpp
+#usr/include/boost/spirit/home/support/char_class.hpp
+#usr/include/boost/spirit/home/support/char_encoding
+#usr/include/boost/spirit/home/support/char_encoding/ascii.hpp
+#usr/include/boost/spirit/home/support/char_encoding/iso8859_1.hpp
+#usr/include/boost/spirit/home/support/char_encoding/standard.hpp
+#usr/include/boost/spirit/home/support/char_encoding/standard_wide.hpp
+#usr/include/boost/spirit/home/support/char_encoding/unicode
+#usr/include/boost/spirit/home/support/char_encoding/unicode.hpp
+#usr/include/boost/spirit/home/support/char_encoding/unicode/category_table.hpp
+#usr/include/boost/spirit/home/support/char_encoding/unicode/lowercase_table.hpp
+#usr/include/boost/spirit/home/support/char_encoding/unicode/query.hpp
+#usr/include/boost/spirit/home/support/char_encoding/unicode/script_table.hpp
+#usr/include/boost/spirit/home/support/char_encoding/unicode/uppercase_table.hpp
+#usr/include/boost/spirit/home/support/char_set
+#usr/include/boost/spirit/home/support/char_set/basic_chset.hpp
+#usr/include/boost/spirit/home/support/char_set/range.hpp
+#usr/include/boost/spirit/home/support/char_set/range_functions.hpp
+#usr/include/boost/spirit/home/support/char_set/range_run.hpp
+#usr/include/boost/spirit/home/support/char_set/range_run_impl.hpp
+#usr/include/boost/spirit/home/support/common_terminals.hpp
+#usr/include/boost/spirit/home/support/container.hpp
+#usr/include/boost/spirit/home/support/context.hpp
+#usr/include/boost/spirit/home/support/detail
+#usr/include/boost/spirit/home/support/detail/as_variant.hpp
+#usr/include/boost/spirit/home/support/detail/endian
+#usr/include/boost/spirit/home/support/detail/endian.hpp
+#usr/include/boost/spirit/home/support/detail/endian/cover_operators.hpp
+#usr/include/boost/spirit/home/support/detail/endian/endian.hpp
+#usr/include/boost/spirit/home/support/detail/get_encoding.hpp
+#usr/include/boost/spirit/home/support/detail/hold_any.hpp
+#usr/include/boost/spirit/home/support/detail/is_spirit_tag.hpp
+#usr/include/boost/spirit/home/support/detail/lexer
+#usr/include/boost/spirit/home/support/detail/lexer/char_traits.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/consts.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/containers
+#usr/include/boost/spirit/home/support/detail/lexer/containers/ptr_list.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/containers/ptr_vector.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/conversion
+#usr/include/boost/spirit/home/support/detail/lexer/conversion/char_state_machine.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/debug.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/file_input.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/generate_cpp.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/generate_re2c.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/generator.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/input.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/internals.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser
+#usr/include/boost/spirit/home/support/detail/lexer/parser/parser.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tokeniser
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tokeniser/num_token.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_helper.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tokeniser/re_tokeniser_state.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tree
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tree/end_node.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tree/iteration_node.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tree/leaf_node.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tree/node.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tree/selection_node.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/parser/tree/sequence_node.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/partition
+#usr/include/boost/spirit/home/support/detail/lexer/partition/charset.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/partition/equivset.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/rules.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/runtime_error.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/serialise.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/size_t.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/state_machine.hpp
+#usr/include/boost/spirit/home/support/detail/lexer/string_token.hpp
+#usr/include/boost/spirit/home/support/detail/make_cons.hpp
+#usr/include/boost/spirit/home/support/detail/make_vector.hpp
+#usr/include/boost/spirit/home/support/detail/math
+#usr/include/boost/spirit/home/support/detail/math/detail
+#usr/include/boost/spirit/home/support/detail/math/detail/fp_traits.hpp
+#usr/include/boost/spirit/home/support/detail/math/fpclassify.hpp
+#usr/include/boost/spirit/home/support/detail/math/signbit.hpp
+#usr/include/boost/spirit/home/support/detail/pow10.hpp
+#usr/include/boost/spirit/home/support/detail/scoped_enum_emulation.hpp
+#usr/include/boost/spirit/home/support/detail/sign.hpp
+#usr/include/boost/spirit/home/support/detail/what_function.hpp
+#usr/include/boost/spirit/home/support/extended_variant.hpp
+#usr/include/boost/spirit/home/support/handles_container.hpp
+#usr/include/boost/spirit/home/support/has_semantic_action.hpp
+#usr/include/boost/spirit/home/support/info.hpp
+#usr/include/boost/spirit/home/support/iterators
+#usr/include/boost/spirit/home/support/iterators/detail
+#usr/include/boost/spirit/home/support/iterators/detail/buf_id_check_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/buffering_input_iterator_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/combine_policies.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/first_owner_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/fixed_size_queue.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/fixed_size_queue_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/functor_input_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/input_iterator_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/istream_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/lex_input_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/multi_pass.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/no_check_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/ref_counted_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/split_functor_input_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/detail/split_std_deque_policy.hpp
+#usr/include/boost/spirit/home/support/iterators/istream_iterator.hpp
+#usr/include/boost/spirit/home/support/iterators/line_pos_iterator.hpp
+#usr/include/boost/spirit/home/support/iterators/look_ahead.hpp
+#usr/include/boost/spirit/home/support/iterators/multi_pass.hpp
+#usr/include/boost/spirit/home/support/iterators/multi_pass_fwd.hpp
+#usr/include/boost/spirit/home/support/iterators/ostream_iterator.hpp
+#usr/include/boost/spirit/home/support/lazy.hpp
+#usr/include/boost/spirit/home/support/limits.hpp
+#usr/include/boost/spirit/home/support/make_component.hpp
+#usr/include/boost/spirit/home/support/meta_compiler.hpp
+#usr/include/boost/spirit/home/support/modify.hpp
+#usr/include/boost/spirit/home/support/multi_pass.hpp
+#usr/include/boost/spirit/home/support/multi_pass_wrapper.hpp
+#usr/include/boost/spirit/home/support/nonterminal
+#usr/include/boost/spirit/home/support/nonterminal/expand_arg.hpp
+#usr/include/boost/spirit/home/support/nonterminal/extract_param.hpp
+#usr/include/boost/spirit/home/support/nonterminal/locals.hpp
+#usr/include/boost/spirit/home/support/numeric_traits.hpp
+#usr/include/boost/spirit/home/support/sequence_base_id.hpp
+#usr/include/boost/spirit/home/support/string_traits.hpp
+#usr/include/boost/spirit/home/support/terminal.hpp
+#usr/include/boost/spirit/home/support/terminal_expression.hpp
+#usr/include/boost/spirit/home/support/unused.hpp
+#usr/include/boost/spirit/home/support/utf8.hpp
+#usr/include/boost/spirit/home/support/utree
+#usr/include/boost/spirit/home/support/utree.hpp
+#usr/include/boost/spirit/home/support/utree/detail
+#usr/include/boost/spirit/home/support/utree/detail/utree_detail1.hpp
+#usr/include/boost/spirit/home/support/utree/detail/utree_detail2.hpp
+#usr/include/boost/spirit/home/support/utree/operators.hpp
+#usr/include/boost/spirit/home/support/utree/utree.hpp
+#usr/include/boost/spirit/home/support/utree/utree_traits.hpp
+#usr/include/boost/spirit/home/support/utree/utree_traits_fwd.hpp
+#usr/include/boost/spirit/include
+#usr/include/boost/spirit/include/classic.hpp
+#usr/include/boost/spirit/include/classic_actions.hpp
+#usr/include/boost/spirit/include/classic_actor.hpp
+#usr/include/boost/spirit/include/classic_alternative.hpp
+#usr/include/boost/spirit/include/classic_as_parser.hpp
+#usr/include/boost/spirit/include/classic_assert.hpp
+#usr/include/boost/spirit/include/classic_assign_actor.hpp
+#usr/include/boost/spirit/include/classic_assign_key_actor.hpp
+#usr/include/boost/spirit/include/classic_ast.hpp
+#usr/include/boost/spirit/include/classic_ast_fwd.hpp
+#usr/include/boost/spirit/include/classic_attribute.hpp
+#usr/include/boost/spirit/include/classic_basic_chset.hpp
+#usr/include/boost/spirit/include/classic_chset.hpp
+#usr/include/boost/spirit/include/classic_chset_operators.hpp
+#usr/include/boost/spirit/include/classic_clear_actor.hpp
+#usr/include/boost/spirit/include/classic_closure.hpp
+#usr/include/boost/spirit/include/classic_closure_context.hpp
+#usr/include/boost/spirit/include/classic_closure_fwd.hpp
+#usr/include/boost/spirit/include/classic_common.hpp
+#usr/include/boost/spirit/include/classic_common_fwd.hpp
+#usr/include/boost/spirit/include/classic_composite.hpp
+#usr/include/boost/spirit/include/classic_config.hpp
+#usr/include/boost/spirit/include/classic_confix.hpp
+#usr/include/boost/spirit/include/classic_confix_fwd.hpp
+#usr/include/boost/spirit/include/classic_core.hpp
+#usr/include/boost/spirit/include/classic_debug.hpp
+#usr/include/boost/spirit/include/classic_debug_node.hpp
+#usr/include/boost/spirit/include/classic_decrement_actor.hpp
+#usr/include/boost/spirit/include/classic_difference.hpp
+#usr/include/boost/spirit/include/classic_directives.hpp
+#usr/include/boost/spirit/include/classic_distinct.hpp
+#usr/include/boost/spirit/include/classic_distinct_fwd.hpp
+#usr/include/boost/spirit/include/classic_dynamic.hpp
+#usr/include/boost/spirit/include/classic_epsilon.hpp
+#usr/include/boost/spirit/include/classic_erase_actor.hpp
+#usr/include/boost/spirit/include/classic_error_handling.hpp
+#usr/include/boost/spirit/include/classic_escape_char.hpp
+#usr/include/boost/spirit/include/classic_escape_char_fwd.hpp
+#usr/include/boost/spirit/include/classic_exceptions.hpp
+#usr/include/boost/spirit/include/classic_exceptions_fwd.hpp
+#usr/include/boost/spirit/include/classic_exclusive_or.hpp
+#usr/include/boost/spirit/include/classic_file_iterator.hpp
+#usr/include/boost/spirit/include/classic_file_iterator_fwd.hpp
+#usr/include/boost/spirit/include/classic_fixed_size_queue.hpp
+#usr/include/boost/spirit/include/classic_flush_multi_pass.hpp
+#usr/include/boost/spirit/include/classic_for.hpp
+#usr/include/boost/spirit/include/classic_functor_parser.hpp
+#usr/include/boost/spirit/include/classic_fundamental.hpp
+#usr/include/boost/spirit/include/classic_grammar.hpp
+#usr/include/boost/spirit/include/classic_grammar_def.hpp
+#usr/include/boost/spirit/include/classic_grammar_def_fwd.hpp
+#usr/include/boost/spirit/include/classic_if.hpp
+#usr/include/boost/spirit/include/classic_increment_actor.hpp
+#usr/include/boost/spirit/include/classic_insert_at_actor.hpp
+#usr/include/boost/spirit/include/classic_insert_key_actor.hpp
+#usr/include/boost/spirit/include/classic_intersection.hpp
+#usr/include/boost/spirit/include/classic_iterator.hpp
+#usr/include/boost/spirit/include/classic_kleene_star.hpp
+#usr/include/boost/spirit/include/classic_lazy.hpp
+#usr/include/boost/spirit/include/classic_list.hpp
+#usr/include/boost/spirit/include/classic_lists.hpp
+#usr/include/boost/spirit/include/classic_lists_fwd.hpp
+#usr/include/boost/spirit/include/classic_loops.hpp
+#usr/include/boost/spirit/include/classic_match.hpp
+#usr/include/boost/spirit/include/classic_meta.hpp
+#usr/include/boost/spirit/include/classic_minimal.hpp
+#usr/include/boost/spirit/include/classic_multi_pass.hpp
+#usr/include/boost/spirit/include/classic_multi_pass_fwd.hpp
+#usr/include/boost/spirit/include/classic_nil.hpp
+#usr/include/boost/spirit/include/classic_no_actions.hpp
+#usr/include/boost/spirit/include/classic_numerics.hpp
+#usr/include/boost/spirit/include/classic_numerics_fwd.hpp
+#usr/include/boost/spirit/include/classic_operators.hpp
+#usr/include/boost/spirit/include/classic_optional.hpp
+#usr/include/boost/spirit/include/classic_parametric.hpp
+#usr/include/boost/spirit/include/classic_parse_tree.hpp
+#usr/include/boost/spirit/include/classic_parse_tree_fwd.hpp
+#usr/include/boost/spirit/include/classic_parse_tree_utils.hpp
+#usr/include/boost/spirit/include/classic_parser.hpp
+#usr/include/boost/spirit/include/classic_parser_context.hpp
+#usr/include/boost/spirit/include/classic_parser_id.hpp
+#usr/include/boost/spirit/include/classic_parser_names.hpp
+#usr/include/boost/spirit/include/classic_parser_traits.hpp
+#usr/include/boost/spirit/include/classic_position_iterator.hpp
+#usr/include/boost/spirit/include/classic_position_iterator_fwd.hpp
+#usr/include/boost/spirit/include/classic_positive.hpp
+#usr/include/boost/spirit/include/classic_primitives.hpp
+#usr/include/boost/spirit/include/classic_push_back_actor.hpp
+#usr/include/boost/spirit/include/classic_push_front_actor.hpp
+#usr/include/boost/spirit/include/classic_range_run.hpp
+#usr/include/boost/spirit/include/classic_ref_actor.hpp
+#usr/include/boost/spirit/include/classic_ref_const_ref_actor.hpp
+#usr/include/boost/spirit/include/classic_ref_const_ref_const_ref_a.hpp
+#usr/include/boost/spirit/include/classic_ref_const_ref_value_actor.hpp
+#usr/include/boost/spirit/include/classic_ref_value_actor.hpp
+#usr/include/boost/spirit/include/classic_refactoring.hpp
+#usr/include/boost/spirit/include/classic_regex.hpp
+#usr/include/boost/spirit/include/classic_rule.hpp
+#usr/include/boost/spirit/include/classic_rule_alias.hpp
+#usr/include/boost/spirit/include/classic_rule_parser.hpp
+#usr/include/boost/spirit/include/classic_safe_bool.hpp
+#usr/include/boost/spirit/include/classic_scanner.hpp
+#usr/include/boost/spirit/include/classic_scanner_fwd.hpp
+#usr/include/boost/spirit/include/classic_scoped_lock.hpp
+#usr/include/boost/spirit/include/classic_select.hpp
+#usr/include/boost/spirit/include/classic_sequence.hpp
+#usr/include/boost/spirit/include/classic_sequential_and.hpp
+#usr/include/boost/spirit/include/classic_sequential_or.hpp
+#usr/include/boost/spirit/include/classic_skipper.hpp
+#usr/include/boost/spirit/include/classic_skipper_fwd.hpp
+#usr/include/boost/spirit/include/classic_spirit.hpp
+#usr/include/boost/spirit/include/classic_static.hpp
+#usr/include/boost/spirit/include/classic_stored_rule.hpp
+#usr/include/boost/spirit/include/classic_stored_rule_fwd.hpp
+#usr/include/boost/spirit/include/classic_subrule.hpp
+#usr/include/boost/spirit/include/classic_subrule_fwd.hpp
+#usr/include/boost/spirit/include/classic_swap_actor.hpp
+#usr/include/boost/spirit/include/classic_switch.hpp
+#usr/include/boost/spirit/include/classic_symbols.hpp
+#usr/include/boost/spirit/include/classic_symbols_fwd.hpp
+#usr/include/boost/spirit/include/classic_traverse.hpp
+#usr/include/boost/spirit/include/classic_tree_to_xml.hpp
+#usr/include/boost/spirit/include/classic_typeof.hpp
+#usr/include/boost/spirit/include/classic_utility.hpp
+#usr/include/boost/spirit/include/classic_version.hpp
+#usr/include/boost/spirit/include/classic_while.hpp
+#usr/include/boost/spirit/include/karma.hpp
+#usr/include/boost/spirit/include/karma_action.hpp
+#usr/include/boost/spirit/include/karma_alternative.hpp
+#usr/include/boost/spirit/include/karma_and_predicate.hpp
+#usr/include/boost/spirit/include/karma_as.hpp
+#usr/include/boost/spirit/include/karma_attr_cast.hpp
+#usr/include/boost/spirit/include/karma_auto.hpp
+#usr/include/boost/spirit/include/karma_auxiliary.hpp
+#usr/include/boost/spirit/include/karma_binary.hpp
+#usr/include/boost/spirit/include/karma_bool.hpp
+#usr/include/boost/spirit/include/karma_buffer.hpp
+#usr/include/boost/spirit/include/karma_center_alignment.hpp
+#usr/include/boost/spirit/include/karma_char.hpp
+#usr/include/boost/spirit/include/karma_char_.hpp
+#usr/include/boost/spirit/include/karma_char_class.hpp
+#usr/include/boost/spirit/include/karma_columns.hpp
+#usr/include/boost/spirit/include/karma_delimit.hpp
+#usr/include/boost/spirit/include/karma_directive.hpp
+#usr/include/boost/spirit/include/karma_domain.hpp
+#usr/include/boost/spirit/include/karma_duplicate.hpp
+#usr/include/boost/spirit/include/karma_eol.hpp
+#usr/include/boost/spirit/include/karma_eps.hpp
+#usr/include/boost/spirit/include/karma_format.hpp
+#usr/include/boost/spirit/include/karma_format_attr.hpp
+#usr/include/boost/spirit/include/karma_format_auto.hpp
+#usr/include/boost/spirit/include/karma_generate.hpp
+#usr/include/boost/spirit/include/karma_generate_attr.hpp
+#usr/include/boost/spirit/include/karma_generate_auto.hpp
+#usr/include/boost/spirit/include/karma_grammar.hpp
+#usr/include/boost/spirit/include/karma_int.hpp
+#usr/include/boost/spirit/include/karma_kleene.hpp
+#usr/include/boost/spirit/include/karma_lazy.hpp
+#usr/include/boost/spirit/include/karma_left_alignment.hpp
+#usr/include/boost/spirit/include/karma_list.hpp
+#usr/include/boost/spirit/include/karma_maxwidth.hpp
+#usr/include/boost/spirit/include/karma_no_delimit.hpp
+#usr/include/boost/spirit/include/karma_nonterminal.hpp
+#usr/include/boost/spirit/include/karma_not_predicate.hpp
+#usr/include/boost/spirit/include/karma_numeric.hpp
+#usr/include/boost/spirit/include/karma_omit.hpp
+#usr/include/boost/spirit/include/karma_operator.hpp
+#usr/include/boost/spirit/include/karma_optional.hpp
+#usr/include/boost/spirit/include/karma_phoenix_attributes.hpp
+#usr/include/boost/spirit/include/karma_plus.hpp
+#usr/include/boost/spirit/include/karma_real.hpp
+#usr/include/boost/spirit/include/karma_repeat.hpp
+#usr/include/boost/spirit/include/karma_right_alignment.hpp
+#usr/include/boost/spirit/include/karma_rule.hpp
+#usr/include/boost/spirit/include/karma_sequence.hpp
+#usr/include/boost/spirit/include/karma_stream.hpp
+#usr/include/boost/spirit/include/karma_strict_relaxed.hpp
+#usr/include/boost/spirit/include/karma_string.hpp
+#usr/include/boost/spirit/include/karma_symbols.hpp
+#usr/include/boost/spirit/include/karma_uint.hpp
+#usr/include/boost/spirit/include/karma_upper_lower_case.hpp
+#usr/include/boost/spirit/include/karma_verbatim.hpp
+#usr/include/boost/spirit/include/karma_what.hpp
+#usr/include/boost/spirit/include/lex.hpp
+#usr/include/boost/spirit/include/lex_char_token_def.hpp
+#usr/include/boost/spirit/include/lex_domain.hpp
+#usr/include/boost/spirit/include/lex_generate_static_lexertl.hpp
+#usr/include/boost/spirit/include/lex_lexer.hpp
+#usr/include/boost/spirit/include/lex_lexertl.hpp
+#usr/include/boost/spirit/include/lex_lexertl_position_token.hpp
+#usr/include/boost/spirit/include/lex_lexertl_token.hpp
+#usr/include/boost/spirit/include/lex_plain_token.hpp
+#usr/include/boost/spirit/include/lex_primitives.hpp
+#usr/include/boost/spirit/include/lex_static_lexertl.hpp
+#usr/include/boost/spirit/include/lex_tokenize_and_parse.hpp
+#usr/include/boost/spirit/include/lex_tokenize_and_parse_attr.hpp
+#usr/include/boost/spirit/include/phoenix.hpp
+#usr/include/boost/spirit/include/phoenix1.hpp
+#usr/include/boost/spirit/include/phoenix1_actor.hpp
+#usr/include/boost/spirit/include/phoenix1_binders.hpp
+#usr/include/boost/spirit/include/phoenix1_casts.hpp
+#usr/include/boost/spirit/include/phoenix1_closures.hpp
+#usr/include/boost/spirit/include/phoenix1_composite.hpp
+#usr/include/boost/spirit/include/phoenix1_functions.hpp
+#usr/include/boost/spirit/include/phoenix1_new.hpp
+#usr/include/boost/spirit/include/phoenix1_operators.hpp
+#usr/include/boost/spirit/include/phoenix1_primitives.hpp
+#usr/include/boost/spirit/include/phoenix1_special_ops.hpp
+#usr/include/boost/spirit/include/phoenix1_statements.hpp
+#usr/include/boost/spirit/include/phoenix1_tuple_helpers.hpp
+#usr/include/boost/spirit/include/phoenix1_tuples.hpp
+#usr/include/boost/spirit/include/phoenix_algorithm.hpp
+#usr/include/boost/spirit/include/phoenix_bind.hpp
+#usr/include/boost/spirit/include/phoenix_container.hpp
+#usr/include/boost/spirit/include/phoenix_core.hpp
+#usr/include/boost/spirit/include/phoenix_function.hpp
+#usr/include/boost/spirit/include/phoenix_fusion.hpp
+#usr/include/boost/spirit/include/phoenix_limits.hpp
+#usr/include/boost/spirit/include/phoenix_object.hpp
+#usr/include/boost/spirit/include/phoenix_operator.hpp
+#usr/include/boost/spirit/include/phoenix_scope.hpp
+#usr/include/boost/spirit/include/phoenix_statement.hpp
+#usr/include/boost/spirit/include/phoenix_stl.hpp
+#usr/include/boost/spirit/include/phoenix_version.hpp
+#usr/include/boost/spirit/include/qi.hpp
+#usr/include/boost/spirit/include/qi_action.hpp
+#usr/include/boost/spirit/include/qi_alternative.hpp
+#usr/include/boost/spirit/include/qi_and_predicate.hpp
+#usr/include/boost/spirit/include/qi_as.hpp
+#usr/include/boost/spirit/include/qi_as_string.hpp
+#usr/include/boost/spirit/include/qi_attr.hpp
+#usr/include/boost/spirit/include/qi_attr_cast.hpp
+#usr/include/boost/spirit/include/qi_auto.hpp
+#usr/include/boost/spirit/include/qi_auxiliary.hpp
+#usr/include/boost/spirit/include/qi_binary.hpp
+#usr/include/boost/spirit/include/qi_bool.hpp
+#usr/include/boost/spirit/include/qi_char.hpp
+#usr/include/boost/spirit/include/qi_char_.hpp
+#usr/include/boost/spirit/include/qi_char_class.hpp
+#usr/include/boost/spirit/include/qi_core.hpp
+#usr/include/boost/spirit/include/qi_difference.hpp
+#usr/include/boost/spirit/include/qi_directive.hpp
+#usr/include/boost/spirit/include/qi_domain.hpp
+#usr/include/boost/spirit/include/qi_eoi.hpp
+#usr/include/boost/spirit/include/qi_eol.hpp
+#usr/include/boost/spirit/include/qi_eps.hpp
+#usr/include/boost/spirit/include/qi_expect.hpp
+#usr/include/boost/spirit/include/qi_grammar.hpp
+#usr/include/boost/spirit/include/qi_hold.hpp
+#usr/include/boost/spirit/include/qi_int.hpp
+#usr/include/boost/spirit/include/qi_kleene.hpp
+#usr/include/boost/spirit/include/qi_lazy.hpp
+#usr/include/boost/spirit/include/qi_lexeme.hpp
+#usr/include/boost/spirit/include/qi_list.hpp
+#usr/include/boost/spirit/include/qi_lit.hpp
+#usr/include/boost/spirit/include/qi_match.hpp
+#usr/include/boost/spirit/include/qi_match_attr.hpp
+#usr/include/boost/spirit/include/qi_match_auto.hpp
+#usr/include/boost/spirit/include/qi_matches.hpp
+#usr/include/boost/spirit/include/qi_no_case.hpp
+#usr/include/boost/spirit/include/qi_no_skip.hpp
+#usr/include/boost/spirit/include/qi_nonterminal.hpp
+#usr/include/boost/spirit/include/qi_not_predicate.hpp
+#usr/include/boost/spirit/include/qi_numeric.hpp
+#usr/include/boost/spirit/include/qi_omit.hpp
+#usr/include/boost/spirit/include/qi_operator.hpp
+#usr/include/boost/spirit/include/qi_optional.hpp
+#usr/include/boost/spirit/include/qi_parse.hpp
+#usr/include/boost/spirit/include/qi_parse_attr.hpp
+#usr/include/boost/spirit/include/qi_parse_auto.hpp
+#usr/include/boost/spirit/include/qi_permutation.hpp
+#usr/include/boost/spirit/include/qi_plus.hpp
+#usr/include/boost/spirit/include/qi_raw.hpp
+#usr/include/boost/spirit/include/qi_real.hpp
+#usr/include/boost/spirit/include/qi_repeat.hpp
+#usr/include/boost/spirit/include/qi_rule.hpp
+#usr/include/boost/spirit/include/qi_sequence.hpp
+#usr/include/boost/spirit/include/qi_sequential_or.hpp
+#usr/include/boost/spirit/include/qi_skip.hpp
+#usr/include/boost/spirit/include/qi_stream.hpp
+#usr/include/boost/spirit/include/qi_string.hpp
+#usr/include/boost/spirit/include/qi_symbols.hpp
+#usr/include/boost/spirit/include/qi_uint.hpp
+#usr/include/boost/spirit/include/qi_what.hpp
+#usr/include/boost/spirit/include/support.hpp
+#usr/include/boost/spirit/include/support_adapt_adt_attributes.hpp
+#usr/include/boost/spirit/include/support_any.hpp
+#usr/include/boost/spirit/include/support_any_if.hpp
+#usr/include/boost/spirit/include/support_any_if_ns.hpp
+#usr/include/boost/spirit/include/support_any_ns.hpp
+#usr/include/boost/spirit/include/support_argument.hpp
+#usr/include/boost/spirit/include/support_ascii.hpp
+#usr/include/boost/spirit/include/support_attributes.hpp
+#usr/include/boost/spirit/include/support_attributes_fwd.hpp
+#usr/include/boost/spirit/include/support_char_class.hpp
+#usr/include/boost/spirit/include/support_container.hpp
+#usr/include/boost/spirit/include/support_extended_variant.hpp
+#usr/include/boost/spirit/include/support_info.hpp
+#usr/include/boost/spirit/include/support_iso8859_1.hpp
+#usr/include/boost/spirit/include/support_istream_iterator.hpp
+#usr/include/boost/spirit/include/support_line_pos_iterator.hpp
+#usr/include/boost/spirit/include/support_locals.hpp
+#usr/include/boost/spirit/include/support_look_ahead.hpp
+#usr/include/boost/spirit/include/support_modify.hpp
+#usr/include/boost/spirit/include/support_multi_pass.hpp
+#usr/include/boost/spirit/include/support_multi_pass_fwd.hpp
+#usr/include/boost/spirit/include/support_ostream_iterator.hpp
+#usr/include/boost/spirit/include/support_standard.hpp
+#usr/include/boost/spirit/include/support_standard_wide.hpp
+#usr/include/boost/spirit/include/support_string_traits.hpp
+#usr/include/boost/spirit/include/support_unused.hpp
+#usr/include/boost/spirit/include/support_utree.hpp
+#usr/include/boost/spirit/include/version.hpp
+#usr/include/boost/spirit/repository
+#usr/include/boost/spirit/repository/home
+#usr/include/boost/spirit/repository/home/karma
+#usr/include/boost/spirit/repository/home/karma.hpp
+#usr/include/boost/spirit/repository/home/karma/directive
+#usr/include/boost/spirit/repository/home/karma/directive.hpp
+#usr/include/boost/spirit/repository/home/karma/directive/confix.hpp
+#usr/include/boost/spirit/repository/home/karma/nonterminal
+#usr/include/boost/spirit/repository/home/karma/nonterminal.hpp
+#usr/include/boost/spirit/repository/home/karma/nonterminal/subrule.hpp
+#usr/include/boost/spirit/repository/home/qi
+#usr/include/boost/spirit/repository/home/qi.hpp
+#usr/include/boost/spirit/repository/home/qi/directive
+#usr/include/boost/spirit/repository/home/qi/directive.hpp
+#usr/include/boost/spirit/repository/home/qi/directive/confix.hpp
+#usr/include/boost/spirit/repository/home/qi/directive/distinct.hpp
+#usr/include/boost/spirit/repository/home/qi/directive/kwd.hpp
+#usr/include/boost/spirit/repository/home/qi/directive/seek.hpp
+#usr/include/boost/spirit/repository/home/qi/nonterminal
+#usr/include/boost/spirit/repository/home/qi/nonterminal.hpp
+#usr/include/boost/spirit/repository/home/qi/nonterminal/subrule.hpp
+#usr/include/boost/spirit/repository/home/qi/operator
+#usr/include/boost/spirit/repository/home/qi/operator.hpp
+#usr/include/boost/spirit/repository/home/qi/operator/detail
+#usr/include/boost/spirit/repository/home/qi/operator/detail/keywords.hpp
+#usr/include/boost/spirit/repository/home/qi/operator/keywords.hpp
+#usr/include/boost/spirit/repository/home/qi/primitive
+#usr/include/boost/spirit/repository/home/qi/primitive.hpp
+#usr/include/boost/spirit/repository/home/qi/primitive/advance.hpp
+#usr/include/boost/spirit/repository/home/qi/primitive/flush_multi_pass.hpp
+#usr/include/boost/spirit/repository/home/qi/primitive/iter_pos.hpp
+#usr/include/boost/spirit/repository/home/support
+#usr/include/boost/spirit/repository/home/support/confix.hpp
+#usr/include/boost/spirit/repository/home/support/distinct.hpp
+#usr/include/boost/spirit/repository/home/support/flush_multi_pass.hpp
+#usr/include/boost/spirit/repository/home/support/kwd.hpp
+#usr/include/boost/spirit/repository/home/support/seek.hpp
+#usr/include/boost/spirit/repository/home/support/subrule_context.hpp
+#usr/include/boost/spirit/repository/include
+#usr/include/boost/spirit/repository/include/karma.hpp
+#usr/include/boost/spirit/repository/include/karma_confix.hpp
+#usr/include/boost/spirit/repository/include/karma_directive.hpp
+#usr/include/boost/spirit/repository/include/karma_nonterminal.hpp
+#usr/include/boost/spirit/repository/include/karma_subrule.hpp
+#usr/include/boost/spirit/repository/include/qi.hpp
+#usr/include/boost/spirit/repository/include/qi_advance.hpp
+#usr/include/boost/spirit/repository/include/qi_confix.hpp
+#usr/include/boost/spirit/repository/include/qi_directive.hpp
+#usr/include/boost/spirit/repository/include/qi_distinct.hpp
+#usr/include/boost/spirit/repository/include/qi_flush_multi_pass.hpp
+#usr/include/boost/spirit/repository/include/qi_iter_pos.hpp
+#usr/include/boost/spirit/repository/include/qi_keywords.hpp
+#usr/include/boost/spirit/repository/include/qi_kwd.hpp
+#usr/include/boost/spirit/repository/include/qi_nonterminal.hpp
+#usr/include/boost/spirit/repository/include/qi_primitive.hpp
+#usr/include/boost/spirit/repository/include/qi_seek.hpp
+#usr/include/boost/spirit/repository/include/qi_subrule.hpp
+#usr/include/boost/spirit/version.hpp
+#usr/include/boost/statechart
+#usr/include/boost/statechart/asynchronous_state_machine.hpp
+#usr/include/boost/statechart/custom_reaction.hpp
+#usr/include/boost/statechart/deep_history.hpp
+#usr/include/boost/statechart/deferral.hpp
+#usr/include/boost/statechart/detail
+#usr/include/boost/statechart/detail/avoid_unused_warning.hpp
+#usr/include/boost/statechart/detail/constructor.hpp
+#usr/include/boost/statechart/detail/counted_base.hpp
+#usr/include/boost/statechart/detail/leaf_state.hpp
+#usr/include/boost/statechart/detail/memory.hpp
+#usr/include/boost/statechart/detail/node_state.hpp
+#usr/include/boost/statechart/detail/reaction_dispatcher.hpp
+#usr/include/boost/statechart/detail/rtti_policy.hpp
+#usr/include/boost/statechart/detail/state_base.hpp
+#usr/include/boost/statechart/event.hpp
+#usr/include/boost/statechart/event_base.hpp
+#usr/include/boost/statechart/event_processor.hpp
+#usr/include/boost/statechart/exception_translator.hpp
+#usr/include/boost/statechart/fifo_scheduler.hpp
+#usr/include/boost/statechart/fifo_worker.hpp
+#usr/include/boost/statechart/history.hpp
+#usr/include/boost/statechart/in_state_reaction.hpp
+#usr/include/boost/statechart/null_exception_translator.hpp
+#usr/include/boost/statechart/processor_container.hpp
+#usr/include/boost/statechart/result.hpp
+#usr/include/boost/statechart/shallow_history.hpp
+#usr/include/boost/statechart/simple_state.hpp
+#usr/include/boost/statechart/state.hpp
+#usr/include/boost/statechart/state_machine.hpp
+#usr/include/boost/statechart/termination.hpp
+#usr/include/boost/statechart/transition.hpp
+#usr/include/boost/static_assert.hpp
+#usr/include/boost/strong_typedef.hpp
+#usr/include/boost/swap.hpp
+#usr/include/boost/system
+#usr/include/boost/system/api_config.hpp
+#usr/include/boost/system/config.hpp
+#usr/include/boost/system/cygwin_error.hpp
+#usr/include/boost/system/error_code.hpp
+#usr/include/boost/system/linux_error.hpp
+#usr/include/boost/system/system_error.hpp
+#usr/include/boost/system/windows_error.hpp
+#usr/include/boost/test
+#usr/include/boost/test/auto_unit_test.hpp
+#usr/include/boost/test/debug.hpp
+#usr/include/boost/test/debug_config.hpp
+#usr/include/boost/test/detail
+#usr/include/boost/test/detail/config.hpp
+#usr/include/boost/test/detail/enable_warnings.hpp
+#usr/include/boost/test/detail/fwd_decl.hpp
+#usr/include/boost/test/detail/global_typedef.hpp
+#usr/include/boost/test/detail/log_level.hpp
+#usr/include/boost/test/detail/suppress_warnings.hpp
+#usr/include/boost/test/detail/unit_test_parameters.hpp
+#usr/include/boost/test/detail/workaround.hpp
+#usr/include/boost/test/exception_safety.hpp
+#usr/include/boost/test/execution_monitor.hpp
+#usr/include/boost/test/floating_point_comparison.hpp
+#usr/include/boost/test/framework.hpp
+#usr/include/boost/test/impl
+#usr/include/boost/test/impl/compiler_log_formatter.ipp
+#usr/include/boost/test/impl/cpp_main.ipp
+#usr/include/boost/test/impl/debug.ipp
+#usr/include/boost/test/impl/exception_safety.ipp
+#usr/include/boost/test/impl/execution_monitor.ipp
+#usr/include/boost/test/impl/framework.ipp
+#usr/include/boost/test/impl/interaction_based.ipp
+#usr/include/boost/test/impl/logged_expectations.ipp
+#usr/include/boost/test/impl/plain_report_formatter.ipp
+#usr/include/boost/test/impl/progress_monitor.ipp
+#usr/include/boost/test/impl/results_collector.ipp
+#usr/include/boost/test/impl/results_reporter.ipp
+#usr/include/boost/test/impl/test_main.ipp
+#usr/include/boost/test/impl/test_tools.ipp
+#usr/include/boost/test/impl/unit_test_log.ipp
+#usr/include/boost/test/impl/unit_test_main.ipp
+#usr/include/boost/test/impl/unit_test_monitor.ipp
+#usr/include/boost/test/impl/unit_test_parameters.ipp
+#usr/include/boost/test/impl/unit_test_suite.ipp
+#usr/include/boost/test/impl/xml_log_formatter.ipp
+#usr/include/boost/test/impl/xml_report_formatter.ipp
+#usr/include/boost/test/included
+#usr/include/boost/test/included/prg_exec_monitor.hpp
+#usr/include/boost/test/included/test_exec_monitor.hpp
+#usr/include/boost/test/included/unit_test.hpp
+#usr/include/boost/test/included/unit_test_framework.hpp
+#usr/include/boost/test/interaction_based.hpp
+#usr/include/boost/test/logged_expectations.hpp
+#usr/include/boost/test/minimal.hpp
+#usr/include/boost/test/mock_object.hpp
+#usr/include/boost/test/output
+#usr/include/boost/test/output/compiler_log_formatter.hpp
+#usr/include/boost/test/output/plain_report_formatter.hpp
+#usr/include/boost/test/output/xml_log_formatter.hpp
+#usr/include/boost/test/output/xml_report_formatter.hpp
+#usr/include/boost/test/output_test_stream.hpp
+#usr/include/boost/test/parameterized_test.hpp
+#usr/include/boost/test/predicate_result.hpp
+#usr/include/boost/test/prg_exec_monitor.hpp
+#usr/include/boost/test/progress_monitor.hpp
+#usr/include/boost/test/results_collector.hpp
+#usr/include/boost/test/results_reporter.hpp
+#usr/include/boost/test/test_case_template.hpp
+#usr/include/boost/test/test_exec_monitor.hpp
+#usr/include/boost/test/test_observer.hpp
+#usr/include/boost/test/test_tools.hpp
+#usr/include/boost/test/unit_test.hpp
+#usr/include/boost/test/unit_test_log.hpp
+#usr/include/boost/test/unit_test_log_formatter.hpp
+#usr/include/boost/test/unit_test_monitor.hpp
+#usr/include/boost/test/unit_test_suite.hpp
+#usr/include/boost/test/unit_test_suite_impl.hpp
+#usr/include/boost/test/utils
+#usr/include/boost/test/utils/algorithm.hpp
+#usr/include/boost/test/utils/assign_op.hpp
+#usr/include/boost/test/utils/basic_cstring
+#usr/include/boost/test/utils/basic_cstring/basic_cstring.hpp
+#usr/include/boost/test/utils/basic_cstring/basic_cstring_fwd.hpp
+#usr/include/boost/test/utils/basic_cstring/bcs_char_traits.hpp
+#usr/include/boost/test/utils/basic_cstring/compare.hpp
+#usr/include/boost/test/utils/basic_cstring/io.hpp
+#usr/include/boost/test/utils/callback.hpp
+#usr/include/boost/test/utils/class_properties.hpp
+#usr/include/boost/test/utils/custom_manip.hpp
+#usr/include/boost/test/utils/fixed_mapping.hpp
+#usr/include/boost/test/utils/foreach.hpp
+#usr/include/boost/test/utils/iterator
+#usr/include/boost/test/utils/iterator/ifstream_line_iterator.hpp
+#usr/include/boost/test/utils/iterator/input_iterator_facade.hpp
+#usr/include/boost/test/utils/iterator/istream_line_iterator.hpp
+#usr/include/boost/test/utils/iterator/token_iterator.hpp
+#usr/include/boost/test/utils/lazy_ostream.hpp
+#usr/include/boost/test/utils/named_params.hpp
+#usr/include/boost/test/utils/nullstream.hpp
+#usr/include/boost/test/utils/rtti.hpp
+#usr/include/boost/test/utils/runtime
+#usr/include/boost/test/utils/runtime/argument.hpp
+#usr/include/boost/test/utils/runtime/cla
+#usr/include/boost/test/utils/runtime/cla/argument_factory.hpp
+#usr/include/boost/test/utils/runtime/cla/argv_traverser.hpp
+#usr/include/boost/test/utils/runtime/cla/argv_traverser.ipp
+#usr/include/boost/test/utils/runtime/cla/basic_parameter.hpp
+#usr/include/boost/test/utils/runtime/cla/char_parameter.hpp
+#usr/include/boost/test/utils/runtime/cla/char_parameter.ipp
+#usr/include/boost/test/utils/runtime/cla/detail
+#usr/include/boost/test/utils/runtime/cla/detail/argument_value_usage.hpp
+#usr/include/boost/test/utils/runtime/cla/dual_name_parameter.hpp
+#usr/include/boost/test/utils/runtime/cla/dual_name_parameter.ipp
+#usr/include/boost/test/utils/runtime/cla/fwd.hpp
+#usr/include/boost/test/utils/runtime/cla/id_policy.hpp
+#usr/include/boost/test/utils/runtime/cla/id_policy.ipp
+#usr/include/boost/test/utils/runtime/cla/iface
+#usr/include/boost/test/utils/runtime/cla/iface/argument_factory.hpp
+#usr/include/boost/test/utils/runtime/cla/iface/id_policy.hpp
+#usr/include/boost/test/utils/runtime/cla/modifier.hpp
+#usr/include/boost/test/utils/runtime/cla/named_parameter.hpp
+#usr/include/boost/test/utils/runtime/cla/named_parameter.ipp
+#usr/include/boost/test/utils/runtime/cla/parameter.hpp
+#usr/include/boost/test/utils/runtime/cla/parser.hpp
+#usr/include/boost/test/utils/runtime/cla/parser.ipp
+#usr/include/boost/test/utils/runtime/cla/positional_parameter.hpp
+#usr/include/boost/test/utils/runtime/cla/typed_parameter.hpp
+#usr/include/boost/test/utils/runtime/cla/validation.hpp
+#usr/include/boost/test/utils/runtime/cla/validation.ipp
+#usr/include/boost/test/utils/runtime/cla/value_generator.hpp
+#usr/include/boost/test/utils/runtime/cla/value_handler.hpp
+#usr/include/boost/test/utils/runtime/config.hpp
+#usr/include/boost/test/utils/runtime/configuration.hpp
+#usr/include/boost/test/utils/runtime/env
+#usr/include/boost/test/utils/runtime/env/environment.hpp
+#usr/include/boost/test/utils/runtime/env/environment.ipp
+#usr/include/boost/test/utils/runtime/env/fwd.hpp
+#usr/include/boost/test/utils/runtime/env/modifier.hpp
+#usr/include/boost/test/utils/runtime/env/variable.hpp
+#usr/include/boost/test/utils/runtime/file
+#usr/include/boost/test/utils/runtime/file/config_file.hpp
+#usr/include/boost/test/utils/runtime/file/config_file_iterator.hpp
+#usr/include/boost/test/utils/runtime/fwd.hpp
+#usr/include/boost/test/utils/runtime/interpret_argument_value.hpp
+#usr/include/boost/test/utils/runtime/parameter.hpp
+#usr/include/boost/test/utils/runtime/trace.hpp
+#usr/include/boost/test/utils/runtime/validation.hpp
+#usr/include/boost/test/utils/trivial_singleton.hpp
+#usr/include/boost/test/utils/wrap_stringstream.hpp
+#usr/include/boost/test/utils/xml_printer.hpp
+#usr/include/boost/thread
+#usr/include/boost/thread.hpp
+#usr/include/boost/thread/barrier.hpp
+#usr/include/boost/thread/completion_latch.hpp
+#usr/include/boost/thread/condition.hpp
+#usr/include/boost/thread/condition_variable.hpp
+#usr/include/boost/thread/cv_status.hpp
+#usr/include/boost/thread/detail
+#usr/include/boost/thread/detail/async_func.hpp
+#usr/include/boost/thread/detail/config.hpp
+#usr/include/boost/thread/detail/counter.hpp
+#usr/include/boost/thread/detail/delete.hpp
+#usr/include/boost/thread/detail/force_cast.hpp
+#usr/include/boost/thread/detail/invoke.hpp
+#usr/include/boost/thread/detail/is_convertible.hpp
+#usr/include/boost/thread/detail/lockable_wrapper.hpp
+#usr/include/boost/thread/detail/log.hpp
+#usr/include/boost/thread/detail/make_tuple_indices.hpp
+#usr/include/boost/thread/detail/memory.hpp
+#usr/include/boost/thread/detail/move.hpp
+#usr/include/boost/thread/detail/platform.hpp
+#usr/include/boost/thread/detail/singleton.hpp
+#usr/include/boost/thread/detail/thread.hpp
+#usr/include/boost/thread/detail/thread_group.hpp
+#usr/include/boost/thread/detail/thread_heap_alloc.hpp
+#usr/include/boost/thread/detail/thread_interruption.hpp
+#usr/include/boost/thread/detail/tss_hooks.hpp
+#usr/include/boost/thread/exceptions.hpp
+#usr/include/boost/thread/externally_locked.hpp
+#usr/include/boost/thread/externally_locked_stream.hpp
+#usr/include/boost/thread/future.hpp
+#usr/include/boost/thread/future_error_code.hpp
+#usr/include/boost/thread/is_locked_by_this_thread.hpp
+#usr/include/boost/thread/latch.hpp
+#usr/include/boost/thread/lock_algorithms.hpp
+#usr/include/boost/thread/lock_concepts.hpp
+#usr/include/boost/thread/lock_factories.hpp
+#usr/include/boost/thread/lock_guard.hpp
+#usr/include/boost/thread/lock_options.hpp
+#usr/include/boost/thread/lock_traits.hpp
+#usr/include/boost/thread/lock_types.hpp
+#usr/include/boost/thread/lockable_adapter.hpp
+#usr/include/boost/thread/lockable_concepts.hpp
+#usr/include/boost/thread/lockable_traits.hpp
+#usr/include/boost/thread/locks.hpp
+#usr/include/boost/thread/mutex.hpp
+#usr/include/boost/thread/null_mutex.hpp
+#usr/include/boost/thread/once.hpp
+#usr/include/boost/thread/poly_lockable.hpp
+#usr/include/boost/thread/poly_lockable_adapter.hpp
+#usr/include/boost/thread/poly_shared_lockable.hpp
+#usr/include/boost/thread/poly_shared_lockable_adapter.hpp
+#usr/include/boost/thread/pthread
+#usr/include/boost/thread/pthread/condition_variable.hpp
+#usr/include/boost/thread/pthread/condition_variable_fwd.hpp
+#usr/include/boost/thread/pthread/mutex.hpp
+#usr/include/boost/thread/pthread/once.hpp
+#usr/include/boost/thread/pthread/once_atomic.hpp
+#usr/include/boost/thread/pthread/pthread_mutex_scoped_lock.hpp
+#usr/include/boost/thread/pthread/recursive_mutex.hpp
+#usr/include/boost/thread/pthread/shared_mutex.hpp
+#usr/include/boost/thread/pthread/shared_mutex_assert.hpp
+#usr/include/boost/thread/pthread/thread_data.hpp
+#usr/include/boost/thread/pthread/thread_heap_alloc.hpp
+#usr/include/boost/thread/pthread/timespec.hpp
+#usr/include/boost/thread/recursive_mutex.hpp
+#usr/include/boost/thread/reverse_lock.hpp
+#usr/include/boost/thread/scoped_thread.hpp
+#usr/include/boost/thread/shared_lock_guard.hpp
+#usr/include/boost/thread/shared_mutex.hpp
+#usr/include/boost/thread/strict_lock.hpp
+#usr/include/boost/thread/sync_bounded_queue.hpp
+#usr/include/boost/thread/sync_queue.hpp
+#usr/include/boost/thread/synchronized_value.hpp
+#usr/include/boost/thread/testable_mutex.hpp
+#usr/include/boost/thread/thread.hpp
+#usr/include/boost/thread/thread_functors.hpp
+#usr/include/boost/thread/thread_guard.hpp
+#usr/include/boost/thread/thread_only.hpp
+#usr/include/boost/thread/thread_time.hpp
+#usr/include/boost/thread/tss.hpp
+#usr/include/boost/thread/v2
+#usr/include/boost/thread/v2/shared_mutex.hpp
+#usr/include/boost/thread/v2/thread.hpp
+#usr/include/boost/thread/win32
+#usr/include/boost/thread/win32/basic_recursive_mutex.hpp
+#usr/include/boost/thread/win32/basic_timed_mutex.hpp
+#usr/include/boost/thread/win32/condition_variable.hpp
+#usr/include/boost/thread/win32/interlocked_read.hpp
+#usr/include/boost/thread/win32/mfc_thread_init.hpp
+#usr/include/boost/thread/win32/mutex.hpp
+#usr/include/boost/thread/win32/once.hpp
+#usr/include/boost/thread/win32/recursive_mutex.hpp
+#usr/include/boost/thread/win32/shared_mutex.hpp
+#usr/include/boost/thread/win32/thread_data.hpp
+#usr/include/boost/thread/win32/thread_heap_alloc.hpp
+#usr/include/boost/thread/win32/thread_primitives.hpp
+#usr/include/boost/thread/xtime.hpp
+#usr/include/boost/throw_exception.hpp
+#usr/include/boost/timer
+#usr/include/boost/timer.hpp
+#usr/include/boost/timer/config.hpp
+#usr/include/boost/timer/timer.hpp
+#usr/include/boost/token_functions.hpp
+#usr/include/boost/token_iterator.hpp
+#usr/include/boost/tokenizer.hpp
+#usr/include/boost/tr1
+#usr/include/boost/tr1/array.hpp
+#usr/include/boost/tr1/cmath.hpp
+#usr/include/boost/tr1/complex.hpp
+#usr/include/boost/tr1/detail
+#usr/include/boost/tr1/detail/config.hpp
+#usr/include/boost/tr1/detail/config_all.hpp
+#usr/include/boost/tr1/detail/functor2iterator.hpp
+#usr/include/boost/tr1/detail/math_overloads.hpp
+#usr/include/boost/tr1/functional.hpp
+#usr/include/boost/tr1/memory.hpp
+#usr/include/boost/tr1/random.hpp
+#usr/include/boost/tr1/regex.hpp
+#usr/include/boost/tr1/tr1
+#usr/include/boost/tr1/tr1/algorithm
+#usr/include/boost/tr1/tr1/array
+#usr/include/boost/tr1/tr1/bcc32
+#usr/include/boost/tr1/tr1/bcc32/array.h
+#usr/include/boost/tr1/tr1/bcc32/random.h
+#usr/include/boost/tr1/tr1/bcc32/regex.h
+#usr/include/boost/tr1/tr1/bcc32/tuple.h
+#usr/include/boost/tr1/tr1/bcc32/type_tra.h
+#usr/include/boost/tr1/tr1/bcc32/unordere.h
+#usr/include/boost/tr1/tr1/bitset
+#usr/include/boost/tr1/tr1/cmath
+#usr/include/boost/tr1/tr1/complex
+#usr/include/boost/tr1/tr1/deque
+#usr/include/boost/tr1/tr1/exception
+#usr/include/boost/tr1/tr1/fstream
+#usr/include/boost/tr1/tr1/functional
+#usr/include/boost/tr1/tr1/iomanip
+#usr/include/boost/tr1/tr1/ios
+#usr/include/boost/tr1/tr1/iostream
+#usr/include/boost/tr1/tr1/istream
+#usr/include/boost/tr1/tr1/iterator
+#usr/include/boost/tr1/tr1/limits
+#usr/include/boost/tr1/tr1/list
+#usr/include/boost/tr1/tr1/locale
+#usr/include/boost/tr1/tr1/map
+#usr/include/boost/tr1/tr1/memory
+#usr/include/boost/tr1/tr1/new
+#usr/include/boost/tr1/tr1/numeric
+#usr/include/boost/tr1/tr1/ostream
+#usr/include/boost/tr1/tr1/queue
+#usr/include/boost/tr1/tr1/random
+#usr/include/boost/tr1/tr1/regex
+#usr/include/boost/tr1/tr1/set
+#usr/include/boost/tr1/tr1/sstream
+#usr/include/boost/tr1/tr1/stack
+#usr/include/boost/tr1/tr1/stdexcept
+#usr/include/boost/tr1/tr1/streambuf
+#usr/include/boost/tr1/tr1/string
+#usr/include/boost/tr1/tr1/strstream
+#usr/include/boost/tr1/tr1/sun
+#usr/include/boost/tr1/tr1/sun/algorithm.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/array.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/bcc32.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/bitset.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/cmath.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/complex.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/deque.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/exception.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/fstream.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/functional.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/iomanip.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/ios.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/iostream.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/istream.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/iterator.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/limits.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/list.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/locale.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/map.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/memory.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/new.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/numeric.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/ostream.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/queue.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/random.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/regex.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/set.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/sstream.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/stack.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/stdexcept.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/streambuf.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/string.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/strstream.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/sun.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/tuple.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/type_traits.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/typeinfo.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/unordered_map.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/unordered_set.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/utility.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/valarray.SUNWCCh
+#usr/include/boost/tr1/tr1/sun/vector.SUNWCCh
+#usr/include/boost/tr1/tr1/tuple
+#usr/include/boost/tr1/tr1/type_traits
+#usr/include/boost/tr1/tr1/typeinfo
+#usr/include/boost/tr1/tr1/unordered_map
+#usr/include/boost/tr1/tr1/unordered_set
+#usr/include/boost/tr1/tr1/utility
+#usr/include/boost/tr1/tr1/valarray
+#usr/include/boost/tr1/tr1/vector
+#usr/include/boost/tr1/tuple.hpp
+#usr/include/boost/tr1/type_traits.hpp
+#usr/include/boost/tr1/unordered_map.hpp
+#usr/include/boost/tr1/unordered_set.hpp
+#usr/include/boost/tr1/utility.hpp
+#usr/include/boost/tti
+#usr/include/boost/tti/detail
+#usr/include/boost/tti/detail/dcomp_mem_fun.hpp
+#usr/include/boost/tti/detail/dcomp_static_mem_fun.hpp
+#usr/include/boost/tti/detail/ddata.hpp
+#usr/include/boost/tti/detail/ddeftype.hpp
+#usr/include/boost/tti/detail/dftclass.hpp
+#usr/include/boost/tti/detail/dfunction.hpp
+#usr/include/boost/tti/detail/dlambda.hpp
+#usr/include/boost/tti/detail/dmem_data.hpp
+#usr/include/boost/tti/detail/dmem_fun.hpp
+#usr/include/boost/tti/detail/dmem_type.hpp
+#usr/include/boost/tti/detail/dmetafunc.hpp
+#usr/include/boost/tti/detail/dnotype.hpp
+#usr/include/boost/tti/detail/dnullptr.hpp
+#usr/include/boost/tti/detail/dplaceholder.hpp
+#usr/include/boost/tti/detail/dptmf.hpp
+#usr/include/boost/tti/detail/dstatic_mem_data.hpp
+#usr/include/boost/tti/detail/dstatic_mem_fun.hpp
+#usr/include/boost/tti/detail/dtclass.hpp
+#usr/include/boost/tti/detail/dtemplate.hpp
+#usr/include/boost/tti/detail/dtemplate_params.hpp
+#usr/include/boost/tti/detail/dtfunction.hpp
+#usr/include/boost/tti/detail/dtype.hpp
+#usr/include/boost/tti/detail/dvm_template_params.hpp
+#usr/include/boost/tti/gen
+#usr/include/boost/tti/gen/has_data_gen.hpp
+#usr/include/boost/tti/gen/has_function_gen.hpp
+#usr/include/boost/tti/gen/has_member_data_gen.hpp
+#usr/include/boost/tti/gen/has_member_function_gen.hpp
+#usr/include/boost/tti/gen/has_static_member_data_gen.hpp
+#usr/include/boost/tti/gen/has_static_member_function_gen.hpp
+#usr/include/boost/tti/gen/has_template_gen.hpp
+#usr/include/boost/tti/gen/has_type_gen.hpp
+#usr/include/boost/tti/gen/member_type_gen.hpp
+#usr/include/boost/tti/gen/namespace_gen.hpp
+#usr/include/boost/tti/has_data.hpp
+#usr/include/boost/tti/has_function.hpp
+#usr/include/boost/tti/has_member_data.hpp
+#usr/include/boost/tti/has_member_function.hpp
+#usr/include/boost/tti/has_static_member_data.hpp
+#usr/include/boost/tti/has_static_member_function.hpp
+#usr/include/boost/tti/has_template.hpp
+#usr/include/boost/tti/has_type.hpp
+#usr/include/boost/tti/member_type.hpp
+#usr/include/boost/tti/tti.hpp
+#usr/include/boost/tuple
+#usr/include/boost/tuple/detail
+#usr/include/boost/tuple/detail/tuple_basic.hpp
+#usr/include/boost/tuple/detail/tuple_basic_no_partial_spec.hpp
+#usr/include/boost/tuple/tuple.hpp
+#usr/include/boost/tuple/tuple_comparison.hpp
+#usr/include/boost/tuple/tuple_io.hpp
+#usr/include/boost/type.hpp
+#usr/include/boost/type_erasure
+#usr/include/boost/type_erasure/any.hpp
+#usr/include/boost/type_erasure/any_cast.hpp
+#usr/include/boost/type_erasure/binding.hpp
+#usr/include/boost/type_erasure/binding_of.hpp
+#usr/include/boost/type_erasure/builtin.hpp
+#usr/include/boost/type_erasure/call.hpp
+#usr/include/boost/type_erasure/callable.hpp
+#usr/include/boost/type_erasure/check_match.hpp
+#usr/include/boost/type_erasure/concept_interface.hpp
+#usr/include/boost/type_erasure/concept_of.hpp
+#usr/include/boost/type_erasure/config.hpp
+#usr/include/boost/type_erasure/constructible.hpp
+#usr/include/boost/type_erasure/deduced.hpp
+#usr/include/boost/type_erasure/derived.hpp
+#usr/include/boost/type_erasure/detail
+#usr/include/boost/type_erasure/detail/access.hpp
+#usr/include/boost/type_erasure/detail/adapt_to_vtable.hpp
+#usr/include/boost/type_erasure/detail/any_base.hpp
+#usr/include/boost/type_erasure/detail/check_call.hpp
+#usr/include/boost/type_erasure/detail/check_map.hpp
+#usr/include/boost/type_erasure/detail/const.hpp
+#usr/include/boost/type_erasure/detail/construct.hpp
+#usr/include/boost/type_erasure/detail/extract_concept.hpp
+#usr/include/boost/type_erasure/detail/get_placeholders.hpp
+#usr/include/boost/type_erasure/detail/get_signature.hpp
+#usr/include/boost/type_erasure/detail/instantiate.hpp
+#usr/include/boost/type_erasure/detail/macro.hpp
+#usr/include/boost/type_erasure/detail/normalize.hpp
+#usr/include/boost/type_erasure/detail/normalize_deduced.hpp
+#usr/include/boost/type_erasure/detail/null.hpp
+#usr/include/boost/type_erasure/detail/rebind_placeholders.hpp
+#usr/include/boost/type_erasure/detail/storage.hpp
+#usr/include/boost/type_erasure/detail/vtable.hpp
+#usr/include/boost/type_erasure/exception.hpp
+#usr/include/boost/type_erasure/free.hpp
+#usr/include/boost/type_erasure/is_empty.hpp
+#usr/include/boost/type_erasure/is_placeholder.hpp
+#usr/include/boost/type_erasure/is_subconcept.hpp
+#usr/include/boost/type_erasure/iterator.hpp
+#usr/include/boost/type_erasure/member.hpp
+#usr/include/boost/type_erasure/operators.hpp
+#usr/include/boost/type_erasure/param.hpp
+#usr/include/boost/type_erasure/placeholder.hpp
+#usr/include/boost/type_erasure/placeholder_of.hpp
+#usr/include/boost/type_erasure/rebind_any.hpp
+#usr/include/boost/type_erasure/relaxed.hpp
+#usr/include/boost/type_erasure/require_match.hpp
+#usr/include/boost/type_erasure/same_type.hpp
+#usr/include/boost/type_erasure/static_binding.hpp
+#usr/include/boost/type_erasure/tuple.hpp
+#usr/include/boost/type_erasure/typeid_of.hpp
+#usr/include/boost/type_traits
+#usr/include/boost/type_traits.hpp
+#usr/include/boost/type_traits/add_const.hpp
+#usr/include/boost/type_traits/add_cv.hpp
+#usr/include/boost/type_traits/add_lvalue_reference.hpp
+#usr/include/boost/type_traits/add_pointer.hpp
+#usr/include/boost/type_traits/add_reference.hpp
+#usr/include/boost/type_traits/add_rvalue_reference.hpp
+#usr/include/boost/type_traits/add_volatile.hpp
+#usr/include/boost/type_traits/aligned_storage.hpp
+#usr/include/boost/type_traits/alignment_of.hpp
+#usr/include/boost/type_traits/alignment_traits.hpp
+#usr/include/boost/type_traits/arithmetic_traits.hpp
+#usr/include/boost/type_traits/array_traits.hpp
+#usr/include/boost/type_traits/broken_compiler_spec.hpp
+#usr/include/boost/type_traits/common_type.hpp
+#usr/include/boost/type_traits/composite_traits.hpp
+#usr/include/boost/type_traits/conditional.hpp
+#usr/include/boost/type_traits/config.hpp
+#usr/include/boost/type_traits/conversion_traits.hpp
+#usr/include/boost/type_traits/cv_traits.hpp
+#usr/include/boost/type_traits/decay.hpp
+#usr/include/boost/type_traits/detail
+#usr/include/boost/type_traits/detail/bool_trait_def.hpp
+#usr/include/boost/type_traits/detail/bool_trait_undef.hpp
+#usr/include/boost/type_traits/detail/common_type_imp.hpp
+#usr/include/boost/type_traits/detail/cv_traits_impl.hpp
+#usr/include/boost/type_traits/detail/false_result.hpp
+#usr/include/boost/type_traits/detail/has_binary_operator.hpp
+#usr/include/boost/type_traits/detail/has_postfix_operator.hpp
+#usr/include/boost/type_traits/detail/has_prefix_operator.hpp
+#usr/include/boost/type_traits/detail/ice_and.hpp
+#usr/include/boost/type_traits/detail/ice_eq.hpp
+#usr/include/boost/type_traits/detail/ice_not.hpp
+#usr/include/boost/type_traits/detail/ice_or.hpp
+#usr/include/boost/type_traits/detail/is_function_ptr_helper.hpp
+#usr/include/boost/type_traits/detail/is_function_ptr_tester.hpp
+#usr/include/boost/type_traits/detail/is_mem_fun_pointer_impl.hpp
+#usr/include/boost/type_traits/detail/is_mem_fun_pointer_tester.hpp
+#usr/include/boost/type_traits/detail/size_t_trait_def.hpp
+#usr/include/boost/type_traits/detail/size_t_trait_undef.hpp
+#usr/include/boost/type_traits/detail/template_arity_spec.hpp
+#usr/include/boost/type_traits/detail/type_trait_def.hpp
+#usr/include/boost/type_traits/detail/type_trait_undef.hpp
+#usr/include/boost/type_traits/detail/wrap.hpp
+#usr/include/boost/type_traits/detail/yes_no_type.hpp
+#usr/include/boost/type_traits/extent.hpp
+#usr/include/boost/type_traits/floating_point_promotion.hpp
+#usr/include/boost/type_traits/function_traits.hpp
+#usr/include/boost/type_traits/has_bit_and.hpp
+#usr/include/boost/type_traits/has_bit_and_assign.hpp
+#usr/include/boost/type_traits/has_bit_or.hpp
+#usr/include/boost/type_traits/has_bit_or_assign.hpp
+#usr/include/boost/type_traits/has_bit_xor.hpp
+#usr/include/boost/type_traits/has_bit_xor_assign.hpp
+#usr/include/boost/type_traits/has_complement.hpp
+#usr/include/boost/type_traits/has_dereference.hpp
+#usr/include/boost/type_traits/has_divides.hpp
+#usr/include/boost/type_traits/has_divides_assign.hpp
+#usr/include/boost/type_traits/has_equal_to.hpp
+#usr/include/boost/type_traits/has_greater.hpp
+#usr/include/boost/type_traits/has_greater_equal.hpp
+#usr/include/boost/type_traits/has_left_shift.hpp
+#usr/include/boost/type_traits/has_left_shift_assign.hpp
+#usr/include/boost/type_traits/has_less.hpp
+#usr/include/boost/type_traits/has_less_equal.hpp
+#usr/include/boost/type_traits/has_logical_and.hpp
+#usr/include/boost/type_traits/has_logical_not.hpp
+#usr/include/boost/type_traits/has_logical_or.hpp
+#usr/include/boost/type_traits/has_minus.hpp
+#usr/include/boost/type_traits/has_minus_assign.hpp
+#usr/include/boost/type_traits/has_modulus.hpp
+#usr/include/boost/type_traits/has_modulus_assign.hpp
+#usr/include/boost/type_traits/has_multiplies.hpp
+#usr/include/boost/type_traits/has_multiplies_assign.hpp
+#usr/include/boost/type_traits/has_negate.hpp
+#usr/include/boost/type_traits/has_new_operator.hpp
+#usr/include/boost/type_traits/has_not_equal_to.hpp
+#usr/include/boost/type_traits/has_nothrow_assign.hpp
+#usr/include/boost/type_traits/has_nothrow_constructor.hpp
+#usr/include/boost/type_traits/has_nothrow_copy.hpp
+#usr/include/boost/type_traits/has_nothrow_destructor.hpp
+#usr/include/boost/type_traits/has_operator.hpp
+#usr/include/boost/type_traits/has_plus.hpp
+#usr/include/boost/type_traits/has_plus_assign.hpp
+#usr/include/boost/type_traits/has_post_decrement.hpp
+#usr/include/boost/type_traits/has_post_increment.hpp
+#usr/include/boost/type_traits/has_pre_decrement.hpp
+#usr/include/boost/type_traits/has_pre_increment.hpp
+#usr/include/boost/type_traits/has_right_shift.hpp
+#usr/include/boost/type_traits/has_right_shift_assign.hpp
+#usr/include/boost/type_traits/has_trivial_assign.hpp
+#usr/include/boost/type_traits/has_trivial_constructor.hpp
+#usr/include/boost/type_traits/has_trivial_copy.hpp
+#usr/include/boost/type_traits/has_trivial_destructor.hpp
+#usr/include/boost/type_traits/has_trivial_move_assign.hpp
+#usr/include/boost/type_traits/has_trivial_move_constructor.hpp
+#usr/include/boost/type_traits/has_unary_minus.hpp
+#usr/include/boost/type_traits/has_unary_plus.hpp
+#usr/include/boost/type_traits/has_virtual_destructor.hpp
+#usr/include/boost/type_traits/ice.hpp
+#usr/include/boost/type_traits/integral_constant.hpp
+#usr/include/boost/type_traits/integral_promotion.hpp
+#usr/include/boost/type_traits/intrinsics.hpp
+#usr/include/boost/type_traits/is_abstract.hpp
+#usr/include/boost/type_traits/is_arithmetic.hpp
+#usr/include/boost/type_traits/is_array.hpp
+#usr/include/boost/type_traits/is_base_and_derived.hpp
+#usr/include/boost/type_traits/is_base_of.hpp
+#usr/include/boost/type_traits/is_base_of_tr1.hpp
+#usr/include/boost/type_traits/is_class.hpp
+#usr/include/boost/type_traits/is_complex.hpp
+#usr/include/boost/type_traits/is_compound.hpp
+#usr/include/boost/type_traits/is_const.hpp
+#usr/include/boost/type_traits/is_convertible.hpp
+#usr/include/boost/type_traits/is_copy_constructible.hpp
+#usr/include/boost/type_traits/is_empty.hpp
+#usr/include/boost/type_traits/is_enum.hpp
+#usr/include/boost/type_traits/is_float.hpp
+#usr/include/boost/type_traits/is_floating_point.hpp
+#usr/include/boost/type_traits/is_function.hpp
+#usr/include/boost/type_traits/is_fundamental.hpp
+#usr/include/boost/type_traits/is_integral.hpp
+#usr/include/boost/type_traits/is_lvalue_reference.hpp
+#usr/include/boost/type_traits/is_member_function_pointer.hpp
+#usr/include/boost/type_traits/is_member_object_pointer.hpp
+#usr/include/boost/type_traits/is_member_pointer.hpp
+#usr/include/boost/type_traits/is_nothrow_move_assignable.hpp
+#usr/include/boost/type_traits/is_nothrow_move_constructible.hpp
+#usr/include/boost/type_traits/is_object.hpp
+#usr/include/boost/type_traits/is_pod.hpp
+#usr/include/boost/type_traits/is_pointer.hpp
+#usr/include/boost/type_traits/is_polymorphic.hpp
+#usr/include/boost/type_traits/is_reference.hpp
+#usr/include/boost/type_traits/is_rvalue_reference.hpp
+#usr/include/boost/type_traits/is_same.hpp
+#usr/include/boost/type_traits/is_scalar.hpp
+#usr/include/boost/type_traits/is_signed.hpp
+#usr/include/boost/type_traits/is_stateless.hpp
+#usr/include/boost/type_traits/is_union.hpp
+#usr/include/boost/type_traits/is_unsigned.hpp
+#usr/include/boost/type_traits/is_virtual_base_of.hpp
+#usr/include/boost/type_traits/is_void.hpp
+#usr/include/boost/type_traits/is_volatile.hpp
+#usr/include/boost/type_traits/make_signed.hpp
+#usr/include/boost/type_traits/make_unsigned.hpp
+#usr/include/boost/type_traits/msvc
+#usr/include/boost/type_traits/msvc/remove_all_extents.hpp
+#usr/include/boost/type_traits/msvc/remove_bounds.hpp
+#usr/include/boost/type_traits/msvc/remove_const.hpp
+#usr/include/boost/type_traits/msvc/remove_cv.hpp
+#usr/include/boost/type_traits/msvc/remove_extent.hpp
+#usr/include/boost/type_traits/msvc/remove_pointer.hpp
+#usr/include/boost/type_traits/msvc/remove_reference.hpp
+#usr/include/boost/type_traits/msvc/remove_volatile.hpp
+#usr/include/boost/type_traits/msvc/typeof.hpp
+#usr/include/boost/type_traits/object_traits.hpp
+#usr/include/boost/type_traits/promote.hpp
+#usr/include/boost/type_traits/rank.hpp
+#usr/include/boost/type_traits/reference_traits.hpp
+#usr/include/boost/type_traits/remove_all_extents.hpp
+#usr/include/boost/type_traits/remove_bounds.hpp
+#usr/include/boost/type_traits/remove_const.hpp
+#usr/include/boost/type_traits/remove_cv.hpp
+#usr/include/boost/type_traits/remove_extent.hpp
+#usr/include/boost/type_traits/remove_pointer.hpp
+#usr/include/boost/type_traits/remove_reference.hpp
+#usr/include/boost/type_traits/remove_volatile.hpp
+#usr/include/boost/type_traits/same_traits.hpp
+#usr/include/boost/type_traits/transform_traits.hpp
+#usr/include/boost/type_traits/transform_traits_spec.hpp
+#usr/include/boost/type_traits/type_with_alignment.hpp
+#usr/include/boost/typeof
+#usr/include/boost/typeof/dmc
+#usr/include/boost/typeof/dmc/typeof_impl.hpp
+#usr/include/boost/typeof/encode_decode.hpp
+#usr/include/boost/typeof/encode_decode_params.hpp
+#usr/include/boost/typeof/incr_registration_group.hpp
+#usr/include/boost/typeof/int_encoding.hpp
+#usr/include/boost/typeof/integral_template_param.hpp
+#usr/include/boost/typeof/message.hpp
+#usr/include/boost/typeof/modifiers.hpp
+#usr/include/boost/typeof/msvc
+#usr/include/boost/typeof/msvc/typeof_impl.hpp
+#usr/include/boost/typeof/native.hpp
+#usr/include/boost/typeof/pointers_data_members.hpp
+#usr/include/boost/typeof/register_functions.hpp
+#usr/include/boost/typeof/register_functions_iterate.hpp
+#usr/include/boost/typeof/register_fundamental.hpp
+#usr/include/boost/typeof/register_mem_functions.hpp
+#usr/include/boost/typeof/std
+#usr/include/boost/typeof/std/bitset.hpp
+#usr/include/boost/typeof/std/complex.hpp
+#usr/include/boost/typeof/std/deque.hpp
+#usr/include/boost/typeof/std/fstream.hpp
+#usr/include/boost/typeof/std/functional.hpp
+#usr/include/boost/typeof/std/iostream.hpp
+#usr/include/boost/typeof/std/istream.hpp
+#usr/include/boost/typeof/std/iterator.hpp
+#usr/include/boost/typeof/std/list.hpp
+#usr/include/boost/typeof/std/locale.hpp
+#usr/include/boost/typeof/std/map.hpp
+#usr/include/boost/typeof/std/memory.hpp
+#usr/include/boost/typeof/std/ostream.hpp
+#usr/include/boost/typeof/std/queue.hpp
+#usr/include/boost/typeof/std/set.hpp
+#usr/include/boost/typeof/std/sstream.hpp
+#usr/include/boost/typeof/std/stack.hpp
+#usr/include/boost/typeof/std/streambuf.hpp
+#usr/include/boost/typeof/std/string.hpp
+#usr/include/boost/typeof/std/utility.hpp
+#usr/include/boost/typeof/std/valarray.hpp
+#usr/include/boost/typeof/std/vector.hpp
+#usr/include/boost/typeof/template_encoding.hpp
+#usr/include/boost/typeof/template_template_param.hpp
+#usr/include/boost/typeof/type_encoding.hpp
+#usr/include/boost/typeof/type_template_param.hpp
+#usr/include/boost/typeof/typeof.hpp
+#usr/include/boost/typeof/typeof_impl.hpp
+#usr/include/boost/typeof/unsupported.hpp
+#usr/include/boost/typeof/vector.hpp
+#usr/include/boost/typeof/vector100.hpp
+#usr/include/boost/typeof/vector150.hpp
+#usr/include/boost/typeof/vector200.hpp
+#usr/include/boost/typeof/vector50.hpp
+#usr/include/boost/units
+#usr/include/boost/units/absolute.hpp
+#usr/include/boost/units/base_dimension.hpp
+#usr/include/boost/units/base_unit.hpp
+#usr/include/boost/units/base_units
+#usr/include/boost/units/base_units/angle
+#usr/include/boost/units/base_units/angle/arcminute.hpp
+#usr/include/boost/units/base_units/angle/arcsecond.hpp
+#usr/include/boost/units/base_units/angle/degree.hpp
+#usr/include/boost/units/base_units/angle/gradian.hpp
+#usr/include/boost/units/base_units/angle/radian.hpp
+#usr/include/boost/units/base_units/angle/revolution.hpp
+#usr/include/boost/units/base_units/angle/steradian.hpp
+#usr/include/boost/units/base_units/astronomical
+#usr/include/boost/units/base_units/astronomical/astronomical_unit.hpp
+#usr/include/boost/units/base_units/astronomical/light_day.hpp
+#usr/include/boost/units/base_units/astronomical/light_hour.hpp
+#usr/include/boost/units/base_units/astronomical/light_minute.hpp
+#usr/include/boost/units/base_units/astronomical/light_second.hpp
+#usr/include/boost/units/base_units/astronomical/light_year.hpp
+#usr/include/boost/units/base_units/astronomical/parsec.hpp
+#usr/include/boost/units/base_units/cgs
+#usr/include/boost/units/base_units/cgs/biot.hpp
+#usr/include/boost/units/base_units/cgs/centimeter.hpp
+#usr/include/boost/units/base_units/cgs/gram.hpp
+#usr/include/boost/units/base_units/imperial
+#usr/include/boost/units/base_units/imperial/conversions.hpp
+#usr/include/boost/units/base_units/imperial/drachm.hpp
+#usr/include/boost/units/base_units/imperial/fluid_ounce.hpp
+#usr/include/boost/units/base_units/imperial/foot.hpp
+#usr/include/boost/units/base_units/imperial/furlong.hpp
+#usr/include/boost/units/base_units/imperial/gallon.hpp
+#usr/include/boost/units/base_units/imperial/gill.hpp
+#usr/include/boost/units/base_units/imperial/grain.hpp
+#usr/include/boost/units/base_units/imperial/hundredweight.hpp
+#usr/include/boost/units/base_units/imperial/inch.hpp
+#usr/include/boost/units/base_units/imperial/league.hpp
+#usr/include/boost/units/base_units/imperial/mile.hpp
+#usr/include/boost/units/base_units/imperial/ounce.hpp
+#usr/include/boost/units/base_units/imperial/pint.hpp
+#usr/include/boost/units/base_units/imperial/pound.hpp
+#usr/include/boost/units/base_units/imperial/quart.hpp
+#usr/include/boost/units/base_units/imperial/quarter.hpp
+#usr/include/boost/units/base_units/imperial/stone.hpp
+#usr/include/boost/units/base_units/imperial/thou.hpp
+#usr/include/boost/units/base_units/imperial/ton.hpp
+#usr/include/boost/units/base_units/imperial/yard.hpp
+#usr/include/boost/units/base_units/metric
+#usr/include/boost/units/base_units/metric/angstrom.hpp
+#usr/include/boost/units/base_units/metric/are.hpp
+#usr/include/boost/units/base_units/metric/atmosphere.hpp
+#usr/include/boost/units/base_units/metric/bar.hpp
+#usr/include/boost/units/base_units/metric/barn.hpp
+#usr/include/boost/units/base_units/metric/day.hpp
+#usr/include/boost/units/base_units/metric/fermi.hpp
+#usr/include/boost/units/base_units/metric/hectare.hpp
+#usr/include/boost/units/base_units/metric/hour.hpp
+#usr/include/boost/units/base_units/metric/knot.hpp
+#usr/include/boost/units/base_units/metric/liter.hpp
+#usr/include/boost/units/base_units/metric/micron.hpp
+#usr/include/boost/units/base_units/metric/minute.hpp
+#usr/include/boost/units/base_units/metric/mmHg.hpp
+#usr/include/boost/units/base_units/metric/nautical_mile.hpp
+#usr/include/boost/units/base_units/metric/ton.hpp
+#usr/include/boost/units/base_units/metric/torr.hpp
+#usr/include/boost/units/base_units/metric/year.hpp
+#usr/include/boost/units/base_units/si
+#usr/include/boost/units/base_units/si/ampere.hpp
+#usr/include/boost/units/base_units/si/candela.hpp
+#usr/include/boost/units/base_units/si/kelvin.hpp
+#usr/include/boost/units/base_units/si/kilogram.hpp
+#usr/include/boost/units/base_units/si/meter.hpp
+#usr/include/boost/units/base_units/si/mole.hpp
+#usr/include/boost/units/base_units/si/second.hpp
+#usr/include/boost/units/base_units/temperature
+#usr/include/boost/units/base_units/temperature/celsius.hpp
+#usr/include/boost/units/base_units/temperature/conversions.hpp
+#usr/include/boost/units/base_units/temperature/fahrenheit.hpp
+#usr/include/boost/units/base_units/us
+#usr/include/boost/units/base_units/us/cup.hpp
+#usr/include/boost/units/base_units/us/dram.hpp
+#usr/include/boost/units/base_units/us/fluid_dram.hpp
+#usr/include/boost/units/base_units/us/fluid_ounce.hpp
+#usr/include/boost/units/base_units/us/foot.hpp
+#usr/include/boost/units/base_units/us/gallon.hpp
+#usr/include/boost/units/base_units/us/gill.hpp
+#usr/include/boost/units/base_units/us/grain.hpp
+#usr/include/boost/units/base_units/us/hundredweight.hpp
+#usr/include/boost/units/base_units/us/inch.hpp
+#usr/include/boost/units/base_units/us/mil.hpp
+#usr/include/boost/units/base_units/us/mile.hpp
+#usr/include/boost/units/base_units/us/minim.hpp
+#usr/include/boost/units/base_units/us/ounce.hpp
+#usr/include/boost/units/base_units/us/pint.hpp
+#usr/include/boost/units/base_units/us/pound.hpp
+#usr/include/boost/units/base_units/us/pound_force.hpp
+#usr/include/boost/units/base_units/us/quart.hpp
+#usr/include/boost/units/base_units/us/tablespoon.hpp
+#usr/include/boost/units/base_units/us/teaspoon.hpp
+#usr/include/boost/units/base_units/us/ton.hpp
+#usr/include/boost/units/base_units/us/yard.hpp
+#usr/include/boost/units/cmath.hpp
+#usr/include/boost/units/config.hpp
+#usr/include/boost/units/conversion.hpp
+#usr/include/boost/units/derived_dimension.hpp
+#usr/include/boost/units/detail
+#usr/include/boost/units/detail/absolute_impl.hpp
+#usr/include/boost/units/detail/cmath_impl.hpp
+#usr/include/boost/units/detail/conversion_impl.hpp
+#usr/include/boost/units/detail/dim_impl.hpp
+#usr/include/boost/units/detail/dimension_impl.hpp
+#usr/include/boost/units/detail/dimension_list.hpp
+#usr/include/boost/units/detail/dimensionless_unit.hpp
+#usr/include/boost/units/detail/heterogeneous_conversion.hpp
+#usr/include/boost/units/detail/linear_algebra.hpp
+#usr/include/boost/units/detail/one.hpp
+#usr/include/boost/units/detail/ordinal.hpp
+#usr/include/boost/units/detail/prevent_redefinition.hpp
+#usr/include/boost/units/detail/push_front_if.hpp
+#usr/include/boost/units/detail/push_front_or_add.hpp
+#usr/include/boost/units/detail/sort.hpp
+#usr/include/boost/units/detail/static_rational_power.hpp
+#usr/include/boost/units/detail/unscale.hpp
+#usr/include/boost/units/detail/utility.hpp
+#usr/include/boost/units/dim.hpp
+#usr/include/boost/units/dimension.hpp
+#usr/include/boost/units/dimensionless_quantity.hpp
+#usr/include/boost/units/dimensionless_type.hpp
+#usr/include/boost/units/dimensionless_unit.hpp
+#usr/include/boost/units/get_dimension.hpp
+#usr/include/boost/units/get_system.hpp
+#usr/include/boost/units/heterogeneous_system.hpp
+#usr/include/boost/units/homogeneous_system.hpp
+#usr/include/boost/units/io.hpp
+#usr/include/boost/units/is_dim.hpp
+#usr/include/boost/units/is_dimension_list.hpp
+#usr/include/boost/units/is_dimensionless.hpp
+#usr/include/boost/units/is_dimensionless_quantity.hpp
+#usr/include/boost/units/is_dimensionless_unit.hpp
+#usr/include/boost/units/is_quantity.hpp
+#usr/include/boost/units/is_quantity_of_dimension.hpp
+#usr/include/boost/units/is_quantity_of_system.hpp
+#usr/include/boost/units/is_unit.hpp
+#usr/include/boost/units/is_unit_of_dimension.hpp
+#usr/include/boost/units/is_unit_of_system.hpp
+#usr/include/boost/units/lambda.hpp
+#usr/include/boost/units/limits.hpp
+#usr/include/boost/units/make_scaled_unit.hpp
+#usr/include/boost/units/make_system.hpp
+#usr/include/boost/units/operators.hpp
+#usr/include/boost/units/physical_dimensions
+#usr/include/boost/units/physical_dimensions.hpp
+#usr/include/boost/units/physical_dimensions/absorbed_dose.hpp
+#usr/include/boost/units/physical_dimensions/acceleration.hpp
+#usr/include/boost/units/physical_dimensions/action.hpp
+#usr/include/boost/units/physical_dimensions/activity.hpp
+#usr/include/boost/units/physical_dimensions/amount.hpp
+#usr/include/boost/units/physical_dimensions/angular_acceleration.hpp
+#usr/include/boost/units/physical_dimensions/angular_momentum.hpp
+#usr/include/boost/units/physical_dimensions/angular_velocity.hpp
+#usr/include/boost/units/physical_dimensions/area.hpp
+#usr/include/boost/units/physical_dimensions/capacitance.hpp
+#usr/include/boost/units/physical_dimensions/conductance.hpp
+#usr/include/boost/units/physical_dimensions/conductivity.hpp
+#usr/include/boost/units/physical_dimensions/current.hpp
+#usr/include/boost/units/physical_dimensions/dose_equivalent.hpp
+#usr/include/boost/units/physical_dimensions/dynamic_viscosity.hpp
+#usr/include/boost/units/physical_dimensions/electric_charge.hpp
+#usr/include/boost/units/physical_dimensions/electric_potential.hpp
+#usr/include/boost/units/physical_dimensions/energy.hpp
+#usr/include/boost/units/physical_dimensions/energy_density.hpp
+#usr/include/boost/units/physical_dimensions/force.hpp
+#usr/include/boost/units/physical_dimensions/frequency.hpp
+#usr/include/boost/units/physical_dimensions/heat_capacity.hpp
+#usr/include/boost/units/physical_dimensions/illuminance.hpp
+#usr/include/boost/units/physical_dimensions/impedance.hpp
+#usr/include/boost/units/physical_dimensions/inductance.hpp
+#usr/include/boost/units/physical_dimensions/kinematic_viscosity.hpp
+#usr/include/boost/units/physical_dimensions/length.hpp
+#usr/include/boost/units/physical_dimensions/luminance.hpp
+#usr/include/boost/units/physical_dimensions/luminous_flux.hpp
+#usr/include/boost/units/physical_dimensions/luminous_intensity.hpp
+#usr/include/boost/units/physical_dimensions/magnetic_field_intensity.hpp
+#usr/include/boost/units/physical_dimensions/magnetic_flux.hpp
+#usr/include/boost/units/physical_dimensions/magnetic_flux_density.hpp
+#usr/include/boost/units/physical_dimensions/mass.hpp
+#usr/include/boost/units/physical_dimensions/mass_density.hpp
+#usr/include/boost/units/physical_dimensions/molar_energy.hpp
+#usr/include/boost/units/physical_dimensions/molar_heat_capacity.hpp
+#usr/include/boost/units/physical_dimensions/moment_of_inertia.hpp
+#usr/include/boost/units/physical_dimensions/momentum.hpp
+#usr/include/boost/units/physical_dimensions/permeability.hpp
+#usr/include/boost/units/physical_dimensions/permittivity.hpp
+#usr/include/boost/units/physical_dimensions/plane_angle.hpp
+#usr/include/boost/units/physical_dimensions/power.hpp
+#usr/include/boost/units/physical_dimensions/pressure.hpp
+#usr/include/boost/units/physical_dimensions/reluctance.hpp
+#usr/include/boost/units/physical_dimensions/resistance.hpp
+#usr/include/boost/units/physical_dimensions/resistivity.hpp
+#usr/include/boost/units/physical_dimensions/solid_angle.hpp
+#usr/include/boost/units/physical_dimensions/specific_energy.hpp
+#usr/include/boost/units/physical_dimensions/specific_heat_capacity.hpp
+#usr/include/boost/units/physical_dimensions/specific_volume.hpp
+#usr/include/boost/units/physical_dimensions/stress.hpp
+#usr/include/boost/units/physical_dimensions/surface_density.hpp
+#usr/include/boost/units/physical_dimensions/surface_tension.hpp
+#usr/include/boost/units/physical_dimensions/temperature.hpp
+#usr/include/boost/units/physical_dimensions/thermal_conductivity.hpp
+#usr/include/boost/units/physical_dimensions/time.hpp
+#usr/include/boost/units/physical_dimensions/torque.hpp
+#usr/include/boost/units/physical_dimensions/velocity.hpp
+#usr/include/boost/units/physical_dimensions/volume.hpp
+#usr/include/boost/units/physical_dimensions/wavenumber.hpp
+#usr/include/boost/units/pow.hpp
+#usr/include/boost/units/quantity.hpp
+#usr/include/boost/units/reduce_unit.hpp
+#usr/include/boost/units/scale.hpp
+#usr/include/boost/units/scaled_base_unit.hpp
+#usr/include/boost/units/static_constant.hpp
+#usr/include/boost/units/static_rational.hpp
+#usr/include/boost/units/systems
+#usr/include/boost/units/systems/abstract.hpp
+#usr/include/boost/units/systems/angle
+#usr/include/boost/units/systems/angle/degrees.hpp
+#usr/include/boost/units/systems/angle/gradians.hpp
+#usr/include/boost/units/systems/angle/revolutions.hpp
+#usr/include/boost/units/systems/cgs
+#usr/include/boost/units/systems/cgs.hpp
+#usr/include/boost/units/systems/cgs/acceleration.hpp
+#usr/include/boost/units/systems/cgs/area.hpp
+#usr/include/boost/units/systems/cgs/base.hpp
+#usr/include/boost/units/systems/cgs/current.hpp
+#usr/include/boost/units/systems/cgs/dimensionless.hpp
+#usr/include/boost/units/systems/cgs/dynamic_viscosity.hpp
+#usr/include/boost/units/systems/cgs/energy.hpp
+#usr/include/boost/units/systems/cgs/force.hpp
+#usr/include/boost/units/systems/cgs/frequency.hpp
+#usr/include/boost/units/systems/cgs/io.hpp
+#usr/include/boost/units/systems/cgs/kinematic_viscosity.hpp
+#usr/include/boost/units/systems/cgs/length.hpp
+#usr/include/boost/units/systems/cgs/mass.hpp
+#usr/include/boost/units/systems/cgs/mass_density.hpp
+#usr/include/boost/units/systems/cgs/momentum.hpp
+#usr/include/boost/units/systems/cgs/power.hpp
+#usr/include/boost/units/systems/cgs/pressure.hpp
+#usr/include/boost/units/systems/cgs/time.hpp
+#usr/include/boost/units/systems/cgs/velocity.hpp
+#usr/include/boost/units/systems/cgs/volume.hpp
+#usr/include/boost/units/systems/cgs/wavenumber.hpp
+#usr/include/boost/units/systems/detail
+#usr/include/boost/units/systems/detail/constants.hpp
+#usr/include/boost/units/systems/si
+#usr/include/boost/units/systems/si.hpp
+#usr/include/boost/units/systems/si/absorbed_dose.hpp
+#usr/include/boost/units/systems/si/acceleration.hpp
+#usr/include/boost/units/systems/si/action.hpp
+#usr/include/boost/units/systems/si/activity.hpp
+#usr/include/boost/units/systems/si/amount.hpp
+#usr/include/boost/units/systems/si/angular_acceleration.hpp
+#usr/include/boost/units/systems/si/angular_momentum.hpp
+#usr/include/boost/units/systems/si/angular_velocity.hpp
+#usr/include/boost/units/systems/si/area.hpp
+#usr/include/boost/units/systems/si/base.hpp
+#usr/include/boost/units/systems/si/capacitance.hpp
+#usr/include/boost/units/systems/si/catalytic_activity.hpp
+#usr/include/boost/units/systems/si/codata
+#usr/include/boost/units/systems/si/codata/alpha_constants.hpp
+#usr/include/boost/units/systems/si/codata/atomic-nuclear_constants.hpp
+#usr/include/boost/units/systems/si/codata/deuteron_constants.hpp
+#usr/include/boost/units/systems/si/codata/electromagnetic_constants.hpp
+#usr/include/boost/units/systems/si/codata/electron_constants.hpp
+#usr/include/boost/units/systems/si/codata/helion_constants.hpp
+#usr/include/boost/units/systems/si/codata/muon_constants.hpp
+#usr/include/boost/units/systems/si/codata/neutron_constants.hpp
+#usr/include/boost/units/systems/si/codata/physico-chemical_constants.hpp
+#usr/include/boost/units/systems/si/codata/proton_constants.hpp
+#usr/include/boost/units/systems/si/codata/tau_constants.hpp
+#usr/include/boost/units/systems/si/codata/triton_constants.hpp
+#usr/include/boost/units/systems/si/codata/typedefs.hpp
+#usr/include/boost/units/systems/si/codata/universal_constants.hpp
+#usr/include/boost/units/systems/si/codata_constants.hpp
+#usr/include/boost/units/systems/si/conductance.hpp
+#usr/include/boost/units/systems/si/conductivity.hpp
+#usr/include/boost/units/systems/si/current.hpp
+#usr/include/boost/units/systems/si/dimensionless.hpp
+#usr/include/boost/units/systems/si/dose_equivalent.hpp
+#usr/include/boost/units/systems/si/dynamic_viscosity.hpp
+#usr/include/boost/units/systems/si/electric_charge.hpp
+#usr/include/boost/units/systems/si/electric_potential.hpp
+#usr/include/boost/units/systems/si/energy.hpp
+#usr/include/boost/units/systems/si/force.hpp
+#usr/include/boost/units/systems/si/frequency.hpp
+#usr/include/boost/units/systems/si/illuminance.hpp
+#usr/include/boost/units/systems/si/impedance.hpp
+#usr/include/boost/units/systems/si/inductance.hpp
+#usr/include/boost/units/systems/si/io.hpp
+#usr/include/boost/units/systems/si/kinematic_viscosity.hpp
+#usr/include/boost/units/systems/si/length.hpp
+#usr/include/boost/units/systems/si/luminous_flux.hpp
+#usr/include/boost/units/systems/si/luminous_intensity.hpp
+#usr/include/boost/units/systems/si/magnetic_field_intensity.hpp
+#usr/include/boost/units/systems/si/magnetic_flux.hpp
+#usr/include/boost/units/systems/si/magnetic_flux_density.hpp
+#usr/include/boost/units/systems/si/mass.hpp
+#usr/include/boost/units/systems/si/mass_density.hpp
+#usr/include/boost/units/systems/si/moment_of_inertia.hpp
+#usr/include/boost/units/systems/si/momentum.hpp
+#usr/include/boost/units/systems/si/permeability.hpp
+#usr/include/boost/units/systems/si/permittivity.hpp
+#usr/include/boost/units/systems/si/plane_angle.hpp
+#usr/include/boost/units/systems/si/power.hpp
+#usr/include/boost/units/systems/si/prefixes.hpp
+#usr/include/boost/units/systems/si/pressure.hpp
+#usr/include/boost/units/systems/si/reluctance.hpp
+#usr/include/boost/units/systems/si/resistance.hpp
+#usr/include/boost/units/systems/si/resistivity.hpp
+#usr/include/boost/units/systems/si/solid_angle.hpp
+#usr/include/boost/units/systems/si/surface_density.hpp
+#usr/include/boost/units/systems/si/surface_tension.hpp
+#usr/include/boost/units/systems/si/temperature.hpp
+#usr/include/boost/units/systems/si/time.hpp
+#usr/include/boost/units/systems/si/torque.hpp
+#usr/include/boost/units/systems/si/velocity.hpp
+#usr/include/boost/units/systems/si/volume.hpp
+#usr/include/boost/units/systems/si/wavenumber.hpp
+#usr/include/boost/units/systems/temperature
+#usr/include/boost/units/systems/temperature/celsius.hpp
+#usr/include/boost/units/systems/temperature/fahrenheit.hpp
+#usr/include/boost/units/unit.hpp
+#usr/include/boost/units/units_fwd.hpp
+#usr/include/boost/unordered
+#usr/include/boost/unordered/detail
+#usr/include/boost/unordered/detail/allocate.hpp
+#usr/include/boost/unordered/detail/buckets.hpp
+#usr/include/boost/unordered/detail/equivalent.hpp
+#usr/include/boost/unordered/detail/extract_key.hpp
+#usr/include/boost/unordered/detail/fwd.hpp
+#usr/include/boost/unordered/detail/table.hpp
+#usr/include/boost/unordered/detail/unique.hpp
+#usr/include/boost/unordered/detail/util.hpp
+#usr/include/boost/unordered/unordered_map.hpp
+#usr/include/boost/unordered/unordered_map_fwd.hpp
+#usr/include/boost/unordered/unordered_set.hpp
+#usr/include/boost/unordered/unordered_set_fwd.hpp
+#usr/include/boost/unordered_map.hpp
+#usr/include/boost/unordered_set.hpp
+#usr/include/boost/utility
+#usr/include/boost/utility.hpp
+#usr/include/boost/utility/addressof.hpp
+#usr/include/boost/utility/base_from_member.hpp
+#usr/include/boost/utility/binary.hpp
+#usr/include/boost/utility/compare_pointees.hpp
+#usr/include/boost/utility/declval.hpp
+#usr/include/boost/utility/detail
+#usr/include/boost/utility/detail/in_place_factory_prefix.hpp
+#usr/include/boost/utility/detail/in_place_factory_suffix.hpp
+#usr/include/boost/utility/detail/result_of_iterate.hpp
+#usr/include/boost/utility/empty_deleter.hpp
+#usr/include/boost/utility/enable_if.hpp
+#usr/include/boost/utility/explicit_operator_bool.hpp
+#usr/include/boost/utility/identity_type.hpp
+#usr/include/boost/utility/in_place_factory.hpp
+#usr/include/boost/utility/result_of.hpp
+#usr/include/boost/utility/string_ref.hpp
+#usr/include/boost/utility/string_ref_fwd.hpp
+#usr/include/boost/utility/swap.hpp
+#usr/include/boost/utility/typed_in_place_factory.hpp
+#usr/include/boost/utility/value_init.hpp
+#usr/include/boost/uuid
+#usr/include/boost/uuid/name_generator.hpp
+#usr/include/boost/uuid/nil_generator.hpp
+#usr/include/boost/uuid/random_generator.hpp
+#usr/include/boost/uuid/seed_rng.hpp
+#usr/include/boost/uuid/sha1.hpp
+#usr/include/boost/uuid/string_generator.hpp
+#usr/include/boost/uuid/uuid.hpp
+#usr/include/boost/uuid/uuid_generators.hpp
+#usr/include/boost/uuid/uuid_io.hpp
+#usr/include/boost/uuid/uuid_serialize.hpp
+#usr/include/boost/variant
+#usr/include/boost/variant.hpp
+#usr/include/boost/variant/apply_visitor.hpp
+#usr/include/boost/variant/bad_visit.hpp
+#usr/include/boost/variant/detail
+#usr/include/boost/variant/detail/apply_visitor_binary.hpp
+#usr/include/boost/variant/detail/apply_visitor_delayed.hpp
+#usr/include/boost/variant/detail/apply_visitor_unary.hpp
+#usr/include/boost/variant/detail/backup_holder.hpp
+#usr/include/boost/variant/detail/bool_trait_def.hpp
+#usr/include/boost/variant/detail/bool_trait_undef.hpp
+#usr/include/boost/variant/detail/cast_storage.hpp
+#usr/include/boost/variant/detail/config.hpp
+#usr/include/boost/variant/detail/enable_recursive.hpp
+#usr/include/boost/variant/detail/enable_recursive_fwd.hpp
+#usr/include/boost/variant/detail/forced_return.hpp
+#usr/include/boost/variant/detail/generic_result_type.hpp
+#usr/include/boost/variant/detail/hash_variant.hpp
+#usr/include/boost/variant/detail/initializer.hpp
+#usr/include/boost/variant/detail/make_variant_list.hpp
+#usr/include/boost/variant/detail/move.hpp
+#usr/include/boost/variant/detail/over_sequence.hpp
+#usr/include/boost/variant/detail/substitute.hpp
+#usr/include/boost/variant/detail/substitute_fwd.hpp
+#usr/include/boost/variant/detail/variant_io.hpp
+#usr/include/boost/variant/detail/visitation_impl.hpp
+#usr/include/boost/variant/get.hpp
+#usr/include/boost/variant/multivisitors.hpp
+#usr/include/boost/variant/recursive_variant.hpp
+#usr/include/boost/variant/recursive_wrapper.hpp
+#usr/include/boost/variant/recursive_wrapper_fwd.hpp
+#usr/include/boost/variant/static_visitor.hpp
+#usr/include/boost/variant/variant.hpp
+#usr/include/boost/variant/variant_fwd.hpp
+#usr/include/boost/variant/visitor_ptr.hpp
+#usr/include/boost/version.hpp
+#usr/include/boost/visit_each.hpp
+#usr/include/boost/wave
+#usr/include/boost/wave.hpp
+#usr/include/boost/wave/cpp_context.hpp
+#usr/include/boost/wave/cpp_exceptions.hpp
+#usr/include/boost/wave/cpp_iteration_context.hpp
+#usr/include/boost/wave/cpp_throw.hpp
+#usr/include/boost/wave/cpplexer
+#usr/include/boost/wave/cpplexer/convert_trigraphs.hpp
+#usr/include/boost/wave/cpplexer/cpp_lex_interface.hpp
+#usr/include/boost/wave/cpplexer/cpp_lex_interface_generator.hpp
+#usr/include/boost/wave/cpplexer/cpp_lex_iterator.hpp
+#usr/include/boost/wave/cpplexer/cpp_lex_token.hpp
+#usr/include/boost/wave/cpplexer/cpplexer_exceptions.hpp
+#usr/include/boost/wave/cpplexer/detect_include_guards.hpp
+#usr/include/boost/wave/cpplexer/re2clex
+#usr/include/boost/wave/cpplexer/re2clex/aq.hpp
+#usr/include/boost/wave/cpplexer/re2clex/cpp_re.hpp
+#usr/include/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp
+#usr/include/boost/wave/cpplexer/re2clex/scanner.hpp
+#usr/include/boost/wave/cpplexer/token_cache.hpp
+#usr/include/boost/wave/cpplexer/validate_universal_char.hpp
+#usr/include/boost/wave/grammars
+#usr/include/boost/wave/grammars/cpp_chlit_grammar.hpp
+#usr/include/boost/wave/grammars/cpp_defined_grammar.hpp
+#usr/include/boost/wave/grammars/cpp_defined_grammar_gen.hpp
+#usr/include/boost/wave/grammars/cpp_expression_grammar.hpp
+#usr/include/boost/wave/grammars/cpp_expression_grammar_gen.hpp
+#usr/include/boost/wave/grammars/cpp_expression_value.hpp
+#usr/include/boost/wave/grammars/cpp_grammar.hpp
+#usr/include/boost/wave/grammars/cpp_grammar_gen.hpp
+#usr/include/boost/wave/grammars/cpp_intlit_grammar.hpp
+#usr/include/boost/wave/grammars/cpp_literal_grammar_gen.hpp
+#usr/include/boost/wave/grammars/cpp_predef_macros_gen.hpp
+#usr/include/boost/wave/grammars/cpp_predef_macros_grammar.hpp
+#usr/include/boost/wave/grammars/cpp_value_error.hpp
+#usr/include/boost/wave/language_support.hpp
+#usr/include/boost/wave/preprocessing_hooks.hpp
+#usr/include/boost/wave/token_ids.hpp
+#usr/include/boost/wave/util
+#usr/include/boost/wave/util/cpp_ifblock.hpp
+#usr/include/boost/wave/util/cpp_include_paths.hpp
+#usr/include/boost/wave/util/cpp_iterator.hpp
+#usr/include/boost/wave/util/cpp_macromap.hpp
+#usr/include/boost/wave/util/cpp_macromap_predef.hpp
+#usr/include/boost/wave/util/cpp_macromap_utils.hpp
+#usr/include/boost/wave/util/file_position.hpp
+#usr/include/boost/wave/util/filesystem_compatibility.hpp
+#usr/include/boost/wave/util/flex_string.hpp
+#usr/include/boost/wave/util/functor_input.hpp
+#usr/include/boost/wave/util/insert_whitespace_detection.hpp
+#usr/include/boost/wave/util/interpret_pragma.hpp
+#usr/include/boost/wave/util/iteration_context.hpp
+#usr/include/boost/wave/util/macro_definition.hpp
+#usr/include/boost/wave/util/macro_helpers.hpp
+#usr/include/boost/wave/util/pattern_parser.hpp
+#usr/include/boost/wave/util/symbol_table.hpp
+#usr/include/boost/wave/util/time_conversion_helper.hpp
+#usr/include/boost/wave/util/transform_iterator.hpp
+#usr/include/boost/wave/util/unput_queue_iterator.hpp
+#usr/include/boost/wave/wave_config.hpp
+#usr/include/boost/wave/wave_config_constant.hpp
+#usr/include/boost/wave/wave_version.hpp
+#usr/include/boost/wave/whitespace_handling.hpp
+#usr/include/boost/weak_ptr.hpp
+#usr/include/boost/xpressive
+#usr/include/boost/xpressive/basic_regex.hpp
+#usr/include/boost/xpressive/detail
+#usr/include/boost/xpressive/detail/core
+#usr/include/boost/xpressive/detail/core/access.hpp
+#usr/include/boost/xpressive/detail/core/action.hpp
+#usr/include/boost/xpressive/detail/core/adaptor.hpp
+#usr/include/boost/xpressive/detail/core/finder.hpp
+#usr/include/boost/xpressive/detail/core/flow_control.hpp
+#usr/include/boost/xpressive/detail/core/icase.hpp
+#usr/include/boost/xpressive/detail/core/linker.hpp
+#usr/include/boost/xpressive/detail/core/list.hpp
+#usr/include/boost/xpressive/detail/core/matcher
+#usr/include/boost/xpressive/detail/core/matcher/action_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/alternate_end_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/alternate_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/any_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/assert_bol_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/assert_bos_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/assert_eol_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/assert_eos_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/assert_line_base.hpp
+#usr/include/boost/xpressive/detail/core/matcher/assert_word_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/attr_begin_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/attr_end_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/attr_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/charset_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/end_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/epsilon_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/keeper_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/literal_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/logical_newline_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/lookahead_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/lookbehind_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/mark_begin_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/mark_end_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/mark_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/optional_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/posix_charset_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/predicate_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/range_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/regex_byref_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/regex_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/repeat_begin_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/repeat_end_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/set_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/simple_repeat_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/string_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matcher/true_matcher.hpp
+#usr/include/boost/xpressive/detail/core/matchers.hpp
+#usr/include/boost/xpressive/detail/core/optimize.hpp
+#usr/include/boost/xpressive/detail/core/peeker.hpp
+#usr/include/boost/xpressive/detail/core/quant_style.hpp
+#usr/include/boost/xpressive/detail/core/regex_domain.hpp
+#usr/include/boost/xpressive/detail/core/regex_impl.hpp
+#usr/include/boost/xpressive/detail/core/results_cache.hpp
+#usr/include/boost/xpressive/detail/core/state.hpp
+#usr/include/boost/xpressive/detail/core/sub_match_impl.hpp
+#usr/include/boost/xpressive/detail/core/sub_match_vector.hpp
+#usr/include/boost/xpressive/detail/detail_fwd.hpp
+#usr/include/boost/xpressive/detail/dynamic
+#usr/include/boost/xpressive/detail/dynamic/dynamic.hpp
+#usr/include/boost/xpressive/detail/dynamic/matchable.hpp
+#usr/include/boost/xpressive/detail/dynamic/parse_charset.hpp
+#usr/include/boost/xpressive/detail/dynamic/parser.hpp
+#usr/include/boost/xpressive/detail/dynamic/parser_enum.hpp
+#usr/include/boost/xpressive/detail/dynamic/parser_traits.hpp
+#usr/include/boost/xpressive/detail/dynamic/sequence.hpp
+#usr/include/boost/xpressive/detail/static
+#usr/include/boost/xpressive/detail/static/compile.hpp
+#usr/include/boost/xpressive/detail/static/grammar.hpp
+#usr/include/boost/xpressive/detail/static/is_pure.hpp
+#usr/include/boost/xpressive/detail/static/modifier.hpp
+#usr/include/boost/xpressive/detail/static/placeholders.hpp
+#usr/include/boost/xpressive/detail/static/static.hpp
+#usr/include/boost/xpressive/detail/static/transforms
+#usr/include/boost/xpressive/detail/static/transforms/as_action.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_alternate.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_independent.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_inverse.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_marker.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_matcher.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_modifier.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_quantifier.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_sequence.hpp
+#usr/include/boost/xpressive/detail/static/transforms/as_set.hpp
+#usr/include/boost/xpressive/detail/static/transmogrify.hpp
+#usr/include/boost/xpressive/detail/static/type_traits.hpp
+#usr/include/boost/xpressive/detail/static/visitor.hpp
+#usr/include/boost/xpressive/detail/static/width_of.hpp
+#usr/include/boost/xpressive/detail/utility
+#usr/include/boost/xpressive/detail/utility/algorithm.hpp
+#usr/include/boost/xpressive/detail/utility/any.hpp
+#usr/include/boost/xpressive/detail/utility/boyer_moore.hpp
+#usr/include/boost/xpressive/detail/utility/chset
+#usr/include/boost/xpressive/detail/utility/chset/basic_chset.hpp
+#usr/include/boost/xpressive/detail/utility/chset/basic_chset.ipp
+#usr/include/boost/xpressive/detail/utility/chset/chset.hpp
+#usr/include/boost/xpressive/detail/utility/chset/range_run.hpp
+#usr/include/boost/xpressive/detail/utility/chset/range_run.ipp
+#usr/include/boost/xpressive/detail/utility/cons.hpp
+#usr/include/boost/xpressive/detail/utility/counted_base.hpp
+#usr/include/boost/xpressive/detail/utility/dont_care.hpp
+#usr/include/boost/xpressive/detail/utility/hash_peek_bitset.hpp
+#usr/include/boost/xpressive/detail/utility/ignore_unused.hpp
+#usr/include/boost/xpressive/detail/utility/literals.hpp
+#usr/include/boost/xpressive/detail/utility/never_true.hpp
+#usr/include/boost/xpressive/detail/utility/save_restore.hpp
+#usr/include/boost/xpressive/detail/utility/sequence_stack.hpp
+#usr/include/boost/xpressive/detail/utility/symbols.hpp
+#usr/include/boost/xpressive/detail/utility/tracking_ptr.hpp
+#usr/include/boost/xpressive/detail/utility/traits_utils.hpp
+#usr/include/boost/xpressive/detail/utility/width.hpp
+#usr/include/boost/xpressive/match_results.hpp
+#usr/include/boost/xpressive/regex_actions.hpp
+#usr/include/boost/xpressive/regex_algorithms.hpp
+#usr/include/boost/xpressive/regex_compiler.hpp
+#usr/include/boost/xpressive/regex_constants.hpp
+#usr/include/boost/xpressive/regex_error.hpp
+#usr/include/boost/xpressive/regex_iterator.hpp
+#usr/include/boost/xpressive/regex_primitives.hpp
+#usr/include/boost/xpressive/regex_token_iterator.hpp
+#usr/include/boost/xpressive/regex_traits.hpp
+#usr/include/boost/xpressive/sub_match.hpp
+#usr/include/boost/xpressive/traits
+#usr/include/boost/xpressive/traits/c_regex_traits.hpp
+#usr/include/boost/xpressive/traits/cpp_regex_traits.hpp
+#usr/include/boost/xpressive/traits/detail
+#usr/include/boost/xpressive/traits/detail/c_ctype.hpp
+#usr/include/boost/xpressive/traits/null_regex_traits.hpp
+#usr/include/boost/xpressive/xpressive.hpp
+#usr/include/boost/xpressive/xpressive_dynamic.hpp
+#usr/include/boost/xpressive/xpressive_fwd.hpp
+#usr/include/boost/xpressive/xpressive_static.hpp
+#usr/include/boost/xpressive/xpressive_typeof.hpp
+#usr/lib/libboost_atomic-mt.a
+#usr/lib/libboost_atomic-mt.so
+usr/lib/libboost_atomic-mt.so.1.55.0
+#usr/lib/libboost_chrono-mt.a
+#usr/lib/libboost_chrono-mt.so
+usr/lib/libboost_chrono-mt.so.1.55.0
+#usr/lib/libboost_chrono.a
+#usr/lib/libboost_chrono.so
+usr/lib/libboost_chrono.so.1.55.0
+#usr/lib/libboost_context-mt.a
+#usr/lib/libboost_context-mt.so
+usr/lib/libboost_context-mt.so.1.55.0
+#usr/lib/libboost_context.a
+#usr/lib/libboost_context.so
+usr/lib/libboost_context.so.1.55.0
+#usr/lib/libboost_coroutine-mt.a
+#usr/lib/libboost_coroutine-mt.so
+usr/lib/libboost_coroutine-mt.so.1.55.0
+#usr/lib/libboost_coroutine.a
+#usr/lib/libboost_coroutine.so
+usr/lib/libboost_coroutine.so.1.55.0
+#usr/lib/libboost_date_time-mt.a
+#usr/lib/libboost_date_time-mt.so
+usr/lib/libboost_date_time-mt.so.1.55.0
+#usr/lib/libboost_date_time.a
+#usr/lib/libboost_date_time.so
+usr/lib/libboost_date_time.so.1.55.0
+#usr/lib/libboost_exception-mt.a
+#usr/lib/libboost_exception.a
+#usr/lib/libboost_filesystem-mt.a
+#usr/lib/libboost_filesystem-mt.so
+usr/lib/libboost_filesystem-mt.so.1.55.0
+#usr/lib/libboost_filesystem.a
+#usr/lib/libboost_filesystem.so
+usr/lib/libboost_filesystem.so.1.55.0
+#usr/lib/libboost_graph-mt.a
+#usr/lib/libboost_graph-mt.so
+usr/lib/libboost_graph-mt.so.1.55.0
+#usr/lib/libboost_graph.a
+#usr/lib/libboost_graph.so
+usr/lib/libboost_graph.so.1.55.0
+#usr/lib/libboost_iostreams-mt.a
+#usr/lib/libboost_iostreams-mt.so
+usr/lib/libboost_iostreams-mt.so.1.55.0
+#usr/lib/libboost_iostreams.a
+#usr/lib/libboost_iostreams.so
+usr/lib/libboost_iostreams.so.1.55.0
+#usr/lib/libboost_locale-mt.a
+#usr/lib/libboost_locale-mt.so
+usr/lib/libboost_locale-mt.so.1.55.0
+#usr/lib/libboost_log-mt.a
+#usr/lib/libboost_log-mt.so
+usr/lib/libboost_log-mt.so.1.55.0
+#usr/lib/libboost_log.a
+#usr/lib/libboost_log.so
+usr/lib/libboost_log.so.1.55.0
+#usr/lib/libboost_log_setup-mt.a
+#usr/lib/libboost_log_setup-mt.so
+usr/lib/libboost_log_setup-mt.so.1.55.0
+#usr/lib/libboost_log_setup.a
+#usr/lib/libboost_log_setup.so
+usr/lib/libboost_log_setup.so.1.55.0
+#usr/lib/libboost_math_c99-mt.a
+#usr/lib/libboost_math_c99-mt.so
+usr/lib/libboost_math_c99-mt.so.1.55.0
+#usr/lib/libboost_math_c99.a
+#usr/lib/libboost_math_c99.so
+usr/lib/libboost_math_c99.so.1.55.0
+#usr/lib/libboost_math_c99f-mt.a
+#usr/lib/libboost_math_c99f-mt.so
+usr/lib/libboost_math_c99f-mt.so.1.55.0
+#usr/lib/libboost_math_c99f.a
+#usr/lib/libboost_math_c99f.so
+usr/lib/libboost_math_c99f.so.1.55.0
+#usr/lib/libboost_math_c99l-mt.a
+#usr/lib/libboost_math_c99l-mt.so
+usr/lib/libboost_math_c99l-mt.so.1.55.0
+#usr/lib/libboost_math_c99l.a
+#usr/lib/libboost_math_c99l.so
+#usr/lib/libboost_math_c99l.so.1.55.0
+#usr/lib/libboost_math_tr1-mt.a
+#usr/lib/libboost_math_tr1-mt.so
+usr/lib/libboost_math_tr1-mt.so.1.55.0
+#usr/lib/libboost_math_tr1.a
+#usr/lib/libboost_math_tr1.so
+usr/lib/libboost_math_tr1.so.1.55.0
+#usr/lib/libboost_math_tr1f-mt.a
+#usr/lib/libboost_math_tr1f-mt.so
+usr/lib/libboost_math_tr1f-mt.so.1.55.0
+#usr/lib/libboost_math_tr1f.a
+#usr/lib/libboost_math_tr1f.so
+usr/lib/libboost_math_tr1f.so.1.55.0
+#usr/lib/libboost_math_tr1l-mt.a
+#usr/lib/libboost_math_tr1l-mt.so
+usr/lib/libboost_math_tr1l-mt.so.1.55.0
+#usr/lib/libboost_math_tr1l.a
+#usr/lib/libboost_math_tr1l.so
+usr/lib/libboost_math_tr1l.so.1.55.0
+#usr/lib/libboost_prg_exec_monitor-mt.a
+#usr/lib/libboost_prg_exec_monitor-mt.so
+usr/lib/libboost_prg_exec_monitor-mt.so.1.55.0
+#usr/lib/libboost_prg_exec_monitor.a
+#usr/lib/libboost_prg_exec_monitor.so
+usr/lib/libboost_prg_exec_monitor.so.1.55.0
+#usr/lib/libboost_program_options-mt.a
+#usr/lib/libboost_program_options-mt.so
+usr/lib/libboost_program_options-mt.so.1.55.0
+#usr/lib/libboost_program_options.a
+#usr/lib/libboost_program_options.so
+usr/lib/libboost_program_options.so.1.55.0
+#usr/lib/libboost_random-mt.a
+#usr/lib/libboost_random-mt.so
+usr/lib/libboost_random-mt.so.1.55.0
+#usr/lib/libboost_random.a
+#usr/lib/libboost_random.so
+usr/lib/libboost_random.so.1.55.0
+#usr/lib/libboost_regex-mt.a
+#usr/lib/libboost_regex-mt.so
+usr/lib/libboost_regex-mt.so.1.55.0
+#usr/lib/libboost_regex.a
+#usr/lib/libboost_regex.so
+usr/lib/libboost_regex.so.1.55.0
+#usr/lib/libboost_serialization-mt.a
+#usr/lib/libboost_serialization-mt.so
+usr/lib/libboost_serialization-mt.so.1.55.0
+#usr/lib/libboost_serialization.a
+#usr/lib/libboost_serialization.so
+usr/lib/libboost_serialization.so.1.55.0
+#usr/lib/libboost_signals-mt.a
+#usr/lib/libboost_signals-mt.so
+usr/lib/libboost_signals-mt.so.1.55.0
+#usr/lib/libboost_signals.a
+#usr/lib/libboost_signals.so
+usr/lib/libboost_signals.so.1.55.0
+#usr/lib/libboost_system-mt.a
+#usr/lib/libboost_system-mt.so
+usr/lib/libboost_system-mt.so.1.55.0
+#usr/lib/libboost_system.a
+#usr/lib/libboost_system.so
+usr/lib/libboost_system.so.1.55.0
+#usr/lib/libboost_test_exec_monitor-mt.a
+#usr/lib/libboost_test_exec_monitor.a
+#usr/lib/libboost_thread-mt.a
+#usr/lib/libboost_thread-mt.so
+usr/lib/libboost_thread-mt.so.1.55.0
+#usr/lib/libboost_timer-mt.a
+#usr/lib/libboost_timer-mt.so
+usr/lib/libboost_timer-mt.so.1.55.0
+#usr/lib/libboost_timer.a
+#usr/lib/libboost_timer.so
+usr/lib/libboost_timer.so.1.55.0
+#usr/lib/libboost_unit_test_framework-mt.a
+#usr/lib/libboost_unit_test_framework-mt.so
+usr/lib/libboost_unit_test_framework-mt.so.1.55.0
+#usr/lib/libboost_unit_test_framework.a
+#usr/lib/libboost_unit_test_framework.so
+usr/lib/libboost_unit_test_framework.so.1.55.0
+#usr/lib/libboost_wave-mt.a
+#usr/lib/libboost_wave-mt.so
+usr/lib/libboost_wave-mt.so.1.55.0
+#usr/lib/libboost_wave.a
+#usr/lib/libboost_wave.so
+usr/lib/libboost_wave.so.1.55.0
+#usr/lib/libboost_wserialization-mt.a
+#usr/lib/libboost_wserialization-mt.so
+usr/lib/libboost_wserialization-mt.so.1.55.0
+#usr/lib/libboost_wserialization.a
+#usr/lib/libboost_wserialization.so
+usr/lib/libboost_wserialization.so.1.55.0
index 6afe6cdf8840a3fbe4be5b5dbdd2ed061b71d40c..8e5aff828ffbfe4dce1a2d39f7b49e5a31cc2a47 100644 (file)
@@ -117,6 +117,7 @@ var/ipfire/modem
 #var/ipfire/modem/defaults
 #var/ipfire/modem/settings
 var/ipfire/modem-lib.pl
+var/ipfire/network-functions.pl
 var/ipfire/net-traffic
 #var/ipfire/net-traffic/net-traffic-admin.pl
 #var/ipfire/net-traffic/net-traffic-lib.pl
index 2f0bdf741db099373dc71146f973083e7ead5c9e..f93965cea28a8279c7e27604ca02faed6868cf3e 100644 (file)
@@ -60,4 +60,7 @@ usr/lib/python2.7/site-packages/ddns/system.pyo
 #usr/share/locale/uz@Latn/LC_MESSAGES
 #usr/share/locale/uz@Latn/LC_MESSAGES/ddns.mo
 #usr/share/locale/vi/LC_MESSAGES/ddns.mo
+#usr/share/locale/zh
+#usr/share/locale/zh/LC_MESSAGES
+#usr/share/locale/zh/LC_MESSAGES/ddns.mo
 #var/ipfire/ddns/ddns.conf.sample
index b3a1c49606f1817aeffd974604200f0585532518..89f68a76ccf391f353f147c0df31cfc0519b93bd 100644 (file)
@@ -11,7 +11,6 @@ etc/fcron.hourly/info.txt
 etc/fcron.minutely/info.txt
 #etc/fcron.monthly
 etc/fcron.monthly/info.txt
-#etc/fcron.weekly
 etc/fcron.weekly/info.txt
 usr/bin/fcronsighup
 usr/bin/fcrontab
index 13cae26eb880da30124d918248af1c0ba300244f..ac4fffe95161109fc79d92f01c2551ec46d61f65 100644 (file)
@@ -1,3 +1,5 @@
+#etc/fcron.weekly
+etc/fcron.weekly/updatedb
 bin/find
 usr/bin/locate
 #usr/bin/oldfind
index db6a0009c78e41e852588cf43f26dfb9f33fc6ef..2de8123d1f4a1f735b651c149bee0f16b261bbf8 100644 (file)
@@ -1,25 +1,17 @@
 #usr/include/gmp.h
 #usr/include/gmpxx.h
-#usr/include/mp.h
 #usr/lib/libgmp.a
 #usr/lib/libgmp.la
 #usr/lib/libgmp.so
 usr/lib/libgmp.so.10
-usr/lib/libgmp.so.10.0.5
+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.2.5
-#usr/lib/libmp.a
-#usr/lib/libmp.la
-#usr/lib/libmp.so
-usr/lib/libmp.so.3
-usr/lib/libmp.so.3.1.25
+usr/lib/libgmpxx.so.4.4.0
 usr/lib/sse2/libgmp.so.10
-usr/lib/sse2/libgmp.so.10.0.5
-usr/lib/sse2/libmp.so.3
-usr/lib/sse2/libmp.so.3.1.25
+usr/lib/sse2/libgmp.so.10.2.0
 #usr/share/info/gmp.info
 #usr/share/info/gmp.info-1
 #usr/share/info/gmp.info-2
index af099ba69b7674055ea6812904fa1e5d107972f8..525c55c455af95534d87963da0e307178cddcbe9 100755 (executable)
@@ -76,13 +76,13 @@ 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/20-RL-firewall
+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/20-RL-firewall
+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
@@ -135,7 +135,6 @@ etc/rc.d/init.d/upnpd
 #etc/rc.d/init.d/vdradmin
 #etc/rc.d/init.d/vsftpd
 #etc/rc.d/init.d/watchdog
-#etc/rc.d/init.d/winbind
 etc/rc.d/init.d/wlanclient
 #etc/rc.d/init.d/xinetd
 #etc/rc.d/rc0.d
index 7fb0426750b66e718fbcf4a589513b9d81228480..3484cbb244b04f177a8fef07ddf63066f1f03409 100644 (file)
@@ -1,2 +1,3 @@
 bin/ping
 usr/bin/ping
+usr/bin/tracepath
diff --git a/config/rootfiles/common/libnl-3 b/config/rootfiles/common/libnl-3
new file mode 100644 (file)
index 0000000..0ad3c36
--- /dev/null
@@ -0,0 +1,204 @@
+#etc/libnl
+etc/libnl/classid
+etc/libnl/pktloc
+#usr/include/libnl3
+#usr/include/libnl3/netlink
+#usr/include/libnl3/netlink/addr.h
+#usr/include/libnl3/netlink/attr.h
+#usr/include/libnl3/netlink/cache-api.h
+#usr/include/libnl3/netlink/cache.h
+#usr/include/libnl3/netlink/cli
+#usr/include/libnl3/netlink/cli/addr.h
+#usr/include/libnl3/netlink/cli/class.h
+#usr/include/libnl3/netlink/cli/cls.h
+#usr/include/libnl3/netlink/cli/ct.h
+#usr/include/libnl3/netlink/cli/exp.h
+#usr/include/libnl3/netlink/cli/link.h
+#usr/include/libnl3/netlink/cli/neigh.h
+#usr/include/libnl3/netlink/cli/qdisc.h
+#usr/include/libnl3/netlink/cli/route.h
+#usr/include/libnl3/netlink/cli/rule.h
+#usr/include/libnl3/netlink/cli/tc.h
+#usr/include/libnl3/netlink/cli/utils.h
+#usr/include/libnl3/netlink/data.h
+#usr/include/libnl3/netlink/errno.h
+#usr/include/libnl3/netlink/fib_lookup
+#usr/include/libnl3/netlink/fib_lookup/lookup.h
+#usr/include/libnl3/netlink/fib_lookup/request.h
+#usr/include/libnl3/netlink/genl
+#usr/include/libnl3/netlink/genl/ctrl.h
+#usr/include/libnl3/netlink/genl/family.h
+#usr/include/libnl3/netlink/genl/genl.h
+#usr/include/libnl3/netlink/genl/mngt.h
+#usr/include/libnl3/netlink/handlers.h
+#usr/include/libnl3/netlink/hash.h
+#usr/include/libnl3/netlink/hashtable.h
+#usr/include/libnl3/netlink/idiag
+#usr/include/libnl3/netlink/idiag/idiagnl.h
+#usr/include/libnl3/netlink/idiag/meminfo.h
+#usr/include/libnl3/netlink/idiag/msg.h
+#usr/include/libnl3/netlink/idiag/req.h
+#usr/include/libnl3/netlink/idiag/vegasinfo.h
+#usr/include/libnl3/netlink/list.h
+#usr/include/libnl3/netlink/msg.h
+#usr/include/libnl3/netlink/netfilter
+#usr/include/libnl3/netlink/netfilter/ct.h
+#usr/include/libnl3/netlink/netfilter/exp.h
+#usr/include/libnl3/netlink/netfilter/log.h
+#usr/include/libnl3/netlink/netfilter/log_msg.h
+#usr/include/libnl3/netlink/netfilter/netfilter.h
+#usr/include/libnl3/netlink/netfilter/nfnl.h
+#usr/include/libnl3/netlink/netfilter/queue.h
+#usr/include/libnl3/netlink/netfilter/queue_msg.h
+#usr/include/libnl3/netlink/netlink-compat.h
+#usr/include/libnl3/netlink/netlink-kernel.h
+#usr/include/libnl3/netlink/netlink.h
+#usr/include/libnl3/netlink/object-api.h
+#usr/include/libnl3/netlink/object.h
+#usr/include/libnl3/netlink/route
+#usr/include/libnl3/netlink/route/act
+#usr/include/libnl3/netlink/route/act/mirred.h
+#usr/include/libnl3/netlink/route/action.h
+#usr/include/libnl3/netlink/route/addr.h
+#usr/include/libnl3/netlink/route/class.h
+#usr/include/libnl3/netlink/route/classifier.h
+#usr/include/libnl3/netlink/route/cls
+#usr/include/libnl3/netlink/route/cls/basic.h
+#usr/include/libnl3/netlink/route/cls/cgroup.h
+#usr/include/libnl3/netlink/route/cls/ematch
+#usr/include/libnl3/netlink/route/cls/ematch.h
+#usr/include/libnl3/netlink/route/cls/ematch/cmp.h
+#usr/include/libnl3/netlink/route/cls/ematch/meta.h
+#usr/include/libnl3/netlink/route/cls/ematch/nbyte.h
+#usr/include/libnl3/netlink/route/cls/ematch/text.h
+#usr/include/libnl3/netlink/route/cls/fw.h
+#usr/include/libnl3/netlink/route/cls/police.h
+#usr/include/libnl3/netlink/route/cls/u32.h
+#usr/include/libnl3/netlink/route/link
+#usr/include/libnl3/netlink/route/link.h
+#usr/include/libnl3/netlink/route/link/api.h
+#usr/include/libnl3/netlink/route/link/bonding.h
+#usr/include/libnl3/netlink/route/link/bridge.h
+#usr/include/libnl3/netlink/route/link/can.h
+#usr/include/libnl3/netlink/route/link/inet.h
+#usr/include/libnl3/netlink/route/link/info-api.h
+#usr/include/libnl3/netlink/route/link/ip6tnl.h
+#usr/include/libnl3/netlink/route/link/ipgre.h
+#usr/include/libnl3/netlink/route/link/ipip.h
+#usr/include/libnl3/netlink/route/link/ipvti.h
+#usr/include/libnl3/netlink/route/link/macvlan.h
+#usr/include/libnl3/netlink/route/link/sit.h
+#usr/include/libnl3/netlink/route/link/veth.h
+#usr/include/libnl3/netlink/route/link/vlan.h
+#usr/include/libnl3/netlink/route/link/vxlan.h
+#usr/include/libnl3/netlink/route/neighbour.h
+#usr/include/libnl3/netlink/route/neightbl.h
+#usr/include/libnl3/netlink/route/nexthop.h
+#usr/include/libnl3/netlink/route/pktloc.h
+#usr/include/libnl3/netlink/route/qdisc
+#usr/include/libnl3/netlink/route/qdisc.h
+#usr/include/libnl3/netlink/route/qdisc/cbq.h
+#usr/include/libnl3/netlink/route/qdisc/dsmark.h
+#usr/include/libnl3/netlink/route/qdisc/fifo.h
+#usr/include/libnl3/netlink/route/qdisc/fq_codel.h
+#usr/include/libnl3/netlink/route/qdisc/htb.h
+#usr/include/libnl3/netlink/route/qdisc/netem.h
+#usr/include/libnl3/netlink/route/qdisc/plug.h
+#usr/include/libnl3/netlink/route/qdisc/prio.h
+#usr/include/libnl3/netlink/route/qdisc/red.h
+#usr/include/libnl3/netlink/route/qdisc/sfq.h
+#usr/include/libnl3/netlink/route/qdisc/tbf.h
+#usr/include/libnl3/netlink/route/route.h
+#usr/include/libnl3/netlink/route/rtnl.h
+#usr/include/libnl3/netlink/route/rule.h
+#usr/include/libnl3/netlink/route/tc-api.h
+#usr/include/libnl3/netlink/route/tc.h
+#usr/include/libnl3/netlink/socket.h
+#usr/include/libnl3/netlink/types.h
+#usr/include/libnl3/netlink/utils.h
+#usr/include/libnl3/netlink/version.h
+#usr/lib/libnl
+#usr/lib/libnl-3.a
+#usr/lib/libnl-3.la
+#usr/lib/libnl-3.so
+usr/lib/libnl-3.so.200
+usr/lib/libnl-3.so.200.20.0
+#usr/lib/libnl-cli-3.a
+#usr/lib/libnl-cli-3.la
+#usr/lib/libnl-cli-3.so
+usr/lib/libnl-cli-3.so.200
+usr/lib/libnl-cli-3.so.200.20.0
+#usr/lib/libnl-genl-3.a
+#usr/lib/libnl-genl-3.la
+#usr/lib/libnl-genl-3.so
+usr/lib/libnl-genl-3.so.200
+usr/lib/libnl-genl-3.so.200.20.0
+#usr/lib/libnl-idiag-3.a
+#usr/lib/libnl-idiag-3.la
+#usr/lib/libnl-idiag-3.so
+usr/lib/libnl-idiag-3.so.200
+usr/lib/libnl-idiag-3.so.200.20.0
+#usr/lib/libnl-nf-3.a
+#usr/lib/libnl-nf-3.la
+#usr/lib/libnl-nf-3.so
+usr/lib/libnl-nf-3.so.200
+usr/lib/libnl-nf-3.so.200.20.0
+#usr/lib/libnl-route-3.a
+#usr/lib/libnl-route-3.la
+#usr/lib/libnl-route-3.so
+usr/lib/libnl-route-3.so.200
+usr/lib/libnl-route-3.so.200.20.0
+#usr/lib/libnl/cli
+#usr/lib/libnl/cli/cls
+#usr/lib/libnl/cli/cls/basic.a
+#usr/lib/libnl/cli/cls/basic.la
+usr/lib/libnl/cli/cls/basic.so
+#usr/lib/libnl/cli/cls/cgroup.a
+#usr/lib/libnl/cli/cls/cgroup.la
+usr/lib/libnl/cli/cls/cgroup.so
+#usr/lib/libnl/cli/qdisc
+#usr/lib/libnl/cli/qdisc/bfifo.a
+#usr/lib/libnl/cli/qdisc/bfifo.la
+usr/lib/libnl/cli/qdisc/bfifo.so
+#usr/lib/libnl/cli/qdisc/blackhole.a
+#usr/lib/libnl/cli/qdisc/blackhole.la
+usr/lib/libnl/cli/qdisc/blackhole.so
+#usr/lib/libnl/cli/qdisc/fq_codel.a
+#usr/lib/libnl/cli/qdisc/fq_codel.la
+usr/lib/libnl/cli/qdisc/fq_codel.so
+#usr/lib/libnl/cli/qdisc/htb.a
+#usr/lib/libnl/cli/qdisc/htb.la
+usr/lib/libnl/cli/qdisc/htb.so
+#usr/lib/libnl/cli/qdisc/ingress.a
+#usr/lib/libnl/cli/qdisc/ingress.la
+usr/lib/libnl/cli/qdisc/ingress.so
+#usr/lib/libnl/cli/qdisc/pfifo.a
+#usr/lib/libnl/cli/qdisc/pfifo.la
+usr/lib/libnl/cli/qdisc/pfifo.so
+#usr/lib/libnl/cli/qdisc/plug.a
+#usr/lib/libnl/cli/qdisc/plug.la
+usr/lib/libnl/cli/qdisc/plug.so
+#usr/lib/pkgconfig/libnl-3.0.pc
+#usr/lib/pkgconfig/libnl-cli-3.0.pc
+#usr/lib/pkgconfig/libnl-genl-3.0.pc
+#usr/lib/pkgconfig/libnl-nf-3.0.pc
+#usr/lib/pkgconfig/libnl-route-3.0.pc
+#usr/sbin/genl-ctrl-list
+usr/sbin/nl-class-add
+usr/sbin/nl-class-delete
+usr/sbin/nl-class-list
+usr/sbin/nl-classid-lookup
+usr/sbin/nl-cls-add
+usr/sbin/nl-cls-delete
+usr/sbin/nl-cls-list
+usr/sbin/nl-link-list
+usr/sbin/nl-pktloc-lookup
+usr/sbin/nl-qdisc-add
+usr/sbin/nl-qdisc-delete
+usr/sbin/nl-qdisc-list
+#usr/share/man/man8/genl-ctrl-list.8
+#usr/share/man/man8/nl-classid-lookup.8
+#usr/share/man/man8/nl-pktloc-lookup.8
+#usr/share/man/man8/nl-qdisc-add.8
+#usr/share/man/man8/nl-qdisc-delete.8
+#usr/share/man/man8/nl-qdisc-list.8
index e4f33374bf5c6b0ab2ed652c5f00fbbef8ce621c..70b925b8a85918b91bb6fb1d7d0e55a7297f99b7 100644 (file)
@@ -3,13 +3,13 @@
 #usr/lib/libmpfr.a
 #usr/lib/libmpfr.la
 #usr/lib/libmpfr.so
-usr/lib/libmpfr.so.1
-usr/lib/libmpfr.so.1.2.2
+usr/lib/libmpfr.so.4
+usr/lib/libmpfr.so.4.1.2
 #usr/share/doc/mpfr
 #usr/share/doc/mpfr/AUTHORS
 #usr/share/doc/mpfr/BUGS
 #usr/share/doc/mpfr/COPYING
-#usr/share/doc/mpfr/COPYING.LIB
+#usr/share/doc/mpfr/COPYING.LESSER
 #usr/share/doc/mpfr/FAQ.html
 #usr/share/doc/mpfr/NEWS
 #usr/share/doc/mpfr/TODO
@@ -18,4 +18,5 @@ usr/lib/libmpfr.so.1.2.2
 #usr/share/doc/mpfr/examples/divworst.c
 #usr/share/doc/mpfr/examples/rndo-add.c
 #usr/share/doc/mpfr/examples/sample.c
+#usr/share/doc/mpfr/examples/version.c
 #usr/share/info/mpfr.info
index 709e0d0e06498a40042b73e7ff269764d9e671b4..46c2f83b35e9a49ed7baec899fa7c2c03c70ca98 100644 (file)
@@ -33,18 +33,18 @@ etc/ppp/standardloginscript
 #usr/include/pppd/tdb.h
 #usr/include/pppd/upap.h
 usr/lib/pppd
-usr/lib/pppd/2.4.6
-usr/lib/pppd/2.4.6/minconn.so
-usr/lib/pppd/2.4.6/openl2tp.so
-usr/lib/pppd/2.4.6/passprompt.so
-usr/lib/pppd/2.4.6/passwordfd.so
-usr/lib/pppd/2.4.6/pppoatm.so
-usr/lib/pppd/2.4.6/pppol2tp.so
-usr/lib/pppd/2.4.6/radattr.so
-usr/lib/pppd/2.4.6/radius.so
-usr/lib/pppd/2.4.6/radrealms.so
-usr/lib/pppd/2.4.6/rp-pppoe.so
-usr/lib/pppd/2.4.6/winbind.so
+usr/lib/pppd/2.4.7
+#usr/lib/pppd/2.4.7/minconn.so
+#usr/lib/pppd/2.4.7/openl2tp.so
+#usr/lib/pppd/2.4.7/passprompt.so
+#usr/lib/pppd/2.4.7/passwordfd.so
+#usr/lib/pppd/2.4.7/pppoatm.so
+#usr/lib/pppd/2.4.7/pppol2tp.so
+#usr/lib/pppd/2.4.7/radattr.so
+#usr/lib/pppd/2.4.7/radius.so
+#usr/lib/pppd/2.4.7/radrealms.so
+#usr/lib/pppd/2.4.7/rp-pppoe.so
+#usr/lib/pppd/2.4.7/winbind.so
 usr/sbin/chat
 usr/sbin/pppd
 usr/sbin/pppdump
index 7bef2c18faf091d69ad3991e0e204af885f32aff..b2ac26dd4c37c9673e880de4b07ba6d13a44b572 100644 (file)
@@ -9,10 +9,14 @@
 #usr/include/readline/tilde.h
 #usr/lib/libhistory.so
 usr/lib/libhistory.so.6
-usr/lib/libhistory.so.6.2
+usr/lib/libhistory.so.6.3
 #usr/lib/libreadline.so
 usr/lib/libreadline.so.6
-usr/lib/libreadline.so.6.2
+usr/lib/libreadline.so.6.3
+#usr/share/doc/readline
+#usr/share/doc/readline/CHANGES
+#usr/share/doc/readline/INSTALL
+#usr/share/doc/readline/README
 #usr/share/info/history.info
 #usr/share/info/readline.info
 #usr/share/info/rluserman.info
index 39bf555c17d341b1215fd4798095caaa8b494936..eb97040764578da2493d204c8d756e2ec47757b5 100644 (file)
@@ -98,6 +98,7 @@ usr/local/bin/timezone-transition
 usr/local/bin/update-lang-cache
 #usr/local/include
 #usr/local/lib
+#usr/local/lib/sse2
 #usr/local/sbin
 #usr/local/share
 #usr/local/share/doc
diff --git a/config/rootfiles/core/85/filelists/files b/config/rootfiles/core/85/filelists/files
new file mode 100644 (file)
index 0000000..168c7d1
--- /dev/null
@@ -0,0 +1,3 @@
+etc/system-release
+etc/issue
+var/ipfire/langs
diff --git a/config/rootfiles/core/85/filelists/openssl b/config/rootfiles/core/85/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/core/85/filelists/openssl-compat b/config/rootfiles/core/85/filelists/openssl-compat
new file mode 120000 (symlink)
index 0000000..c9fa421
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssl-compat
\ No newline at end of file
diff --git a/config/rootfiles/core/85/update.sh b/config/rootfiles/core/85/update.sh
new file mode 100644 (file)
index 0000000..ec9ac63
--- /dev/null
@@ -0,0 +1,56 @@
+#!/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) 2014 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=85
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+
+# Remove old files
+
+# Extract files
+extract_files
+
+# Start services
+
+# Update Language cache
+perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
+
+sync
+
+# 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/80/exclude b/config/rootfiles/oldcore/80/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
similarity index 80%
rename from config/rootfiles/core/80/filelists/files
rename to config/rootfiles/oldcore/80/filelists/files
index 822baa2de0f3f8ecf25bd731f30cea0e6239a75a..cdddaac16a0e3293bef1f0d018f0d7d13a4a6627 100644 (file)
@@ -4,9 +4,13 @@ etc/logrotate.conf
 etc/rc.d/init.d/cleanfs
 etc/rc.d/init.d/dhcrelay
 etc/rc.d/init.d/dnsmasq
+etc/rc.d/init.d/firewall
 etc/rc.d/init.d/networking/red.up/30-ddns
+etc/rc.d/init.d/rngd
 srv/web/ipfire/cgi-bin/ddns.cgi
+srv/web/ipfire/cgi-bin/ids.cgi
 srv/web/ipfire/cgi-bin/logs.cgi/firewalllogcountry.dat
+srv/web/ipfire/cgi-bin/logs.cgi/log.dat
 srv/web/ipfire/cgi-bin/netexternal.cgi
 srv/web/ipfire/cgi-bin/ovpnmain.cgi
 srv/web/ipfire/cgi-bin/proxy.cgi
diff --git a/config/rootfiles/oldcore/80/meta b/config/rootfiles/oldcore/80/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
similarity index 100%
rename from config/rootfiles/core/80/update.sh
rename to config/rootfiles/oldcore/80/update.sh
index b8b5b58e7ed942d974ca43f7e9ebd4fe0f531477..67244c654cc9e689850d27f752af00a81bf2972b 100644 (file)
@@ -60,9 +60,6 @@ rm -f \
        /opt/pakfire/db/installed/meta-libgpg-error \
        /opt/pakfire/db/rootfiles/libgpg-error
 
-# Regenerate squid configuration file
-sudo -u nobody /srv/web/ipfire/cgi-bin/proxy.cgi
-
 # Fix broken proxy configuration permissions
 chown -R nobody.nobody \
        /var/ipfire/proxy/advanced \
@@ -72,6 +69,9 @@ chown -R nobody.nobody \
        /var/ipfire/proxy/squid.conf \
        /var/ipfire/proxy/transparent
 
+# Regenerate squid configuration file
+sudo -u nobody /srv/web/ipfire/cgi-bin/proxy.cgi
+
 # Generate ddns configuration file
 sudo -u nobody /srv/web/ipfire/cgi-bin/ddns.cgi
 
diff --git a/config/rootfiles/oldcore/81/exclude b/config/rootfiles/oldcore/81/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/81/filelists/ddns b/config/rootfiles/oldcore/81/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/81/filelists/files b/config/rootfiles/oldcore/81/filelists/files
new file mode 100644 (file)
index 0000000..4b0ae1e
--- /dev/null
@@ -0,0 +1,5 @@
+etc/system-release
+etc/issue
+etc/rc.d/init.d/firewall
+srv/web/ipfire/cgi-bin/ddns.cgi
+srv/web/ipfire/cgi-bin/ovpnmain.cgi
diff --git a/config/rootfiles/oldcore/81/filelists/lzo b/config/rootfiles/oldcore/81/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/81/filelists/openssh b/config/rootfiles/oldcore/81/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/81/filelists/openssl b/config/rootfiles/oldcore/81/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/81/meta b/config/rootfiles/oldcore/81/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/81/update.sh b/config/rootfiles/oldcore/81/update.sh
new file mode 100644 (file)
index 0000000..16a559e
--- /dev/null
@@ -0,0 +1,57 @@
+#!/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) 2014 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=81
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+
+# Remove old strongswan files
+
+# Extract files
+extract_files
+
+# Start services
+/etc/init.d/apache restart
+
+# Update Language cache
+#perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
+
+sync
+
+# 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/82/exclude b/config/rootfiles/oldcore/82/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/82/filelists/armv5tel/gmp b/config/rootfiles/oldcore/82/filelists/armv5tel/gmp
new file mode 120000 (symlink)
index 0000000..2bdf30d
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/armv5tel/gmp
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/filelists/batctl b/config/rootfiles/oldcore/82/filelists/batctl
new file mode 120000 (symlink)
index 0000000..6a6edde
--- /dev/null
@@ -0,0 +1 @@
+../../../common/batctl
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/filelists/boost b/config/rootfiles/oldcore/82/filelists/boost
new file mode 120000 (symlink)
index 0000000..05246f0
--- /dev/null
@@ -0,0 +1 @@
+../../../common/boost
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/filelists/files b/config/rootfiles/oldcore/82/filelists/files
new file mode 100644 (file)
index 0000000..19e551c
--- /dev/null
@@ -0,0 +1,15 @@
+etc/system-release
+etc/issue
+etc/rc.d/init.d/firewall
+etc/rc.d/init.d/networking/red.down/20-firewall
+etc/rc.d/init.d/networking/red.up/20-firewall
+srv/web/ipfire/cgi-bin/connections.cgi
+srv/web/ipfire/cgi-bin/ddns.cgi
+srv/web/ipfire/cgi-bin/fwhosts.cgi
+srv/web/ipfire/cgi-bin/optionsfw.cgi
+srv/web/ipfire/cgi-bin/ovpnmain.cgi
+srv/web/ipfire/cgi-bin/proxy.cgi
+usr/lib/firewall/rules.pl
+var/ipfire/general-functions.pl
+var/ipfire/langs
+var/ipfire/network-functions.pl
diff --git a/config/rootfiles/oldcore/82/filelists/i586/gmp b/config/rootfiles/oldcore/82/filelists/i586/gmp
new file mode 120000 (symlink)
index 0000000..52a09cd
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/gmp
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/filelists/iputils b/config/rootfiles/oldcore/82/filelists/iputils
new file mode 120000 (symlink)
index 0000000..361c28f
--- /dev/null
@@ -0,0 +1 @@
+../../../common/iputils
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/filelists/libnl-3 b/config/rootfiles/oldcore/82/filelists/libnl-3
new file mode 120000 (symlink)
index 0000000..00e61c2
--- /dev/null
@@ -0,0 +1 @@
+../../../common/libnl-3
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/filelists/mpfr b/config/rootfiles/oldcore/82/filelists/mpfr
new file mode 120000 (symlink)
index 0000000..c8468bf
--- /dev/null
@@ -0,0 +1 @@
+../../../common/mpfr
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/filelists/openssl-compat b/config/rootfiles/oldcore/82/filelists/openssl-compat
new file mode 120000 (symlink)
index 0000000..c9fa421
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openssl-compat
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/filelists/ppp b/config/rootfiles/oldcore/82/filelists/ppp
new file mode 120000 (symlink)
index 0000000..4844a9b
--- /dev/null
@@ -0,0 +1 @@
+../../../common/ppp
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/82/meta b/config/rootfiles/oldcore/82/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/82/update.sh b/config/rootfiles/oldcore/82/update.sh
new file mode 100644 (file)
index 0000000..76677ae
--- /dev/null
@@ -0,0 +1,57 @@
+#!/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) 2014 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=82
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+
+# Remove old files
+rm -vf /etc/rc.d/init.d/networking/red.up/20-RL-firewall
+
+# Extract files
+extract_files
+
+# Start services
+
+# Update Language cache
+perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
+
+sync
+
+# 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/83/exclude b/config/rootfiles/oldcore/83/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/83/filelists/bash b/config/rootfiles/oldcore/83/filelists/bash
new file mode 120000 (symlink)
index 0000000..de970cb
--- /dev/null
@@ -0,0 +1 @@
+../../../common/bash
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/83/filelists/files b/config/rootfiles/oldcore/83/filelists/files
new file mode 100644 (file)
index 0000000..5c0b6fe
--- /dev/null
@@ -0,0 +1,6 @@
+etc/system-release
+etc/issue
+srv/web/ipfire/cgi-bin/logs.cgi/ids.dat
+srv/web/ipfire/cgi-bin/proxy.cgi
+srv/web/ipfire/cgi-bin/urlfilter.cgi
+var/ipfire/general-functions.pl
diff --git a/config/rootfiles/oldcore/83/filelists/findutils b/config/rootfiles/oldcore/83/filelists/findutils
new file mode 120000 (symlink)
index 0000000..545280a
--- /dev/null
@@ -0,0 +1 @@
+../../../common/findutils
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/83/filelists/squid b/config/rootfiles/oldcore/83/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/83/meta b/config/rootfiles/oldcore/83/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/83/update.sh b/config/rootfiles/oldcore/83/update.sh
new file mode 100644 (file)
index 0000000..c766b42
--- /dev/null
@@ -0,0 +1,59 @@
+#!/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) 2014 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=83
+for (( i=1; i<=$core; i++ ))
+do
+       rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+# Stop services
+
+# Remove old files
+
+# Extract files
+extract_files
+
+# reload init because glibc/linker changed
+telinit -u
+
+# Start services
+
+# Update Language cache
+perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
+
+sync
+
+# 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/84/exclude b/config/rootfiles/oldcore/84/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/84/filelists/bash b/config/rootfiles/oldcore/84/filelists/bash
new file mode 120000 (symlink)
index 0000000..de970cb
--- /dev/null
@@ -0,0 +1 @@
+../../../common/bash
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/84/filelists/dnsmasq b/config/rootfiles/oldcore/84/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/84/filelists/files b/config/rootfiles/oldcore/84/filelists/files
new file mode 100644 (file)
index 0000000..2cbc242
--- /dev/null
@@ -0,0 +1,11 @@
+etc/system-release
+etc/issue
+etc/rc.d/init.d/firewall
+etc/rc.d/init.d/network
+srv/web/ipfire/cgi-bin/firewall.cgi
+srv/web/ipfire/cgi-bin/fwhosts.cgi
+srv/web/ipfire/cgi-bin/urlfilter.cgi
+usr/lib/firewall/firewall-lib.pl
+usr/lib/firewall/rules.pl
+usr/local/bin/update-lang-cache
+var/ipfire/langs
diff --git a/config/rootfiles/oldcore/84/filelists/readline b/config/rootfiles/oldcore/84/filelists/readline
new file mode 120000 (symlink)
index 0000000..84209f1
--- /dev/null
@@ -0,0 +1 @@
+../../../common/readline
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/84/filelists/squid b/config/rootfiles/oldcore/84/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/84/meta b/config/rootfiles/oldcore/84/meta
new file mode 100644 (file)
index 0000000..d547fa8
--- /dev/null
@@ -0,0 +1 @@
+DEPS=""
diff --git a/config/rootfiles/oldcore/84/update.sh b/config/rootfiles/oldcore/84/update.sh
new file mode 100644 (file)
index 0000000..93a9e20
--- /dev/null
@@ -0,0 +1,60 @@
+#!/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) 2014 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=84
+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/dnsmasq stop
+
+# Remove old files
+
+# Extract files
+extract_files
+
+# Start services
+/etc/init.d/dnsmasq start
+/etc/init.d/squid start
+
+# Update Language cache
+perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
+
+sync
+
+# 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/packages/bacula b/config/rootfiles/packages/bacula
new file mode 100644 (file)
index 0000000..9084347
--- /dev/null
@@ -0,0 +1,62 @@
+#etc/bacula
+#etc/bacula/bacula
+#etc/bacula/bacula-ctl-dir
+etc/bacula/bacula-ctl-fd
+#etc/bacula/bacula-ctl-sd
+etc/bacula/bacula-fd.conf
+#etc/bacula/bacula_config
+#etc/bacula/bconsole
+#etc/bacula/bconsole.conf
+#etc/bacula/btraceback.dbx
+#etc/bacula/btraceback.gdb
+#etc/bacula/btraceback.mdb
+#etc/bacula/disk-changer
+#etc/bacula/dvd-handler
+#etc/bacula/mtx-changer
+#etc/bacula/mtx-changer.conf
+etc/rc.d/init.d/bacula
+usr/lib/bpipe-fd.so
+usr/lib/libbac-5.2.13.so
+#usr/lib/libbac.la
+#usr/lib/libbac.so
+usr/lib/libbaccfg-5.2.13.so
+#usr/lib/libbaccfg.la
+#usr/lib/libbaccfg.so
+usr/lib/libbacfind-5.2.13.so
+#usr/lib/libbacfind.la
+#usr/lib/libbacfind.so
+usr/lib/libbacpy-5.2.13.so
+#usr/lib/libbacpy.la
+#usr/lib/libbacpy.so
+#usr/sbin/bacula
+usr/sbin/bacula-fd
+#usr/sbin/bconsole
+#usr/sbin/btraceback
+#usr/share/doc/bacula
+#usr/share/doc/bacula/ChangeLog
+#usr/share/doc/bacula/INSTALL
+#usr/share/doc/bacula/LICENSE
+#usr/share/doc/bacula/README
+#usr/share/doc/bacula/ReleaseNotes
+#usr/share/doc/bacula/VERIFYING
+#usr/share/doc/bacula/technotes
+#usr/share/man/man1/bacula-bwxconsole.1.gz
+#usr/share/man/man1/bacula-tray-monitor.1.gz
+#usr/share/man/man1/bat.1.gz
+#usr/share/man/man1/bsmtp.1.gz
+#usr/share/man/man8/bacula-dir.8.gz
+#usr/share/man/man8/bacula-fd.8.gz
+#usr/share/man/man8/bacula-sd.8.gz
+#usr/share/man/man8/bacula.8.gz
+#usr/share/man/man8/bconsole.8.gz
+#usr/share/man/man8/bcopy.8.gz
+#usr/share/man/man8/bextract.8.gz
+#usr/share/man/man8/bls.8.gz
+#usr/share/man/man8/bregex.8.gz
+#usr/share/man/man8/bscan.8.gz
+#usr/share/man/man8/btape.8.gz
+#usr/share/man/man8/btraceback.8.gz
+#usr/share/man/man8/bwild.8.gz
+#usr/share/man/man8/dbcheck.8.gz
+#var/bacula
+var/bacula/working
diff --git a/config/rootfiles/packages/krb5 b/config/rootfiles/packages/krb5
new file mode 100644 (file)
index 0000000..e1e7d64
--- /dev/null
@@ -0,0 +1,165 @@
+#usr/bin/gss-client
+#usr/bin/k5srvutil
+usr/bin/kadmin
+usr/bin/kdestroy
+usr/bin/kinit
+usr/bin/klist
+usr/bin/kpasswd
+#usr/bin/krb5-config
+#usr/bin/ksu
+#usr/bin/kswitch
+#usr/bin/ktutil
+#usr/bin/kvno
+#usr/bin/sclient
+#usr/bin/sim_client
+#usr/bin/uuclient
+#usr/include/gssapi
+#usr/include/gssapi.h
+#usr/include/gssapi/gssapi.h
+#usr/include/gssapi/gssapi_ext.h
+#usr/include/gssapi/gssapi_generic.h
+#usr/include/gssapi/gssapi_krb5.h
+#usr/include/gssapi/mechglue.h
+#usr/include/gssrpc
+#usr/include/gssrpc/auth.h
+#usr/include/gssrpc/auth_gss.h
+#usr/include/gssrpc/auth_gssapi.h
+#usr/include/gssrpc/auth_unix.h
+#usr/include/gssrpc/clnt.h
+#usr/include/gssrpc/netdb.h
+#usr/include/gssrpc/pmap_clnt.h
+#usr/include/gssrpc/pmap_prot.h
+#usr/include/gssrpc/pmap_rmt.h
+#usr/include/gssrpc/rename.h
+#usr/include/gssrpc/rpc.h
+#usr/include/gssrpc/rpc_msg.h
+#usr/include/gssrpc/svc.h
+#usr/include/gssrpc/svc_auth.h
+#usr/include/gssrpc/types.h
+#usr/include/gssrpc/xdr.h
+#usr/include/kadm5
+#usr/include/kadm5/admin.h
+#usr/include/kadm5/chpass_util_strings.h
+#usr/include/kadm5/kadm_err.h
+#usr/include/kdb.h
+#usr/include/krad.h
+#usr/include/krb5
+#usr/include/krb5.h
+#usr/include/krb5/ccselect_plugin.h
+#usr/include/krb5/clpreauth_plugin.h
+#usr/include/krb5/hostrealm_plugin.h
+#usr/include/krb5/kadm5_hook_plugin.h
+#usr/include/krb5/kdcpreauth_plugin.h
+#usr/include/krb5/krb5.h
+#usr/include/krb5/localauth_plugin.h
+#usr/include/krb5/locate_plugin.h
+#usr/include/krb5/plugin.h
+#usr/include/krb5/preauth_plugin.h
+#usr/include/krb5/pwqual_plugin.h
+#usr/include/profile.h
+#usr/include/verto-module.h
+#usr/include/verto.h
+usr/lib/krb5
+usr/lib/krb5/plugins
+usr/lib/krb5/plugins/authdata
+usr/lib/krb5/plugins/kdb
+usr/lib/krb5/plugins/kdb/db2.so
+usr/lib/krb5/plugins/libkrb5
+usr/lib/krb5/plugins/preauth
+usr/lib/krb5/plugins/preauth/otp.so
+usr/lib/krb5/plugins/preauth/pkinit.so
+#usr/lib/libgssapi_krb5.so
+usr/lib/libgssapi_krb5.so.2
+usr/lib/libgssapi_krb5.so.2.2
+#usr/lib/libgssrpc.so
+usr/lib/libgssrpc.so.4
+usr/lib/libgssrpc.so.4.2
+#usr/lib/libk5crypto.so
+usr/lib/libk5crypto.so.3
+usr/lib/libk5crypto.so.3.1
+#usr/lib/libkadm5clnt.so
+#usr/lib/libkadm5clnt_mit.so
+usr/lib/libkadm5clnt_mit.so.9
+usr/lib/libkadm5clnt_mit.so.9.0
+#usr/lib/libkadm5srv.so
+#usr/lib/libkadm5srv_mit.so
+usr/lib/libkadm5srv_mit.so.9
+usr/lib/libkadm5srv_mit.so.9.0
+#usr/lib/libkdb5.so
+usr/lib/libkdb5.so.7
+usr/lib/libkdb5.so.7.0
+#usr/lib/libkrad.so
+usr/lib/libkrad.so.0
+usr/lib/libkrad.so.0.0
+#usr/lib/libkrb5.so
+usr/lib/libkrb5.so.3
+usr/lib/libkrb5.so.3.3
+#usr/lib/libkrb5support.so
+usr/lib/libkrb5support.so.0
+usr/lib/libkrb5support.so.0.1
+#usr/lib/libverto.so
+usr/lib/libverto.so.0
+usr/lib/libverto.so.0.0
+#usr/lib/pkgconfig/gssrpc.pc
+#usr/lib/pkgconfig/kadm-client.pc
+#usr/lib/pkgconfig/kadm-server.pc
+#usr/lib/pkgconfig/kdb.pc
+#usr/lib/pkgconfig/krb5-gssapi.pc
+#usr/lib/pkgconfig/krb5.pc
+#usr/lib/pkgconfig/mit-krb5-gssapi.pc
+#usr/lib/pkgconfig/mit-krb5.pc
+#usr/sbin/gss-server
+#usr/sbin/kadmin.local
+#usr/sbin/kadmind
+#usr/sbin/kdb5_util
+#usr/sbin/kprop
+#usr/sbin/kpropd
+#usr/sbin/kproplog
+#usr/sbin/krb5-send-pr
+#usr/sbin/krb5kdc
+#usr/sbin/sim_server
+#usr/sbin/sserver
+#usr/sbin/uuserver
+#usr/share/examples
+#usr/share/examples/krb5
+#usr/share/examples/krb5/kdc.conf
+#usr/share/examples/krb5/krb5.conf
+#usr/share/examples/krb5/services.append
+#usr/share/gnats
+#usr/share/gnats/mit
+#usr/share/locale/en_US
+#usr/share/locale/en_US/LC_MESSAGES
+#usr/share/locale/en_US/LC_MESSAGES/mit-krb5.mo
+#usr/share/man/cat1
+#usr/share/man/cat5
+#usr/share/man/cat8
+#usr/share/man/man1/k5srvutil.1
+#usr/share/man/man1/kadmin.1
+#usr/share/man/man1/kdestroy.1
+#usr/share/man/man1/kinit.1
+#usr/share/man/man1/klist.1
+#usr/share/man/man1/kpasswd.1
+#usr/share/man/man1/krb5-config.1
+#usr/share/man/man1/krb5-send-pr.1
+#usr/share/man/man1/ksu.1
+#usr/share/man/man1/kswitch.1
+#usr/share/man/man1/ktutil.1
+#usr/share/man/man1/kvno.1
+#usr/share/man/man1/sclient.1
+#usr/share/man/man5/.k5identity.5
+#usr/share/man/man5/.k5login.5
+#usr/share/man/man5/k5identity.5
+#usr/share/man/man5/k5login.5
+#usr/share/man/man5/kadm5.acl.5
+#usr/share/man/man5/kdc.conf.5
+#usr/share/man/man5/krb5.conf.5
+#usr/share/man/man8/kadmin.local.8
+#usr/share/man/man8/kadmind.8
+#usr/share/man/man8/kdb5_ldap_util.8
+#usr/share/man/man8/kdb5_util.8
+#usr/share/man/man8/kprop.8
+#usr/share/man/man8/kpropd.8
+#usr/share/man/man8/kproplog.8
+#usr/share/man/man8/krb5kdc.8
+#usr/share/man/man8/sserver.8
+var/lib/krb5kdc
index c30e30b406cd31fbdd5260b4b901ccf69f6b413c..f0b9536538e85de954b78f6a03bd9e4601919364 100644 (file)
@@ -1,3 +1,15 @@
 etc/rc.d/init.d/minidlna
 etc/minidlna.conf
-usr/sbin/minidlna
+usr/sbin/minidlnad
+#usr/share/locale/da/LC_MESSAGES/minidlna.mo
+#usr/share/locale/de/LC_MESSAGES/minidlna.mo
+#usr/share/locale/es/LC_MESSAGES/minidlna.mo
+#usr/share/locale/fr/LC_MESSAGES/minidlna.mo
+#usr/share/locale/it/LC_MESSAGES/minidlna.mo
+#usr/share/locale/ja/LC_MESSAGES/minidlna.mo
+#usr/share/locale/nb/LC_MESSAGES/minidlna.mo
+#usr/share/locale/nl/LC_MESSAGES/minidlna.mo
+#usr/share/locale/pl/LC_MESSAGES/minidlna.mo
+#usr/share/locale/ru/LC_MESSAGES/minidlna.mo
+#usr/share/locale/sl/LC_MESSAGES/minidlna.mo
+#usr/share/locale/sv/LC_MESSAGES/minidlna.mo
index 5778aabcd6e674ad3d995b826f99a76305cebc2d..fed3b09c441758debc9ad91c7285f1739c7145e5 100644 (file)
@@ -17,7 +17,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/Jcrop/js/jquery.Jcrop.js
 #srv/web/owncloud/3rdparty/Jcrop/js/jquery.Jcrop.min.js
 #srv/web/owncloud/3rdparty/LICENSE_INFO
-#srv/web/owncloud/3rdparty/MDB2.php
 #srv/web/owncloud/3rdparty/OS
 #srv/web/owncloud/3rdparty/OS/Guess.php
 #srv/web/owncloud/3rdparty/PEAR
@@ -235,270 +234,35 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/Patchwork/Utf8/data/translit_extra.ser
 #srv/web/owncloud/3rdparty/Pimple
 #srv/web/owncloud/3rdparty/Pimple/Pimple.php
-#srv/web/owncloud/3rdparty/Sabre
-#srv/web/owncloud/3rdparty/Sabre/CalDAV
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Backend
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Backend/Abstract.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Backend/BackendInterface.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Backend/NotificationSupport.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Backend/PDO.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Backend/SharingSupport.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Calendar.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/CalendarObject.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/CalendarQueryParser.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/CalendarQueryValidator.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/CalendarRootNode.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Exception
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Exception/InvalidComponentType.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/ICSExportPlugin.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/ICalendar.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/ICalendarObject.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/IShareableCalendar.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/ISharedCalendar.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/Collection.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/ICollection.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/INode.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/INotificationType.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/Node.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/Notification
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/Notification/Invite.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/Notification/InviteReply.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Notifications/Notification/SystemStatus.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Plugin.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Principal
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Principal/Collection.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Principal/ProxyRead.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Principal/ProxyWrite.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Principal/User.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Property
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Property/AllowedSharingModes.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Property/Invite.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Property/ScheduleCalendarTransp.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Property/SupportedCalendarComponentSet.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Property/SupportedCalendarData.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Property/SupportedCollationSet.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Schedule
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Schedule/IMip.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Schedule/IOutbox.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Schedule/Outbox.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/ShareableCalendar.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/SharedCalendar.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/SharingPlugin.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/UserCalendars.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/Version.php
-#srv/web/owncloud/3rdparty/Sabre/CalDAV/includes.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/AddressBook.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/AddressBookQueryParser.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/AddressBookRoot.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/Backend
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/Backend/Abstract.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/Backend/PDO.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/Card.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/IAddressBook.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/ICard.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/IDirectory.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/Plugin.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/Property
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/Property/SupportedAddressData.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/UserAddressBooks.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/VCFExportPlugin.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/Version.php
-#srv/web/owncloud/3rdparty/Sabre/CardDAV/includes.php
-#srv/web/owncloud/3rdparty/Sabre/DAV
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth/Backend
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth/Backend/AbstractBasic.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth/Backend/AbstractDigest.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth/Backend/Apache.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth/Backend/File.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth/Backend/PDO.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth/IBackend.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Auth/Plugin.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/GuessContentType.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/MapGetToPropFind.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/Plugin.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/favicon.ico
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/icons
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/icons/addressbook.png
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/icons/calendar.png
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/icons/card.png
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/icons/collection.png
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/icons/file.png
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/icons/parent.png
-#srv/web/owncloud/3rdparty/Sabre/DAV/Browser/assets/icons/principal.png
-#srv/web/owncloud/3rdparty/Sabre/DAV/Client.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Collection.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/BadRequest.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/Conflict.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/ConflictingLock.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/FileNotFound.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/Forbidden.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/InsufficientStorage.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/InvalidResourceType.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/LockTokenMatchesRequestUri.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/Locked.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/MethodNotAllowed.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/NotAuthenticated.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/NotFound.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/NotImplemented.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/PaymentRequired.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/PreconditionFailed.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/ReportNotSupported.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/RequestedRangeNotSatisfiable.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/ServiceUnavailable.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Exception/UnsupportedMediaType.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/FS
-#srv/web/owncloud/3rdparty/Sabre/DAV/FS/Directory.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/FS/File.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/FS/Node.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/FSExt
-#srv/web/owncloud/3rdparty/Sabre/DAV/FSExt/Directory.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/FSExt/File.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/FSExt/Node.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/File.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/ICollection.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/IExtendedCollection.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/IFile.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/INode.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/IProperties.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/IQuota.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Locks
-#srv/web/owncloud/3rdparty/Sabre/DAV/Locks/Backend
-#srv/web/owncloud/3rdparty/Sabre/DAV/Locks/Backend/Abstract.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Locks/Backend/FS.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Locks/Backend/File.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Locks/Backend/PDO.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Locks/LockInfo.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Locks/Plugin.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Mount
-#srv/web/owncloud/3rdparty/Sabre/DAV/Mount/Plugin.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Node.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/ObjectTree.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/PartialUpdate
-#srv/web/owncloud/3rdparty/Sabre/DAV/PartialUpdate/IFile.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/PartialUpdate/Plugin.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/GetLastModified.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/Href.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/HrefList.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/IHref.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/LockDiscovery.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/ResourceType.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/Response.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/ResponseList.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/SupportedLock.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Property/SupportedReportSet.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/PropertyInterface.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Server.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/ServerPlugin.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/SimpleCollection.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/SimpleFile.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/StringUtil.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/TemporaryFileFilterPlugin.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Tree
-#srv/web/owncloud/3rdparty/Sabre/DAV/Tree.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Tree/Filesystem.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/URLUtil.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/UUIDUtil.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/Version.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/XMLUtil.php
-#srv/web/owncloud/3rdparty/Sabre/DAV/includes.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/AbstractPrincipalCollection.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Exception
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Exception/AceConflict.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Exception/NeedPrivileges.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Exception/NoAbstract.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Exception/NotRecognizedPrincipal.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Exception/NotSupportedPrivilege.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/IACL.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/IPrincipal.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/IPrincipalBackend.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Plugin.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Principal.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/PrincipalBackend
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/PrincipalBackend/PDO.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/PrincipalCollection.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Property
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Property/Acl.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Property/AclRestrictions.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Property/CurrentUserPrivilegeSet.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Property/Principal.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Property/SupportedPrivilegeSet.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/Version.php
-#srv/web/owncloud/3rdparty/Sabre/DAVACL/includes.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP
-#srv/web/owncloud/3rdparty/Sabre/HTTP/AWSAuth.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP/AbstractAuth.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP/BasicAuth.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP/DigestAuth.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP/Request.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP/Response.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP/Util.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP/Version.php
-#srv/web/owncloud/3rdparty/Sabre/HTTP/includes.php
-#srv/web/owncloud/3rdparty/Sabre/VObject
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component/VAlarm.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component/VCalendar.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component/VCard.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component/VEvent.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component/VFreeBusy.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component/VJournal.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Component/VTodo.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/DateTimeParser.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/ElementList.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/FreeBusyGenerator.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Node.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Parameter.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/ParseException.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Property
-#srv/web/owncloud/3rdparty/Sabre/VObject/Property.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Property/Compound.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Property/DateTime.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Property/MultiDateTime.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Reader.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/RecurrenceIterator.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Splitter
-#srv/web/owncloud/3rdparty/Sabre/VObject/Splitter/ICalendar.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Splitter/SplitterInterface.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Splitter/VCard.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/StringUtil.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/TimeZoneUtil.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/Version.php
-#srv/web/owncloud/3rdparty/Sabre/VObject/includes.php
-#srv/web/owncloud/3rdparty/Sabre/autoload.php
 #srv/web/owncloud/3rdparty/System.php
-#srv/web/owncloud/3rdparty/XML
-#srv/web/owncloud/3rdparty/XML/Parser
-#srv/web/owncloud/3rdparty/XML/Parser.php
-#srv/web/owncloud/3rdparty/XML/Parser/Simple.php
-#srv/web/owncloud/3rdparty/class.phpmailer.php
-#srv/web/owncloud/3rdparty/class.smtp.php
+#srv/web/owncloud/3rdparty/autoload.php
+#srv/web/owncloud/3rdparty/composer
+#srv/web/owncloud/3rdparty/composer.json
+#srv/web/owncloud/3rdparty/composer.lock
+#srv/web/owncloud/3rdparty/composer/ClassLoader.php
+#srv/web/owncloud/3rdparty/composer/autoload_classmap.php
+#srv/web/owncloud/3rdparty/composer/autoload_files.php
+#srv/web/owncloud/3rdparty/composer/autoload_namespaces.php
+#srv/web/owncloud/3rdparty/composer/autoload_psr4.php
+#srv/web/owncloud/3rdparty/composer/autoload_real.php
+#srv/web/owncloud/3rdparty/composer/include_paths.php
+#srv/web/owncloud/3rdparty/composer/installed.json
 #srv/web/owncloud/3rdparty/css
 #srv/web/owncloud/3rdparty/css/chosen
-#srv/web/owncloud/3rdparty/css/chosen-sprite.png
-#srv/web/owncloud/3rdparty/css/chosen.css
 #srv/web/owncloud/3rdparty/css/chosen/chosen-sprite.png
 #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/.travis.yml
 #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
-#srv/web/owncloud/3rdparty/doctrine/common/build.xml
 #srv/web/owncloud/3rdparty/doctrine/common/composer.json
 #srv/web/owncloud/3rdparty/doctrine/common/lib
 #srv/web/owncloud/3rdparty/doctrine/common/lib/Doctrine
@@ -733,7 +497,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/doctrine/common/tests/README.markdown
 #srv/web/owncloud/3rdparty/doctrine/dbal
 #srv/web/owncloud/3rdparty/doctrine/dbal/.gitmodules
-#srv/web/owncloud/3rdparty/doctrine/dbal/.travis.yml
 #srv/web/owncloud/3rdparty/doctrine/dbal/LICENSE
 #srv/web/owncloud/3rdparty/doctrine/dbal/README.md
 #srv/web/owncloud/3rdparty/doctrine/dbal/UPGRADE
@@ -742,7 +505,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/doctrine/dbal/bin/doctrine-dbal.php
 #srv/web/owncloud/3rdparty/doctrine/dbal/bin/doctrine.php
 #srv/web/owncloud/3rdparty/doctrine/dbal/build.properties
-#srv/web/owncloud/3rdparty/doctrine/dbal/build.xml
 #srv/web/owncloud/3rdparty/doctrine/dbal/composer.json
 #srv/web/owncloud/3rdparty/doctrine/dbal/docs
 #srv/web/owncloud/3rdparty/doctrine/dbal/docs/design
@@ -1090,105 +852,6 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/fontawesome/css/font-awesome-ie7.min.css
 #srv/web/owncloud/3rdparty/fontawesome/css/font-awesome.css
 #srv/web/owncloud/3rdparty/fontawesome/css/font-awesome.min.css
-#srv/web/owncloud/3rdparty/fontawesome/docs
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/css
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/css/font-awesome-ie7.min.css
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/css/font-awesome.css
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/css/font-awesome.min.css
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/css/prettify.css
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/css/site.css
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/FontAwesome.otf
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/fontawesome-webfont.eot
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/fontawesome-webfont.svg
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/fontawesome-webfont.ttf
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/fontawesome-webfont.woff
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/museo_slab_300-webfont.eot
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/museo_slab_300-webfont.ttf
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/museo_slab_500-webfont.eot
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/museo_slab_500-webfont.ttf
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/proximanova-sbold-webfont.eot
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/proximanova-sbold-webfont.ttf
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/proximanova-webfont.eot
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/font/proximanova-webfont.ttf
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/ico
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/ico/favicon.ico
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/img
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/img/contribution-sample.png
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/img/fort_awesome.jpg
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/img/glyphicons-halflings-white.png
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/img/glyphicons-halflings.png
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/img/icon-flag.pdf
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/js
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/js/backbone.min.js
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/js/bootstrap-222.min.js
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/js/index
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/js/index/index.js
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/js/jquery-1.7.1.min.js
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/js/prettify.min.js
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/js/underscore.min.js
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/font-awesome-ie7.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/font-awesome.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/font-site.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/mixins.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/site.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/accordion.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/alerts.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/bootstrap.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/breadcrumbs.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/button-groups.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/buttons.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/carousel.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/close.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/code.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/component-animations.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/dropdowns.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/forms.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/grid.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/hero-unit.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/labels-badges.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/layouts.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/media.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/mixins.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/modals.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/navbar.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/navs.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/pager.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/pagination.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/popovers.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/progress-bars.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/reset.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/responsive-1200px-min.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/responsive-767px-max.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/responsive-768px-979px.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/responsive-navbar.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/responsive-utilities.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/responsive.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/scaffolding.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/sprites.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tables.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests/buttons.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests/css-tests.css
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests/css-tests.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests/forms-responsive.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests/forms.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests/navbar-fixed-top.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests/navbar-static-top.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tests/navbar.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/thumbnails.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/tooltip.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/type.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/utilities.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/variables.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/twbs-222/wells.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/assets/less/variables.less
-#srv/web/owncloud/3rdparty/fontawesome/docs/design.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/index.html
-#srv/web/owncloud/3rdparty/fontawesome/docs/test.html
 #srv/web/owncloud/3rdparty/fontawesome/font
 #srv/web/owncloud/3rdparty/fontawesome/font/FontAwesome.otf
 #srv/web/owncloud/3rdparty/fontawesome/font/fontawesome-webfont.eot
@@ -1269,6 +932,135 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/getid3/write.php
 #srv/web/owncloud/3rdparty/getid3/write.real.php
 #srv/web/owncloud/3rdparty/getid3/write.vorbiscomment.php
+#srv/web/owncloud/3rdparty/guzzle
+#srv/web/owncloud/3rdparty/guzzle/common
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/AbstractHasDispatcher.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Collection.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Event.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Exception
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Exception/BadMethodCallException.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Exception/ExceptionCollection.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Exception/GuzzleException.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Exception/InvalidArgumentException.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Exception/RuntimeException.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Exception/UnexpectedValueException.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/FromConfigInterface.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/HasDispatcherInterface.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/ToArrayInterface.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/Version.php
+#srv/web/owncloud/3rdparty/guzzle/common/Guzzle/Common/composer.json
+#srv/web/owncloud/3rdparty/guzzle/http
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/AbstractEntityBodyDecorator.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/CachingEntityBody.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Client.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/ClientInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Curl
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Curl/CurlHandle.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Curl/CurlMulti.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Curl/CurlMultiInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Curl/CurlMultiProxy.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Curl/CurlVersion.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Curl/RequestMediator.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/EntityBody.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/EntityBodyInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/BadResponseException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/ClientErrorResponseException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/CouldNotRewindStreamException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/CurlException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/HttpException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/MultiTransferException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/RequestException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/ServerErrorResponseException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Exception/TooManyRedirectsException.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/IoEmittingEntityBody.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/AbstractMessage.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/EntityEnclosingRequest.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/EntityEnclosingRequestInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Header
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Header.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Header/CacheControl.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Header/HeaderCollection.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Header/HeaderFactory.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Header/HeaderFactoryInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Header/HeaderInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Header/Link.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/MessageInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/PostFile.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/PostFileInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Request.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/RequestFactory.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/RequestFactoryInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/RequestInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Message/Response.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Mimetypes.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/QueryAggregator
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/QueryAggregator/CommaAggregator.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/QueryAggregator/DuplicateAggregator.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/QueryAggregator/PhpAggregator.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/QueryAggregator/QueryAggregatorInterface.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/QueryString.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/ReadLimitEntityBody.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/RedirectPlugin.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Resources
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Resources/cacert.pem
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Resources/cacert.pem.md5
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/StaticClient.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/Url.php
+#srv/web/owncloud/3rdparty/guzzle/http/Guzzle/Http/composer.json
+#srv/web/owncloud/3rdparty/guzzle/parser
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Cookie
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Cookie/CookieParser.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Cookie/CookieParserInterface.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Message
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Message/AbstractMessageParser.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Message/MessageParser.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Message/MessageParserInterface.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Message/PeclHttpMessageParser.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/ParserRegistry.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/UriTemplate
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/UriTemplate/PeclUriTemplate.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/UriTemplate/UriTemplate.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/UriTemplate/UriTemplateInterface.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Url
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Url/UrlParser.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/Url/UrlParserInterface.php
+#srv/web/owncloud/3rdparty/guzzle/parser/Guzzle/Parser/composer.json
+#srv/web/owncloud/3rdparty/guzzle/stream
+#srv/web/owncloud/3rdparty/guzzle/stream/Guzzle
+#srv/web/owncloud/3rdparty/guzzle/stream/Guzzle/Stream
+#srv/web/owncloud/3rdparty/guzzle/stream/Guzzle/Stream/PhpStreamRequestFactory.php
+#srv/web/owncloud/3rdparty/guzzle/stream/Guzzle/Stream/Stream.php
+#srv/web/owncloud/3rdparty/guzzle/stream/Guzzle/Stream/StreamInterface.php
+#srv/web/owncloud/3rdparty/guzzle/stream/Guzzle/Stream/StreamRequestFactoryInterface.php
+#srv/web/owncloud/3rdparty/guzzle/stream/Guzzle/Stream/composer.json
+#srv/web/owncloud/3rdparty/isoft
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Driver
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Driver/PDODblib
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Driver/PDODblib/Connection.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Driver/PDODblib/Driver.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Platforms
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Platforms/DblibPlatform.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Readme.md
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/RealestateMssqlBundle.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Schema
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Schema/DblibSchemaManager.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Types
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Types/DateTimeType.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Types/DateType.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Types/RealestateDateTime.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/Types/UniqueidentifierType.php
+#srv/web/owncloud/3rdparty/isoft/mssql-bundle/Realestate/MssqlBundle/composer.json
 #srv/web/owncloud/3rdparty/js
 #srv/web/owncloud/3rdparty/js/chosen
 #srv/web/owncloud/3rdparty/js/chosen/LICENSE.md
@@ -1282,9 +1074,337 @@ srv/web/owncloud
 #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/mediawiki
-#srv/web/owncloud/3rdparty/mediawiki/CSSMin.php
-#srv/web/owncloud/3rdparty/mediawiki/JavaScriptMinifier.php
+#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
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/.gitattributes
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/CHANGELOG-1.0.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/CHANGELOG-1.1.md
+#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
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/en/build.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/en/concepts.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/en/define.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/en/index.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/en/introduction.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/ja
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/ja/build.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/ja/concepts.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/ja/define.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/ja/index.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/docs/ja/introduction.md
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/package.json
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/phpunit.xml.dist
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/AssetCache.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/AssetCollection.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/AssetCollectionInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/AssetInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/AssetReference.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/BaseAsset.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/FileAsset.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/GlobAsset.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/HttpAsset.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/Iterator
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/Iterator/AssetCollectionFilterIterator.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/Iterator/AssetCollectionIterator.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Asset/StringAsset.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/AssetManager.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/AssetWriter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Cache
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Cache/ApcCache.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Cache/ArrayCache.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Cache/CacheInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Cache/ConfigCache.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Cache/ExpiringCache.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Cache/FilesystemCache.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Exception
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Exception/Exception.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Exception/FilterException.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig/AsseticExtension.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig/AsseticFilterFunction.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig/AsseticFilterInvoker.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig/AsseticNode.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig/AsseticTokenParser.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig/TwigFormulaLoader.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig/TwigResource.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Extension/Twig/ValueContainer.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/AssetFactory.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/LazyAssetManager.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Loader
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Loader/BasePhpFormulaLoader.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Loader/CachedFormulaLoader.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Loader/FormulaLoaderInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Loader/FunctionCallsFormulaLoader.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Resource
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Resource/CoalescingDirectoryResource.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Resource/DirectoryResource.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Resource/FileResource.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Resource/IteratorResourceInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Resource/ResourceInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Worker
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Worker/CacheBustingWorker.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Worker/EnsureFilterWorker.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Factory/Worker/WorkerInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/BaseCssFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/BaseNodeFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/BaseProcessFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/CallablesFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/CoffeeScriptFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/CompassFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/CssEmbedFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/CssImportFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/CssMinFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/CssRewriteFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/DartFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/DependencyExtractorInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/EmberPrecompileFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/FilterCollection.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/FilterInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/GoogleClosure
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/GoogleClosure/BaseCompilerFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/GoogleClosure/CompilerApiFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/GoogleClosure/CompilerJarFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/GssFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/HandlebarsFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/HashableInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/JSMinFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/JSMinPlusFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/JSqueezeFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/JpegoptimFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/JpegtranFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/LessFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/LessphpFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/OptiPngFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/PackagerFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/PackerFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/PhpCssEmbedFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/PngoutFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/RooleFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/Sass
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/Sass/SassFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/Sass/ScssFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/ScssphpFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/SprocketsFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/StylusFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/TypeScriptFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/UglifyCssFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/UglifyJs2Filter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/UglifyJsFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/Yui
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/Yui/BaseCompressorFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/Yui/CssCompressorFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Filter/Yui/JsCompressorFilter.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/FilterManager.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Util
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Util/CssUtils.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Util/LessUtils.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Util/TraversableString.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/Util/VarUtils.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/Assetic/ValueSupplierInterface.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/src/functions.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Asset
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Asset/AssetCacheTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Asset/AssetCollectionTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Asset/AssetReferenceTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Asset/FileAssetTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Asset/GlobAssetTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Asset/HttpAssetTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Asset/StringAssetTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/AssetManagerTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/AssetWriterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Cache
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Cache/ApcCacheTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Cache/ArrayCacheTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Cache/ConfigCacheTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Cache/ExpiringCacheTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Cache/FilesystemCacheTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/AsseticExtensionTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/TwigFormulaLoaderTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/TwigResourceTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/absolute_path.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/combine.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/debug.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/filters.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/function.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/glob.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/image.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/mixture.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/optional_filter.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/output_pattern.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/output_url.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/reference.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/unclosed_tag.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Extension/Twig/templates/variables.twig
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/AssetFactoryTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/LazyAssetManagerTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Loader
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Loader/CachedFormulaLoaderTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Loader/FunctionCallsFormulaLoaderTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Loader/templates
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Loader/templates/debug.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/CoalescingDirectoryResourceTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/DirectoryResourceTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/FileResourceTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures/css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures/css/style.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures/dir1
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures/dir1/file1.txt
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures/dir1/file2.txt
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures/dir2
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures/dir2/file1.txt
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Resource/Fixtures/dir2/file3.txt
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Worker
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Worker/CacheBustingWorkerTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Factory/Worker/EnsureFilterWorkerTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/BaseProcessFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/CallablesFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/CoffeeScriptFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/CompassFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/CssEmbedFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/CssImportFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/CssMinFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/CssRewriteFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/DartFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/EmberPrecompileFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/FilterCollectionTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/FilterTestCase.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/GoogleClosure
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/GoogleClosure/CompilerApiFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/GoogleClosure/CompilerJarFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/GssFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/HandlebarsFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/JSMinFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/JSMinPlusFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/JSqueezeFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/JpegoptimFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/JpegtranFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/LessFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/LessphpFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/OptiPngFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/PackagerFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/PackerFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/PhpCssEmbedFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/PngoutFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/RooleFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/Sass
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/Sass/SassFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/Sass/ScssFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/ScssphpFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/SprocketsFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/StylusFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/TypeScriptFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/UglifyCssFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/UglifyJs2FilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/UglifyJsFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/Yui
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/Yui/BaseCompressorFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/Yui/CssCompressorFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/Yui/JsCompressorFilterTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/compass
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/compass/compass.sass
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/compass/partials
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/compass/partials/_sass.sass
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/compass/partials/_scss.scss
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/compass/stylesheet.sass
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/compass/stylesheet.scss
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssembed
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssembed/test.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/import.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/main.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/more
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/more.sass
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/more/evenmore
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/more/evenmore/bg.gif
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/more/evenmore/deep1.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/more/evenmore/deep2.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssimport/noncssimport.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssmin
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssmin/fonts.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/cssmin/main.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/handlebars
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/handlebars/template.handlebars
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/home.gif
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/home.jpg
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/home.png
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/jsmin
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/jsmin/js.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/less
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/less/_include.less
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/less/import_path
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/less/import_path/_import.less
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/less/main.less
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/packager
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/packager/app
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/packager/app/application.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/packager/lib
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/packager/lib/package.yml
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/packager/lib/util.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/packer
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/packer/example.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sass
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sass/_include.scss
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sass/import_path
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sass/import_path/_import.scss
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sass/main.scss
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sass/main_compass.scss
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/include.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/lib1
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/lib1/assets
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/lib1/assets/images
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/lib1/assets/images/image.gif
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/lib1/header.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/lib2
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/lib2/footer.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/sprockets/main.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/uglifycss
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/uglifycss/fonts.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/uglifycss/main.css
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/uglifyjs
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Filter/fixtures/uglifyjs/script.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/FilterManagerTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Fixture
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Fixture/messages.de.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Fixture/messages.en.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Fixture/messages.fr.js
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Util
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Util/CssUtilsTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Util/LessUtilsTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Util/TraversableStringTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/Assetic/Test/Util/VarUtilsTest.php
+#srv/web/owncloud/3rdparty/kriswallsmith/assetic/tests/bootstrap.php
+#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
 #srv/web/owncloud/3rdparty/miniColors/MIT-LICENSE.txt
@@ -1303,6 +1423,1318 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/phpass/c/Makefile
 #srv/web/owncloud/3rdparty/phpass/c/crypt_private.c
 #srv/web/owncloud/3rdparty/phpass/test.php
+#srv/web/owncloud/3rdparty/phpmailer
+#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
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/class.smtp.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/composer.json
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/docs
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/docs/Callback_function_notes.txt
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/docs/DomainKeys_notes.txt
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/docs/Note_for_SMTP_debugging.txt
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/docs/extending.html
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/docs/faq.html
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/docs/generatedocs.sh
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/docs/pop3_article.txt
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/LGPLv3.txt
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/code_generator.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/contents.html
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/exceptions.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/gmail.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/images
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/images/phpmailer.png
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/images/phpmailer_mini.png
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/index.html
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/mail.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/mailing_list.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/pop_before_smtp.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/scripts
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/scripts/XRegExp.js
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/scripts/shAutoloader.js
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/scripts/shBrushPhp.js
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/scripts/shCore.js
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/scripts/shLegacy.js
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/sendmail.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/smtp.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/smtp_no_auth.phps
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCore.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCoreDefault.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCoreDjango.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCoreEclipse.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCoreEmacs.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCoreFadeToGrey.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCoreMDUltra.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCoreMidnight.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shCoreRDark.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeAppleScript.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeDefault.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeDjango.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeEclipse.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeEmacs.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeFadeToGrey.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeMDUltra.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeMidnight.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeRDark.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/shThemeVisualStudio.css
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/examples/styles/wrapping.png
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/extras
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/extras/EasyPeasyICS.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/extras/class.html2text.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/extras/htmlfilter.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/extras/ntlm_sasl_client.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-ar.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-be.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-br.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-ca.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-ch.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-cz.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-de.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-dk.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-el.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-eo.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-es.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-et.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-fa.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-fi.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-fo.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-fr.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-gl.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-he.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-hr.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-hu.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-it.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-ja.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-ka.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-lt.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-lv.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-nl.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-no.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-pl.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-pt.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-ro.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-ru.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-se.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-sk.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-sr.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-tr.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-uk.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-vi.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-zh.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/language/phpmailer.lang-zh_cn.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test/bootstrap.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test/fakepopserver.sh
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test/fakesendmail.sh
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test/phpmailerLangTest.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test/phpmailerTest.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test/runfakepopserver.sh
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test/test_callback.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/test/testbootstrap-dist.php
+#srv/web/owncloud/3rdparty/phpmailer/phpmailer/travis.phpunit.xml.dist
+#srv/web/owncloud/3rdparty/phpseclib
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib
+#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
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/composer.json
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/composer.lock
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/AES.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/Base.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/Blowfish.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/DES.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/Hash.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/RC2.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/RC4.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/RSA.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/Random.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/Rijndael.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/TripleDES.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Crypt/Twofish.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/File
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/File/ANSI.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/File/ASN1.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/File/X509.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Math
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Math/BigInteger.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Net
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Net/SCP.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Net/SFTP
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Net/SFTP.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Net/SFTP/Stream.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Net/SSH1.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/Net/SSH2.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/System
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/System/SSH_Agent.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpseclib/openssl.cnf
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/phpunit.xml.dist
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt/AES
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt/AES/ContinuousBufferTest.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt/AES/TestCase.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt/Hash
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt/Hash/MD5Test.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt/Hash/TestCase.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt/RSA
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Crypt/RSA/LoadKeyTest.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Math
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Math/BigInteger
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Math/BigInteger/BCMathTest.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Math/BigInteger/GMPTest.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Math/BigInteger/InternalOpenSSLTest.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Math/BigInteger/InternalTest.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Math/BigInteger/TestCase.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Net
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Net/SSH1Test.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/Net/SSH2Test.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/PhpseclibTestCase.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/tests/bootstrap.php
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/travis
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/travis/code_coverage_id_rsa
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/travis/install-php-extensions.sh
+#srv/web/owncloud/3rdparty/phpseclib/phpseclib/travis/upload-code-coverage.sh
+#srv/web/owncloud/3rdparty/rackspace
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud
+#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
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/changelog/1.7.0.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/changelog/1.9.0.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/changelog/Upgrading_to_1.7.0.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/generate.sh
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/getting-started-openstack.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/getting-started.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Autoscale
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Autoscale/Config.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Autoscale/Groups.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Autoscale/Policies.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Autoscale/Webhooks.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Clients.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Agents.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Alarms.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Changelogs.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Checks.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Entities.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Metrics.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Notifications.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Service.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Views.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/CloudMonitoring/Zones.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Compute
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Compute/Images.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Compute/Keypair.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Compute/Server.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Compute/Service.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Identity
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Identity/Roles.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Identity/Service.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Identity/Tenants.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Identity/Tokens.md
+#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
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/Account.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/CDN
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/CDN/Container.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/CDN/Object.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/Storage
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/Storage/Container.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/Storage/Migrating.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/ObjectStore/Storage/Object.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Queues
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Queues/Claim.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Queues/Message.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/Queues/Queue.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/accessip.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/caching-credentials.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/dbaas.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/flavors.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/networks.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/servers.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/docs/userguide/volumes.md
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale/Resource/AbstractResource.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale/Resource/Group.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale/Resource/GroupConfiguration.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale/Resource/LaunchConfiguration.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale/Resource/ScalingPolicy.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale/Resource/Webhook.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Autoscale/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/AgentException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/AlarmException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/CheckException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/CloudMonitoringException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/EntityException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/MetricException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/NotificationHistoryException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/NotificationPlanException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/ServiceException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/TestException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Exception/ZoneException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/AbstractResource.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/Agent.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/AgentConnection.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/AgentHost.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/AgentHostInfo.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/AgentTarget.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/AgentToken.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/Alarm.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/Changelog.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/Check.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/CheckType.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/Entity.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/Metric.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/Notification.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/NotificationHistory.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/NotificationPlan.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/NotificationType.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/ReadOnlyResource.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/View.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Resource/Zone.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/CloudMonitoring/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Base.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Collection
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Collection.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Collection/ArrayCollection.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Collection/PaginatedIterator.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Collection/ResourceIterator.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Constants
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Constants/Datetime.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Constants/Header.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Constants/Mime.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Constants/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Constants/Size.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Constants/State.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/AsyncError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/AsyncHttpError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/AsyncTimeoutError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/AttributeError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/AuthenticationError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/BaseException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/CdnError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/CdnHttpError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/CdnNotAvailableError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/CdnTtlError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/CollectionException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerCreateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerDeleteError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerNameError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerNotEmptyError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerNotFoundError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/CreateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/CreateUpdateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/CredentialError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseCreateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseDeleteError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseListError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseNameError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseUpdateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/DeleteError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/DocumentError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/DomainError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/EmptyResponseError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/EndpointError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/FlavorError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpForbiddenError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpOverLimitError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpRetryError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpTimeoutError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpUnauthorizedError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpUrlError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/IOError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/IdRequiredError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ImageError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceCreateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceDeleteError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceFlavorError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceNotFound.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceUpdateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidArgumentError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidIdTypeError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidIpTypeError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidParameterError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidRequestError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/JsonError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/LoggingException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataCreateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataDeleteError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataJsonError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataKeyError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataPrefixError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataUpdateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MisMatchedChecksumError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/MissingValueError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/NameError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkCreateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkDeleteError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkUpdateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkUrlError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/NoContentTypeError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/NoNameError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ObjFetchError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ObjectCopyError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ObjectError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/RebuildError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/RecordTypeError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ResourceBucketException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/RuntimeException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerActionError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerCreateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerDeleteError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerImageScheduleError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerIpsError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerJsonError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerUpdateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerUrlError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/ServiceException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/SnapshotError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/TempUrlMethodError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UnknownError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UnknownParameterError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UnrecognizedServiceError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UnsupportedExtensionError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UnsupportedFeatureExtension.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UnsupportedVersionError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UpdateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UrlError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UserCreateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UserDeleteError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UserListError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UserNameError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/UserUpdateError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/VolumeError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Exceptions/VolumeTypeError.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Http
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Http/Client.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Http/Message
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Http/Message/Formatter.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Http/Message/RequestSubscriber.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Lang.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Log
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Log/AbstractLogger.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Log/LogLevel.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Log/Logger.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Log/LoggerInterface.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Metadata.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/PersistentObject.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service/AbstractService.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service/Catalog.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service/CatalogItem.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service/CatalogService.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service/Endpoint.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service/NovaService.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service/ServiceBuilder.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Common/Service/ServiceInterface.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Constants
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Constants/ImageState.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Constants/Network.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Constants/ServerState.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Exception
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Exception/KeyPairException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Resource/Flavor.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Resource/Image.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Resource/KeyPair.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Resource/Network.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Resource/Server.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Resource/ServerMetadata.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Resource/VolumeAttachment.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Compute/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Collection
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Collection/DnsIterator.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Resource/AsyncResponse.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Resource/Domain.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Resource/Object.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Resource/PtrRecord.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Resource/Record.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Resource/Subdomain.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/DNS/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Database
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Database/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Database/Resource/Database.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Database/Resource/Instance.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Database/Resource/User.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Database/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity/Constants
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity/Constants/User.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity/Resource/Role.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity/Resource/Tenant.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity/Resource/Token.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity/Resource/User.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Identity/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/Access.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/Algorithm.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/AllowedDomain.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/BillableLoadBalancer.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/ConnectionLogging.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/ConnectionThrottle.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/ContentCaching.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/ErrorPage.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/HealthMonitor.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/LoadBalancer.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/Metadata.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/Node.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/NodeEvent.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/Protocol.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/Readonly.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/SSLTermination.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/SessionPersistence.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/Stats.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/SubResource.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/Usage.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Resource/VirtualIp.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/LoadBalancer/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/AbstractService.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/CDNService.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Constants
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Constants/Header.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Constants/UrlType.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Exception
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Exception/BulkOperationException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Exception/ContainerException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Exception/ObjectNotFoundException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Exception/StreamException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Exception/UploadException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Resource/AbstractContainer.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Resource/AbstractResource.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Resource/Account.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Resource/CDNContainer.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Resource/Container.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Resource/ContainerMetadata.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Resource/DataObject.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload/AbstractTransfer.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload/ConcurrentTransfer.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload/ConsecutiveTransfer.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload/ContainerMigration.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload/DirectorySync.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload/TransferBuilder.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload/TransferPart.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/ObjectStore/Upload/TransferState.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/OpenStack.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Orchestration
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Orchestration/Resource.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Orchestration/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Orchestration/Stack.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Exception
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Exception/DeleteMessageException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Exception/MessageException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Exception/QueueException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Exception/QueueMetadataException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Resource/Claim.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Resource/Message.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Resource/Queue.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Queues/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Rackspace.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Version.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Volume
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Volume/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Volume/Resource/Snapshot.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Volume/Resource/Volume.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Volume/Resource/VolumeType.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/OpenCloud/Volume/Service.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/lib/php-opencloud.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/phpunit.xml.dist
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Enum.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Logger.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Runner.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/SmokeException.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Step.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/AbstractUnit.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/Autoscale.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/CloudMonitoring.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/Compute.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/DNS.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/Database.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/Identity.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/LoadBalancer.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/ObjectStore.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/Orchestration.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/Queues.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/UnitInterface.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Unit/Volume.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Smoke/Utils.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/AutoscaleTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/Resource/GroupConfigurationTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/Resource/GroupTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/Resource/ScalingPolicyTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Group.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Group_Config.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Group_Create.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Group_Launch_Config.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Group_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Group_State.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Policy.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Policy_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Autoscale/_response/Webhook.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/CloudMonitoringTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/AgentHostTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/AgentTargetTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/AgentTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/AgentTokenTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/AlarmTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/ChangelogTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/CheckTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/CheckTypeTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/EntityTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/MetricTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/NotificationHistoryTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/NotificationPlanTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/NotificationTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/NotificationTypeTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/ViewTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/ZoneTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/Resource/test_existing.json
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Connection.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Connection_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Host_CPU.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Host_Disks.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Host_Filesystems.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Host_Memory.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Host_NetworkInterfaces.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Host_Processes.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Host_System.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Host_Who.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Agent_Target_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Alarm.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Alarm_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Changelogs.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Check.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/CheckType.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/CheckType_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Check_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Entity.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Entity_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Entity_Test.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Metrics.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Metrics_DataPoints.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/NH_Item.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/NH_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/NotificationType_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/View.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/CloudMonitoring/_response/Zone_Traceroute.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/BaseTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/Collection
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/Collection/ArrayCollectionTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/Collection/PaginatedIteratorTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/Log
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/Log/LoggerTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/Log/testLogFile
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/MetadataTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/NovaTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/PersistentObjectTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Common/cacert.pem
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/ComputeTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource/FlavorTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource/ImageTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource/KeyPairTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource/NetworkTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource/ServerMetadataTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource/ServerTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource/VolumeAttachmentTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/Resource/test.key
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/_response/Extensions.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/_response/Flavor.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/_response/Flavor_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/_response/Image.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/_response/Image_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/_response/Server.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Compute/_response/Server_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/DnsTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/Resource/DomainTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/Resource/PtrRecordTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/Resource/RecordTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/_response/Domain.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/_response/Domain_Changes.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/DNS/_response/Domain_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database/DatabaseTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database/Resource/DatabaseTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database/Resource/InstanceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database/Resource/UserTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Database/_response/Instance.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Identity
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Identity/IdentityTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Identity/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Identity/Resource/RoleTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Identity/Resource/TenantTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Identity/Resource/TokenTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Identity/Resource/UserTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Identity/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/LoadBalancer
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/LoadBalancer/LoadBalancerTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/LoadBalancer/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/LoadBalancer/Resource/LoadBalancerTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/LoadBalancer/Resource/SubResourceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/LoadBalancer/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/LoadBalancer/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/LoadBalancer/_response/LoadBalancer.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/MockSubscriber.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/ObjectStoreTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/Resource/ContainerTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/Resource/DataObjectTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/Resource/TransferTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/Upload
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/Upload/ContainerMigrationTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/_response/Object.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/ObjectStore/_response/Object_Metadata.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/OpenCloudTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/OpenStackTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/QueuesTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/Resource/ClaimTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/Resource/MessageTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/Resource/QueueTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/_response/Claim.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/_response/Message.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Queues/_response/Queue_List.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/RackspaceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/VersionTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume/Resource
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume/Resource/SnapshotTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume/Resource/VolumeTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume/Resource/VolumeTypeTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume/ServiceTest.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume/VolumeTestCase.php
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/Volume/_response/Volume.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/_response
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/_response/Auth.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/_response/Auth_No_Default_Region.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/OpenCloud/Tests/_response/Auth_OpenStack.resp
+#srv/web/owncloud/3rdparty/rackspace/php-opencloud/tests/bootstrap.php
+#srv/web/owncloud/3rdparty/sabre
+#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
+#srv/web/owncloud/3rdparty/sabre/dav/bin/naturalselection.py
+#srv/web/owncloud/3rdparty/sabre/dav/composer.json
+#srv/web/owncloud/3rdparty/sabre/dav/examples
+#srv/web/owncloud/3rdparty/sabre/dav/examples/addressbookserver.php
+#srv/web/owncloud/3rdparty/sabre/dav/examples/basicauth.php
+#srv/web/owncloud/3rdparty/sabre/dav/examples/digestauth.php
+#srv/web/owncloud/3rdparty/sabre/dav/examples/simplefsserver.php
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/mysql.addressbook.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/mysql.calendars.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/mysql.locks.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/mysql.principals.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/mysql.users.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/pgsql.addressbook.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/pgsql.calendars.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/pgsql.locks.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/pgsql.principals.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/pgsql.users.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/sqlite.addressbooks.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/sqlite.calendars.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/sqlite.locks.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/sqlite.principals.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/sql/sqlite.users.sql
+#srv/web/owncloud/3rdparty/sabre/dav/examples/webserver
+#srv/web/owncloud/3rdparty/sabre/dav/examples/webserver/apache2_htaccess.conf
+#srv/web/owncloud/3rdparty/sabre/dav/examples/webserver/apache2_vhost.conf
+#srv/web/owncloud/3rdparty/sabre/dav/examples/webserver/apache2_vhost_cgi.conf
+#srv/web/owncloud/3rdparty/sabre/dav/lib
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Backend
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Backend/AbstractBackend.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Backend/BackendInterface.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Backend/NotificationSupport.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Backend/PDO.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Backend/SharingSupport.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Calendar.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/CalendarObject.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/CalendarQueryParser.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/CalendarQueryValidator.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/CalendarRootNode.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Exception
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Exception/InvalidComponentType.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/ICSExportPlugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/ICalendar.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/ICalendarObject.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/IShareableCalendar.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/ISharedCalendar.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/Collection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/ICollection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/INode.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/INotificationType.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/Node.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/Notification
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/Notification/Invite.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/Notification/InviteReply.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Notifications/Notification/SystemStatus.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Plugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Principal
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Principal/Collection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Principal/IProxyRead.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Principal/IProxyWrite.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Principal/ProxyRead.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Principal/ProxyWrite.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Principal/User.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Property
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Property/AllowedSharingModes.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Property/Invite.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Property/ScheduleCalendarTransp.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Property/SupportedCalendarComponentSet.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Property/SupportedCalendarData.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Property/SupportedCollationSet.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Schedule
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Schedule/IMip.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Schedule/IOutbox.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Schedule/Outbox.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/ShareableCalendar.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/SharedCalendar.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/SharingPlugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/UserCalendars.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CalDAV/Version.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/AddressBook.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/AddressBookQueryParser.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/AddressBookRoot.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Backend
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Backend/AbstractBackend.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Backend/BackendInterface.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Backend/PDO.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Card.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/IAddressBook.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/ICard.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/IDirectory.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Plugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Property
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Property/SupportedAddressData.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/UserAddressBooks.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/VCFExportPlugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/CardDAV/Version.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth/Backend
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth/Backend/AbstractBasic.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth/Backend/AbstractDigest.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth/Backend/Apache.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth/Backend/BackendInterface.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth/Backend/File.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth/Backend/PDO.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Auth/Plugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/GuessContentType.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/MapGetToPropFind.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/Plugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/favicon.ico
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/icons
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/icons/addressbook.png
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/icons/calendar.png
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/icons/card.png
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/icons/collection.png
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/icons/file.png
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/icons/parent.png
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Browser/assets/icons/principal.png
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Client.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Collection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/BadRequest.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/Conflict.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/ConflictingLock.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/FileNotFound.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/Forbidden.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/InsufficientStorage.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/InvalidResourceType.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/LengthRequired.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/LockTokenMatchesRequestUri.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/Locked.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/MethodNotAllowed.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/NotAuthenticated.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/NotFound.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/NotImplemented.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/PaymentRequired.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/PreconditionFailed.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/ReportNotSupported.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/RequestedRangeNotSatisfiable.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/ServiceUnavailable.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/UnsupportedMediaType.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/FS
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/FS/Directory.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/FS/File.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/FS/Node.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/FSExt
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/FSExt/Directory.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/FSExt/File.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/FSExt/Node.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/File.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/ICollection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/IExtendedCollection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/IFile.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/INode.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/IProperties.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/IQuota.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks/Backend
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks/Backend/AbstractBackend.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks/Backend/BackendInterface.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks/Backend/FS.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks/Backend/File.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks/Backend/PDO.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks/LockInfo.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Locks/Plugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Mount
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Mount/Plugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Node.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/ObjectTree.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/PartialUpdate
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/PartialUpdate/IFile.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/PartialUpdate/IPatchSupport.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/PartialUpdate/Plugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/GetLastModified.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/Href.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/HrefList.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/IHref.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/LockDiscovery.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/ResourceType.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/Response.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/ResponseList.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/SupportedLock.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Property/SupportedReportSet.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/PropertyInterface.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Server.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/ServerPlugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/SimpleCollection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/SimpleFile.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/StringUtil.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/TemporaryFileFilterPlugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Tree
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Tree.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Tree/Filesystem.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/URLUtil.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/UUIDUtil.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/Version.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAV/XMLUtil.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/AbstractPrincipalCollection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Exception
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Exception/AceConflict.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Exception/NeedPrivileges.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Exception/NoAbstract.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Exception/NotRecognizedPrincipal.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Exception/NotSupportedPrivilege.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/IACL.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/IPrincipal.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/IPrincipalCollection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Plugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Principal.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/PrincipalBackend
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/PrincipalBackend/AbstractBackend.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/PrincipalBackend/BackendInterface.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/PrincipalBackend/PDO.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/PrincipalCollection.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Property
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Property/Acl.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Property/AclRestrictions.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Property/CurrentUserPrivilegeSet.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Property/Principal.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Property/SupportedPrivilegeSet.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/DAVACL/Version.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP/AWSAuth.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP/AbstractAuth.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP/BasicAuth.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP/DigestAuth.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP/Request.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP/Response.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP/Util.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/HTTP/Version.php
+#srv/web/owncloud/3rdparty/sabre/dav/lib/Sabre/autoload.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Backend
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Backend/AbstractPDOTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Backend/AbstractTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Backend/Mock.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Backend/PDOMySQLTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Backend/PDOSqliteTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/CalendarObjectTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/CalendarQueryParserTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/CalendarQueryVAlarmTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/CalendarQueryValidatorTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/CalendarTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/ExpandEventsDTSTARTandDTENDTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/ExpandEventsDTSTARTandDTENDbyDayTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/ExpandEventsDoubleEventsTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/FreeBusyReportTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/FreeBusyRequestTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/GetEventsByTimerangeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/ICSExportPluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Issue166Test.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Issue172Test.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Issue203Test.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Issue205Test.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Issue211Test.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Issue220Test.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Issue228Test.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Notifications
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Notifications/CollectionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Notifications/NodeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Notifications/Notification
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Notifications/Notification/InviteReplyTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Notifications/Notification/InviteTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Notifications/Notification/SystemStatusTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/OutboxPostTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/PluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Principal
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Principal/CollectionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Principal/ProxyReadTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Principal/ProxyWriteTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Principal/UserTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Property
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Property/AllowedSharingModesTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Property/InviteTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Property/ScheduleCalendarTranspTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Property/SupportedCalendarComponentSetTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Property/SupportedCalendarDataTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Property/SupportedCollationSetTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Schedule
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Schedule/IMip
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Schedule/IMip/Mock.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/Schedule/OutboxTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/ShareableCalendarTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/SharedCalendarTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/SharingPluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/TestUtil.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/UserCalendarsSharedCalendarsTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/UserCalendarsTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/ValidateICalTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CalDAV/VersionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/AbstractPluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/AddressBookQueryParserTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/AddressBookQueryTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/AddressBookRootTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/AddressBookTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/Backend
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/Backend/AbstractPDOTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/Backend/Mock.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/Backend/PDOMySQLTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/Backend/PDOSqliteTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/CardTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/IDirectoryTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/MultiGetTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/PluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/Property
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/Property/SupportedAddressDataTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/SogoStripContentTypeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/TestUtil.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/UserAddressBooksTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/VCFExportTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/ValidateFilterTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/ValidateVCardTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/CardDAV/VersionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/AbstractServer.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractBasicTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractDigestTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend/AbstractPDOTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend/ApacheTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend/FileTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend/Mock.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend/PDOMySQLTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/Backend/PDOSqliteTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Auth/PluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/BasicNodeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Browser
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Browser/GuessContentTypeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Browser/MapGetToPropFindTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Browser/PluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ClientMock.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ClientTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Exception
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Exception/LockedTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Exception/PaymentRequiredTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ExceptionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/FSExt
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/FSExt/FileTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/FSExt/NodeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/FSExt/ServerTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/HTTPPreferParsingTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/HttpDeleteTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/HttpPutTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Issue33Test.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/Backend
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/Backend/AbstractTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/Backend/FSTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/Backend/FileTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/Backend/PDOMySQLTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/Backend/PDOTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/GetIfConditionsTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/MSWordTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Locks/PluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Mock
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Mock/Collection.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Mock/File.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Mount
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Mount/PluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ObjectTreeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/PartialUpdate
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/PartialUpdate/FileMock.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/PartialUpdate/PluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/PartialUpdate/SpecificationTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Property
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Property/GetLastModifiedTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Property/HrefListTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Property/HrefTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Property/ResourceTypeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Property/ResponseListTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Property/ResponseTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Property/SupportedReportSetTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerCopyMoveTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerEventsTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerMKCOLTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerPluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerPreconditionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerPropsTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerRangeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerSimpleTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/ServerUpdatePropertiesTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/SimpleFileTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/StringUtilTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/TemporaryFileFilterTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/TestPlugin.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Tree
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/Tree/FilesystemTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/TreeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/URLUtilTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/UUIDUtilTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAV/XMLUtilTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/ACLMethodTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/AllowAccessTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/BlockAccessTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Exception
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Exception/AceConflictTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Exception/NeedPrivilegesExceptionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Exception/NoAbstractTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Exception/NotRecognizedPrincipalTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Exception/NotSupportedPrivilegeTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/ExpandPropertiesTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/MockACLNode.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/MockPrincipal.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PluginAdminTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PluginPropertiesTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PluginUpdatePropertiesTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalBackend
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalBackend/AbstractPDOTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalBackend/Mock.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalBackend/PDOMySQLTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalBackend/PDOSqliteTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalCollectionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalPropertySearchTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalSearchPropertySetTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/PrincipalTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Property
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Property/ACLRestrictionsTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Property/ACLTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Property/CurrentUserPrivilegeSetTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Property/PrincipalTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/Property/SupportedPrivilegeSetTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/SimplePluginTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVACL/VersionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/DAVServerTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP/AWSAuthTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP/BasicAuthTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP/DigestAuthTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP/RequestTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP/ResponseMock.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP/ResponseTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP/UtilTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/HTTP/VersionTest.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/Sabre/TestUtil.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/bootstrap.php
+#srv/web/owncloud/3rdparty/sabre/dav/tests/composer.vobject3.json
+#srv/web/owncloud/3rdparty/sabre/dav/tests/phpunit.xml
+#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
+#srv/web/owncloud/3rdparty/sabre/vobject/bin/vobjectvalidate.php
+#srv/web/owncloud/3rdparty/sabre/vobject/composer.json
+#srv/web/owncloud/3rdparty/sabre/vobject/lib
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component/VAlarm.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component/VCalendar.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component/VCard.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component/VEvent.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component/VFreeBusy.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component/VJournal.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Component/VTodo.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/DateTimeParser.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Document.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/ElementList.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/FreeBusyGenerator.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Node.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Parameter.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/ParseException.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Property
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Property.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Property/Compound.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Property/DateTime.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Property/MultiDateTime.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Reader.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/RecurrenceIterator.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Splitter
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Splitter/ICalendar.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Splitter/SplitterInterface.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Splitter/VCard.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/StringUtil.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/TimeZoneUtil.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/Version.php
+#srv/web/owncloud/3rdparty/sabre/vobject/lib/Sabre/VObject/includes.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Component
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Component/VAlarmTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Component/VCalendarTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Component/VCardTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Component/VEventTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Component/VFreeBusyTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Component/VJournalTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Component/VTodoTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/ComponentTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/DateTimeParserTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/DocumentTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/ElementListTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/EmClientTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/FreeBusyGeneratorTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Issue153Test.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Issue154Test.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Issue48Test.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Issue50Test.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/ParameterTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Property
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Property/CompoundTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Property/DateTimeTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Property/MultiDateTimeTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/PropertyTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/ReaderTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorFifthTuesdayProblemTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorIncorrectExpandTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorInfiniteLoopProblemTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMinusOneProblemTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorMissingOverriddenTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/RecurrenceIteratorTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/SlashRTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Splitter
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Splitter/ICalendarTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/Splitter/VCardTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/StringUtilTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/TimeZoneUtilTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/VersionTest.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/Sabre/VObject/issue153.vcf
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/bootstrap.php
+#srv/web/owncloud/3rdparty/sabre/vobject/tests/phpunit.xml
 #srv/web/owncloud/3rdparty/symfony
 #srv/web/owncloud/3rdparty/symfony/console
 #srv/web/owncloud/3rdparty/symfony/console/Symfony
@@ -1361,9 +2793,6 @@ srv/web/owncloud
 #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/Resources
-#srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Resources/bin
-#srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Resources/bin/hiddeninput.exe
 #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
@@ -1497,6 +2926,76 @@ srv/web/owncloud
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/Tests/Tester/CommandTesterTest.php
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/composer.json
 #srv/web/owncloud/3rdparty/symfony/console/Symfony/Component/Console/phpunit.xml.dist
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/CHANGELOG.md
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/ContainerAwareEventDispatcher.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Debug
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Debug/TraceableEventDispatcher.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Debug/TraceableEventDispatcherInterface.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Debug/WrappedListener.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/DependencyInjection
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/DependencyInjection/RegisterListenersPass.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Event.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcher.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcherInterface.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventSubscriberInterface.php
+#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
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/Debug/TraceableEventDispatcherTest.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/DependencyInjection
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/DependencyInjection/RegisterListenersPassTest.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventTest.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/GenericEventTest.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/ImmutableEventDispatcherTest.php
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/composer.json
+#srv/web/owncloud/3rdparty/symfony/event-dispatcher/Symfony/Component/EventDispatcher/phpunit.xml.dist
+#srv/web/owncloud/3rdparty/symfony/process
+#srv/web/owncloud/3rdparty/symfony/process/Symfony
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/4a6ea65c9fef48d6734356bba4ee47d8
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/CHANGELOG.md
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Exception
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Exception/ExceptionInterface.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Exception/InvalidArgumentException.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Exception/LogicException.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Exception/ProcessFailedException.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Exception/ProcessTimedOutException.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Exception/RuntimeException.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/ExecutableFinder.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/LICENSE
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/PhpExecutableFinder.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/PhpProcess.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Process.php
+#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
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/PhpExecutableFinderTest.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/PhpProcessTest.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/PipeStdinInStdoutStdErrStreamSelect.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/ProcessBuilderTest.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/ProcessFailedExceptionTest.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/ProcessInSigchildEnvironment.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/ProcessUtilsTest.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/SigchildDisabledProcessTest.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/SigchildEnabledProcessTest.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/SignalListener.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/Tests/SimpleProcessTest.php
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/composer.json
+#srv/web/owncloud/3rdparty/symfony/process/Symfony/Component/Process/phpunit.xml.dist
 #srv/web/owncloud/3rdparty/symfony/routing
 #srv/web/owncloud/3rdparty/symfony/routing/Symfony
 #srv/web/owncloud/3rdparty/symfony/routing/Symfony/Component
@@ -1622,50 +3121,86 @@ srv/web/owncloud
 #srv/web/owncloud/COPYING-AGPL
 #srv/web/owncloud/apps
 #srv/web/owncloud/apps/activity
-#srv/web/owncloud/apps/activity/TODO
+#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
+#srv/web/owncloud/apps/activity/ajax/settings.php
 #srv/web/owncloud/apps/activity/appinfo
 #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/routes.php
+#srv/web/owncloud/apps/activity/appinfo/update.php
 #srv/web/owncloud/apps/activity/appinfo/version
 #srv/web/owncloud/apps/activity/css
+#srv/web/owncloud/apps/activity/css/settings.css
 #srv/web/owncloud/apps/activity/css/style.css
 #srv/web/owncloud/apps/activity/img
 #srv/web/owncloud/apps/activity/img/activity.png
 #srv/web/owncloud/apps/activity/img/activity.svg
+#srv/web/owncloud/apps/activity/img/add-color.png
+#srv/web/owncloud/apps/activity/img/add-color.svg
+#srv/web/owncloud/apps/activity/img/change.png
+#srv/web/owncloud/apps/activity/img/change.svg
+#srv/web/owncloud/apps/activity/img/delete-color.png
+#srv/web/owncloud/apps/activity/img/delete-color.svg
 #srv/web/owncloud/apps/activity/index.php
 #srv/web/owncloud/apps/activity/js
-#srv/web/owncloud/apps/activity/js/jquery.infinitescroll.js
-#srv/web/owncloud/apps/activity/js/jquery.infinitescroll.min.js
-#srv/web/owncloud/apps/activity/js/jquery.masonry.js
-#srv/web/owncloud/apps/activity/js/jquery.masonry.min.js
 #srv/web/owncloud/apps/activity/js/script.js
+#srv/web/owncloud/apps/activity/js/settings.js
 #srv/web/owncloud/apps/activity/l10n
+#srv/web/owncloud/apps/activity/l10n/ach.php
+#srv/web/owncloud/apps/activity/l10n/ady.php
+#srv/web/owncloud/apps/activity/l10n/af.php
+#srv/web/owncloud/apps/activity/l10n/af_ZA.php
+#srv/web/owncloud/apps/activity/l10n/ak.php
+#srv/web/owncloud/apps/activity/l10n/am_ET.php
 #srv/web/owncloud/apps/activity/l10n/ar.php
+#srv/web/owncloud/apps/activity/l10n/ast.php
+#srv/web/owncloud/apps/activity/l10n/az.php
+#srv/web/owncloud/apps/activity/l10n/be.php
 #srv/web/owncloud/apps/activity/l10n/bg_BG.php
 #srv/web/owncloud/apps/activity/l10n/bn_BD.php
+#srv/web/owncloud/apps/activity/l10n/bn_IN.php
+#srv/web/owncloud/apps/activity/l10n/bs.php
 #srv/web/owncloud/apps/activity/l10n/ca.php
+#srv/web/owncloud/apps/activity/l10n/ca@valencia.php
 #srv/web/owncloud/apps/activity/l10n/cs_CZ.php
 #srv/web/owncloud/apps/activity/l10n/cy_GB.php
 #srv/web/owncloud/apps/activity/l10n/da.php
 #srv/web/owncloud/apps/activity/l10n/de.php
+#srv/web/owncloud/apps/activity/l10n/de_AT.php
 #srv/web/owncloud/apps/activity/l10n/de_CH.php
 #srv/web/owncloud/apps/activity/l10n/de_DE.php
 #srv/web/owncloud/apps/activity/l10n/el.php
+#srv/web/owncloud/apps/activity/l10n/en@pirate.php
 #srv/web/owncloud/apps/activity/l10n/en_GB.php
+#srv/web/owncloud/apps/activity/l10n/en_NZ.php
 #srv/web/owncloud/apps/activity/l10n/eo.php
 #srv/web/owncloud/apps/activity/l10n/es.php
 #srv/web/owncloud/apps/activity/l10n/es_AR.php
+#srv/web/owncloud/apps/activity/l10n/es_BO.php
+#srv/web/owncloud/apps/activity/l10n/es_CL.php
+#srv/web/owncloud/apps/activity/l10n/es_CO.php
+#srv/web/owncloud/apps/activity/l10n/es_CR.php
+#srv/web/owncloud/apps/activity/l10n/es_EC.php
+#srv/web/owncloud/apps/activity/l10n/es_MX.php
+#srv/web/owncloud/apps/activity/l10n/es_PE.php
+#srv/web/owncloud/apps/activity/l10n/es_PY.php
+#srv/web/owncloud/apps/activity/l10n/es_US.php
+#srv/web/owncloud/apps/activity/l10n/es_UY.php
 #srv/web/owncloud/apps/activity/l10n/et_EE.php
 #srv/web/owncloud/apps/activity/l10n/eu.php
+#srv/web/owncloud/apps/activity/l10n/eu_ES.php
 #srv/web/owncloud/apps/activity/l10n/fa.php
 #srv/web/owncloud/apps/activity/l10n/fi_FI.php
 #srv/web/owncloud/apps/activity/l10n/fr.php
+#srv/web/owncloud/apps/activity/l10n/fr_CA.php
 #srv/web/owncloud/apps/activity/l10n/gl.php
 #srv/web/owncloud/apps/activity/l10n/he.php
+#srv/web/owncloud/apps/activity/l10n/hi.php
+#srv/web/owncloud/apps/activity/l10n/hi_IN.php
 #srv/web/owncloud/apps/activity/l10n/hr.php
 #srv/web/owncloud/apps/activity/l10n/hu_HU.php
 #srv/web/owncloud/apps/activity/l10n/hy.php
@@ -1673,50 +3208,100 @@ srv/web/owncloud
 #srv/web/owncloud/apps/activity/l10n/id.php
 #srv/web/owncloud/apps/activity/l10n/is.php
 #srv/web/owncloud/apps/activity/l10n/it.php
+#srv/web/owncloud/apps/activity/l10n/ja.php
 #srv/web/owncloud/apps/activity/l10n/ja_JP.php
+#srv/web/owncloud/apps/activity/l10n/jv.php
 #srv/web/owncloud/apps/activity/l10n/ka_GE.php
+#srv/web/owncloud/apps/activity/l10n/km.php
+#srv/web/owncloud/apps/activity/l10n/kn.php
 #srv/web/owncloud/apps/activity/l10n/ko.php
 #srv/web/owncloud/apps/activity/l10n/ku_IQ.php
+#srv/web/owncloud/apps/activity/l10n/l10n.pl
 #srv/web/owncloud/apps/activity/l10n/lb.php
 #srv/web/owncloud/apps/activity/l10n/lt_LT.php
 #srv/web/owncloud/apps/activity/l10n/lv.php
 #srv/web/owncloud/apps/activity/l10n/mk.php
+#srv/web/owncloud/apps/activity/l10n/ml.php
+#srv/web/owncloud/apps/activity/l10n/ml_IN.php
+#srv/web/owncloud/apps/activity/l10n/mn.php
 #srv/web/owncloud/apps/activity/l10n/ms_MY.php
 #srv/web/owncloud/apps/activity/l10n/my_MM.php
 #srv/web/owncloud/apps/activity/l10n/nb_NO.php
+#srv/web/owncloud/apps/activity/l10n/nds.php
+#srv/web/owncloud/apps/activity/l10n/ne.php
 #srv/web/owncloud/apps/activity/l10n/nl.php
 #srv/web/owncloud/apps/activity/l10n/nn_NO.php
+#srv/web/owncloud/apps/activity/l10n/nqo.php
 #srv/web/owncloud/apps/activity/l10n/oc.php
+#srv/web/owncloud/apps/activity/l10n/or_IN.php
+#srv/web/owncloud/apps/activity/l10n/pa.php
 #srv/web/owncloud/apps/activity/l10n/pl.php
 #srv/web/owncloud/apps/activity/l10n/pt_BR.php
 #srv/web/owncloud/apps/activity/l10n/pt_PT.php
 #srv/web/owncloud/apps/activity/l10n/ro.php
 #srv/web/owncloud/apps/activity/l10n/ru.php
 #srv/web/owncloud/apps/activity/l10n/si_LK.php
+#srv/web/owncloud/apps/activity/l10n/sk.php
 #srv/web/owncloud/apps/activity/l10n/sk_SK.php
 #srv/web/owncloud/apps/activity/l10n/sl.php
 #srv/web/owncloud/apps/activity/l10n/sq.php
 #srv/web/owncloud/apps/activity/l10n/sr.php
 #srv/web/owncloud/apps/activity/l10n/sr@latin.php
+#srv/web/owncloud/apps/activity/l10n/su.php
 #srv/web/owncloud/apps/activity/l10n/sv.php
+#srv/web/owncloud/apps/activity/l10n/sw_KE.php
+#srv/web/owncloud/apps/activity/l10n/ta_IN.php
 #srv/web/owncloud/apps/activity/l10n/ta_LK.php
+#srv/web/owncloud/apps/activity/l10n/te.php
 #srv/web/owncloud/apps/activity/l10n/th_TH.php
 #srv/web/owncloud/apps/activity/l10n/tr.php
+#srv/web/owncloud/apps/activity/l10n/tzm.php
 #srv/web/owncloud/apps/activity/l10n/ug.php
 #srv/web/owncloud/apps/activity/l10n/uk.php
+#srv/web/owncloud/apps/activity/l10n/ur.php
+#srv/web/owncloud/apps/activity/l10n/ur_PK.php
+#srv/web/owncloud/apps/activity/l10n/uz.php
 #srv/web/owncloud/apps/activity/l10n/vi.php
 #srv/web/owncloud/apps/activity/l10n/zh_CN.php
+#srv/web/owncloud/apps/activity/l10n/zh_HK.php
 #srv/web/owncloud/apps/activity/l10n/zh_TW.php
 #srv/web/owncloud/apps/activity/lib
+#srv/web/owncloud/apps/activity/lib/api.php
+#srv/web/owncloud/apps/activity/lib/backgroundjob
+#srv/web/owncloud/apps/activity/lib/backgroundjob/emailnotification.php
+#srv/web/owncloud/apps/activity/lib/backgroundjob/expireactivities.php
 #srv/web/owncloud/apps/activity/lib/consumer.php
 #srv/web/owncloud/apps/activity/lib/data.php
+#srv/web/owncloud/apps/activity/lib/datahelper.php
+#srv/web/owncloud/apps/activity/lib/display.php
+#srv/web/owncloud/apps/activity/lib/grouphelper.php
 #srv/web/owncloud/apps/activity/lib/hooks.php
-#srv/web/owncloud/apps/activity/lib/ocs.php
-#srv/web/owncloud/apps/activity/lib/search.php
+#srv/web/owncloud/apps/activity/lib/mailqueuehandler.php
+#srv/web/owncloud/apps/activity/lib/navigation.php
+#srv/web/owncloud/apps/activity/lib/parameterhelper.php
+#srv/web/owncloud/apps/activity/lib/usersettings.php
+#srv/web/owncloud/apps/activity/personal.php
 #srv/web/owncloud/apps/activity/rss.php
 #srv/web/owncloud/apps/activity/templates
 #srv/web/owncloud/apps/activity/templates/activities.part.php
+#srv/web/owncloud/apps/activity/templates/activity.box.php
+#srv/web/owncloud/apps/activity/templates/email.notification.php
 #srv/web/owncloud/apps/activity/templates/list.php
+#srv/web/owncloud/apps/activity/templates/navigation.php
+#srv/web/owncloud/apps/activity/templates/personal.php
+#srv/web/owncloud/apps/activity/templates/rss.php
+#srv/web/owncloud/apps/activity/tests
+#srv/web/owncloud/apps/activity/tests/apitest.php
+#srv/web/owncloud/apps/activity/tests/bootstrap.php
+#srv/web/owncloud/apps/activity/tests/datadeleteactivitestest.php
+#srv/web/owncloud/apps/activity/tests/datahelpertest.php
+#srv/web/owncloud/apps/activity/tests/datatest.php
+#srv/web/owncloud/apps/activity/tests/grouphelpertest.php
+#srv/web/owncloud/apps/activity/tests/hooksdeleteusertest.php
+#srv/web/owncloud/apps/activity/tests/mailqueuehandlertest.php
+#srv/web/owncloud/apps/activity/tests/navigationtest.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
@@ -1726,6 +3311,7 @@ srv/web/owncloud
 #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
@@ -1739,8 +3325,11 @@ srv/web/owncloud
 #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
@@ -1749,8 +3338,11 @@ srv/web/owncloud
 #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
@@ -1767,7 +3359,9 @@ srv/web/owncloud
 #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
@@ -1831,10 +3425,20 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/af_ZA
 #srv/web/owncloud/apps/bookmarks/l10n/af_ZA.php
 #srv/web/owncloud/apps/bookmarks/l10n/af_ZA/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/ak
+#srv/web/owncloud/apps/bookmarks/l10n/ak/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/am_ET
+#srv/web/owncloud/apps/bookmarks/l10n/am_ET/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ar
 #srv/web/owncloud/apps/bookmarks/l10n/ar.php
 #srv/web/owncloud/apps/bookmarks/l10n/ar/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/ast
+#srv/web/owncloud/apps/bookmarks/l10n/ast.php
+#srv/web/owncloud/apps/bookmarks/l10n/ast/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/az
+#srv/web/owncloud/apps/bookmarks/l10n/az/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/be
+#srv/web/owncloud/apps/bookmarks/l10n/be.php
 #srv/web/owncloud/apps/bookmarks/l10n/be/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/bg_BG
 #srv/web/owncloud/apps/bookmarks/l10n/bg_BG.php
@@ -1842,12 +3446,16 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/bn_BD
 #srv/web/owncloud/apps/bookmarks/l10n/bn_BD.php
 #srv/web/owncloud/apps/bookmarks/l10n/bn_BD/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/bn_IN
+#srv/web/owncloud/apps/bookmarks/l10n/bn_IN/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/bs
 #srv/web/owncloud/apps/bookmarks/l10n/bs.php
 #srv/web/owncloud/apps/bookmarks/l10n/bs/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ca
 #srv/web/owncloud/apps/bookmarks/l10n/ca.php
 #srv/web/owncloud/apps/bookmarks/l10n/ca/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/ca@valencia
+#srv/web/owncloud/apps/bookmarks/l10n/ca@valencia/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/cs_CZ
 #srv/web/owncloud/apps/bookmarks/l10n/cs_CZ.php
 #srv/web/owncloud/apps/bookmarks/l10n/cs_CZ/bookmarks.po
@@ -1861,6 +3469,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/de.php
 #srv/web/owncloud/apps/bookmarks/l10n/de/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/de_AT
+#srv/web/owncloud/apps/bookmarks/l10n/de_AT.php
 #srv/web/owncloud/apps/bookmarks/l10n/de_AT/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/de_CH
 #srv/web/owncloud/apps/bookmarks/l10n/de_CH.php
@@ -1876,6 +3485,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/en_GB
 #srv/web/owncloud/apps/bookmarks/l10n/en_GB.php
 #srv/web/owncloud/apps/bookmarks/l10n/en_GB/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/en_NZ
+#srv/web/owncloud/apps/bookmarks/l10n/en_NZ/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/eo
 #srv/web/owncloud/apps/bookmarks/l10n/eo.php
 #srv/web/owncloud/apps/bookmarks/l10n/eo/bookmarks.po
@@ -1885,14 +3496,37 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/es_AR
 #srv/web/owncloud/apps/bookmarks/l10n/es_AR.php
 #srv/web/owncloud/apps/bookmarks/l10n/es_AR/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_BO
+#srv/web/owncloud/apps/bookmarks/l10n/es_BO/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_CL
+#srv/web/owncloud/apps/bookmarks/l10n/es_CL.php
+#srv/web/owncloud/apps/bookmarks/l10n/es_CL/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_CO
+#srv/web/owncloud/apps/bookmarks/l10n/es_CO/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_CR
+#srv/web/owncloud/apps/bookmarks/l10n/es_CR/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_EC
+#srv/web/owncloud/apps/bookmarks/l10n/es_EC/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/es_MX
+#srv/web/owncloud/apps/bookmarks/l10n/es_MX.php
 #srv/web/owncloud/apps/bookmarks/l10n/es_MX/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_PE
+#srv/web/owncloud/apps/bookmarks/l10n/es_PE/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_PY
+#srv/web/owncloud/apps/bookmarks/l10n/es_PY/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_US
+#srv/web/owncloud/apps/bookmarks/l10n/es_US/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/es_UY
+#srv/web/owncloud/apps/bookmarks/l10n/es_UY/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/et_EE
 #srv/web/owncloud/apps/bookmarks/l10n/et_EE.php
 #srv/web/owncloud/apps/bookmarks/l10n/et_EE/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/eu
 #srv/web/owncloud/apps/bookmarks/l10n/eu.php
 #srv/web/owncloud/apps/bookmarks/l10n/eu/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/eu_ES
+#srv/web/owncloud/apps/bookmarks/l10n/eu_ES.php
+#srv/web/owncloud/apps/bookmarks/l10n/eu_ES/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/fa
 #srv/web/owncloud/apps/bookmarks/l10n/fa.php
 #srv/web/owncloud/apps/bookmarks/l10n/fa/bookmarks.po
@@ -1916,6 +3550,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/hi
 #srv/web/owncloud/apps/bookmarks/l10n/hi.php
 #srv/web/owncloud/apps/bookmarks/l10n/hi/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/hi_IN
+#srv/web/owncloud/apps/bookmarks/l10n/hi_IN/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/hr
 #srv/web/owncloud/apps/bookmarks/l10n/hr.php
 #srv/web/owncloud/apps/bookmarks/l10n/hr/bookmarks.po
@@ -1937,9 +3573,13 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/it
 #srv/web/owncloud/apps/bookmarks/l10n/it.php
 #srv/web/owncloud/apps/bookmarks/l10n/it/bookmarks.po
-#srv/web/owncloud/apps/bookmarks/l10n/ja_JP
+#srv/web/owncloud/apps/bookmarks/l10n/ja
+#srv/web/owncloud/apps/bookmarks/l10n/ja.php
+#srv/web/owncloud/apps/bookmarks/l10n/ja/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ja_JP.php
-#srv/web/owncloud/apps/bookmarks/l10n/ja_JP/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/jv
+#srv/web/owncloud/apps/bookmarks/l10n/jv.php
+#srv/web/owncloud/apps/bookmarks/l10n/jv/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ka
 #srv/web/owncloud/apps/bookmarks/l10n/ka/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ka_GE
@@ -1969,8 +3609,12 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/mk
 #srv/web/owncloud/apps/bookmarks/l10n/mk.php
 #srv/web/owncloud/apps/bookmarks/l10n/mk/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/ml
+#srv/web/owncloud/apps/bookmarks/l10n/ml/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ml_IN
 #srv/web/owncloud/apps/bookmarks/l10n/ml_IN/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/mn
+#srv/web/owncloud/apps/bookmarks/l10n/mn/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ms_MY
 #srv/web/owncloud/apps/bookmarks/l10n/ms_MY.php
 #srv/web/owncloud/apps/bookmarks/l10n/ms_MY/bookmarks.po
@@ -1995,6 +3639,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/oc
 #srv/web/owncloud/apps/bookmarks/l10n/oc.php
 #srv/web/owncloud/apps/bookmarks/l10n/oc/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/or_IN
+#srv/web/owncloud/apps/bookmarks/l10n/or_IN/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/pa
 #srv/web/owncloud/apps/bookmarks/l10n/pa.php
 #srv/web/owncloud/apps/bookmarks/l10n/pa/bookmarks.po
@@ -2023,6 +3669,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/si_LK.php
 #srv/web/owncloud/apps/bookmarks/l10n/si_LK/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/sk
+#srv/web/owncloud/apps/bookmarks/l10n/sk.php
 #srv/web/owncloud/apps/bookmarks/l10n/sk/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/sk_SK
 #srv/web/owncloud/apps/bookmarks/l10n/sk_SK.php
@@ -2039,11 +3686,15 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/sr@latin
 #srv/web/owncloud/apps/bookmarks/l10n/sr@latin.php
 #srv/web/owncloud/apps/bookmarks/l10n/sr@latin/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/su
+#srv/web/owncloud/apps/bookmarks/l10n/su/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/sv
 #srv/web/owncloud/apps/bookmarks/l10n/sv.php
 #srv/web/owncloud/apps/bookmarks/l10n/sv/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/sw_KE
 #srv/web/owncloud/apps/bookmarks/l10n/sw_KE/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/ta_IN
+#srv/web/owncloud/apps/bookmarks/l10n/ta_IN/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ta_LK
 #srv/web/owncloud/apps/bookmarks/l10n/ta_LK.php
 #srv/web/owncloud/apps/bookmarks/l10n/ta_LK/bookmarks.po
@@ -2066,6 +3717,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/bookmarks/l10n/uk
 #srv/web/owncloud/apps/bookmarks/l10n/uk.php
 #srv/web/owncloud/apps/bookmarks/l10n/uk/bookmarks.po
+#srv/web/owncloud/apps/bookmarks/l10n/ur
+#srv/web/owncloud/apps/bookmarks/l10n/ur/bookmarks.po
 #srv/web/owncloud/apps/bookmarks/l10n/ur_PK
 #srv/web/owncloud/apps/bookmarks/l10n/ur_PK.php
 #srv/web/owncloud/apps/bookmarks/l10n/ur_PK/bookmarks.po
@@ -2141,6 +3794,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/ajax/import/dialog.php
 #srv/web/owncloud/apps/calendar/ajax/import/dropimport.php
 #srv/web/owncloud/apps/calendar/ajax/import/import.php
+#srv/web/owncloud/apps/calendar/ajax/search-location.php
 #srv/web/owncloud/apps/calendar/ajax/settings
 #srv/web/owncloud/apps/calendar/ajax/settings/getfirstday.php
 #srv/web/owncloud/apps/calendar/ajax/settings/gettimezonedetection.php
@@ -2189,9 +3843,18 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/af_ZA
 #srv/web/owncloud/apps/calendar/l10n/af_ZA.php
 #srv/web/owncloud/apps/calendar/l10n/af_ZA/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/ak
+#srv/web/owncloud/apps/calendar/l10n/ak/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/am_ET
+#srv/web/owncloud/apps/calendar/l10n/am_ET/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/ar
 #srv/web/owncloud/apps/calendar/l10n/ar.php
 #srv/web/owncloud/apps/calendar/l10n/ar/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/ast
+#srv/web/owncloud/apps/calendar/l10n/ast.php
+#srv/web/owncloud/apps/calendar/l10n/ast/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/az
+#srv/web/owncloud/apps/calendar/l10n/az/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/be
 #srv/web/owncloud/apps/calendar/l10n/be.php
 #srv/web/owncloud/apps/calendar/l10n/be/calendar.po
@@ -2201,12 +3864,16 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/bn_BD
 #srv/web/owncloud/apps/calendar/l10n/bn_BD.php
 #srv/web/owncloud/apps/calendar/l10n/bn_BD/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/bn_IN
+#srv/web/owncloud/apps/calendar/l10n/bn_IN/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/bs
 #srv/web/owncloud/apps/calendar/l10n/bs.php
 #srv/web/owncloud/apps/calendar/l10n/bs/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/ca
 #srv/web/owncloud/apps/calendar/l10n/ca.php
 #srv/web/owncloud/apps/calendar/l10n/ca/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/ca@valencia
+#srv/web/owncloud/apps/calendar/l10n/ca@valencia/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/cs_CZ
 #srv/web/owncloud/apps/calendar/l10n/cs_CZ.php
 #srv/web/owncloud/apps/calendar/l10n/cs_CZ/calendar.po
@@ -2220,6 +3887,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/de.php
 #srv/web/owncloud/apps/calendar/l10n/de/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/de_AT
+#srv/web/owncloud/apps/calendar/l10n/de_AT.php
 #srv/web/owncloud/apps/calendar/l10n/de_AT/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/de_CH
 #srv/web/owncloud/apps/calendar/l10n/de_CH.php
@@ -2236,6 +3904,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/en_GB
 #srv/web/owncloud/apps/calendar/l10n/en_GB.php
 #srv/web/owncloud/apps/calendar/l10n/en_GB/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/en_NZ
+#srv/web/owncloud/apps/calendar/l10n/en_NZ/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/eo
 #srv/web/owncloud/apps/calendar/l10n/eo.php
 #srv/web/owncloud/apps/calendar/l10n/eo/calendar.po
@@ -2245,14 +3915,37 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/es_AR
 #srv/web/owncloud/apps/calendar/l10n/es_AR.php
 #srv/web/owncloud/apps/calendar/l10n/es_AR/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_BO
+#srv/web/owncloud/apps/calendar/l10n/es_BO/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_CL
+#srv/web/owncloud/apps/calendar/l10n/es_CL.php
+#srv/web/owncloud/apps/calendar/l10n/es_CL/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_CO
+#srv/web/owncloud/apps/calendar/l10n/es_CO/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_CR
+#srv/web/owncloud/apps/calendar/l10n/es_CR/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_EC
+#srv/web/owncloud/apps/calendar/l10n/es_EC/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/es_MX
+#srv/web/owncloud/apps/calendar/l10n/es_MX.php
 #srv/web/owncloud/apps/calendar/l10n/es_MX/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_PE
+#srv/web/owncloud/apps/calendar/l10n/es_PE/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_PY
+#srv/web/owncloud/apps/calendar/l10n/es_PY/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_US
+#srv/web/owncloud/apps/calendar/l10n/es_US/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/es_UY
+#srv/web/owncloud/apps/calendar/l10n/es_UY/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/et_EE
 #srv/web/owncloud/apps/calendar/l10n/et_EE.php
 #srv/web/owncloud/apps/calendar/l10n/et_EE/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/eu
 #srv/web/owncloud/apps/calendar/l10n/eu.php
 #srv/web/owncloud/apps/calendar/l10n/eu/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/eu_ES
+#srv/web/owncloud/apps/calendar/l10n/eu_ES.php
+#srv/web/owncloud/apps/calendar/l10n/eu_ES/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/fa
 #srv/web/owncloud/apps/calendar/l10n/fa.php
 #srv/web/owncloud/apps/calendar/l10n/fa/calendar.po
@@ -2276,6 +3969,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/hi
 #srv/web/owncloud/apps/calendar/l10n/hi.php
 #srv/web/owncloud/apps/calendar/l10n/hi/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/hi_IN
+#srv/web/owncloud/apps/calendar/l10n/hi_IN/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/hr
 #srv/web/owncloud/apps/calendar/l10n/hr.php
 #srv/web/owncloud/apps/calendar/l10n/hr/calendar.po
@@ -2297,9 +3992,13 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/it
 #srv/web/owncloud/apps/calendar/l10n/it.php
 #srv/web/owncloud/apps/calendar/l10n/it/calendar.po
-#srv/web/owncloud/apps/calendar/l10n/ja_JP
+#srv/web/owncloud/apps/calendar/l10n/ja
+#srv/web/owncloud/apps/calendar/l10n/ja.php
+#srv/web/owncloud/apps/calendar/l10n/ja/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/ja_JP.php
-#srv/web/owncloud/apps/calendar/l10n/ja_JP/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/jv
+#srv/web/owncloud/apps/calendar/l10n/jv.php
+#srv/web/owncloud/apps/calendar/l10n/jv/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/ka
 #srv/web/owncloud/apps/calendar/l10n/ka.php
 #srv/web/owncloud/apps/calendar/l10n/ka/calendar.po
@@ -2330,8 +4029,13 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/mk
 #srv/web/owncloud/apps/calendar/l10n/mk.php
 #srv/web/owncloud/apps/calendar/l10n/mk/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/ml
+#srv/web/owncloud/apps/calendar/l10n/ml/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/ml_IN
+#srv/web/owncloud/apps/calendar/l10n/ml_IN.php
 #srv/web/owncloud/apps/calendar/l10n/ml_IN/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/mn
+#srv/web/owncloud/apps/calendar/l10n/mn/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/ms_MY
 #srv/web/owncloud/apps/calendar/l10n/ms_MY.php
 #srv/web/owncloud/apps/calendar/l10n/ms_MY/calendar.po
@@ -2356,6 +4060,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/oc
 #srv/web/owncloud/apps/calendar/l10n/oc.php
 #srv/web/owncloud/apps/calendar/l10n/oc/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/or_IN
+#srv/web/owncloud/apps/calendar/l10n/or_IN/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/pa
 #srv/web/owncloud/apps/calendar/l10n/pa.php
 #srv/web/owncloud/apps/calendar/l10n/pa/calendar.po
@@ -2384,6 +4090,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/si_LK.php
 #srv/web/owncloud/apps/calendar/l10n/si_LK/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/sk
+#srv/web/owncloud/apps/calendar/l10n/sk.php
 #srv/web/owncloud/apps/calendar/l10n/sk/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/sk_SK
 #srv/web/owncloud/apps/calendar/l10n/sk_SK.php
@@ -2400,11 +4107,15 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/sr@latin
 #srv/web/owncloud/apps/calendar/l10n/sr@latin.php
 #srv/web/owncloud/apps/calendar/l10n/sr@latin/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/su
+#srv/web/owncloud/apps/calendar/l10n/su/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/sv
 #srv/web/owncloud/apps/calendar/l10n/sv.php
 #srv/web/owncloud/apps/calendar/l10n/sv/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/sw_KE
 #srv/web/owncloud/apps/calendar/l10n/sw_KE/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/ta_IN
+#srv/web/owncloud/apps/calendar/l10n/ta_IN/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/ta_LK
 #srv/web/owncloud/apps/calendar/l10n/ta_LK.php
 #srv/web/owncloud/apps/calendar/l10n/ta_LK/calendar.po
@@ -2427,6 +4138,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/l10n/uk
 #srv/web/owncloud/apps/calendar/l10n/uk.php
 #srv/web/owncloud/apps/calendar/l10n/uk/calendar.po
+#srv/web/owncloud/apps/calendar/l10n/ur
+#srv/web/owncloud/apps/calendar/l10n/ur/calendar.po
 #srv/web/owncloud/apps/calendar/l10n/ur_PK
 #srv/web/owncloud/apps/calendar/l10n/ur_PK.php
 #srv/web/owncloud/apps/calendar/l10n/ur_PK/calendar.po
@@ -2468,7 +4181,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/lib/share
 #srv/web/owncloud/apps/calendar/lib/share/calendar.php
 #srv/web/owncloud/apps/calendar/lib/share/event.php
-#srv/web/owncloud/apps/calendar/settings.php
 #srv/web/owncloud/apps/calendar/settingswrapper.php
 #srv/web/owncloud/apps/calendar/templates
 #srv/web/owncloud/apps/calendar/templates/calendar.php
@@ -2480,19 +4192,18 @@ srv/web/owncloud
 #srv/web/owncloud/apps/calendar/templates/part.newevent.php
 #srv/web/owncloud/apps/calendar/templates/part.share.php
 #srv/web/owncloud/apps/calendar/templates/part.showevent.php
-#srv/web/owncloud/apps/calendar/templates/settings.php
 #srv/web/owncloud/apps/calendar/tests
 #srv/web/owncloud/apps/calendar/tests/calendar.php
 #srv/web/owncloud/apps/contacts
-#srv/web/owncloud/apps/contacts/.travis.yml
+#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
 #srv/web/owncloud/apps/contacts/appinfo/database.xml
 #srv/web/owncloud/apps/contacts/appinfo/info.xml
-#srv/web/owncloud/apps/contacts/appinfo/ldap_vcard_connector.xml
 #srv/web/owncloud/apps/contacts/appinfo/migrate.php
 #srv/web/owncloud/apps/contacts/appinfo/remote.php
 #srv/web/owncloud/apps/contacts/appinfo/routes.php
@@ -2502,53 +4213,44 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/composer.json
 #srv/web/owncloud/apps/contacts/css
 #srv/web/owncloud/apps/contacts/css/contacts.css
-#srv/web/owncloud/apps/contacts/css/font-awesome.css
 #srv/web/owncloud/apps/contacts/css/jquery.combobox.css
-#srv/web/owncloud/apps/contacts/css/jquery.multiselect.css
 #srv/web/owncloud/apps/contacts/css/jquery.ocaddnew.css
 #srv/web/owncloud/apps/contacts/css/placeholder_polyfill.css
 #srv/web/owncloud/apps/contacts/css/placeholder_polyfill.min.css
+#srv/web/owncloud/apps/contacts/formats
+#srv/web/owncloud/apps/contacts/formats/backend_ldap_inet_org_person_connector.xml
+#srv/web/owncloud/apps/contacts/formats/backend_ldap_vcard_unassigned_connector.xml
+#srv/web/owncloud/apps/contacts/formats/import_csv_gmail_connector.xml
+#srv/web/owncloud/apps/contacts/formats/import_csv_outlook_connector.xml
+#srv/web/owncloud/apps/contacts/formats/import_csv_thunderbird_connector.xml
+#srv/web/owncloud/apps/contacts/formats/import_csv_yahoo_connector.xml
+#srv/web/owncloud/apps/contacts/formats/import_ldif_phpldapadmin_connector.xml
+#srv/web/owncloud/apps/contacts/formats/import_vcard_gmail_connector.xml
+#srv/web/owncloud/apps/contacts/formats/import_vcard_standard_connector.xml
+#srv/web/owncloud/apps/contacts/formats/import_vcard_yahoo_connector.xml
+#srv/web/owncloud/apps/contacts/formats/vcardunassigned.schema
 #srv/web/owncloud/apps/contacts/img
-#srv/web/owncloud/apps/contacts/img/active_star.png
-#srv/web/owncloud/apps/contacts/img/active_star.svg
-#srv/web/owncloud/apps/contacts/img/checkmark-gray.png
-#srv/web/owncloud/apps/contacts/img/checkmark-gray.svg
-#srv/web/owncloud/apps/contacts/img/checkmark-green.png
-#srv/web/owncloud/apps/contacts/img/checkmark-green.svg
-#srv/web/owncloud/apps/contacts/img/checkmark.png
-#srv/web/owncloud/apps/contacts/img/contact-new.png
-#srv/web/owncloud/apps/contacts/img/contact-new.svg
+#srv/web/owncloud/apps/contacts/img/170x170.gif
 #srv/web/owncloud/apps/contacts/img/contacts.png
 #srv/web/owncloud/apps/contacts/img/contacts.svg
 #srv/web/owncloud/apps/contacts/img/globe.svg
-#srv/web/owncloud/apps/contacts/img/inactive_star.png
-#srv/web/owncloud/apps/contacts/img/inactive_star.svg
-#srv/web/owncloud/apps/contacts/img/person.png
-#srv/web/owncloud/apps/contacts/img/person.svg
 #srv/web/owncloud/apps/contacts/img/person_large.png
-#srv/web/owncloud/apps/contacts/img/starred.png
-#srv/web/owncloud/apps/contacts/img/starred.svg
 #srv/web/owncloud/apps/contacts/js
 #srv/web/owncloud/apps/contacts/js/addressbooks.js
+#srv/web/owncloud/apps/contacts/js/admin.js
 #srv/web/owncloud/apps/contacts/js/app.js
 #srv/web/owncloud/apps/contacts/js/config.php
 #srv/web/owncloud/apps/contacts/js/contacts.js
-#srv/web/owncloud/apps/contacts/js/cropphoto.js
-#srv/web/owncloud/apps/contacts/js/expanding.js
 #srv/web/owncloud/apps/contacts/js/groups.js
 #srv/web/owncloud/apps/contacts/js/jquery.combobox.js
 #srv/web/owncloud/apps/contacts/js/jquery.multi-autocomplete.js
-#srv/web/owncloud/apps/contacts/js/jquery.multiselect.js
 #srv/web/owncloud/apps/contacts/js/jquery.ocaddnew.js
 #srv/web/owncloud/apps/contacts/js/jquery.onfontresize.js
-#srv/web/owncloud/apps/contacts/js/jshint.js
-#srv/web/owncloud/apps/contacts/js/jshintcfg.js
 #srv/web/owncloud/apps/contacts/js/loader.js
 #srv/web/owncloud/apps/contacts/js/modernizr.custom.js
-#srv/web/owncloud/apps/contacts/js/modernizr.js
+#srv/web/owncloud/apps/contacts/js/otherbackendconfig.js
 #srv/web/owncloud/apps/contacts/js/placeholder_polyfill.jquery.js
 #srv/web/owncloud/apps/contacts/js/placeholder_polyfill.jquery.min.combo.js
-#srv/web/owncloud/apps/contacts/js/settings.js
 #srv/web/owncloud/apps/contacts/js/storage.js
 #srv/web/owncloud/apps/contacts/l10n
 #srv/web/owncloud/apps/contacts/l10n/ach
@@ -2560,10 +4262,20 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/af_ZA
 #srv/web/owncloud/apps/contacts/l10n/af_ZA.php
 #srv/web/owncloud/apps/contacts/l10n/af_ZA/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/ak
+#srv/web/owncloud/apps/contacts/l10n/ak/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/am_ET
+#srv/web/owncloud/apps/contacts/l10n/am_ET/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/ar
 #srv/web/owncloud/apps/contacts/l10n/ar.php
 #srv/web/owncloud/apps/contacts/l10n/ar/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/ast
+#srv/web/owncloud/apps/contacts/l10n/ast.php
+#srv/web/owncloud/apps/contacts/l10n/ast/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/az
+#srv/web/owncloud/apps/contacts/l10n/az/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/be
+#srv/web/owncloud/apps/contacts/l10n/be.php
 #srv/web/owncloud/apps/contacts/l10n/be/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/bg_BG
 #srv/web/owncloud/apps/contacts/l10n/bg_BG.php
@@ -2571,12 +4283,16 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/bn_BD
 #srv/web/owncloud/apps/contacts/l10n/bn_BD.php
 #srv/web/owncloud/apps/contacts/l10n/bn_BD/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/bn_IN
+#srv/web/owncloud/apps/contacts/l10n/bn_IN/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/bs
 #srv/web/owncloud/apps/contacts/l10n/bs.php
 #srv/web/owncloud/apps/contacts/l10n/bs/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/ca
 #srv/web/owncloud/apps/contacts/l10n/ca.php
 #srv/web/owncloud/apps/contacts/l10n/ca/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/ca@valencia
+#srv/web/owncloud/apps/contacts/l10n/ca@valencia/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/cs_CZ
 #srv/web/owncloud/apps/contacts/l10n/cs_CZ.php
 #srv/web/owncloud/apps/contacts/l10n/cs_CZ/contacts.po
@@ -2590,6 +4306,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/de.php
 #srv/web/owncloud/apps/contacts/l10n/de/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/de_AT
+#srv/web/owncloud/apps/contacts/l10n/de_AT.php
 #srv/web/owncloud/apps/contacts/l10n/de_AT/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/de_CH
 #srv/web/owncloud/apps/contacts/l10n/de_CH.php
@@ -2606,6 +4323,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/en_GB
 #srv/web/owncloud/apps/contacts/l10n/en_GB.php
 #srv/web/owncloud/apps/contacts/l10n/en_GB/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/en_NZ
+#srv/web/owncloud/apps/contacts/l10n/en_NZ/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/eo
 #srv/web/owncloud/apps/contacts/l10n/eo.php
 #srv/web/owncloud/apps/contacts/l10n/eo/contacts.po
@@ -2615,14 +4334,37 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/es_AR
 #srv/web/owncloud/apps/contacts/l10n/es_AR.php
 #srv/web/owncloud/apps/contacts/l10n/es_AR/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_BO
+#srv/web/owncloud/apps/contacts/l10n/es_BO/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_CL
+#srv/web/owncloud/apps/contacts/l10n/es_CL.php
+#srv/web/owncloud/apps/contacts/l10n/es_CL/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_CO
+#srv/web/owncloud/apps/contacts/l10n/es_CO/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_CR
+#srv/web/owncloud/apps/contacts/l10n/es_CR/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_EC
+#srv/web/owncloud/apps/contacts/l10n/es_EC/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/es_MX
+#srv/web/owncloud/apps/contacts/l10n/es_MX.php
 #srv/web/owncloud/apps/contacts/l10n/es_MX/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_PE
+#srv/web/owncloud/apps/contacts/l10n/es_PE/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_PY
+#srv/web/owncloud/apps/contacts/l10n/es_PY/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_US
+#srv/web/owncloud/apps/contacts/l10n/es_US/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/es_UY
+#srv/web/owncloud/apps/contacts/l10n/es_UY/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/et_EE
 #srv/web/owncloud/apps/contacts/l10n/et_EE.php
 #srv/web/owncloud/apps/contacts/l10n/et_EE/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/eu
 #srv/web/owncloud/apps/contacts/l10n/eu.php
 #srv/web/owncloud/apps/contacts/l10n/eu/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/eu_ES
+#srv/web/owncloud/apps/contacts/l10n/eu_ES.php
+#srv/web/owncloud/apps/contacts/l10n/eu_ES/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/fa
 #srv/web/owncloud/apps/contacts/l10n/fa.php
 #srv/web/owncloud/apps/contacts/l10n/fa/contacts.po
@@ -2646,6 +4388,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/hi
 #srv/web/owncloud/apps/contacts/l10n/hi.php
 #srv/web/owncloud/apps/contacts/l10n/hi/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/hi_IN
+#srv/web/owncloud/apps/contacts/l10n/hi_IN/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/hr
 #srv/web/owncloud/apps/contacts/l10n/hr.php
 #srv/web/owncloud/apps/contacts/l10n/hr/contacts.po
@@ -2667,9 +4411,13 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/it
 #srv/web/owncloud/apps/contacts/l10n/it.php
 #srv/web/owncloud/apps/contacts/l10n/it/contacts.po
-#srv/web/owncloud/apps/contacts/l10n/ja_JP
+#srv/web/owncloud/apps/contacts/l10n/ja
+#srv/web/owncloud/apps/contacts/l10n/ja.php
+#srv/web/owncloud/apps/contacts/l10n/ja/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/ja_JP.php
-#srv/web/owncloud/apps/contacts/l10n/ja_JP/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/jv
+#srv/web/owncloud/apps/contacts/l10n/jv.php
+#srv/web/owncloud/apps/contacts/l10n/jv/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/ka
 #srv/web/owncloud/apps/contacts/l10n/ka.php
 #srv/web/owncloud/apps/contacts/l10n/ka/contacts.po
@@ -2700,8 +4448,13 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/mk
 #srv/web/owncloud/apps/contacts/l10n/mk.php
 #srv/web/owncloud/apps/contacts/l10n/mk/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/ml
+#srv/web/owncloud/apps/contacts/l10n/ml/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/ml_IN
+#srv/web/owncloud/apps/contacts/l10n/ml_IN.php
 #srv/web/owncloud/apps/contacts/l10n/ml_IN/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/mn
+#srv/web/owncloud/apps/contacts/l10n/mn/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/ms_MY
 #srv/web/owncloud/apps/contacts/l10n/ms_MY.php
 #srv/web/owncloud/apps/contacts/l10n/ms_MY/contacts.po
@@ -2726,6 +4479,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/oc
 #srv/web/owncloud/apps/contacts/l10n/oc.php
 #srv/web/owncloud/apps/contacts/l10n/oc/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/or_IN
+#srv/web/owncloud/apps/contacts/l10n/or_IN/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/pa
 #srv/web/owncloud/apps/contacts/l10n/pa.php
 #srv/web/owncloud/apps/contacts/l10n/pa/contacts.po
@@ -2754,6 +4509,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/si_LK.php
 #srv/web/owncloud/apps/contacts/l10n/si_LK/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/sk
+#srv/web/owncloud/apps/contacts/l10n/sk.php
 #srv/web/owncloud/apps/contacts/l10n/sk/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/sk_SK
 #srv/web/owncloud/apps/contacts/l10n/sk_SK.php
@@ -2770,11 +4526,15 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/sr@latin
 #srv/web/owncloud/apps/contacts/l10n/sr@latin.php
 #srv/web/owncloud/apps/contacts/l10n/sr@latin/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/su
+#srv/web/owncloud/apps/contacts/l10n/su/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/sv
 #srv/web/owncloud/apps/contacts/l10n/sv.php
 #srv/web/owncloud/apps/contacts/l10n/sv/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/sw_KE
 #srv/web/owncloud/apps/contacts/l10n/sw_KE/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/ta_IN
+#srv/web/owncloud/apps/contacts/l10n/ta_IN/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/ta_LK
 #srv/web/owncloud/apps/contacts/l10n/ta_LK.php
 #srv/web/owncloud/apps/contacts/l10n/ta_LK/contacts.po
@@ -2797,6 +4557,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/l10n/uk
 #srv/web/owncloud/apps/contacts/l10n/uk.php
 #srv/web/owncloud/apps/contacts/l10n/uk/contacts.po
+#srv/web/owncloud/apps/contacts/l10n/ur
+#srv/web/owncloud/apps/contacts/l10n/ur/contacts.po
 #srv/web/owncloud/apps/contacts/l10n/ur_PK
 #srv/web/owncloud/apps/contacts/l10n/ur_PK.php
 #srv/web/owncloud/apps/contacts/l10n/ur_PK/contacts.po
@@ -2837,11 +4599,16 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/lib/carddav/plugin.php
 #srv/web/owncloud/apps/contacts/lib/carddav/useraddressbooks.php
 #srv/web/owncloud/apps/contacts/lib/connector
+#srv/web/owncloud/apps/contacts/lib/connector/importconnector.php
+#srv/web/owncloud/apps/contacts/lib/connector/importcsvconnector.php
+#srv/web/owncloud/apps/contacts/lib/connector/importldifconnector.php
+#srv/web/owncloud/apps/contacts/lib/connector/importvcardconnector.php
 #srv/web/owncloud/apps/contacts/lib/connector/ldapconnector.php
 #srv/web/owncloud/apps/contacts/lib/contact.php
 #srv/web/owncloud/apps/contacts/lib/controller
 #srv/web/owncloud/apps/contacts/lib/controller.php
 #srv/web/owncloud/apps/contacts/lib/controller/addressbookcontroller.php
+#srv/web/owncloud/apps/contacts/lib/controller/backendcontroller.php
 #srv/web/owncloud/apps/contacts/lib/controller/contactcontroller.php
 #srv/web/owncloud/apps/contacts/lib/controller/contactphotocontroller.php
 #srv/web/owncloud/apps/contacts/lib/controller/exportcontroller.php
@@ -2849,10 +4616,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/lib/controller/importcontroller.php
 #srv/web/owncloud/apps/contacts/lib/controller/pagecontroller.php
 #srv/web/owncloud/apps/contacts/lib/controller/settingscontroller.php
-#srv/web/owncloud/apps/contacts/lib/dicontainer.php
 #srv/web/owncloud/apps/contacts/lib/dispatcher.php
 #srv/web/owncloud/apps/contacts/lib/hooks.php
 #srv/web/owncloud/apps/contacts/lib/imageresponse.php
+#srv/web/owncloud/apps/contacts/lib/importmanager.php
 #srv/web/owncloud/apps/contacts/lib/ipimobject.php
 #srv/web/owncloud/apps/contacts/lib/jsonresponse.php
 #srv/web/owncloud/apps/contacts/lib/middleware
@@ -2865,15 +4632,22 @@ srv/web/owncloud
 #srv/web/owncloud/apps/contacts/lib/utils
 #srv/web/owncloud/apps/contacts/lib/utils/jsonserializer.php
 #srv/web/owncloud/apps/contacts/lib/utils/properties.php
+#srv/web/owncloud/apps/contacts/lib/utils/temporaryphoto
+#srv/web/owncloud/apps/contacts/lib/utils/temporaryphoto.php
+#srv/web/owncloud/apps/contacts/lib/utils/temporaryphoto/contact.php
+#srv/web/owncloud/apps/contacts/lib/utils/temporaryphoto/filesystem.php
+#srv/web/owncloud/apps/contacts/lib/utils/temporaryphoto/uploaded.php
+#srv/web/owncloud/apps/contacts/lib/utils/temporaryphoto/user.php
+#srv/web/owncloud/apps/contacts/lib/utils/uuid.php
 #srv/web/owncloud/apps/contacts/lib/vobject
 #srv/web/owncloud/apps/contacts/lib/vobject/groupproperty.php
 #srv/web/owncloud/apps/contacts/lib/vobject/stringproperty.php
 #srv/web/owncloud/apps/contacts/lib/vobject/vcard.php
 #srv/web/owncloud/apps/contacts/settings.php
 #srv/web/owncloud/apps/contacts/templates
+#srv/web/owncloud/apps/contacts/templates/admin.php
 #srv/web/owncloud/apps/contacts/templates/contacts.php
 #srv/web/owncloud/apps/contacts/templates/importdialog.html
-#srv/web/owncloud/apps/contacts/templates/settings.php
 #srv/web/owncloud/apps/contacts/tests
 #srv/web/owncloud/apps/contacts/tests/Makefile
 #srv/web/owncloud/apps/contacts/tests/bootstrap.php
@@ -2898,6 +4672,7 @@ srv/web/owncloud
 #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
 #srv/web/owncloud/apps/documents/ajax/controller.php
@@ -3577,6 +5352,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/js/3rdparty/webodf/webodf-debug.js
 #srv/web/owncloud/apps/documents/js/3rdparty/webodf/webodf.js
 #srv/web/owncloud/apps/documents/js/ServerFactory.js
+#srv/web/owncloud/apps/documents/js/admin.js
 #srv/web/owncloud/apps/documents/js/documents.js
 #srv/web/owncloud/apps/documents/js/locale.js
 #srv/web/owncloud/apps/documents/js/personal.js
@@ -3593,10 +5369,20 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/af_ZA
 #srv/web/owncloud/apps/documents/l10n/af_ZA.php
 #srv/web/owncloud/apps/documents/l10n/af_ZA/documents.po
+#srv/web/owncloud/apps/documents/l10n/ak
+#srv/web/owncloud/apps/documents/l10n/ak/documents.po
+#srv/web/owncloud/apps/documents/l10n/am_ET
+#srv/web/owncloud/apps/documents/l10n/am_ET/documents.po
 #srv/web/owncloud/apps/documents/l10n/ar
 #srv/web/owncloud/apps/documents/l10n/ar.php
 #srv/web/owncloud/apps/documents/l10n/ar/documents.po
+#srv/web/owncloud/apps/documents/l10n/ast
+#srv/web/owncloud/apps/documents/l10n/ast.php
+#srv/web/owncloud/apps/documents/l10n/ast/documents.po
+#srv/web/owncloud/apps/documents/l10n/az
+#srv/web/owncloud/apps/documents/l10n/az/documents.po
 #srv/web/owncloud/apps/documents/l10n/be
+#srv/web/owncloud/apps/documents/l10n/be.php
 #srv/web/owncloud/apps/documents/l10n/be/documents.po
 #srv/web/owncloud/apps/documents/l10n/bg_BG
 #srv/web/owncloud/apps/documents/l10n/bg_BG.php
@@ -3604,12 +5390,16 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/bn_BD
 #srv/web/owncloud/apps/documents/l10n/bn_BD.php
 #srv/web/owncloud/apps/documents/l10n/bn_BD/documents.po
+#srv/web/owncloud/apps/documents/l10n/bn_IN
+#srv/web/owncloud/apps/documents/l10n/bn_IN/documents.po
 #srv/web/owncloud/apps/documents/l10n/bs
 #srv/web/owncloud/apps/documents/l10n/bs.php
 #srv/web/owncloud/apps/documents/l10n/bs/documents.po
 #srv/web/owncloud/apps/documents/l10n/ca
 #srv/web/owncloud/apps/documents/l10n/ca.php
 #srv/web/owncloud/apps/documents/l10n/ca/documents.po
+#srv/web/owncloud/apps/documents/l10n/ca@valencia
+#srv/web/owncloud/apps/documents/l10n/ca@valencia/documents.po
 #srv/web/owncloud/apps/documents/l10n/cs_CZ
 #srv/web/owncloud/apps/documents/l10n/cs_CZ.php
 #srv/web/owncloud/apps/documents/l10n/cs_CZ/documents.po
@@ -3623,6 +5413,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/de.php
 #srv/web/owncloud/apps/documents/l10n/de/documents.po
 #srv/web/owncloud/apps/documents/l10n/de_AT
+#srv/web/owncloud/apps/documents/l10n/de_AT.php
 #srv/web/owncloud/apps/documents/l10n/de_AT/documents.po
 #srv/web/owncloud/apps/documents/l10n/de_CH
 #srv/web/owncloud/apps/documents/l10n/de_CH.php
@@ -3639,6 +5430,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/en_GB
 #srv/web/owncloud/apps/documents/l10n/en_GB.php
 #srv/web/owncloud/apps/documents/l10n/en_GB/documents.po
+#srv/web/owncloud/apps/documents/l10n/en_NZ
+#srv/web/owncloud/apps/documents/l10n/en_NZ/documents.po
 #srv/web/owncloud/apps/documents/l10n/eo
 #srv/web/owncloud/apps/documents/l10n/eo.php
 #srv/web/owncloud/apps/documents/l10n/eo/documents.po
@@ -3648,14 +5441,37 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/es_AR
 #srv/web/owncloud/apps/documents/l10n/es_AR.php
 #srv/web/owncloud/apps/documents/l10n/es_AR/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_BO
+#srv/web/owncloud/apps/documents/l10n/es_BO/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_CL
+#srv/web/owncloud/apps/documents/l10n/es_CL.php
+#srv/web/owncloud/apps/documents/l10n/es_CL/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_CO
+#srv/web/owncloud/apps/documents/l10n/es_CO/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_CR
+#srv/web/owncloud/apps/documents/l10n/es_CR/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_EC
+#srv/web/owncloud/apps/documents/l10n/es_EC/documents.po
 #srv/web/owncloud/apps/documents/l10n/es_MX
+#srv/web/owncloud/apps/documents/l10n/es_MX.php
 #srv/web/owncloud/apps/documents/l10n/es_MX/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_PE
+#srv/web/owncloud/apps/documents/l10n/es_PE/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_PY
+#srv/web/owncloud/apps/documents/l10n/es_PY/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_US
+#srv/web/owncloud/apps/documents/l10n/es_US/documents.po
+#srv/web/owncloud/apps/documents/l10n/es_UY
+#srv/web/owncloud/apps/documents/l10n/es_UY/documents.po
 #srv/web/owncloud/apps/documents/l10n/et_EE
 #srv/web/owncloud/apps/documents/l10n/et_EE.php
 #srv/web/owncloud/apps/documents/l10n/et_EE/documents.po
 #srv/web/owncloud/apps/documents/l10n/eu
 #srv/web/owncloud/apps/documents/l10n/eu.php
 #srv/web/owncloud/apps/documents/l10n/eu/documents.po
+#srv/web/owncloud/apps/documents/l10n/eu_ES
+#srv/web/owncloud/apps/documents/l10n/eu_ES.php
+#srv/web/owncloud/apps/documents/l10n/eu_ES/documents.po
 #srv/web/owncloud/apps/documents/l10n/fa
 #srv/web/owncloud/apps/documents/l10n/fa.php
 #srv/web/owncloud/apps/documents/l10n/fa/documents.po
@@ -3676,6 +5492,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/hi
 #srv/web/owncloud/apps/documents/l10n/hi.php
 #srv/web/owncloud/apps/documents/l10n/hi/documents.po
+#srv/web/owncloud/apps/documents/l10n/hi_IN
+#srv/web/owncloud/apps/documents/l10n/hi_IN/documents.po
 #srv/web/owncloud/apps/documents/l10n/hr
 #srv/web/owncloud/apps/documents/l10n/hr.php
 #srv/web/owncloud/apps/documents/l10n/hr/documents.po
@@ -3697,9 +5515,13 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/it
 #srv/web/owncloud/apps/documents/l10n/it.php
 #srv/web/owncloud/apps/documents/l10n/it/documents.po
-#srv/web/owncloud/apps/documents/l10n/ja_JP
+#srv/web/owncloud/apps/documents/l10n/ja
+#srv/web/owncloud/apps/documents/l10n/ja.php
+#srv/web/owncloud/apps/documents/l10n/ja/documents.po
 #srv/web/owncloud/apps/documents/l10n/ja_JP.php
-#srv/web/owncloud/apps/documents/l10n/ja_JP/documents.po
+#srv/web/owncloud/apps/documents/l10n/jv
+#srv/web/owncloud/apps/documents/l10n/jv.php
+#srv/web/owncloud/apps/documents/l10n/jv/documents.po
 #srv/web/owncloud/apps/documents/l10n/ka
 #srv/web/owncloud/apps/documents/l10n/ka.php
 #srv/web/owncloud/apps/documents/l10n/ka/documents.po
@@ -3730,8 +5552,12 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/mk
 #srv/web/owncloud/apps/documents/l10n/mk.php
 #srv/web/owncloud/apps/documents/l10n/mk/documents.po
+#srv/web/owncloud/apps/documents/l10n/ml
+#srv/web/owncloud/apps/documents/l10n/ml/documents.po
 #srv/web/owncloud/apps/documents/l10n/ml_IN
 #srv/web/owncloud/apps/documents/l10n/ml_IN/documents.po
+#srv/web/owncloud/apps/documents/l10n/mn
+#srv/web/owncloud/apps/documents/l10n/mn/documents.po
 #srv/web/owncloud/apps/documents/l10n/ms_MY
 #srv/web/owncloud/apps/documents/l10n/ms_MY.php
 #srv/web/owncloud/apps/documents/l10n/ms_MY/documents.po
@@ -3756,6 +5582,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/oc
 #srv/web/owncloud/apps/documents/l10n/oc.php
 #srv/web/owncloud/apps/documents/l10n/oc/documents.po
+#srv/web/owncloud/apps/documents/l10n/or_IN
+#srv/web/owncloud/apps/documents/l10n/or_IN/documents.po
 #srv/web/owncloud/apps/documents/l10n/pa
 #srv/web/owncloud/apps/documents/l10n/pa.php
 #srv/web/owncloud/apps/documents/l10n/pa/documents.po
@@ -3781,6 +5609,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/si_LK.php
 #srv/web/owncloud/apps/documents/l10n/si_LK/documents.po
 #srv/web/owncloud/apps/documents/l10n/sk
+#srv/web/owncloud/apps/documents/l10n/sk.php
 #srv/web/owncloud/apps/documents/l10n/sk/documents.po
 #srv/web/owncloud/apps/documents/l10n/sk_SK
 #srv/web/owncloud/apps/documents/l10n/sk_SK.php
@@ -3797,11 +5626,15 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/sr@latin
 #srv/web/owncloud/apps/documents/l10n/sr@latin.php
 #srv/web/owncloud/apps/documents/l10n/sr@latin/documents.po
+#srv/web/owncloud/apps/documents/l10n/su
+#srv/web/owncloud/apps/documents/l10n/su/documents.po
 #srv/web/owncloud/apps/documents/l10n/sv
 #srv/web/owncloud/apps/documents/l10n/sv.php
 #srv/web/owncloud/apps/documents/l10n/sv/documents.po
 #srv/web/owncloud/apps/documents/l10n/sw_KE
 #srv/web/owncloud/apps/documents/l10n/sw_KE/documents.po
+#srv/web/owncloud/apps/documents/l10n/ta_IN
+#srv/web/owncloud/apps/documents/l10n/ta_IN/documents.po
 #srv/web/owncloud/apps/documents/l10n/ta_LK
 #srv/web/owncloud/apps/documents/l10n/ta_LK.php
 #srv/web/owncloud/apps/documents/l10n/ta_LK/documents.po
@@ -3824,6 +5657,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/uk
 #srv/web/owncloud/apps/documents/l10n/uk.php
 #srv/web/owncloud/apps/documents/l10n/uk/documents.po
+#srv/web/owncloud/apps/documents/l10n/ur
+#srv/web/owncloud/apps/documents/l10n/ur/documents.po
 #srv/web/owncloud/apps/documents/l10n/ur_PK
 #srv/web/owncloud/apps/documents/l10n/ur_PK.php
 #srv/web/owncloud/apps/documents/l10n/ur_PK/documents.po
@@ -3843,6 +5678,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/l10n/zh_TW/documents.po
 #srv/web/owncloud/apps/documents/lib
 #srv/web/owncloud/apps/documents/lib/config.php
+#srv/web/owncloud/apps/documents/lib/converter.php
 #srv/web/owncloud/apps/documents/lib/db
 #srv/web/owncloud/apps/documents/lib/db.php
 #srv/web/owncloud/apps/documents/lib/db/member.php
@@ -3859,6 +5695,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/lib/genesis.php
 #srv/web/owncloud/apps/documents/lib/helper.php
 #srv/web/owncloud/apps/documents/lib/request.php
+#srv/web/owncloud/apps/documents/lib/response.odt
 #srv/web/owncloud/apps/documents/lib/storage.php
 #srv/web/owncloud/apps/documents/lib/view.php
 #srv/web/owncloud/apps/documents/personal.php
@@ -3875,6 +5712,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/documents/src/patches/keepBodyStyle.patch
 #srv/web/owncloud/apps/documents/src/updateWebODF.sh
 #srv/web/owncloud/apps/documents/templates
+#srv/web/owncloud/apps/documents/templates/admin.php
 #srv/web/owncloud/apps/documents/templates/documents.php
 #srv/web/owncloud/apps/documents/templates/personal.php
 #srv/web/owncloud/apps/documents/templates/public.php
@@ -3896,7 +5734,9 @@ srv/web/owncloud
 #srv/web/owncloud/apps/external/js/admin.js
 #srv/web/owncloud/apps/external/js/external.js
 #srv/web/owncloud/apps/external/l10n
+#srv/web/owncloud/apps/external/l10n/af_ZA.php
 #srv/web/owncloud/apps/external/l10n/ar.php
+#srv/web/owncloud/apps/external/l10n/ast.php
 #srv/web/owncloud/apps/external/l10n/bg_BG.php
 #srv/web/owncloud/apps/external/l10n/bn_BD.php
 #srv/web/owncloud/apps/external/l10n/bs.php
@@ -3912,6 +5752,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/external/l10n/eo.php
 #srv/web/owncloud/apps/external/l10n/es.php
 #srv/web/owncloud/apps/external/l10n/es_AR.php
+#srv/web/owncloud/apps/external/l10n/es_MX.php
 #srv/web/owncloud/apps/external/l10n/et_EE.php
 #srv/web/owncloud/apps/external/l10n/eu.php
 #srv/web/owncloud/apps/external/l10n/fa.php
@@ -3926,8 +5767,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/external/l10n/id.php
 #srv/web/owncloud/apps/external/l10n/is.php
 #srv/web/owncloud/apps/external/l10n/it.php
+#srv/web/owncloud/apps/external/l10n/ja.php
 #srv/web/owncloud/apps/external/l10n/ja_JP.php
 #srv/web/owncloud/apps/external/l10n/ka_GE.php
+#srv/web/owncloud/apps/external/l10n/km.php
 #srv/web/owncloud/apps/external/l10n/ko.php
 #srv/web/owncloud/apps/external/l10n/ku_IQ.php
 #srv/web/owncloud/apps/external/l10n/lb.php
@@ -3980,10 +5823,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/ajax/move.php
 #srv/web/owncloud/apps/files/ajax/newfile.php
 #srv/web/owncloud/apps/files/ajax/newfolder.php
-#srv/web/owncloud/apps/files/ajax/rawlist.php
 #srv/web/owncloud/apps/files/ajax/rename.php
 #srv/web/owncloud/apps/files/ajax/scan.php
-#srv/web/owncloud/apps/files/ajax/upgrade.php
 #srv/web/owncloud/apps/files/ajax/upload.php
 #srv/web/owncloud/apps/files/appinfo
 #srv/web/owncloud/apps/files/appinfo/app.php
@@ -3998,32 +5839,42 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/command/scan.php
 #srv/web/owncloud/apps/files/css
 #srv/web/owncloud/apps/files/css/files.css
+#srv/web/owncloud/apps/files/css/mobile.css
 #srv/web/owncloud/apps/files/css/upload.css
 #srv/web/owncloud/apps/files/download.php
 #srv/web/owncloud/apps/files/index.php
 #srv/web/owncloud/apps/files/js
 #srv/web/owncloud/apps/files/js/admin.js
+#srv/web/owncloud/apps/files/js/app.js
+#srv/web/owncloud/apps/files/js/breadcrumb.js
 #srv/web/owncloud/apps/files/js/file-upload.js
 #srv/web/owncloud/apps/files/js/fileactions.js
 #srv/web/owncloud/apps/files/js/filelist.js
 #srv/web/owncloud/apps/files/js/files.js
+#srv/web/owncloud/apps/files/js/filesummary.js
 #srv/web/owncloud/apps/files/js/jquery-visibility.js
 #srv/web/owncloud/apps/files/js/jquery.fileupload.js
 #srv/web/owncloud/apps/files/js/jquery.iframe-transport.js
 #srv/web/owncloud/apps/files/js/keyboardshortcuts.js
-#srv/web/owncloud/apps/files/js/upgrade.js
+#srv/web/owncloud/apps/files/js/navigation.js
 #srv/web/owncloud/apps/files/js/upload.js
 #srv/web/owncloud/apps/files/l10n
 #srv/web/owncloud/apps/files/l10n/ach.php
 #srv/web/owncloud/apps/files/l10n/ady.php
 #srv/web/owncloud/apps/files/l10n/af.php
 #srv/web/owncloud/apps/files/l10n/af_ZA.php
+#srv/web/owncloud/apps/files/l10n/ak.php
+#srv/web/owncloud/apps/files/l10n/am_ET.php
 #srv/web/owncloud/apps/files/l10n/ar.php
+#srv/web/owncloud/apps/files/l10n/ast.php
+#srv/web/owncloud/apps/files/l10n/az.php
 #srv/web/owncloud/apps/files/l10n/be.php
 #srv/web/owncloud/apps/files/l10n/bg_BG.php
 #srv/web/owncloud/apps/files/l10n/bn_BD.php
+#srv/web/owncloud/apps/files/l10n/bn_IN.php
 #srv/web/owncloud/apps/files/l10n/bs.php
 #srv/web/owncloud/apps/files/l10n/ca.php
+#srv/web/owncloud/apps/files/l10n/ca@valencia.php
 #srv/web/owncloud/apps/files/l10n/cs_CZ.php
 #srv/web/owncloud/apps/files/l10n/cy_GB.php
 #srv/web/owncloud/apps/files/l10n/da.php
@@ -4034,12 +5885,23 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/l10n/el.php
 #srv/web/owncloud/apps/files/l10n/en@pirate.php
 #srv/web/owncloud/apps/files/l10n/en_GB.php
+#srv/web/owncloud/apps/files/l10n/en_NZ.php
 #srv/web/owncloud/apps/files/l10n/eo.php
 #srv/web/owncloud/apps/files/l10n/es.php
 #srv/web/owncloud/apps/files/l10n/es_AR.php
+#srv/web/owncloud/apps/files/l10n/es_BO.php
+#srv/web/owncloud/apps/files/l10n/es_CL.php
+#srv/web/owncloud/apps/files/l10n/es_CO.php
+#srv/web/owncloud/apps/files/l10n/es_CR.php
+#srv/web/owncloud/apps/files/l10n/es_EC.php
 #srv/web/owncloud/apps/files/l10n/es_MX.php
+#srv/web/owncloud/apps/files/l10n/es_PE.php
+#srv/web/owncloud/apps/files/l10n/es_PY.php
+#srv/web/owncloud/apps/files/l10n/es_US.php
+#srv/web/owncloud/apps/files/l10n/es_UY.php
 #srv/web/owncloud/apps/files/l10n/et_EE.php
 #srv/web/owncloud/apps/files/l10n/eu.php
+#srv/web/owncloud/apps/files/l10n/eu_ES.php
 #srv/web/owncloud/apps/files/l10n/fa.php
 #srv/web/owncloud/apps/files/l10n/fi.php
 #srv/web/owncloud/apps/files/l10n/fi_FI.php
@@ -4048,6 +5910,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/l10n/gl.php
 #srv/web/owncloud/apps/files/l10n/he.php
 #srv/web/owncloud/apps/files/l10n/hi.php
+#srv/web/owncloud/apps/files/l10n/hi_IN.php
 #srv/web/owncloud/apps/files/l10n/hr.php
 #srv/web/owncloud/apps/files/l10n/hu_HU.php
 #srv/web/owncloud/apps/files/l10n/hy.php
@@ -4055,7 +5918,9 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/l10n/id.php
 #srv/web/owncloud/apps/files/l10n/is.php
 #srv/web/owncloud/apps/files/l10n/it.php
+#srv/web/owncloud/apps/files/l10n/ja.php
 #srv/web/owncloud/apps/files/l10n/ja_JP.php
+#srv/web/owncloud/apps/files/l10n/jv.php
 #srv/web/owncloud/apps/files/l10n/ka.php
 #srv/web/owncloud/apps/files/l10n/ka_GE.php
 #srv/web/owncloud/apps/files/l10n/km.php
@@ -4066,7 +5931,9 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/l10n/lt_LT.php
 #srv/web/owncloud/apps/files/l10n/lv.php
 #srv/web/owncloud/apps/files/l10n/mk.php
+#srv/web/owncloud/apps/files/l10n/ml.php
 #srv/web/owncloud/apps/files/l10n/ml_IN.php
+#srv/web/owncloud/apps/files/l10n/mn.php
 #srv/web/owncloud/apps/files/l10n/ms_MY.php
 #srv/web/owncloud/apps/files/l10n/my_MM.php
 #srv/web/owncloud/apps/files/l10n/nb_NO.php
@@ -4076,6 +5943,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/l10n/nn_NO.php
 #srv/web/owncloud/apps/files/l10n/nqo.php
 #srv/web/owncloud/apps/files/l10n/oc.php
+#srv/web/owncloud/apps/files/l10n/or_IN.php
 #srv/web/owncloud/apps/files/l10n/pa.php
 #srv/web/owncloud/apps/files/l10n/pl.php
 #srv/web/owncloud/apps/files/l10n/pt_BR.php
@@ -4089,8 +5957,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/l10n/sq.php
 #srv/web/owncloud/apps/files/l10n/sr.php
 #srv/web/owncloud/apps/files/l10n/sr@latin.php
+#srv/web/owncloud/apps/files/l10n/su.php
 #srv/web/owncloud/apps/files/l10n/sv.php
 #srv/web/owncloud/apps/files/l10n/sw_KE.php
+#srv/web/owncloud/apps/files/l10n/ta_IN.php
 #srv/web/owncloud/apps/files/l10n/ta_LK.php
 #srv/web/owncloud/apps/files/l10n/te.php
 #srv/web/owncloud/apps/files/l10n/th_TH.php
@@ -4098,6 +5968,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/l10n/tzm.php
 #srv/web/owncloud/apps/files/l10n/ug.php
 #srv/web/owncloud/apps/files/l10n/uk.php
+#srv/web/owncloud/apps/files/l10n/ur.php
 #srv/web/owncloud/apps/files/l10n/ur_PK.php
 #srv/web/owncloud/apps/files/l10n/uz.php
 #srv/web/owncloud/apps/files/l10n/vi.php
@@ -4109,16 +5980,25 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files/lib/app.php
 #srv/web/owncloud/apps/files/lib/capabilities.php
 #srv/web/owncloud/apps/files/lib/helper.php
+#srv/web/owncloud/apps/files/list.php
 #srv/web/owncloud/apps/files/settings.php
 #srv/web/owncloud/apps/files/templates
 #srv/web/owncloud/apps/files/templates/admin.php
+#srv/web/owncloud/apps/files/templates/appnavigation.php
 #srv/web/owncloud/apps/files/templates/fileexists.html
 #srv/web/owncloud/apps/files/templates/index.php
-#srv/web/owncloud/apps/files/templates/part.breadcrumb.php
-#srv/web/owncloud/apps/files/templates/part.list.php
-#srv/web/owncloud/apps/files/templates/upgrade.php
+#srv/web/owncloud/apps/files/templates/list.php
 #srv/web/owncloud/apps/files/tests
 #srv/web/owncloud/apps/files/tests/ajax_rename.php
+#srv/web/owncloud/apps/files/tests/helper.php
+#srv/web/owncloud/apps/files/tests/js
+#srv/web/owncloud/apps/files/tests/js/appSpec.js
+#srv/web/owncloud/apps/files/tests/js/breadcrumbSpec.js
+#srv/web/owncloud/apps/files/tests/js/fileUploadSpec.js
+#srv/web/owncloud/apps/files/tests/js/fileactionsSpec.js
+#srv/web/owncloud/apps/files/tests/js/filelistSpec.js
+#srv/web/owncloud/apps/files/tests/js/filesSpec.js
+#srv/web/owncloud/apps/files/tests/js/filesummarySpec.js
 #srv/web/owncloud/apps/files/triggerupdate.php
 #srv/web/owncloud/apps/files_encryption
 #srv/web/owncloud/apps/files_encryption/3rdparty
@@ -4134,10 +6014,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_encryption/ajax/userrecovery.php
 #srv/web/owncloud/apps/files_encryption/appinfo
 #srv/web/owncloud/apps/files_encryption/appinfo/app.php
-#srv/web/owncloud/apps/files_encryption/appinfo/database.xml
 #srv/web/owncloud/apps/files_encryption/appinfo/info.xml
 #srv/web/owncloud/apps/files_encryption/appinfo/routes.php
 #srv/web/owncloud/apps/files_encryption/appinfo/spec.txt
+#srv/web/owncloud/apps/files_encryption/appinfo/update.php
 #srv/web/owncloud/apps/files_encryption/appinfo/version
 #srv/web/owncloud/apps/files_encryption/css
 #srv/web/owncloud/apps/files_encryption/css/settings-personal.css
@@ -4152,6 +6032,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_encryption/js/settings-personal.js
 #srv/web/owncloud/apps/files_encryption/l10n
 #srv/web/owncloud/apps/files_encryption/l10n/ar.php
+#srv/web/owncloud/apps/files_encryption/l10n/ast.php
 #srv/web/owncloud/apps/files_encryption/l10n/bg_BG.php
 #srv/web/owncloud/apps/files_encryption/l10n/bn_BD.php
 #srv/web/owncloud/apps/files_encryption/l10n/bs.php
@@ -4167,6 +6048,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_encryption/l10n/eo.php
 #srv/web/owncloud/apps/files_encryption/l10n/es.php
 #srv/web/owncloud/apps/files_encryption/l10n/es_AR.php
+#srv/web/owncloud/apps/files_encryption/l10n/es_MX.php
 #srv/web/owncloud/apps/files_encryption/l10n/et_EE.php
 #srv/web/owncloud/apps/files_encryption/l10n/eu.php
 #srv/web/owncloud/apps/files_encryption/l10n/fa.php
@@ -4179,8 +6061,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_encryption/l10n/id.php
 #srv/web/owncloud/apps/files_encryption/l10n/is.php
 #srv/web/owncloud/apps/files_encryption/l10n/it.php
+#srv/web/owncloud/apps/files_encryption/l10n/ja.php
 #srv/web/owncloud/apps/files_encryption/l10n/ja_JP.php
 #srv/web/owncloud/apps/files_encryption/l10n/ka_GE.php
+#srv/web/owncloud/apps/files_encryption/l10n/km.php
 #srv/web/owncloud/apps/files_encryption/l10n/ko.php
 #srv/web/owncloud/apps/files_encryption/l10n/ku_IQ.php
 #srv/web/owncloud/apps/files_encryption/l10n/lb.php
@@ -4217,8 +6101,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_encryption/lib
 #srv/web/owncloud/apps/files_encryption/lib/capabilities.php
 #srv/web/owncloud/apps/files_encryption/lib/crypt.php
+#srv/web/owncloud/apps/files_encryption/lib/exceptions.php
 #srv/web/owncloud/apps/files_encryption/lib/helper.php
 #srv/web/owncloud/apps/files_encryption/lib/keymanager.php
+#srv/web/owncloud/apps/files_encryption/lib/migration.php
 #srv/web/owncloud/apps/files_encryption/lib/proxy.php
 #srv/web/owncloud/apps/files_encryption/lib/session.php
 #srv/web/owncloud/apps/files_encryption/lib/stream.php
@@ -4233,10 +6119,12 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_encryption/tests/binary
 #srv/web/owncloud/apps/files_encryption/tests/crypt.php
 #srv/web/owncloud/apps/files_encryption/tests/encryption.key
+#srv/web/owncloud/apps/files_encryption/tests/encryption_table.xml
 #srv/web/owncloud/apps/files_encryption/tests/helper.php
 #srv/web/owncloud/apps/files_encryption/tests/hooks.php
 #srv/web/owncloud/apps/files_encryption/tests/keymanager.php
 #srv/web/owncloud/apps/files_encryption/tests/legacy-encrypted-text.txt
+#srv/web/owncloud/apps/files_encryption/tests/migration.php
 #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
@@ -5080,264 +6968,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_external/3rdparty/google-api-php-client/src/service/Google_Service.php
 #srv/web/owncloud/apps/files_external/3rdparty/google-api-php-client/src/service/Google_ServiceResource.php
 #srv/web/owncloud/apps/files_external/3rdparty/google-api-php-client/src/service/Google_Utils.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/LICENSE.txt
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/doc_config.ini
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/release_notes.txt
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/LICENSE.txt
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/Prods.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/ProdsConfig.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/ProdsDir.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/ProdsFile.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/ProdsPath.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/ProdsQuery.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/ProdsRule.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/ProdsStreamer.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/ProdsTicket.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSAccount.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSConn.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSConnManager.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSDirStats.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSException.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSFileStats.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSGenQueConds.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSGenQueResults.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSGenQueSelFlds.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSKeyValPair.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSMessage.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSMeta.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSObjIOOpr.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RODSQueryCondition.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RodsAPINum.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RodsConst.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RodsErrorTable.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RodsGenQueryKeyWd.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/RodsGenQueryNum.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/autoload.inc.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RODSPacket.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_BinBytesBuf.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_CollInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_CollOprStat.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_DataObjCopyInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_DataObjInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_ExecCmdOut.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_ExecMyRuleInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_GenQueryInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_GenQueryOut.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_InxIvalPair.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_InxValPair.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_KeyValPair.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_MiscSvrInfo.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_ModAVUMetadataInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_MsParam.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_MsParamArray.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_MsgHeader.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_RHostAddr.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_RodsObjStat.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_STR.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_SqlResult.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_StartupPack.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_TransStat.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_Version.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_authRequestOut.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_authResponseInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_dataObjCloseInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_dataObjReadInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_dataObjWriteInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_fileLseekInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_fileLseekOut.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_getTempPasswordOut.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_pamAuthRequestInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_pamAuthRequestOut.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_sslEndInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_sslStartInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/packet/RP_ticketAdminInp.class.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/prods.ini
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/release_notes.txt
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/setRodsAPINum.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/setRodsErrorCodes.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/setRodsGenQueryKeyWd.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/src/setRodsGenQueryNum.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/utilities
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/prods/utilities/exif2meta.php
-#srv/web/owncloud/apps/files_external/3rdparty/irodsphp/release_notes.txt
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/LICENSE
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/Autoload.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Base.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Collection.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/AsyncError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/AsyncHttpError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/AsyncTimeoutError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/AttributeError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/AuthenticationError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/BaseException.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/CdnError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/CdnHttpError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/CdnNotAvailableError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/CdnTtlError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/CollectionError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerCreateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerDeleteError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerNameError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerNotEmptyError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ContainerNotFoundError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/CreateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/CreateUpdateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/CredentialError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseCreateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseDeleteError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseListError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseNameError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/DatabaseUpdateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/DeleteError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/DocumentError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/DomainError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/EmptyResponseError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/EndpointError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/FlavorError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpForbiddenError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpOverLimitError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpRetryError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpTimeoutError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpUnauthorizedError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/HttpUrlError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/IOError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/IdRequiredError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ImageError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceCreateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceDeleteError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceFlavorError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceNotFound.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InstanceUpdateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidArgumentError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidIdTypeError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidIpTypeError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidParameterError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/InvalidRequestError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/JsonError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/LoggingException.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataCreateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataDeleteError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataJsonError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataKeyError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataPrefixError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MetadataUpdateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MisMatchedChecksumError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/MissingValueError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/NameError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkCreateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkDeleteError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkUpdateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/NetworkUrlError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/NoContentTypeError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/NoNameError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ObjFetchError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ObjectCopyError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ObjectError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/RebuildError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/RecordTypeError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerActionError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerCreateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerDeleteError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerImageScheduleError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerIpsError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerJsonError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerUpdateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServerUrlError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/ServiceValueError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/SnapshotError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/TempUrlMethodError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UnknownError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UnknownParameterError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UnrecognizedServiceError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UnsupportedExtensionError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UnsupportedFeatureExtension.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UnsupportedVersionError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UpdateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UrlError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UserCreateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UserDeleteError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UserListError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UserNameError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/UserUpdateError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/VolumeError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Exceptions/VolumeTypeError.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Identity
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Identity/Role.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Identity/Tenant.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Identity/User.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Lang.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Log
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Log/AbstractLogger.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Log/LogLevel.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Log/Logger.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Log/LoggerInterface.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Metadata.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Nova.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/PersistentObject.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Request
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Request/Curl.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Request/HttpRequestInterface.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Request/Response
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Request/Response/Blank.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Request/Response/Http.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/Service.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Common/ServiceCatalogItem.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Globals.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore/AbstractService.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore/CDNService.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore/Resource
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore/Resource/AbstractStorageObject.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore/Resource/CDNContainer.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore/Resource/Container.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore/Resource/DataObject.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/ObjectStore/Service.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/OpenStack.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/OpenCloud/Rackspace.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/openstack.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/php-opencloud.php
-#srv/web/owncloud/apps/files_external/3rdparty/php-opencloud/lib/rackspace.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/AUTHORS
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/LICENSE
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/README.md
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/composer.json
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/AES.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/DES.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Hash.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/RC4.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/RSA.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Random.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/Rijndael.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Crypt/TripleDES.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/File
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/File/ANSI.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/File/ASN1.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/File/X509.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Math
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Math/BigInteger.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Net
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SFTP.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SSH1.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/Net/SSH2.php
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpseclib/openssl.cnf
-#srv/web/owncloud/apps/files_external/3rdparty/phpseclib/phpunit.xml.dist
 #srv/web/owncloud/apps/files_external/3rdparty/smb4php
 #srv/web/owncloud/apps/files_external/3rdparty/smb4php/smb.php
 #srv/web/owncloud/apps/files_external/ajax
@@ -5350,32 +6980,42 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_external/appinfo
 #srv/web/owncloud/apps/files_external/appinfo/app.php
 #srv/web/owncloud/apps/files_external/appinfo/info.xml
+#srv/web/owncloud/apps/files_external/appinfo/routes.php
 #srv/web/owncloud/apps/files_external/appinfo/version
 #srv/web/owncloud/apps/files_external/css
 #srv/web/owncloud/apps/files_external/css/settings.css
 #srv/web/owncloud/apps/files_external/js
+#srv/web/owncloud/apps/files_external/js/app.js
 #srv/web/owncloud/apps/files_external/js/dropbox.js
 #srv/web/owncloud/apps/files_external/js/google.js
+#srv/web/owncloud/apps/files_external/js/mountsfilelist.js
 #srv/web/owncloud/apps/files_external/js/settings.js
 #srv/web/owncloud/apps/files_external/l10n
 #srv/web/owncloud/apps/files_external/l10n/af_ZA.php
 #srv/web/owncloud/apps/files_external/l10n/ar.php
+#srv/web/owncloud/apps/files_external/l10n/ast.php
 #srv/web/owncloud/apps/files_external/l10n/bg_BG.php
 #srv/web/owncloud/apps/files_external/l10n/bn_BD.php
+#srv/web/owncloud/apps/files_external/l10n/bs.php
 #srv/web/owncloud/apps/files_external/l10n/ca.php
 #srv/web/owncloud/apps/files_external/l10n/cs_CZ.php
 #srv/web/owncloud/apps/files_external/l10n/cy_GB.php
 #srv/web/owncloud/apps/files_external/l10n/da.php
 #srv/web/owncloud/apps/files_external/l10n/de.php
+#srv/web/owncloud/apps/files_external/l10n/de_AT.php
 #srv/web/owncloud/apps/files_external/l10n/de_CH.php
 #srv/web/owncloud/apps/files_external/l10n/de_DE.php
 #srv/web/owncloud/apps/files_external/l10n/el.php
+#srv/web/owncloud/apps/files_external/l10n/en@pirate.php
 #srv/web/owncloud/apps/files_external/l10n/en_GB.php
 #srv/web/owncloud/apps/files_external/l10n/eo.php
 #srv/web/owncloud/apps/files_external/l10n/es.php
 #srv/web/owncloud/apps/files_external/l10n/es_AR.php
+#srv/web/owncloud/apps/files_external/l10n/es_CL.php
+#srv/web/owncloud/apps/files_external/l10n/es_MX.php
 #srv/web/owncloud/apps/files_external/l10n/et_EE.php
 #srv/web/owncloud/apps/files_external/l10n/eu.php
+#srv/web/owncloud/apps/files_external/l10n/eu_ES.php
 #srv/web/owncloud/apps/files_external/l10n/fa.php
 #srv/web/owncloud/apps/files_external/l10n/fi_FI.php
 #srv/web/owncloud/apps/files_external/l10n/fr.php
@@ -5389,7 +7029,9 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_external/l10n/id.php
 #srv/web/owncloud/apps/files_external/l10n/is.php
 #srv/web/owncloud/apps/files_external/l10n/it.php
+#srv/web/owncloud/apps/files_external/l10n/ja.php
 #srv/web/owncloud/apps/files_external/l10n/ja_JP.php
+#srv/web/owncloud/apps/files_external/l10n/jv.php
 #srv/web/owncloud/apps/files_external/l10n/ka.php
 #srv/web/owncloud/apps/files_external/l10n/ka_GE.php
 #srv/web/owncloud/apps/files_external/l10n/km.php
@@ -5412,6 +7054,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_external/l10n/ro.php
 #srv/web/owncloud/apps/files_external/l10n/ru.php
 #srv/web/owncloud/apps/files_external/l10n/si_LK.php
+#srv/web/owncloud/apps/files_external/l10n/sk.php
 #srv/web/owncloud/apps/files_external/l10n/sk_SK.php
 #srv/web/owncloud/apps/files_external/l10n/sl.php
 #srv/web/owncloud/apps/files_external/l10n/sq.php
@@ -5431,28 +7074,36 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_external/l10n/zh_TW.php
 #srv/web/owncloud/apps/files_external/lib
 #srv/web/owncloud/apps/files_external/lib/amazons3.php
+#srv/web/owncloud/apps/files_external/lib/api.php
 #srv/web/owncloud/apps/files_external/lib/config.php
 #srv/web/owncloud/apps/files_external/lib/dropbox.php
 #srv/web/owncloud/apps/files_external/lib/ftp.php
 #srv/web/owncloud/apps/files_external/lib/google.php
-#srv/web/owncloud/apps/files_external/lib/irods.php
+#srv/web/owncloud/apps/files_external/lib/owncloud.php
+#srv/web/owncloud/apps/files_external/lib/personalmount.php
 #srv/web/owncloud/apps/files_external/lib/sftp.php
 #srv/web/owncloud/apps/files_external/lib/smb.php
+#srv/web/owncloud/apps/files_external/lib/smb_oc.php
 #srv/web/owncloud/apps/files_external/lib/streamwrapper.php
 #srv/web/owncloud/apps/files_external/lib/swift.php
-#srv/web/owncloud/apps/files_external/lib/webdav.php
+#srv/web/owncloud/apps/files_external/list.php
 #srv/web/owncloud/apps/files_external/personal.php
 #srv/web/owncloud/apps/files_external/settings.php
 #srv/web/owncloud/apps/files_external/templates
+#srv/web/owncloud/apps/files_external/templates/list.php
 #srv/web/owncloud/apps/files_external/templates/settings.php
 #srv/web/owncloud/apps/files_external/tests
 #srv/web/owncloud/apps/files_external/tests/amazons3.php
+#srv/web/owncloud/apps/files_external/tests/appSpec.js
 #srv/web/owncloud/apps/files_external/tests/config.php
 #srv/web/owncloud/apps/files_external/tests/dropbox.php
+#srv/web/owncloud/apps/files_external/tests/dynamicmountconfig.php
 #srv/web/owncloud/apps/files_external/tests/ftp.php
 #srv/web/owncloud/apps/files_external/tests/google.php
-#srv/web/owncloud/apps/files_external/tests/irods.php
+#srv/web/owncloud/apps/files_external/tests/js
+#srv/web/owncloud/apps/files_external/tests/js/mountsfilelistSpec.js
 #srv/web/owncloud/apps/files_external/tests/mountconfig.php
+#srv/web/owncloud/apps/files_external/tests/owncloud.php
 #srv/web/owncloud/apps/files_external/tests/sftp.php
 #srv/web/owncloud/apps/files_external/tests/smb.php
 #srv/web/owncloud/apps/files_external/tests/smbfunctions.php
@@ -5606,6 +7257,7 @@ 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
@@ -5619,9 +7271,14 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_pdfviewer/viewer.php
 #srv/web/owncloud/apps/files_sharing
 #srv/web/owncloud/apps/files_sharing/ajax
+#srv/web/owncloud/apps/files_sharing/ajax/external.php
+#srv/web/owncloud/apps/files_sharing/ajax/list.php
 #srv/web/owncloud/apps/files_sharing/ajax/publicpreview.php
+#srv/web/owncloud/apps/files_sharing/ajax/shareinfo.php
+#srv/web/owncloud/apps/files_sharing/ajax/testremote.php
 #srv/web/owncloud/apps/files_sharing/appinfo
 #srv/web/owncloud/apps/files_sharing/appinfo/app.php
+#srv/web/owncloud/apps/files_sharing/appinfo/database.xml
 #srv/web/owncloud/apps/files_sharing/appinfo/info.xml
 #srv/web/owncloud/apps/files_sharing/appinfo/routes.php
 #srv/web/owncloud/apps/files_sharing/appinfo/update.php
@@ -5631,19 +7288,27 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_sharing/css/authenticate.css
 #srv/web/owncloud/apps/files_sharing/css/mobile.css
 #srv/web/owncloud/apps/files_sharing/css/public.css
+#srv/web/owncloud/apps/files_sharing/css/sharedfilelist.css
 #srv/web/owncloud/apps/files_sharing/js
+#srv/web/owncloud/apps/files_sharing/js/app.js
+#srv/web/owncloud/apps/files_sharing/js/external.js
 #srv/web/owncloud/apps/files_sharing/js/public.js
+#srv/web/owncloud/apps/files_sharing/js/settings-admin.js
 #srv/web/owncloud/apps/files_sharing/js/share.js
+#srv/web/owncloud/apps/files_sharing/js/sharedfilelist.js
 #srv/web/owncloud/apps/files_sharing/l10n
 #srv/web/owncloud/apps/files_sharing/l10n/af_ZA.php
 #srv/web/owncloud/apps/files_sharing/l10n/ar.php
+#srv/web/owncloud/apps/files_sharing/l10n/ast.php
 #srv/web/owncloud/apps/files_sharing/l10n/bg_BG.php
 #srv/web/owncloud/apps/files_sharing/l10n/bn_BD.php
+#srv/web/owncloud/apps/files_sharing/l10n/bs.php
 #srv/web/owncloud/apps/files_sharing/l10n/ca.php
 #srv/web/owncloud/apps/files_sharing/l10n/cs_CZ.php
 #srv/web/owncloud/apps/files_sharing/l10n/cy_GB.php
 #srv/web/owncloud/apps/files_sharing/l10n/da.php
 #srv/web/owncloud/apps/files_sharing/l10n/de.php
+#srv/web/owncloud/apps/files_sharing/l10n/de_AT.php
 #srv/web/owncloud/apps/files_sharing/l10n/de_CH.php
 #srv/web/owncloud/apps/files_sharing/l10n/de_DE.php
 #srv/web/owncloud/apps/files_sharing/l10n/el.php
@@ -5652,8 +7317,11 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_sharing/l10n/eo.php
 #srv/web/owncloud/apps/files_sharing/l10n/es.php
 #srv/web/owncloud/apps/files_sharing/l10n/es_AR.php
+#srv/web/owncloud/apps/files_sharing/l10n/es_CL.php
+#srv/web/owncloud/apps/files_sharing/l10n/es_MX.php
 #srv/web/owncloud/apps/files_sharing/l10n/et_EE.php
 #srv/web/owncloud/apps/files_sharing/l10n/eu.php
+#srv/web/owncloud/apps/files_sharing/l10n/eu_ES.php
 #srv/web/owncloud/apps/files_sharing/l10n/fa.php
 #srv/web/owncloud/apps/files_sharing/l10n/fi_FI.php
 #srv/web/owncloud/apps/files_sharing/l10n/fr.php
@@ -5667,9 +7335,12 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_sharing/l10n/id.php
 #srv/web/owncloud/apps/files_sharing/l10n/is.php
 #srv/web/owncloud/apps/files_sharing/l10n/it.php
+#srv/web/owncloud/apps/files_sharing/l10n/ja.php
 #srv/web/owncloud/apps/files_sharing/l10n/ja_JP.php
+#srv/web/owncloud/apps/files_sharing/l10n/jv.php
 #srv/web/owncloud/apps/files_sharing/l10n/ka.php
 #srv/web/owncloud/apps/files_sharing/l10n/ka_GE.php
+#srv/web/owncloud/apps/files_sharing/l10n/km.php
 #srv/web/owncloud/apps/files_sharing/l10n/ko.php
 #srv/web/owncloud/apps/files_sharing/l10n/ku_IQ.php
 #srv/web/owncloud/apps/files_sharing/l10n/lb.php
@@ -5689,6 +7360,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_sharing/l10n/ro.php
 #srv/web/owncloud/apps/files_sharing/l10n/ru.php
 #srv/web/owncloud/apps/files_sharing/l10n/si_LK.php
+#srv/web/owncloud/apps/files_sharing/l10n/sk.php
 #srv/web/owncloud/apps/files_sharing/l10n/sk_SK.php
 #srv/web/owncloud/apps/files_sharing/l10n/sl.php
 #srv/web/owncloud/apps/files_sharing/l10n/sq.php
@@ -5709,26 +7381,56 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_sharing/lib
 #srv/web/owncloud/apps/files_sharing/lib/api.php
 #srv/web/owncloud/apps/files_sharing/lib/cache.php
+#srv/web/owncloud/apps/files_sharing/lib/connector
+#srv/web/owncloud/apps/files_sharing/lib/connector/publicauth.php
+#srv/web/owncloud/apps/files_sharing/lib/external
+#srv/web/owncloud/apps/files_sharing/lib/external/cache.php
+#srv/web/owncloud/apps/files_sharing/lib/external/manager.php
+#srv/web/owncloud/apps/files_sharing/lib/external/mount.php
+#srv/web/owncloud/apps/files_sharing/lib/external/scanner.php
+#srv/web/owncloud/apps/files_sharing/lib/external/storage.php
+#srv/web/owncloud/apps/files_sharing/lib/helper.php
+#srv/web/owncloud/apps/files_sharing/lib/isharedstorage.php
 #srv/web/owncloud/apps/files_sharing/lib/maintainer.php
-#srv/web/owncloud/apps/files_sharing/lib/permissions.php
+#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/share
 #srv/web/owncloud/apps/files_sharing/lib/share/file.php
 #srv/web/owncloud/apps/files_sharing/lib/share/folder.php
+#srv/web/owncloud/apps/files_sharing/lib/sharedmount.php
 #srv/web/owncloud/apps/files_sharing/lib/sharedstorage.php
 #srv/web/owncloud/apps/files_sharing/lib/updater.php
 #srv/web/owncloud/apps/files_sharing/lib/watcher.php
+#srv/web/owncloud/apps/files_sharing/list.php
 #srv/web/owncloud/apps/files_sharing/public.php
+#srv/web/owncloud/apps/files_sharing/publicwebdav.php
+#srv/web/owncloud/apps/files_sharing/settings-admin.php
 #srv/web/owncloud/apps/files_sharing/templates
 #srv/web/owncloud/apps/files_sharing/templates/authenticate.php
+#srv/web/owncloud/apps/files_sharing/templates/list.php
 #srv/web/owncloud/apps/files_sharing/templates/part.404.php
 #srv/web/owncloud/apps/files_sharing/templates/public.php
+#srv/web/owncloud/apps/files_sharing/templates/settings-admin.php
 #srv/web/owncloud/apps/files_sharing/tests
 #srv/web/owncloud/apps/files_sharing/tests/api.php
 #srv/web/owncloud/apps/files_sharing/tests/base.php
 #srv/web/owncloud/apps/files_sharing/tests/cache.php
+#srv/web/owncloud/apps/files_sharing/tests/externalstorage.php
+#srv/web/owncloud/apps/files_sharing/tests/js
+#srv/web/owncloud/apps/files_sharing/tests/js/appSpec.js
+#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/proxy.php
+#srv/web/owncloud/apps/files_sharing/tests/share.php
+#srv/web/owncloud/apps/files_sharing/tests/sharedmount.php
+#srv/web/owncloud/apps/files_sharing/tests/sharedstorage.php
+#srv/web/owncloud/apps/files_sharing/tests/update.php
+#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
@@ -5743,8 +7445,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_texteditor/css/DroidSansMono/DroidSansMono-webfont.ttf
 #srv/web/owncloud/apps/files_texteditor/css/DroidSansMono/DroidSansMono-webfont.woff
 #srv/web/owncloud/apps/files_texteditor/css/DroidSansMono/Google_Android_License.txt
-#srv/web/owncloud/apps/files_texteditor/css/DroidSansMono/demo.html
 #srv/web/owncloud/apps/files_texteditor/css/DroidSansMono/stylesheet.css
+#srv/web/owncloud/apps/files_texteditor/css/mobile.css
 #srv/web/owncloud/apps/files_texteditor/css/style.css
 #srv/web/owncloud/apps/files_texteditor/js
 #srv/web/owncloud/apps/files_texteditor/js/editor.js
@@ -6019,8 +7721,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_texteditor/l10n/eo.php
 #srv/web/owncloud/apps/files_texteditor/l10n/es.php
 #srv/web/owncloud/apps/files_texteditor/l10n/es_AR.php
+#srv/web/owncloud/apps/files_texteditor/l10n/es_MX.php
 #srv/web/owncloud/apps/files_texteditor/l10n/et_EE.php
 #srv/web/owncloud/apps/files_texteditor/l10n/eu.php
+#srv/web/owncloud/apps/files_texteditor/l10n/eu_ES.php
 #srv/web/owncloud/apps/files_texteditor/l10n/fa.php
 #srv/web/owncloud/apps/files_texteditor/l10n/fi.php
 #srv/web/owncloud/apps/files_texteditor/l10n/fi_FI.php
@@ -6056,8 +7760,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_texteditor/l10n/pt_PT.php
 #srv/web/owncloud/apps/files_texteditor/l10n/ro.php
 #srv/web/owncloud/apps/files_texteditor/l10n/ru.php
-#srv/web/owncloud/apps/files_texteditor/l10n/ru_RU.php
 #srv/web/owncloud/apps/files_texteditor/l10n/si_LK.php
+#srv/web/owncloud/apps/files_texteditor/l10n/sk.php
 #srv/web/owncloud/apps/files_texteditor/l10n/sk_SK.php
 #srv/web/owncloud/apps/files_texteditor/l10n/sl.php
 #srv/web/owncloud/apps/files_texteditor/l10n/sq.php
@@ -6090,16 +7794,15 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_trashbin/appinfo/version
 #srv/web/owncloud/apps/files_trashbin/css
 #srv/web/owncloud/apps/files_trashbin/css/trash.css
-#srv/web/owncloud/apps/files_trashbin/index.php
 #srv/web/owncloud/apps/files_trashbin/js
-#srv/web/owncloud/apps/files_trashbin/js/disableDefaultActions.js
+#srv/web/owncloud/apps/files_trashbin/js/app.js
 #srv/web/owncloud/apps/files_trashbin/js/filelist.js
-#srv/web/owncloud/apps/files_trashbin/js/trash.js
 #srv/web/owncloud/apps/files_trashbin/l10n
 #srv/web/owncloud/apps/files_trashbin/l10n/ach.php
 #srv/web/owncloud/apps/files_trashbin/l10n/ady.php
 #srv/web/owncloud/apps/files_trashbin/l10n/af_ZA.php
 #srv/web/owncloud/apps/files_trashbin/l10n/ar.php
+#srv/web/owncloud/apps/files_trashbin/l10n/ast.php
 #srv/web/owncloud/apps/files_trashbin/l10n/be.php
 #srv/web/owncloud/apps/files_trashbin/l10n/bg_BG.php
 #srv/web/owncloud/apps/files_trashbin/l10n/bn_BD.php
@@ -6118,9 +7821,11 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_trashbin/l10n/eo.php
 #srv/web/owncloud/apps/files_trashbin/l10n/es.php
 #srv/web/owncloud/apps/files_trashbin/l10n/es_AR.php
+#srv/web/owncloud/apps/files_trashbin/l10n/es_CL.php
 #srv/web/owncloud/apps/files_trashbin/l10n/es_MX.php
 #srv/web/owncloud/apps/files_trashbin/l10n/et_EE.php
 #srv/web/owncloud/apps/files_trashbin/l10n/eu.php
+#srv/web/owncloud/apps/files_trashbin/l10n/eu_ES.php
 #srv/web/owncloud/apps/files_trashbin/l10n/fa.php
 #srv/web/owncloud/apps/files_trashbin/l10n/fi_FI.php
 #srv/web/owncloud/apps/files_trashbin/l10n/fr.php
@@ -6134,6 +7839,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_trashbin/l10n/id.php
 #srv/web/owncloud/apps/files_trashbin/l10n/is.php
 #srv/web/owncloud/apps/files_trashbin/l10n/it.php
+#srv/web/owncloud/apps/files_trashbin/l10n/ja.php
 #srv/web/owncloud/apps/files_trashbin/l10n/ja_JP.php
 #srv/web/owncloud/apps/files_trashbin/l10n/ka.php
 #srv/web/owncloud/apps/files_trashbin/l10n/ka_GE.php
@@ -6181,13 +7887,18 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_trashbin/l10n/zh_HK.php
 #srv/web/owncloud/apps/files_trashbin/l10n/zh_TW.php
 #srv/web/owncloud/apps/files_trashbin/lib
+#srv/web/owncloud/apps/files_trashbin/lib/exceptions.php
 #srv/web/owncloud/apps/files_trashbin/lib/helper.php
 #srv/web/owncloud/apps/files_trashbin/lib/hooks.php
 #srv/web/owncloud/apps/files_trashbin/lib/trashbin.php
+#srv/web/owncloud/apps/files_trashbin/list.php
 #srv/web/owncloud/apps/files_trashbin/templates
 #srv/web/owncloud/apps/files_trashbin/templates/index.php
-#srv/web/owncloud/apps/files_trashbin/templates/part.breadcrumb.php
-#srv/web/owncloud/apps/files_trashbin/templates/part.list.php
+#srv/web/owncloud/apps/files_trashbin/tests
+#srv/web/owncloud/apps/files_trashbin/tests/js
+#srv/web/owncloud/apps/files_trashbin/tests/js/appSpec.js
+#srv/web/owncloud/apps/files_trashbin/tests/js/filelistSpec.js
+#srv/web/owncloud/apps/files_trashbin/tests/trashbin.php
 #srv/web/owncloud/apps/files_versions
 #srv/web/owncloud/apps/files_versions/ajax
 #srv/web/owncloud/apps/files_versions/ajax/getVersions.php
@@ -6196,7 +7907,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_versions/appinfo
 #srv/web/owncloud/apps/files_versions/appinfo/api.php
 #srv/web/owncloud/apps/files_versions/appinfo/app.php
-#srv/web/owncloud/apps/files_versions/appinfo/database.xml
 #srv/web/owncloud/apps/files_versions/appinfo/info.xml
 #srv/web/owncloud/apps/files_versions/appinfo/routes.php
 #srv/web/owncloud/apps/files_versions/appinfo/update.php
@@ -6208,6 +7918,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_versions/js/versions.js
 #srv/web/owncloud/apps/files_versions/l10n
 #srv/web/owncloud/apps/files_versions/l10n/ar.php
+#srv/web/owncloud/apps/files_versions/l10n/ast.php
 #srv/web/owncloud/apps/files_versions/l10n/bg_BG.php
 #srv/web/owncloud/apps/files_versions/l10n/bn_BD.php
 #srv/web/owncloud/apps/files_versions/l10n/ca.php
@@ -6222,6 +7933,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_versions/l10n/eo.php
 #srv/web/owncloud/apps/files_versions/l10n/es.php
 #srv/web/owncloud/apps/files_versions/l10n/es_AR.php
+#srv/web/owncloud/apps/files_versions/l10n/es_MX.php
 #srv/web/owncloud/apps/files_versions/l10n/et_EE.php
 #srv/web/owncloud/apps/files_versions/l10n/eu.php
 #srv/web/owncloud/apps/files_versions/l10n/fa.php
@@ -6233,8 +7945,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_versions/l10n/id.php
 #srv/web/owncloud/apps/files_versions/l10n/is.php
 #srv/web/owncloud/apps/files_versions/l10n/it.php
+#srv/web/owncloud/apps/files_versions/l10n/ja.php
 #srv/web/owncloud/apps/files_versions/l10n/ja_JP.php
 #srv/web/owncloud/apps/files_versions/l10n/ka_GE.php
+#srv/web/owncloud/apps/files_versions/l10n/km.php
 #srv/web/owncloud/apps/files_versions/l10n/ko.php
 #srv/web/owncloud/apps/files_versions/l10n/ku_IQ.php
 #srv/web/owncloud/apps/files_versions/l10n/lb.php
@@ -6261,6 +7975,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_versions/l10n/tr.php
 #srv/web/owncloud/apps/files_versions/l10n/ug.php
 #srv/web/owncloud/apps/files_versions/l10n/uk.php
+#srv/web/owncloud/apps/files_versions/l10n/ur_PK.php
 #srv/web/owncloud/apps/files_versions/l10n/vi.php
 #srv/web/owncloud/apps/files_versions/l10n/zh_CN.php
 #srv/web/owncloud/apps/files_versions/l10n/zh_HK.php
@@ -6269,6 +7984,8 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_versions/lib/capabilities.php
 #srv/web/owncloud/apps/files_versions/lib/hooks.php
 #srv/web/owncloud/apps/files_versions/lib/versions.php
+#srv/web/owncloud/apps/files_versions/tests
+#srv/web/owncloud/apps/files_versions/tests/versions.php
 #srv/web/owncloud/apps/files_videoviewer
 #srv/web/owncloud/apps/files_videoviewer/appinfo
 #srv/web/owncloud/apps/files_videoviewer/appinfo/app.php
@@ -6296,7 +8013,29 @@ srv/web/owncloud
 #srv/web/owncloud/apps/files_videoviewer/js/mep-extra.js
 #srv/web/owncloud/apps/files_videoviewer/js/silverlightmediaelement.xap
 #srv/web/owncloud/apps/files_videoviewer/js/viewer.js
+#srv/web/owncloud/apps/files_videoviewer/src
+#srv/web/owncloud/apps/files_videoviewer/src/flash
+#srv/web/owncloud/apps/files_videoviewer/src/flash/FlashMediaElement.as
+#srv/web/owncloud/apps/files_videoviewer/src/flash/FlashMediaElement.fla
+#srv/web/owncloud/apps/files_videoviewer/src/flash/HtmlMediaEvent.as
+#srv/web/owncloud/apps/files_videoviewer/src/flash/htmlelements
+#srv/web/owncloud/apps/files_videoviewer/src/flash/htmlelements/AudioElement.as
+#srv/web/owncloud/apps/files_videoviewer/src/flash/htmlelements/IMediaElement.as
+#srv/web/owncloud/apps/files_videoviewer/src/flash/htmlelements/VideoElement.as
+#srv/web/owncloud/apps/files_videoviewer/src/flash/htmlelements/YouTubeElement.as
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight/App.xaml
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight/App.xaml.cs
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight/MainPage.xaml
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight/MainPage.xaml.cs
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight/Properties
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight/Properties/AppManifest.xml
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight/Properties/AssemblyInfo.cs
+#srv/web/owncloud/apps/files_videoviewer/src/silverlight/SilverlightMediaElement.csproj
+#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
@@ -6313,10 +8052,13 @@ srv/web/owncloud
 #srv/web/owncloud/apps/firstrunwizard/js/jquery.colorbox.js
 #srv/web/owncloud/apps/firstrunwizard/l10n
 #srv/web/owncloud/apps/firstrunwizard/l10n/ar.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/ast.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/bg_BG.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/bn_BD.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/bs.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/ca.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/cs_CZ.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/cy_GB.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/da.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/de.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/de_CH.php
@@ -6327,6 +8069,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/firstrunwizard/l10n/eo.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/es.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/es_AR.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/es_MX.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/et_EE.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/eu.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/fa.php
@@ -6334,14 +8077,20 @@ srv/web/owncloud
 #srv/web/owncloud/apps/firstrunwizard/l10n/fr.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/gl.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/he.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/hr.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/hu_HU.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/ia.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/id.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/is.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/it.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/ja.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/ja_JP.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/ka_GE.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/km.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/ko.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/ku_IQ.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/l10n.pl
+#srv/web/owncloud/apps/firstrunwizard/l10n/lb.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/lt_LT.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/lv.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/mk.php
@@ -6349,17 +8098,22 @@ srv/web/owncloud
 #srv/web/owncloud/apps/firstrunwizard/l10n/nb_NO.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/nl.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/nn_NO.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/oc.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/pl.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/pt_BR.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/pt_PT.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/ro.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/ru.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/si_LK.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/sk_SK.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/sl.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/sq.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/sr.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/sv.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/ta_LK.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/te.php
+#srv/web/owncloud/apps/firstrunwizard/l10n/templates
+#srv/web/owncloud/apps/firstrunwizard/l10n/templates/firstrunwizard.pot
 #srv/web/owncloud/apps/firstrunwizard/l10n/th_TH.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/tr.php
 #srv/web/owncloud/apps/firstrunwizard/l10n/ug.php
@@ -6374,6 +8128,7 @@ 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
@@ -6383,7 +8138,6 @@ srv/web/owncloud
 #srv/web/owncloud/apps/gallery/appinfo/app.php
 #srv/web/owncloud/apps/gallery/appinfo/database.xml
 #srv/web/owncloud/apps/gallery/appinfo/info.xml
-#srv/web/owncloud/apps/gallery/appinfo/routes.php
 #srv/web/owncloud/apps/gallery/appinfo/update.php
 #srv/web/owncloud/apps/gallery/appinfo/version
 #srv/web/owncloud/apps/gallery/css
@@ -6393,85 +8147,323 @@ srv/web/owncloud
 #srv/web/owncloud/apps/gallery/css/styles.css
 #srv/web/owncloud/apps/gallery/index.php
 #srv/web/owncloud/apps/gallery/js
+#srv/web/owncloud/apps/gallery/js/album.js
 #srv/web/owncloud/apps/gallery/js/gallery.js
 #srv/web/owncloud/apps/gallery/js/jquery.mousewheel-3.1.1.js
 #srv/web/owncloud/apps/gallery/js/public.js
 #srv/web/owncloud/apps/gallery/js/slideshow.js
 #srv/web/owncloud/apps/gallery/js/thumbnail.js
 #srv/web/owncloud/apps/gallery/l10n
+#srv/web/owncloud/apps/gallery/l10n/ach
+#srv/web/owncloud/apps/gallery/l10n/ach/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ady
+#srv/web/owncloud/apps/gallery/l10n/ady/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/af
+#srv/web/owncloud/apps/gallery/l10n/af/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/af_ZA
+#srv/web/owncloud/apps/gallery/l10n/af_ZA.php
+#srv/web/owncloud/apps/gallery/l10n/af_ZA/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ak
+#srv/web/owncloud/apps/gallery/l10n/ak/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/am_ET
+#srv/web/owncloud/apps/gallery/l10n/am_ET/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ar
 #srv/web/owncloud/apps/gallery/l10n/ar.php
+#srv/web/owncloud/apps/gallery/l10n/ar/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ast
+#srv/web/owncloud/apps/gallery/l10n/ast.php
+#srv/web/owncloud/apps/gallery/l10n/ast/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/az
+#srv/web/owncloud/apps/gallery/l10n/az/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/be
+#srv/web/owncloud/apps/gallery/l10n/be/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/bg_BG
 #srv/web/owncloud/apps/gallery/l10n/bg_BG.php
+#srv/web/owncloud/apps/gallery/l10n/bg_BG/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/bn_BD
 #srv/web/owncloud/apps/gallery/l10n/bn_BD.php
+#srv/web/owncloud/apps/gallery/l10n/bn_BD/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/bn_IN
+#srv/web/owncloud/apps/gallery/l10n/bn_IN/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/bs
 #srv/web/owncloud/apps/gallery/l10n/bs.php
+#srv/web/owncloud/apps/gallery/l10n/bs/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ca
 #srv/web/owncloud/apps/gallery/l10n/ca.php
+#srv/web/owncloud/apps/gallery/l10n/ca/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ca@valencia
+#srv/web/owncloud/apps/gallery/l10n/ca@valencia/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/cs_CZ
 #srv/web/owncloud/apps/gallery/l10n/cs_CZ.php
+#srv/web/owncloud/apps/gallery/l10n/cs_CZ/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/cy_GB
 #srv/web/owncloud/apps/gallery/l10n/cy_GB.php
+#srv/web/owncloud/apps/gallery/l10n/cy_GB/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/da
 #srv/web/owncloud/apps/gallery/l10n/da.php
+#srv/web/owncloud/apps/gallery/l10n/da/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/de
 #srv/web/owncloud/apps/gallery/l10n/de.php
+#srv/web/owncloud/apps/gallery/l10n/de/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/de_AT
+#srv/web/owncloud/apps/gallery/l10n/de_AT.php
+#srv/web/owncloud/apps/gallery/l10n/de_AT/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/de_CH
 #srv/web/owncloud/apps/gallery/l10n/de_CH.php
+#srv/web/owncloud/apps/gallery/l10n/de_CH/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/de_DE
 #srv/web/owncloud/apps/gallery/l10n/de_DE.php
+#srv/web/owncloud/apps/gallery/l10n/de_DE/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/el
 #srv/web/owncloud/apps/gallery/l10n/el.php
+#srv/web/owncloud/apps/gallery/l10n/el/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/en@pirate
+#srv/web/owncloud/apps/gallery/l10n/en@pirate/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/en_GB
 #srv/web/owncloud/apps/gallery/l10n/en_GB.php
+#srv/web/owncloud/apps/gallery/l10n/en_GB/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/en_NZ
+#srv/web/owncloud/apps/gallery/l10n/en_NZ/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/eo
 #srv/web/owncloud/apps/gallery/l10n/eo.php
+#srv/web/owncloud/apps/gallery/l10n/eo/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es
 #srv/web/owncloud/apps/gallery/l10n/es.php
+#srv/web/owncloud/apps/gallery/l10n/es/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_AR
 #srv/web/owncloud/apps/gallery/l10n/es_AR.php
+#srv/web/owncloud/apps/gallery/l10n/es_AR/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_BO
+#srv/web/owncloud/apps/gallery/l10n/es_BO/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_CL
+#srv/web/owncloud/apps/gallery/l10n/es_CL.php
+#srv/web/owncloud/apps/gallery/l10n/es_CL/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_CO
+#srv/web/owncloud/apps/gallery/l10n/es_CO/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_CR
+#srv/web/owncloud/apps/gallery/l10n/es_CR/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_EC
+#srv/web/owncloud/apps/gallery/l10n/es_EC/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_MX
+#srv/web/owncloud/apps/gallery/l10n/es_MX.php
+#srv/web/owncloud/apps/gallery/l10n/es_MX/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_PE
+#srv/web/owncloud/apps/gallery/l10n/es_PE/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_PY
+#srv/web/owncloud/apps/gallery/l10n/es_PY/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_US
+#srv/web/owncloud/apps/gallery/l10n/es_US/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/es_UY
+#srv/web/owncloud/apps/gallery/l10n/es_UY/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/et_EE
 #srv/web/owncloud/apps/gallery/l10n/et_EE.php
+#srv/web/owncloud/apps/gallery/l10n/et_EE/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/eu
 #srv/web/owncloud/apps/gallery/l10n/eu.php
+#srv/web/owncloud/apps/gallery/l10n/eu/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/eu_ES
+#srv/web/owncloud/apps/gallery/l10n/eu_ES/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/fa
 #srv/web/owncloud/apps/gallery/l10n/fa.php
+#srv/web/owncloud/apps/gallery/l10n/fa/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/fi_FI
 #srv/web/owncloud/apps/gallery/l10n/fi_FI.php
+#srv/web/owncloud/apps/gallery/l10n/fi_FI/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/fr
 #srv/web/owncloud/apps/gallery/l10n/fr.php
+#srv/web/owncloud/apps/gallery/l10n/fr/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/fr_CA
+#srv/web/owncloud/apps/gallery/l10n/fr_CA/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/gl
 #srv/web/owncloud/apps/gallery/l10n/gl.php
+#srv/web/owncloud/apps/gallery/l10n/gl/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/he
 #srv/web/owncloud/apps/gallery/l10n/he.php
+#srv/web/owncloud/apps/gallery/l10n/he/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/hi
 #srv/web/owncloud/apps/gallery/l10n/hi.php
+#srv/web/owncloud/apps/gallery/l10n/hi/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/hi_IN
+#srv/web/owncloud/apps/gallery/l10n/hi_IN/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/hr
 #srv/web/owncloud/apps/gallery/l10n/hr.php
+#srv/web/owncloud/apps/gallery/l10n/hr/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/hu_HU
 #srv/web/owncloud/apps/gallery/l10n/hu_HU.php
+#srv/web/owncloud/apps/gallery/l10n/hu_HU/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/hy
+#srv/web/owncloud/apps/gallery/l10n/hy/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ia
 #srv/web/owncloud/apps/gallery/l10n/ia.php
+#srv/web/owncloud/apps/gallery/l10n/ia/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/id
 #srv/web/owncloud/apps/gallery/l10n/id.php
+#srv/web/owncloud/apps/gallery/l10n/id/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/is
 #srv/web/owncloud/apps/gallery/l10n/is.php
+#srv/web/owncloud/apps/gallery/l10n/is/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/it
 #srv/web/owncloud/apps/gallery/l10n/it.php
+#srv/web/owncloud/apps/gallery/l10n/it/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ja
+#srv/web/owncloud/apps/gallery/l10n/ja.php
+#srv/web/owncloud/apps/gallery/l10n/ja/gallery.po
 #srv/web/owncloud/apps/gallery/l10n/ja_JP.php
+#srv/web/owncloud/apps/gallery/l10n/jv
+#srv/web/owncloud/apps/gallery/l10n/jv/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ka_GE
 #srv/web/owncloud/apps/gallery/l10n/ka_GE.php
+#srv/web/owncloud/apps/gallery/l10n/ka_GE/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/km
+#srv/web/owncloud/apps/gallery/l10n/km.php
+#srv/web/owncloud/apps/gallery/l10n/km/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/kn
+#srv/web/owncloud/apps/gallery/l10n/kn/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ko
 #srv/web/owncloud/apps/gallery/l10n/ko.php
+#srv/web/owncloud/apps/gallery/l10n/ko/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ku_IQ
 #srv/web/owncloud/apps/gallery/l10n/ku_IQ.php
+#srv/web/owncloud/apps/gallery/l10n/ku_IQ/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/l10n.pl
+#srv/web/owncloud/apps/gallery/l10n/lb
 #srv/web/owncloud/apps/gallery/l10n/lb.php
+#srv/web/owncloud/apps/gallery/l10n/lb/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/lt_LT
 #srv/web/owncloud/apps/gallery/l10n/lt_LT.php
+#srv/web/owncloud/apps/gallery/l10n/lt_LT/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/lv
 #srv/web/owncloud/apps/gallery/l10n/lv.php
+#srv/web/owncloud/apps/gallery/l10n/lv/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/mk
 #srv/web/owncloud/apps/gallery/l10n/mk.php
+#srv/web/owncloud/apps/gallery/l10n/mk/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ml
+#srv/web/owncloud/apps/gallery/l10n/ml/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ml_IN
+#srv/web/owncloud/apps/gallery/l10n/ml_IN/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/mn
+#srv/web/owncloud/apps/gallery/l10n/mn/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ms_MY
 #srv/web/owncloud/apps/gallery/l10n/ms_MY.php
+#srv/web/owncloud/apps/gallery/l10n/ms_MY/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/my_MM
+#srv/web/owncloud/apps/gallery/l10n/my_MM/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/nb_NO
 #srv/web/owncloud/apps/gallery/l10n/nb_NO.php
+#srv/web/owncloud/apps/gallery/l10n/nb_NO/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/nds
+#srv/web/owncloud/apps/gallery/l10n/nds/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ne
+#srv/web/owncloud/apps/gallery/l10n/ne/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/nl
 #srv/web/owncloud/apps/gallery/l10n/nl.php
+#srv/web/owncloud/apps/gallery/l10n/nl/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/nn_NO
 #srv/web/owncloud/apps/gallery/l10n/nn_NO.php
+#srv/web/owncloud/apps/gallery/l10n/nn_NO/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/nqo
+#srv/web/owncloud/apps/gallery/l10n/nqo/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/oc
 #srv/web/owncloud/apps/gallery/l10n/oc.php
+#srv/web/owncloud/apps/gallery/l10n/oc/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/or_IN
+#srv/web/owncloud/apps/gallery/l10n/or_IN/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/pa
 #srv/web/owncloud/apps/gallery/l10n/pa.php
+#srv/web/owncloud/apps/gallery/l10n/pa/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/pl
 #srv/web/owncloud/apps/gallery/l10n/pl.php
+#srv/web/owncloud/apps/gallery/l10n/pl/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/pt_BR
 #srv/web/owncloud/apps/gallery/l10n/pt_BR.php
+#srv/web/owncloud/apps/gallery/l10n/pt_BR/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/pt_PT
 #srv/web/owncloud/apps/gallery/l10n/pt_PT.php
+#srv/web/owncloud/apps/gallery/l10n/pt_PT/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ro
 #srv/web/owncloud/apps/gallery/l10n/ro.php
+#srv/web/owncloud/apps/gallery/l10n/ro/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ru
 #srv/web/owncloud/apps/gallery/l10n/ru.php
-#srv/web/owncloud/apps/gallery/l10n/ru_RU.php
+#srv/web/owncloud/apps/gallery/l10n/ru/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/si_LK
 #srv/web/owncloud/apps/gallery/l10n/si_LK.php
+#srv/web/owncloud/apps/gallery/l10n/si_LK/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/sk
+#srv/web/owncloud/apps/gallery/l10n/sk.php
+#srv/web/owncloud/apps/gallery/l10n/sk/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/sk_SK
 #srv/web/owncloud/apps/gallery/l10n/sk_SK.php
+#srv/web/owncloud/apps/gallery/l10n/sk_SK/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/sl
 #srv/web/owncloud/apps/gallery/l10n/sl.php
+#srv/web/owncloud/apps/gallery/l10n/sl/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/sq
 #srv/web/owncloud/apps/gallery/l10n/sq.php
+#srv/web/owncloud/apps/gallery/l10n/sq/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/sr
 #srv/web/owncloud/apps/gallery/l10n/sr.php
+#srv/web/owncloud/apps/gallery/l10n/sr/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/sr@latin
 #srv/web/owncloud/apps/gallery/l10n/sr@latin.php
+#srv/web/owncloud/apps/gallery/l10n/sr@latin/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/su
+#srv/web/owncloud/apps/gallery/l10n/su/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/sv
 #srv/web/owncloud/apps/gallery/l10n/sv.php
+#srv/web/owncloud/apps/gallery/l10n/sv/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/sw_KE
+#srv/web/owncloud/apps/gallery/l10n/sw_KE/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ta_IN
+#srv/web/owncloud/apps/gallery/l10n/ta_IN/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ta_LK
 #srv/web/owncloud/apps/gallery/l10n/ta_LK.php
+#srv/web/owncloud/apps/gallery/l10n/ta_LK/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/te
+#srv/web/owncloud/apps/gallery/l10n/te/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/templates
+#srv/web/owncloud/apps/gallery/l10n/templates/gallery.pot
+#srv/web/owncloud/apps/gallery/l10n/th_TH
 #srv/web/owncloud/apps/gallery/l10n/th_TH.php
+#srv/web/owncloud/apps/gallery/l10n/th_TH/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/tr
 #srv/web/owncloud/apps/gallery/l10n/tr.php
+#srv/web/owncloud/apps/gallery/l10n/tr/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/tzm
+#srv/web/owncloud/apps/gallery/l10n/tzm/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ug
 #srv/web/owncloud/apps/gallery/l10n/ug.php
+#srv/web/owncloud/apps/gallery/l10n/ug/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/uk
 #srv/web/owncloud/apps/gallery/l10n/uk.php
+#srv/web/owncloud/apps/gallery/l10n/uk/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ur
+#srv/web/owncloud/apps/gallery/l10n/ur/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/ur_PK
+#srv/web/owncloud/apps/gallery/l10n/ur_PK.php
+#srv/web/owncloud/apps/gallery/l10n/ur_PK/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/uz
+#srv/web/owncloud/apps/gallery/l10n/uz/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/vi
 #srv/web/owncloud/apps/gallery/l10n/vi.php
+#srv/web/owncloud/apps/gallery/l10n/vi/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/zh_CN
 #srv/web/owncloud/apps/gallery/l10n/zh_CN.php
+#srv/web/owncloud/apps/gallery/l10n/zh_CN/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/zh_HK
 #srv/web/owncloud/apps/gallery/l10n/zh_HK.php
+#srv/web/owncloud/apps/gallery/l10n/zh_HK/gallery.po
+#srv/web/owncloud/apps/gallery/l10n/zh_TW
 #srv/web/owncloud/apps/gallery/l10n/zh_TW.php
+#srv/web/owncloud/apps/gallery/l10n/zh_TW/gallery.po
 #srv/web/owncloud/apps/gallery/lib
+#srv/web/owncloud/apps/gallery/lib/albumthumbnail.php
 #srv/web/owncloud/apps/gallery/lib/share.php
 #srv/web/owncloud/apps/gallery/lib/thumbnail.php
 #srv/web/owncloud/apps/gallery/public.php
 #srv/web/owncloud/apps/gallery/templates
 #srv/web/owncloud/apps/gallery/templates/index.php
-#srv/web/owncloud/apps/gallery/templates/no-image-app.php
 #srv/web/owncloud/apps/gallery/templates/public.php
 #srv/web/owncloud/apps/gallery/templates/slideshow.html
 #srv/web/owncloud/apps/search_lucene
@@ -6791,102 +8783,32 @@ srv/web/owncloud
 #srv/web/owncloud/apps/search_lucene/lib/indexer.php
 #srv/web/owncloud/apps/search_lucene/lib/lucene.php
 #srv/web/owncloud/apps/search_lucene/lib/status.php
-#srv/web/owncloud/apps/tasks
-#srv/web/owncloud/apps/tasks/ajax
-#srv/web/owncloud/apps/tasks/ajax/addtask.php
-#srv/web/owncloud/apps/tasks/ajax/delete.php
-#srv/web/owncloud/apps/tasks/ajax/gettasks.php
-#srv/web/owncloud/apps/tasks/ajax/update_property.php
-#srv/web/owncloud/apps/tasks/appinfo
-#srv/web/owncloud/apps/tasks/appinfo/app.php
-#srv/web/owncloud/apps/tasks/appinfo/info.xml
-#srv/web/owncloud/apps/tasks/css
-#srv/web/owncloud/apps/tasks/css/style.css
-#srv/web/owncloud/apps/tasks/img
-#srv/web/owncloud/apps/tasks/img/tasks.png
-#srv/web/owncloud/apps/tasks/img/tasks.svg
-#srv/web/owncloud/apps/tasks/index.php
-#srv/web/owncloud/apps/tasks/js
-#srv/web/owncloud/apps/tasks/js/categories.php
-#srv/web/owncloud/apps/tasks/js/tasks.js
-#srv/web/owncloud/apps/tasks/l10n
-#srv/web/owncloud/apps/tasks/l10n/ar.php
-#srv/web/owncloud/apps/tasks/l10n/bg_BG.php
-#srv/web/owncloud/apps/tasks/l10n/bn_BD.php
-#srv/web/owncloud/apps/tasks/l10n/ca.php
-#srv/web/owncloud/apps/tasks/l10n/cs_CZ.php
-#srv/web/owncloud/apps/tasks/l10n/cy_GB.php
-#srv/web/owncloud/apps/tasks/l10n/da.php
-#srv/web/owncloud/apps/tasks/l10n/de.php
-#srv/web/owncloud/apps/tasks/l10n/de_CH.php
-#srv/web/owncloud/apps/tasks/l10n/de_DE.php
-#srv/web/owncloud/apps/tasks/l10n/el.php
-#srv/web/owncloud/apps/tasks/l10n/en_GB.php
-#srv/web/owncloud/apps/tasks/l10n/eo.php
-#srv/web/owncloud/apps/tasks/l10n/es.php
-#srv/web/owncloud/apps/tasks/l10n/es_AR.php
-#srv/web/owncloud/apps/tasks/l10n/et_EE.php
-#srv/web/owncloud/apps/tasks/l10n/eu.php
-#srv/web/owncloud/apps/tasks/l10n/fa.php
-#srv/web/owncloud/apps/tasks/l10n/fi_FI.php
-#srv/web/owncloud/apps/tasks/l10n/fr.php
-#srv/web/owncloud/apps/tasks/l10n/gl.php
-#srv/web/owncloud/apps/tasks/l10n/he.php
-#srv/web/owncloud/apps/tasks/l10n/hr.php
-#srv/web/owncloud/apps/tasks/l10n/hu_HU.php
-#srv/web/owncloud/apps/tasks/l10n/hy.php
-#srv/web/owncloud/apps/tasks/l10n/ia.php
-#srv/web/owncloud/apps/tasks/l10n/id.php
-#srv/web/owncloud/apps/tasks/l10n/is.php
-#srv/web/owncloud/apps/tasks/l10n/it.php
-#srv/web/owncloud/apps/tasks/l10n/ja_JP.php
-#srv/web/owncloud/apps/tasks/l10n/ka_GE.php
-#srv/web/owncloud/apps/tasks/l10n/km.php
-#srv/web/owncloud/apps/tasks/l10n/ko.php
-#srv/web/owncloud/apps/tasks/l10n/ku_IQ.php
-#srv/web/owncloud/apps/tasks/l10n/lb.php
-#srv/web/owncloud/apps/tasks/l10n/lt_LT.php
-#srv/web/owncloud/apps/tasks/l10n/lv.php
-#srv/web/owncloud/apps/tasks/l10n/mk.php
-#srv/web/owncloud/apps/tasks/l10n/ms_MY.php
-#srv/web/owncloud/apps/tasks/l10n/my_MM.php
-#srv/web/owncloud/apps/tasks/l10n/nb_NO.php
-#srv/web/owncloud/apps/tasks/l10n/nl.php
-#srv/web/owncloud/apps/tasks/l10n/nn_NO.php
-#srv/web/owncloud/apps/tasks/l10n/oc.php
-#srv/web/owncloud/apps/tasks/l10n/pa.php
-#srv/web/owncloud/apps/tasks/l10n/pl.php
-#srv/web/owncloud/apps/tasks/l10n/pt_BR.php
-#srv/web/owncloud/apps/tasks/l10n/pt_PT.php
-#srv/web/owncloud/apps/tasks/l10n/ro.php
-#srv/web/owncloud/apps/tasks/l10n/ru.php
-#srv/web/owncloud/apps/tasks/l10n/ru_RU.php
-#srv/web/owncloud/apps/tasks/l10n/si_LK.php
-#srv/web/owncloud/apps/tasks/l10n/sk_SK.php
-#srv/web/owncloud/apps/tasks/l10n/sl.php
-#srv/web/owncloud/apps/tasks/l10n/sq.php
-#srv/web/owncloud/apps/tasks/l10n/sr.php
-#srv/web/owncloud/apps/tasks/l10n/sr@latin.php
-#srv/web/owncloud/apps/tasks/l10n/sv.php
-#srv/web/owncloud/apps/tasks/l10n/ta_LK.php
-#srv/web/owncloud/apps/tasks/l10n/te.php
-#srv/web/owncloud/apps/tasks/l10n/th_TH.php
-#srv/web/owncloud/apps/tasks/l10n/tr.php
-#srv/web/owncloud/apps/tasks/l10n/ug.php
-#srv/web/owncloud/apps/tasks/l10n/uk.php
-#srv/web/owncloud/apps/tasks/l10n/vi.php
-#srv/web/owncloud/apps/tasks/l10n/zh_CN.php
-#srv/web/owncloud/apps/tasks/l10n/zh_HK.php
-#srv/web/owncloud/apps/tasks/l10n/zh_TW.php
-#srv/web/owncloud/apps/tasks/lib
-#srv/web/owncloud/apps/tasks/lib/app.php
-#srv/web/owncloud/apps/tasks/lib/vtodo.php
-#srv/web/owncloud/apps/tasks/templates
-#srv/web/owncloud/apps/tasks/templates/no-calendar-app.php
-#srv/web/owncloud/apps/tasks/templates/tasks.php
+#srv/web/owncloud/apps/templateeditor
+#srv/web/owncloud/apps/templateeditor/app
+#srv/web/owncloud/apps/templateeditor/app/templateeditor.php
+#srv/web/owncloud/apps/templateeditor/appinfo
+#srv/web/owncloud/apps/templateeditor/appinfo/app.php
+#srv/web/owncloud/apps/templateeditor/appinfo/info.xml
+#srv/web/owncloud/apps/templateeditor/appinfo/routes.php
+#srv/web/owncloud/apps/templateeditor/appinfo/version
+#srv/web/owncloud/apps/templateeditor/controller
+#srv/web/owncloud/apps/templateeditor/controller/adminsettingscontroller.php
+#srv/web/owncloud/apps/templateeditor/css
+#srv/web/owncloud/apps/templateeditor/css/settings-admin.css
+#srv/web/owncloud/apps/templateeditor/http
+#srv/web/owncloud/apps/templateeditor/http/mailtemplateresponse.php
+#srv/web/owncloud/apps/templateeditor/js
+#srv/web/owncloud/apps/templateeditor/js/settings-admin.js
+#srv/web/owncloud/apps/templateeditor/l10n
+#srv/web/owncloud/apps/templateeditor/l10n/l10n.pl
+#srv/web/owncloud/apps/templateeditor/lib
+#srv/web/owncloud/apps/templateeditor/lib/mailtemplate.php
+#srv/web/owncloud/apps/templateeditor/settings-admin.php
+#srv/web/owncloud/apps/templateeditor/templates
+#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
+#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
@@ -6897,6 +8819,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/updater/appinfo
 #srv/web/owncloud/apps/updater/appinfo/app.php
 #srv/web/owncloud/apps/updater/appinfo/info.xml
+#srv/web/owncloud/apps/updater/appinfo/version
 #srv/web/owncloud/apps/updater/css
 #srv/web/owncloud/apps/updater/css/updater.css
 #srv/web/owncloud/apps/updater/js
@@ -6906,6 +8829,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/updater/js/controllers.js
 #srv/web/owncloud/apps/updater/l10n
 #srv/web/owncloud/apps/updater/l10n/ar.php
+#srv/web/owncloud/apps/updater/l10n/ast.php
 #srv/web/owncloud/apps/updater/l10n/bg_BG.php
 #srv/web/owncloud/apps/updater/l10n/bn_BD.php
 #srv/web/owncloud/apps/updater/l10n/ca.php
@@ -6913,6 +8837,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/updater/l10n/cy_GB.php
 #srv/web/owncloud/apps/updater/l10n/da.php
 #srv/web/owncloud/apps/updater/l10n/de.php
+#srv/web/owncloud/apps/updater/l10n/de_AT.php
 #srv/web/owncloud/apps/updater/l10n/de_CH.php
 #srv/web/owncloud/apps/updater/l10n/de_DE.php
 #srv/web/owncloud/apps/updater/l10n/el.php
@@ -6921,8 +8846,11 @@ srv/web/owncloud
 #srv/web/owncloud/apps/updater/l10n/eo.php
 #srv/web/owncloud/apps/updater/l10n/es.php
 #srv/web/owncloud/apps/updater/l10n/es_AR.php
+#srv/web/owncloud/apps/updater/l10n/es_CL.php
+#srv/web/owncloud/apps/updater/l10n/es_MX.php
 #srv/web/owncloud/apps/updater/l10n/et_EE.php
 #srv/web/owncloud/apps/updater/l10n/eu.php
+#srv/web/owncloud/apps/updater/l10n/eu_ES.php
 #srv/web/owncloud/apps/updater/l10n/fa.php
 #srv/web/owncloud/apps/updater/l10n/fi_FI.php
 #srv/web/owncloud/apps/updater/l10n/fr.php
@@ -6936,12 +8864,15 @@ srv/web/owncloud
 #srv/web/owncloud/apps/updater/l10n/id.php
 #srv/web/owncloud/apps/updater/l10n/is.php
 #srv/web/owncloud/apps/updater/l10n/it.php
+#srv/web/owncloud/apps/updater/l10n/ja.php
 #srv/web/owncloud/apps/updater/l10n/ja_JP.php
+#srv/web/owncloud/apps/updater/l10n/jv.php
 #srv/web/owncloud/apps/updater/l10n/ka.php
 #srv/web/owncloud/apps/updater/l10n/ka_GE.php
 #srv/web/owncloud/apps/updater/l10n/km.php
 #srv/web/owncloud/apps/updater/l10n/ko.php
 #srv/web/owncloud/apps/updater/l10n/ku_IQ.php
+#srv/web/owncloud/apps/updater/l10n/l10n.pl
 #srv/web/owncloud/apps/updater/l10n/lb.php
 #srv/web/owncloud/apps/updater/l10n/lt_LT.php
 #srv/web/owncloud/apps/updater/l10n/lv.php
@@ -6954,13 +8885,12 @@ srv/web/owncloud
 #srv/web/owncloud/apps/updater/l10n/oc.php
 #srv/web/owncloud/apps/updater/l10n/pa.php
 #srv/web/owncloud/apps/updater/l10n/pl.php
-#srv/web/owncloud/apps/updater/l10n/pl_PL.php
 #srv/web/owncloud/apps/updater/l10n/pt_BR.php
 #srv/web/owncloud/apps/updater/l10n/pt_PT.php
 #srv/web/owncloud/apps/updater/l10n/ro.php
 #srv/web/owncloud/apps/updater/l10n/ru.php
-#srv/web/owncloud/apps/updater/l10n/ru_RU.php
 #srv/web/owncloud/apps/updater/l10n/si_LK.php
+#srv/web/owncloud/apps/updater/l10n/sk.php
 #srv/web/owncloud/apps/updater/l10n/sk_SK.php
 #srv/web/owncloud/apps/updater/l10n/sl.php
 #srv/web/owncloud/apps/updater/l10n/sq.php
@@ -6979,6 +8909,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/updater/l10n/zh_HK.php
 #srv/web/owncloud/apps/updater/l10n/zh_TW.php
 #srv/web/owncloud/apps/updater/lib
+#srv/web/owncloud/apps/updater/lib/app.php
 #srv/web/owncloud/apps/updater/lib/backup.php
 #srv/web/owncloud/apps/updater/lib/downloader.php
 #srv/web/owncloud/apps/updater/lib/helper.php
@@ -6993,11 +8924,14 @@ 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
 #srv/web/owncloud/apps/user_external/appinfo/info.xml
 #srv/web/owncloud/apps/user_external/appinfo/version
 #srv/web/owncloud/apps/user_external/lib
+#srv/web/owncloud/apps/user_external/lib/base.php
 #srv/web/owncloud/apps/user_external/lib/ftp.php
 #srv/web/owncloud/apps/user_external/lib/imap.php
 #srv/web/owncloud/apps/user_external/lib/smb.php
@@ -7020,8 +8954,13 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/appinfo/database.xml
 #srv/web/owncloud/apps/user_ldap/appinfo/info.xml
 #srv/web/owncloud/apps/user_ldap/appinfo/install.php
+#srv/web/owncloud/apps/user_ldap/appinfo/register_command.php
 #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/setconfig.php
+#srv/web/owncloud/apps/user_ldap/command/showconfig.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
 #srv/web/owncloud/apps/user_ldap/group_ldap.php
@@ -7034,12 +8973,18 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/l10n/ady.php
 #srv/web/owncloud/apps/user_ldap/l10n/af.php
 #srv/web/owncloud/apps/user_ldap/l10n/af_ZA.php
+#srv/web/owncloud/apps/user_ldap/l10n/ak.php
+#srv/web/owncloud/apps/user_ldap/l10n/am_ET.php
 #srv/web/owncloud/apps/user_ldap/l10n/ar.php
+#srv/web/owncloud/apps/user_ldap/l10n/ast.php
+#srv/web/owncloud/apps/user_ldap/l10n/az.php
 #srv/web/owncloud/apps/user_ldap/l10n/be.php
 #srv/web/owncloud/apps/user_ldap/l10n/bg_BG.php
 #srv/web/owncloud/apps/user_ldap/l10n/bn_BD.php
+#srv/web/owncloud/apps/user_ldap/l10n/bn_IN.php
 #srv/web/owncloud/apps/user_ldap/l10n/bs.php
 #srv/web/owncloud/apps/user_ldap/l10n/ca.php
+#srv/web/owncloud/apps/user_ldap/l10n/ca@valencia.php
 #srv/web/owncloud/apps/user_ldap/l10n/cs_CZ.php
 #srv/web/owncloud/apps/user_ldap/l10n/cy_GB.php
 #srv/web/owncloud/apps/user_ldap/l10n/da.php
@@ -7050,12 +8995,23 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/l10n/el.php
 #srv/web/owncloud/apps/user_ldap/l10n/en@pirate.php
 #srv/web/owncloud/apps/user_ldap/l10n/en_GB.php
+#srv/web/owncloud/apps/user_ldap/l10n/en_NZ.php
 #srv/web/owncloud/apps/user_ldap/l10n/eo.php
 #srv/web/owncloud/apps/user_ldap/l10n/es.php
 #srv/web/owncloud/apps/user_ldap/l10n/es_AR.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_BO.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_CL.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_CO.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_CR.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_EC.php
 #srv/web/owncloud/apps/user_ldap/l10n/es_MX.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_PE.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_PY.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_US.php
+#srv/web/owncloud/apps/user_ldap/l10n/es_UY.php
 #srv/web/owncloud/apps/user_ldap/l10n/et_EE.php
 #srv/web/owncloud/apps/user_ldap/l10n/eu.php
+#srv/web/owncloud/apps/user_ldap/l10n/eu_ES.php
 #srv/web/owncloud/apps/user_ldap/l10n/fa.php
 #srv/web/owncloud/apps/user_ldap/l10n/fi_FI.php
 #srv/web/owncloud/apps/user_ldap/l10n/fr.php
@@ -7063,6 +9019,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/l10n/gl.php
 #srv/web/owncloud/apps/user_ldap/l10n/he.php
 #srv/web/owncloud/apps/user_ldap/l10n/hi.php
+#srv/web/owncloud/apps/user_ldap/l10n/hi_IN.php
 #srv/web/owncloud/apps/user_ldap/l10n/hr.php
 #srv/web/owncloud/apps/user_ldap/l10n/hu_HU.php
 #srv/web/owncloud/apps/user_ldap/l10n/hy.php
@@ -7070,7 +9027,9 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/l10n/id.php
 #srv/web/owncloud/apps/user_ldap/l10n/is.php
 #srv/web/owncloud/apps/user_ldap/l10n/it.php
+#srv/web/owncloud/apps/user_ldap/l10n/ja.php
 #srv/web/owncloud/apps/user_ldap/l10n/ja_JP.php
+#srv/web/owncloud/apps/user_ldap/l10n/jv.php
 #srv/web/owncloud/apps/user_ldap/l10n/ka.php
 #srv/web/owncloud/apps/user_ldap/l10n/ka_GE.php
 #srv/web/owncloud/apps/user_ldap/l10n/km.php
@@ -7081,7 +9040,9 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/l10n/lt_LT.php
 #srv/web/owncloud/apps/user_ldap/l10n/lv.php
 #srv/web/owncloud/apps/user_ldap/l10n/mk.php
+#srv/web/owncloud/apps/user_ldap/l10n/ml.php
 #srv/web/owncloud/apps/user_ldap/l10n/ml_IN.php
+#srv/web/owncloud/apps/user_ldap/l10n/mn.php
 #srv/web/owncloud/apps/user_ldap/l10n/ms_MY.php
 #srv/web/owncloud/apps/user_ldap/l10n/my_MM.php
 #srv/web/owncloud/apps/user_ldap/l10n/nb_NO.php
@@ -7091,6 +9052,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/l10n/nn_NO.php
 #srv/web/owncloud/apps/user_ldap/l10n/nqo.php
 #srv/web/owncloud/apps/user_ldap/l10n/oc.php
+#srv/web/owncloud/apps/user_ldap/l10n/or_IN.php
 #srv/web/owncloud/apps/user_ldap/l10n/pa.php
 #srv/web/owncloud/apps/user_ldap/l10n/pl.php
 #srv/web/owncloud/apps/user_ldap/l10n/pt_BR.php
@@ -7104,8 +9066,10 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/l10n/sq.php
 #srv/web/owncloud/apps/user_ldap/l10n/sr.php
 #srv/web/owncloud/apps/user_ldap/l10n/sr@latin.php
+#srv/web/owncloud/apps/user_ldap/l10n/su.php
 #srv/web/owncloud/apps/user_ldap/l10n/sv.php
 #srv/web/owncloud/apps/user_ldap/l10n/sw_KE.php
+#srv/web/owncloud/apps/user_ldap/l10n/ta_IN.php
 #srv/web/owncloud/apps/user_ldap/l10n/ta_LK.php
 #srv/web/owncloud/apps/user_ldap/l10n/te.php
 #srv/web/owncloud/apps/user_ldap/l10n/th_TH.php
@@ -7113,6 +9077,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/l10n/tzm.php
 #srv/web/owncloud/apps/user_ldap/l10n/ug.php
 #srv/web/owncloud/apps/user_ldap/l10n/uk.php
+#srv/web/owncloud/apps/user_ldap/l10n/ur.php
 #srv/web/owncloud/apps/user_ldap/l10n/ur_PK.php
 #srv/web/owncloud/apps/user_ldap/l10n/uz.php
 #srv/web/owncloud/apps/user_ldap/l10n/vi.php
@@ -7124,12 +9089,18 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_ldap/lib/backendutility.php
 #srv/web/owncloud/apps/user_ldap/lib/configuration.php
 #srv/web/owncloud/apps/user_ldap/lib/connection.php
+#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.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/iusertools.php
+#srv/web/owncloud/apps/user_ldap/lib/user/manager.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
 #srv/web/owncloud/apps/user_ldap/settings.php
@@ -7144,6 +9115,12 @@ 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/user
+#srv/web/owncloud/apps/user_ldap/tests/user/manager.php
+#srv/web/owncloud/apps/user_ldap/tests/user/user.php
 #srv/web/owncloud/apps/user_ldap/tests/user_ldap.php
 #srv/web/owncloud/apps/user_ldap/tests/wizard.php
 #srv/web/owncloud/apps/user_ldap/user_ldap.php
@@ -7155,12 +9132,16 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_webdavauth/appinfo/version
 #srv/web/owncloud/apps/user_webdavauth/l10n
 #srv/web/owncloud/apps/user_webdavauth/l10n/ar.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/ast.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/bg_BG.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/bn_BD.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/bs.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/ca.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/cs_CZ.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/cy_GB.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/da.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/de.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/de_AT.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/de_CH.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/de_DE.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/el.php
@@ -7168,20 +9149,30 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_webdavauth/l10n/eo.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/es.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/es_AR.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/es_MX.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/et_EE.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/eu.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/eu_ES.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/fa.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/fi_FI.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/fr.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/gl.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/he.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/hi.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/hr.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/hu_HU.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/hy.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/ia.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/id.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/is.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/it.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/ja.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/ja_JP.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/ka_GE.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/km.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/ko.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/ku_IQ.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/lb.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/lt_LT.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/lv.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/mk.php
@@ -7189,21 +9180,27 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_webdavauth/l10n/nb_NO.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/nl.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/nn_NO.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/oc.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/pl.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/pt_BR.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/pt_PT.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/ro.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/ru.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/si_LK.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/sk.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/sk_SK.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/sl.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/sq.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/sr.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/sr@latin.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/sv.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/ta_LK.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/te.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/th_TH.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/tr.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/ug.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/uk.php
+#srv/web/owncloud/apps/user_webdavauth/l10n/ur_PK.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/vi.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/zh_CN.php
 #srv/web/owncloud/apps/user_webdavauth/l10n/zh_HK.php
@@ -7213,6 +9210,7 @@ srv/web/owncloud
 #srv/web/owncloud/apps/user_webdavauth/templates/settings.php
 #srv/web/owncloud/apps/user_webdavauth/user_webdavauth.php
 #srv/web/owncloud/config
+#srv/web/owncloud/config/.htaccess
 #srv/web/owncloud/config/config.sample.php
 #srv/web/owncloud/console.php
 #srv/web/owncloud/core
@@ -7230,18 +9228,23 @@ srv/web/owncloud
 #srv/web/owncloud/core/command/app/enable.php
 #srv/web/owncloud/core/command/app/listapps.php
 #srv/web/owncloud/core/command/db
+#srv/web/owncloud/core/command/db/converttype.php
 #srv/web/owncloud/core/command/db/generatechangescript.php
 #srv/web/owncloud/core/command/maintenance
+#srv/web/owncloud/core/command/maintenance/mode.php
 #srv/web/owncloud/core/command/maintenance/repair.php
 #srv/web/owncloud/core/command/maintenance/singleuser.php
 #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/lastseen.php
 #srv/web/owncloud/core/command/user/report.php
+#srv/web/owncloud/core/command/user/resetpassword.php
 #srv/web/owncloud/core/css
 #srv/web/owncloud/core/css/apps.css
-#srv/web/owncloud/core/css/auth.css
 #srv/web/owncloud/core/css/fixes.css
+#srv/web/owncloud/core/css/fonts.css
+#srv/web/owncloud/core/css/header.css
 #srv/web/owncloud/core/css/icons.css
 #srv/web/owncloud/core/css/images
 #srv/web/owncloud/core/css/images/animated-overlay.gif
@@ -7261,6 +9264,7 @@ srv/web/owncloud
 #srv/web/owncloud/core/css/jquery-ui-1.10.0.custom.css
 #srv/web/owncloud/core/css/jquery.multiselect.css
 #srv/web/owncloud/core/css/jquery.ocdialog.css
+#srv/web/owncloud/core/css/mobile.css
 #srv/web/owncloud/core/css/multiselect.css
 #srv/web/owncloud/core/css/share.css
 #srv/web/owncloud/core/css/styles.css
@@ -7823,6 +9827,11 @@ srv/web/owncloud
 #srv/web/owncloud/core/doc/user/web_guide
 #srv/web/owncloud/core/doc/user/web_guide/index.html
 #srv/web/owncloud/core/doc/user/webinterface.html
+#srv/web/owncloud/core/fonts
+#srv/web/owncloud/core/fonts/LICENSE.txt
+#srv/web/owncloud/core/fonts/OpenSans-Bold.woff
+#srv/web/owncloud/core/fonts/OpenSans-Regular.ttf
+#srv/web/owncloud/core/fonts/OpenSans-Regular.woff
 #srv/web/owncloud/core/img
 #srv/web/owncloud/core/img/actions
 #srv/web/owncloud/core/img/actions/add.png
@@ -7857,6 +9866,8 @@ srv/web/owncloud
 #srv/web/owncloud/core/img/actions/logout.svg
 #srv/web/owncloud/core/img/actions/mail.png
 #srv/web/owncloud/core/img/actions/mail.svg
+#srv/web/owncloud/core/img/actions/menu.png
+#srv/web/owncloud/core/img/actions/menu.svg
 #srv/web/owncloud/core/img/actions/more.png
 #srv/web/owncloud/core/img/actions/more.svg
 #srv/web/owncloud/core/img/actions/password.png
@@ -7935,22 +9946,24 @@ srv/web/owncloud
 #srv/web/owncloud/core/img/filetypes
 #srv/web/owncloud/core/img/filetypes/application-epub+zip.png
 #srv/web/owncloud/core/img/filetypes/application-epub+zip.svg
+#srv/web/owncloud/core/img/filetypes/application-javascript.png
+#srv/web/owncloud/core/img/filetypes/application-javascript.svg
 #srv/web/owncloud/core/img/filetypes/application-pdf.png
 #srv/web/owncloud/core/img/filetypes/application-pdf.svg
 #srv/web/owncloud/core/img/filetypes/application-rss+xml.png
 #srv/web/owncloud/core/img/filetypes/application-rss+xml.svg
+#srv/web/owncloud/core/img/filetypes/application-x-cbr.png
+#srv/web/owncloud/core/img/filetypes/application-x-cbr.svg
+#srv/web/owncloud/core/img/filetypes/application-x-shockwave-flash.png
+#srv/web/owncloud/core/img/filetypes/application-x-shockwave-flash.svg
 #srv/web/owncloud/core/img/filetypes/application.png
 #srv/web/owncloud/core/img/filetypes/application.svg
 #srv/web/owncloud/core/img/filetypes/audio.png
 #srv/web/owncloud/core/img/filetypes/audio.svg
-#srv/web/owncloud/core/img/filetypes/calendar.png
-#srv/web/owncloud/core/img/filetypes/calendar.svg
 #srv/web/owncloud/core/img/filetypes/database.png
 #srv/web/owncloud/core/img/filetypes/database.svg
 #srv/web/owncloud/core/img/filetypes/file.png
 #srv/web/owncloud/core/img/filetypes/file.svg
-#srv/web/owncloud/core/img/filetypes/flash.png
-#srv/web/owncloud/core/img/filetypes/flash.svg
 #srv/web/owncloud/core/img/filetypes/folder-drag-accept.png
 #srv/web/owncloud/core/img/filetypes/folder-drag-accept.svg
 #srv/web/owncloud/core/img/filetypes/folder-external.png
@@ -7969,6 +9982,8 @@ srv/web/owncloud
 #srv/web/owncloud/core/img/filetypes/image.svg
 #srv/web/owncloud/core/img/filetypes/package-x-generic.png
 #srv/web/owncloud/core/img/filetypes/package-x-generic.svg
+#srv/web/owncloud/core/img/filetypes/text-calendar.png
+#srv/web/owncloud/core/img/filetypes/text-calendar.svg
 #srv/web/owncloud/core/img/filetypes/text-code.png
 #srv/web/owncloud/core/img/filetypes/text-code.svg
 #srv/web/owncloud/core/img/filetypes/text-html.png
@@ -7979,8 +9994,6 @@ srv/web/owncloud
 #srv/web/owncloud/core/img/filetypes/text-x-c.svg
 #srv/web/owncloud/core/img/filetypes/text-x-h.png
 #srv/web/owncloud/core/img/filetypes/text-x-h.svg
-#srv/web/owncloud/core/img/filetypes/text-x-javascript.png
-#srv/web/owncloud/core/img/filetypes/text-x-javascript.svg
 #srv/web/owncloud/core/img/filetypes/text-x-python.png
 #srv/web/owncloud/core/img/filetypes/text-x-python.svg
 #srv/web/owncloud/core/img/filetypes/text.png
@@ -8000,12 +10013,13 @@ srv/web/owncloud
 #srv/web/owncloud/core/img/loading-dark.gif
 #srv/web/owncloud/core/img/loading-small.gif
 #srv/web/owncloud/core/img/loading.gif
+#srv/web/owncloud/core/img/logo-icon.png
+#srv/web/owncloud/core/img/logo-icon.svg
 #srv/web/owncloud/core/img/logo-mail.gif
 #srv/web/owncloud/core/img/logo-wide.png
 #srv/web/owncloud/core/img/logo-wide.svg
 #srv/web/owncloud/core/img/logo.png
 #srv/web/owncloud/core/img/logo.svg
-#srv/web/owncloud/core/img/noise.png
 #srv/web/owncloud/core/img/places
 #srv/web/owncloud/core/img/places/calendar-dark.png
 #srv/web/owncloud/core/img/places/calendar-dark.svg
@@ -8039,19 +10053,22 @@ srv/web/owncloud
 #srv/web/owncloud/core/img/rating/s9.png
 #srv/web/owncloud/core/js
 #srv/web/owncloud/core/js/LICENSE.jquery.inview
+#srv/web/owncloud/core/js/apps.js
 #srv/web/owncloud/core/js/avatar.js
 #srv/web/owncloud/core/js/backgroundjobs.js
 #srv/web/owncloud/core/js/compatibility.js
 #srv/web/owncloud/core/js/config.js
 #srv/web/owncloud/core/js/config.php
+#srv/web/owncloud/core/js/core.json
 #srv/web/owncloud/core/js/eventsource.js
+#srv/web/owncloud/core/js/jquery-1.10.0.js
 #srv/web/owncloud/core/js/jquery-1.10.0.min.js
+#srv/web/owncloud/core/js/jquery-migrate-1.2.1.js
 #srv/web/owncloud/core/js/jquery-migrate-1.2.1.min.js
 #srv/web/owncloud/core/js/jquery-showpassword.js
 #srv/web/owncloud/core/js/jquery-tipsy.js
 #srv/web/owncloud/core/js/jquery-ui-1.10.0.custom.js
 #srv/web/owncloud/core/js/jquery.avatar.js
-#srv/web/owncloud/core/js/jquery.infieldlabel.js
 #srv/web/owncloud/core/js/jquery.inview.js
 #srv/web/owncloud/core/js/jquery.inview.txt
 #srv/web/owncloud/core/js/jquery.multiselect.js
@@ -8059,16 +10076,26 @@ srv/web/owncloud
 #srv/web/owncloud/core/js/jquery.placeholder.js
 #srv/web/owncloud/core/js/js.js
 #srv/web/owncloud/core/js/listview.js
+#srv/web/owncloud/core/js/lostpassword.js
 #srv/web/owncloud/core/js/multiselect.js
 #srv/web/owncloud/core/js/oc-dialogs.js
 #srv/web/owncloud/core/js/oc-requesttoken.js
 #srv/web/owncloud/core/js/octemplate.js
 #srv/web/owncloud/core/js/placeholder.js
-#srv/web/owncloud/core/js/router.js
+#srv/web/owncloud/core/js/placeholders.js
 #srv/web/owncloud/core/js/setup.js
 #srv/web/owncloud/core/js/share.js
 #srv/web/owncloud/core/js/singleselect.js
+#srv/web/owncloud/core/js/snap.js
 #srv/web/owncloud/core/js/tags.js
+#srv/web/owncloud/core/js/tests
+#srv/web/owncloud/core/js/tests/lib
+#srv/web/owncloud/core/js/tests/lib/sinon-1.7.3.js
+#srv/web/owncloud/core/js/tests/specHelper.js
+#srv/web/owncloud/core/js/tests/specs
+#srv/web/owncloud/core/js/tests/specs/coreSpec.js
+#srv/web/owncloud/core/js/tests/specs/shareSpec.js
+#srv/web/owncloud/core/js/underscore.js
 #srv/web/owncloud/core/js/update.js
 #srv/web/owncloud/core/js/visitortimezone.js
 #srv/web/owncloud/core/l10n
@@ -8076,12 +10103,18 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/ady.php
 #srv/web/owncloud/core/l10n/af.php
 #srv/web/owncloud/core/l10n/af_ZA.php
+#srv/web/owncloud/core/l10n/ak.php
+#srv/web/owncloud/core/l10n/am_ET.php
 #srv/web/owncloud/core/l10n/ar.php
+#srv/web/owncloud/core/l10n/ast.php
+#srv/web/owncloud/core/l10n/az.php
 #srv/web/owncloud/core/l10n/be.php
 #srv/web/owncloud/core/l10n/bg_BG.php
 #srv/web/owncloud/core/l10n/bn_BD.php
+#srv/web/owncloud/core/l10n/bn_IN.php
 #srv/web/owncloud/core/l10n/bs.php
 #srv/web/owncloud/core/l10n/ca.php
+#srv/web/owncloud/core/l10n/ca@valencia.php
 #srv/web/owncloud/core/l10n/cs_CZ.php
 #srv/web/owncloud/core/l10n/cy_GB.php
 #srv/web/owncloud/core/l10n/da.php
@@ -8092,12 +10125,23 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/el.php
 #srv/web/owncloud/core/l10n/en@pirate.php
 #srv/web/owncloud/core/l10n/en_GB.php
+#srv/web/owncloud/core/l10n/en_NZ.php
 #srv/web/owncloud/core/l10n/eo.php
 #srv/web/owncloud/core/l10n/es.php
 #srv/web/owncloud/core/l10n/es_AR.php
+#srv/web/owncloud/core/l10n/es_BO.php
+#srv/web/owncloud/core/l10n/es_CL.php
+#srv/web/owncloud/core/l10n/es_CO.php
+#srv/web/owncloud/core/l10n/es_CR.php
+#srv/web/owncloud/core/l10n/es_EC.php
 #srv/web/owncloud/core/l10n/es_MX.php
+#srv/web/owncloud/core/l10n/es_PE.php
+#srv/web/owncloud/core/l10n/es_PY.php
+#srv/web/owncloud/core/l10n/es_US.php
+#srv/web/owncloud/core/l10n/es_UY.php
 #srv/web/owncloud/core/l10n/et_EE.php
 #srv/web/owncloud/core/l10n/eu.php
+#srv/web/owncloud/core/l10n/eu_ES.php
 #srv/web/owncloud/core/l10n/fa.php
 #srv/web/owncloud/core/l10n/fi.php
 #srv/web/owncloud/core/l10n/fi_FI.php
@@ -8106,6 +10150,7 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/gl.php
 #srv/web/owncloud/core/l10n/he.php
 #srv/web/owncloud/core/l10n/hi.php
+#srv/web/owncloud/core/l10n/hi_IN.php
 #srv/web/owncloud/core/l10n/hr.php
 #srv/web/owncloud/core/l10n/hu_HU.php
 #srv/web/owncloud/core/l10n/hy.php
@@ -8114,7 +10159,9 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/ignorelist
 #srv/web/owncloud/core/l10n/is.php
 #srv/web/owncloud/core/l10n/it.php
+#srv/web/owncloud/core/l10n/ja.php
 #srv/web/owncloud/core/l10n/ja_JP.php
+#srv/web/owncloud/core/l10n/jv.php
 #srv/web/owncloud/core/l10n/ka.php
 #srv/web/owncloud/core/l10n/ka_GE.php
 #srv/web/owncloud/core/l10n/km.php
@@ -8128,7 +10175,9 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/lt_LT.php
 #srv/web/owncloud/core/l10n/lv.php
 #srv/web/owncloud/core/l10n/mk.php
+#srv/web/owncloud/core/l10n/ml.php
 #srv/web/owncloud/core/l10n/ml_IN.php
+#srv/web/owncloud/core/l10n/mn.php
 #srv/web/owncloud/core/l10n/ms_MY.php
 #srv/web/owncloud/core/l10n/my_MM.php
 #srv/web/owncloud/core/l10n/nb_NO.php
@@ -8138,6 +10187,7 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/nn_NO.php
 #srv/web/owncloud/core/l10n/nqo.php
 #srv/web/owncloud/core/l10n/oc.php
+#srv/web/owncloud/core/l10n/or_IN.php
 #srv/web/owncloud/core/l10n/pa.php
 #srv/web/owncloud/core/l10n/pl.php
 #srv/web/owncloud/core/l10n/pt_BR.php
@@ -8151,8 +10201,10 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/sq.php
 #srv/web/owncloud/core/l10n/sr.php
 #srv/web/owncloud/core/l10n/sr@latin.php
+#srv/web/owncloud/core/l10n/su.php
 #srv/web/owncloud/core/l10n/sv.php
 #srv/web/owncloud/core/l10n/sw_KE.php
+#srv/web/owncloud/core/l10n/ta_IN.php
 #srv/web/owncloud/core/l10n/ta_LK.php
 #srv/web/owncloud/core/l10n/te.php
 #srv/web/owncloud/core/l10n/th_TH.php
@@ -8160,6 +10212,7 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/tzm.php
 #srv/web/owncloud/core/l10n/ug.php
 #srv/web/owncloud/core/l10n/uk.php
+#srv/web/owncloud/core/l10n/ur.php
 #srv/web/owncloud/core/l10n/ur_PK.php
 #srv/web/owncloud/core/l10n/uz.php
 #srv/web/owncloud/core/l10n/vi.php
@@ -8168,17 +10221,21 @@ srv/web/owncloud
 #srv/web/owncloud/core/l10n/zh_HK.php
 #srv/web/owncloud/core/l10n/zh_TW.php
 #srv/web/owncloud/core/lostpassword
-#srv/web/owncloud/core/lostpassword/controller.php
+#srv/web/owncloud/core/lostpassword/application.php
+#srv/web/owncloud/core/lostpassword/controller
+#srv/web/owncloud/core/lostpassword/controller/lostcontroller.php
 #srv/web/owncloud/core/lostpassword/css
 #srv/web/owncloud/core/lostpassword/css/lostpassword.css
+#srv/web/owncloud/core/lostpassword/css/resetpassword.css
+#srv/web/owncloud/core/lostpassword/encrypteddataexception.php
 #srv/web/owncloud/core/lostpassword/templates
 #srv/web/owncloud/core/lostpassword/templates/email.php
 #srv/web/owncloud/core/lostpassword/templates/lostpassword.php
 #srv/web/owncloud/core/lostpassword/templates/resetpassword.php
-#srv/web/owncloud/core/minimizer.php
 #srv/web/owncloud/core/register_command.php
 #srv/web/owncloud/core/routes.php
-#srv/web/owncloud/core/setup.php
+#srv/web/owncloud/core/setup
+#srv/web/owncloud/core/setup/controller.php
 #srv/web/owncloud/core/skeleton
 #srv/web/owncloud/core/skeleton/documents
 #srv/web/owncloud/core/skeleton/documents/example.odt
@@ -8219,6 +10276,7 @@ srv/web/owncloud
 #srv/web/owncloud/db_structure.xml
 #srv/web/owncloud/index.html
 #srv/web/owncloud/index.php
+#srv/web/owncloud/indie.json
 #srv/web/owncloud/l10n
 #srv/web/owncloud/l10n/ach
 #srv/web/owncloud/l10n/ach/core.po
@@ -8268,6 +10326,30 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/af_ZA/settings.po
 #srv/web/owncloud/l10n/af_ZA/user_ldap.po
 #srv/web/owncloud/l10n/af_ZA/user_webdavauth.po
+#srv/web/owncloud/l10n/ak
+#srv/web/owncloud/l10n/ak/core.po
+#srv/web/owncloud/l10n/ak/files.po
+#srv/web/owncloud/l10n/ak/files_encryption.po
+#srv/web/owncloud/l10n/ak/files_external.po
+#srv/web/owncloud/l10n/ak/files_sharing.po
+#srv/web/owncloud/l10n/ak/files_trashbin.po
+#srv/web/owncloud/l10n/ak/files_versions.po
+#srv/web/owncloud/l10n/ak/lib.po
+#srv/web/owncloud/l10n/ak/settings.po
+#srv/web/owncloud/l10n/ak/user_ldap.po
+#srv/web/owncloud/l10n/ak/user_webdavauth.po
+#srv/web/owncloud/l10n/am_ET
+#srv/web/owncloud/l10n/am_ET/core.po
+#srv/web/owncloud/l10n/am_ET/files.po
+#srv/web/owncloud/l10n/am_ET/files_encryption.po
+#srv/web/owncloud/l10n/am_ET/files_external.po
+#srv/web/owncloud/l10n/am_ET/files_sharing.po
+#srv/web/owncloud/l10n/am_ET/files_trashbin.po
+#srv/web/owncloud/l10n/am_ET/files_versions.po
+#srv/web/owncloud/l10n/am_ET/lib.po
+#srv/web/owncloud/l10n/am_ET/settings.po
+#srv/web/owncloud/l10n/am_ET/user_ldap.po
+#srv/web/owncloud/l10n/am_ET/user_webdavauth.po
 #srv/web/owncloud/l10n/ar
 #srv/web/owncloud/l10n/ar/core.po
 #srv/web/owncloud/l10n/ar/files.po
@@ -8290,6 +10372,30 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/ar_SA/lib.po
 #srv/web/owncloud/l10n/ar_SA/settings.po
 #srv/web/owncloud/l10n/ar_SA/user_ldap.po
+#srv/web/owncloud/l10n/ast
+#srv/web/owncloud/l10n/ast/core.po
+#srv/web/owncloud/l10n/ast/files.po
+#srv/web/owncloud/l10n/ast/files_encryption.po
+#srv/web/owncloud/l10n/ast/files_external.po
+#srv/web/owncloud/l10n/ast/files_sharing.po
+#srv/web/owncloud/l10n/ast/files_trashbin.po
+#srv/web/owncloud/l10n/ast/files_versions.po
+#srv/web/owncloud/l10n/ast/lib.po
+#srv/web/owncloud/l10n/ast/settings.po
+#srv/web/owncloud/l10n/ast/user_ldap.po
+#srv/web/owncloud/l10n/ast/user_webdavauth.po
+#srv/web/owncloud/l10n/az
+#srv/web/owncloud/l10n/az/core.po
+#srv/web/owncloud/l10n/az/files.po
+#srv/web/owncloud/l10n/az/files_encryption.po
+#srv/web/owncloud/l10n/az/files_external.po
+#srv/web/owncloud/l10n/az/files_sharing.po
+#srv/web/owncloud/l10n/az/files_trashbin.po
+#srv/web/owncloud/l10n/az/files_versions.po
+#srv/web/owncloud/l10n/az/lib.po
+#srv/web/owncloud/l10n/az/settings.po
+#srv/web/owncloud/l10n/az/user_ldap.po
+#srv/web/owncloud/l10n/az/user_webdavauth.po
 #srv/web/owncloud/l10n/be
 #srv/web/owncloud/l10n/be/core.po
 #srv/web/owncloud/l10n/be/files.po
@@ -8326,6 +10432,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/bn_BD/settings.po
 #srv/web/owncloud/l10n/bn_BD/user_ldap.po
 #srv/web/owncloud/l10n/bn_BD/user_webdavauth.po
+#srv/web/owncloud/l10n/bn_IN
+#srv/web/owncloud/l10n/bn_IN/core.po
+#srv/web/owncloud/l10n/bn_IN/files.po
+#srv/web/owncloud/l10n/bn_IN/files_encryption.po
+#srv/web/owncloud/l10n/bn_IN/files_external.po
+#srv/web/owncloud/l10n/bn_IN/files_sharing.po
+#srv/web/owncloud/l10n/bn_IN/files_trashbin.po
+#srv/web/owncloud/l10n/bn_IN/files_versions.po
+#srv/web/owncloud/l10n/bn_IN/lib.po
+#srv/web/owncloud/l10n/bn_IN/settings.po
+#srv/web/owncloud/l10n/bn_IN/user_ldap.po
+#srv/web/owncloud/l10n/bn_IN/user_webdavauth.po
 #srv/web/owncloud/l10n/bs
 #srv/web/owncloud/l10n/bs/core.po
 #srv/web/owncloud/l10n/bs/files.po
@@ -8350,6 +10468,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/ca/settings.po
 #srv/web/owncloud/l10n/ca/user_ldap.po
 #srv/web/owncloud/l10n/ca/user_webdavauth.po
+#srv/web/owncloud/l10n/ca@valencia
+#srv/web/owncloud/l10n/ca@valencia/core.po
+#srv/web/owncloud/l10n/ca@valencia/files.po
+#srv/web/owncloud/l10n/ca@valencia/files_encryption.po
+#srv/web/owncloud/l10n/ca@valencia/files_external.po
+#srv/web/owncloud/l10n/ca@valencia/files_sharing.po
+#srv/web/owncloud/l10n/ca@valencia/files_trashbin.po
+#srv/web/owncloud/l10n/ca@valencia/files_versions.po
+#srv/web/owncloud/l10n/ca@valencia/lib.po
+#srv/web/owncloud/l10n/ca@valencia/settings.po
+#srv/web/owncloud/l10n/ca@valencia/user_ldap.po
+#srv/web/owncloud/l10n/ca@valencia/user_webdavauth.po
 #srv/web/owncloud/l10n/cs_CZ
 #srv/web/owncloud/l10n/cs_CZ/core.po
 #srv/web/owncloud/l10n/cs_CZ/files.po
@@ -8470,6 +10600,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/en_GB/settings.po
 #srv/web/owncloud/l10n/en_GB/user_ldap.po
 #srv/web/owncloud/l10n/en_GB/user_webdavauth.po
+#srv/web/owncloud/l10n/en_NZ
+#srv/web/owncloud/l10n/en_NZ/core.po
+#srv/web/owncloud/l10n/en_NZ/files.po
+#srv/web/owncloud/l10n/en_NZ/files_encryption.po
+#srv/web/owncloud/l10n/en_NZ/files_external.po
+#srv/web/owncloud/l10n/en_NZ/files_sharing.po
+#srv/web/owncloud/l10n/en_NZ/files_trashbin.po
+#srv/web/owncloud/l10n/en_NZ/files_versions.po
+#srv/web/owncloud/l10n/en_NZ/lib.po
+#srv/web/owncloud/l10n/en_NZ/settings.po
+#srv/web/owncloud/l10n/en_NZ/user_ldap.po
+#srv/web/owncloud/l10n/en_NZ/user_webdavauth.po
 #srv/web/owncloud/l10n/eo
 #srv/web/owncloud/l10n/eo/core.po
 #srv/web/owncloud/l10n/eo/files.po
@@ -8506,6 +10648,66 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/es_AR/settings.po
 #srv/web/owncloud/l10n/es_AR/user_ldap.po
 #srv/web/owncloud/l10n/es_AR/user_webdavauth.po
+#srv/web/owncloud/l10n/es_BO
+#srv/web/owncloud/l10n/es_BO/core.po
+#srv/web/owncloud/l10n/es_BO/files.po
+#srv/web/owncloud/l10n/es_BO/files_encryption.po
+#srv/web/owncloud/l10n/es_BO/files_external.po
+#srv/web/owncloud/l10n/es_BO/files_sharing.po
+#srv/web/owncloud/l10n/es_BO/files_trashbin.po
+#srv/web/owncloud/l10n/es_BO/files_versions.po
+#srv/web/owncloud/l10n/es_BO/lib.po
+#srv/web/owncloud/l10n/es_BO/settings.po
+#srv/web/owncloud/l10n/es_BO/user_ldap.po
+#srv/web/owncloud/l10n/es_BO/user_webdavauth.po
+#srv/web/owncloud/l10n/es_CL
+#srv/web/owncloud/l10n/es_CL/core.po
+#srv/web/owncloud/l10n/es_CL/files.po
+#srv/web/owncloud/l10n/es_CL/files_encryption.po
+#srv/web/owncloud/l10n/es_CL/files_external.po
+#srv/web/owncloud/l10n/es_CL/files_sharing.po
+#srv/web/owncloud/l10n/es_CL/files_trashbin.po
+#srv/web/owncloud/l10n/es_CL/files_versions.po
+#srv/web/owncloud/l10n/es_CL/lib.po
+#srv/web/owncloud/l10n/es_CL/settings.po
+#srv/web/owncloud/l10n/es_CL/user_ldap.po
+#srv/web/owncloud/l10n/es_CL/user_webdavauth.po
+#srv/web/owncloud/l10n/es_CO
+#srv/web/owncloud/l10n/es_CO/core.po
+#srv/web/owncloud/l10n/es_CO/files.po
+#srv/web/owncloud/l10n/es_CO/files_encryption.po
+#srv/web/owncloud/l10n/es_CO/files_external.po
+#srv/web/owncloud/l10n/es_CO/files_sharing.po
+#srv/web/owncloud/l10n/es_CO/files_trashbin.po
+#srv/web/owncloud/l10n/es_CO/files_versions.po
+#srv/web/owncloud/l10n/es_CO/lib.po
+#srv/web/owncloud/l10n/es_CO/settings.po
+#srv/web/owncloud/l10n/es_CO/user_ldap.po
+#srv/web/owncloud/l10n/es_CO/user_webdavauth.po
+#srv/web/owncloud/l10n/es_CR
+#srv/web/owncloud/l10n/es_CR/core.po
+#srv/web/owncloud/l10n/es_CR/files.po
+#srv/web/owncloud/l10n/es_CR/files_encryption.po
+#srv/web/owncloud/l10n/es_CR/files_external.po
+#srv/web/owncloud/l10n/es_CR/files_sharing.po
+#srv/web/owncloud/l10n/es_CR/files_trashbin.po
+#srv/web/owncloud/l10n/es_CR/files_versions.po
+#srv/web/owncloud/l10n/es_CR/lib.po
+#srv/web/owncloud/l10n/es_CR/settings.po
+#srv/web/owncloud/l10n/es_CR/user_ldap.po
+#srv/web/owncloud/l10n/es_CR/user_webdavauth.po
+#srv/web/owncloud/l10n/es_EC
+#srv/web/owncloud/l10n/es_EC/core.po
+#srv/web/owncloud/l10n/es_EC/files.po
+#srv/web/owncloud/l10n/es_EC/files_encryption.po
+#srv/web/owncloud/l10n/es_EC/files_external.po
+#srv/web/owncloud/l10n/es_EC/files_sharing.po
+#srv/web/owncloud/l10n/es_EC/files_trashbin.po
+#srv/web/owncloud/l10n/es_EC/files_versions.po
+#srv/web/owncloud/l10n/es_EC/lib.po
+#srv/web/owncloud/l10n/es_EC/settings.po
+#srv/web/owncloud/l10n/es_EC/user_ldap.po
+#srv/web/owncloud/l10n/es_EC/user_webdavauth.po
 #srv/web/owncloud/l10n/es_MX
 #srv/web/owncloud/l10n/es_MX/core.po
 #srv/web/owncloud/l10n/es_MX/files.po
@@ -8518,6 +10720,54 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/es_MX/settings.po
 #srv/web/owncloud/l10n/es_MX/user_ldap.po
 #srv/web/owncloud/l10n/es_MX/user_webdavauth.po
+#srv/web/owncloud/l10n/es_PE
+#srv/web/owncloud/l10n/es_PE/core.po
+#srv/web/owncloud/l10n/es_PE/files.po
+#srv/web/owncloud/l10n/es_PE/files_encryption.po
+#srv/web/owncloud/l10n/es_PE/files_external.po
+#srv/web/owncloud/l10n/es_PE/files_sharing.po
+#srv/web/owncloud/l10n/es_PE/files_trashbin.po
+#srv/web/owncloud/l10n/es_PE/files_versions.po
+#srv/web/owncloud/l10n/es_PE/lib.po
+#srv/web/owncloud/l10n/es_PE/settings.po
+#srv/web/owncloud/l10n/es_PE/user_ldap.po
+#srv/web/owncloud/l10n/es_PE/user_webdavauth.po
+#srv/web/owncloud/l10n/es_PY
+#srv/web/owncloud/l10n/es_PY/core.po
+#srv/web/owncloud/l10n/es_PY/files.po
+#srv/web/owncloud/l10n/es_PY/files_encryption.po
+#srv/web/owncloud/l10n/es_PY/files_external.po
+#srv/web/owncloud/l10n/es_PY/files_sharing.po
+#srv/web/owncloud/l10n/es_PY/files_trashbin.po
+#srv/web/owncloud/l10n/es_PY/files_versions.po
+#srv/web/owncloud/l10n/es_PY/lib.po
+#srv/web/owncloud/l10n/es_PY/settings.po
+#srv/web/owncloud/l10n/es_PY/user_ldap.po
+#srv/web/owncloud/l10n/es_PY/user_webdavauth.po
+#srv/web/owncloud/l10n/es_US
+#srv/web/owncloud/l10n/es_US/core.po
+#srv/web/owncloud/l10n/es_US/files.po
+#srv/web/owncloud/l10n/es_US/files_encryption.po
+#srv/web/owncloud/l10n/es_US/files_external.po
+#srv/web/owncloud/l10n/es_US/files_sharing.po
+#srv/web/owncloud/l10n/es_US/files_trashbin.po
+#srv/web/owncloud/l10n/es_US/files_versions.po
+#srv/web/owncloud/l10n/es_US/lib.po
+#srv/web/owncloud/l10n/es_US/settings.po
+#srv/web/owncloud/l10n/es_US/user_ldap.po
+#srv/web/owncloud/l10n/es_US/user_webdavauth.po
+#srv/web/owncloud/l10n/es_UY
+#srv/web/owncloud/l10n/es_UY/core.po
+#srv/web/owncloud/l10n/es_UY/files.po
+#srv/web/owncloud/l10n/es_UY/files_encryption.po
+#srv/web/owncloud/l10n/es_UY/files_external.po
+#srv/web/owncloud/l10n/es_UY/files_sharing.po
+#srv/web/owncloud/l10n/es_UY/files_trashbin.po
+#srv/web/owncloud/l10n/es_UY/files_versions.po
+#srv/web/owncloud/l10n/es_UY/lib.po
+#srv/web/owncloud/l10n/es_UY/settings.po
+#srv/web/owncloud/l10n/es_UY/user_ldap.po
+#srv/web/owncloud/l10n/es_UY/user_webdavauth.po
 #srv/web/owncloud/l10n/et_EE
 #srv/web/owncloud/l10n/et_EE/core.po
 #srv/web/owncloud/l10n/et_EE/files.po
@@ -8548,10 +10798,12 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/eu_ES/files_encryption.po
 #srv/web/owncloud/l10n/eu_ES/files_external.po
 #srv/web/owncloud/l10n/eu_ES/files_sharing.po
+#srv/web/owncloud/l10n/eu_ES/files_trashbin.po
 #srv/web/owncloud/l10n/eu_ES/files_versions.po
 #srv/web/owncloud/l10n/eu_ES/lib.po
 #srv/web/owncloud/l10n/eu_ES/settings.po
 #srv/web/owncloud/l10n/eu_ES/user_ldap.po
+#srv/web/owncloud/l10n/eu_ES/user_webdavauth.po
 #srv/web/owncloud/l10n/fa
 #srv/web/owncloud/l10n/fa/core.po
 #srv/web/owncloud/l10n/fa/files.po
@@ -8648,6 +10900,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/hi/settings.po
 #srv/web/owncloud/l10n/hi/user_ldap.po
 #srv/web/owncloud/l10n/hi/user_webdavauth.po
+#srv/web/owncloud/l10n/hi_IN
+#srv/web/owncloud/l10n/hi_IN/core.po
+#srv/web/owncloud/l10n/hi_IN/files.po
+#srv/web/owncloud/l10n/hi_IN/files_encryption.po
+#srv/web/owncloud/l10n/hi_IN/files_external.po
+#srv/web/owncloud/l10n/hi_IN/files_sharing.po
+#srv/web/owncloud/l10n/hi_IN/files_trashbin.po
+#srv/web/owncloud/l10n/hi_IN/files_versions.po
+#srv/web/owncloud/l10n/hi_IN/lib.po
+#srv/web/owncloud/l10n/hi_IN/settings.po
+#srv/web/owncloud/l10n/hi_IN/user_ldap.po
+#srv/web/owncloud/l10n/hi_IN/user_webdavauth.po
 #srv/web/owncloud/l10n/hr
 #srv/web/owncloud/l10n/hr/core.po
 #srv/web/owncloud/l10n/hr/files.po
@@ -8754,18 +11018,30 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/it/settings.po
 #srv/web/owncloud/l10n/it/user_ldap.po
 #srv/web/owncloud/l10n/it/user_webdavauth.po
-#srv/web/owncloud/l10n/ja_JP
-#srv/web/owncloud/l10n/ja_JP/core.po
-#srv/web/owncloud/l10n/ja_JP/files.po
-#srv/web/owncloud/l10n/ja_JP/files_encryption.po
-#srv/web/owncloud/l10n/ja_JP/files_external.po
-#srv/web/owncloud/l10n/ja_JP/files_sharing.po
-#srv/web/owncloud/l10n/ja_JP/files_trashbin.po
-#srv/web/owncloud/l10n/ja_JP/files_versions.po
-#srv/web/owncloud/l10n/ja_JP/lib.po
-#srv/web/owncloud/l10n/ja_JP/settings.po
-#srv/web/owncloud/l10n/ja_JP/user_ldap.po
-#srv/web/owncloud/l10n/ja_JP/user_webdavauth.po
+#srv/web/owncloud/l10n/ja
+#srv/web/owncloud/l10n/ja/core.po
+#srv/web/owncloud/l10n/ja/files.po
+#srv/web/owncloud/l10n/ja/files_encryption.po
+#srv/web/owncloud/l10n/ja/files_external.po
+#srv/web/owncloud/l10n/ja/files_sharing.po
+#srv/web/owncloud/l10n/ja/files_trashbin.po
+#srv/web/owncloud/l10n/ja/files_versions.po
+#srv/web/owncloud/l10n/ja/lib.po
+#srv/web/owncloud/l10n/ja/settings.po
+#srv/web/owncloud/l10n/ja/user_ldap.po
+#srv/web/owncloud/l10n/ja/user_webdavauth.po
+#srv/web/owncloud/l10n/jv
+#srv/web/owncloud/l10n/jv/core.po
+#srv/web/owncloud/l10n/jv/files.po
+#srv/web/owncloud/l10n/jv/files_encryption.po
+#srv/web/owncloud/l10n/jv/files_external.po
+#srv/web/owncloud/l10n/jv/files_sharing.po
+#srv/web/owncloud/l10n/jv/files_trashbin.po
+#srv/web/owncloud/l10n/jv/files_versions.po
+#srv/web/owncloud/l10n/jv/lib.po
+#srv/web/owncloud/l10n/jv/settings.po
+#srv/web/owncloud/l10n/jv/user_ldap.po
+#srv/web/owncloud/l10n/jv/user_webdavauth.po
 #srv/web/owncloud/l10n/ka
 #srv/web/owncloud/l10n/ka/core.po
 #srv/web/owncloud/l10n/ka/files.po
@@ -8887,6 +11163,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/mk/settings.po
 #srv/web/owncloud/l10n/mk/user_ldap.po
 #srv/web/owncloud/l10n/mk/user_webdavauth.po
+#srv/web/owncloud/l10n/ml
+#srv/web/owncloud/l10n/ml/core.po
+#srv/web/owncloud/l10n/ml/files.po
+#srv/web/owncloud/l10n/ml/files_encryption.po
+#srv/web/owncloud/l10n/ml/files_external.po
+#srv/web/owncloud/l10n/ml/files_sharing.po
+#srv/web/owncloud/l10n/ml/files_trashbin.po
+#srv/web/owncloud/l10n/ml/files_versions.po
+#srv/web/owncloud/l10n/ml/lib.po
+#srv/web/owncloud/l10n/ml/settings.po
+#srv/web/owncloud/l10n/ml/user_ldap.po
+#srv/web/owncloud/l10n/ml/user_webdavauth.po
 #srv/web/owncloud/l10n/ml_IN
 #srv/web/owncloud/l10n/ml_IN/core.po
 #srv/web/owncloud/l10n/ml_IN/files.po
@@ -8899,6 +11187,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/ml_IN/settings.po
 #srv/web/owncloud/l10n/ml_IN/user_ldap.po
 #srv/web/owncloud/l10n/ml_IN/user_webdavauth.po
+#srv/web/owncloud/l10n/mn
+#srv/web/owncloud/l10n/mn/core.po
+#srv/web/owncloud/l10n/mn/files.po
+#srv/web/owncloud/l10n/mn/files_encryption.po
+#srv/web/owncloud/l10n/mn/files_external.po
+#srv/web/owncloud/l10n/mn/files_sharing.po
+#srv/web/owncloud/l10n/mn/files_trashbin.po
+#srv/web/owncloud/l10n/mn/files_versions.po
+#srv/web/owncloud/l10n/mn/lib.po
+#srv/web/owncloud/l10n/mn/settings.po
+#srv/web/owncloud/l10n/mn/user_ldap.po
+#srv/web/owncloud/l10n/mn/user_webdavauth.po
 #srv/web/owncloud/l10n/ms_MY
 #srv/web/owncloud/l10n/ms_MY/core.po
 #srv/web/owncloud/l10n/ms_MY/files.po
@@ -9007,6 +11307,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/oc/settings.po
 #srv/web/owncloud/l10n/oc/user_ldap.po
 #srv/web/owncloud/l10n/oc/user_webdavauth.po
+#srv/web/owncloud/l10n/or_IN
+#srv/web/owncloud/l10n/or_IN/core.po
+#srv/web/owncloud/l10n/or_IN/files.po
+#srv/web/owncloud/l10n/or_IN/files_encryption.po
+#srv/web/owncloud/l10n/or_IN/files_external.po
+#srv/web/owncloud/l10n/or_IN/files_sharing.po
+#srv/web/owncloud/l10n/or_IN/files_trashbin.po
+#srv/web/owncloud/l10n/or_IN/files_versions.po
+#srv/web/owncloud/l10n/or_IN/lib.po
+#srv/web/owncloud/l10n/or_IN/settings.po
+#srv/web/owncloud/l10n/or_IN/user_ldap.po
+#srv/web/owncloud/l10n/or_IN/user_webdavauth.po
 #srv/web/owncloud/l10n/pa
 #srv/web/owncloud/l10n/pa/core.po
 #srv/web/owncloud/l10n/pa/files.po
@@ -9173,6 +11485,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/sr@latin/settings.po
 #srv/web/owncloud/l10n/sr@latin/user_ldap.po
 #srv/web/owncloud/l10n/sr@latin/user_webdavauth.po
+#srv/web/owncloud/l10n/su
+#srv/web/owncloud/l10n/su/core.po
+#srv/web/owncloud/l10n/su/files.po
+#srv/web/owncloud/l10n/su/files_encryption.po
+#srv/web/owncloud/l10n/su/files_external.po
+#srv/web/owncloud/l10n/su/files_sharing.po
+#srv/web/owncloud/l10n/su/files_trashbin.po
+#srv/web/owncloud/l10n/su/files_versions.po
+#srv/web/owncloud/l10n/su/lib.po
+#srv/web/owncloud/l10n/su/settings.po
+#srv/web/owncloud/l10n/su/user_ldap.po
+#srv/web/owncloud/l10n/su/user_webdavauth.po
 #srv/web/owncloud/l10n/sv
 #srv/web/owncloud/l10n/sv/core.po
 #srv/web/owncloud/l10n/sv/files.po
@@ -9197,6 +11521,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/sw_KE/settings.po
 #srv/web/owncloud/l10n/sw_KE/user_ldap.po
 #srv/web/owncloud/l10n/sw_KE/user_webdavauth.po
+#srv/web/owncloud/l10n/ta_IN
+#srv/web/owncloud/l10n/ta_IN/core.po
+#srv/web/owncloud/l10n/ta_IN/files.po
+#srv/web/owncloud/l10n/ta_IN/files_encryption.po
+#srv/web/owncloud/l10n/ta_IN/files_external.po
+#srv/web/owncloud/l10n/ta_IN/files_sharing.po
+#srv/web/owncloud/l10n/ta_IN/files_trashbin.po
+#srv/web/owncloud/l10n/ta_IN/files_versions.po
+#srv/web/owncloud/l10n/ta_IN/lib.po
+#srv/web/owncloud/l10n/ta_IN/settings.po
+#srv/web/owncloud/l10n/ta_IN/user_ldap.po
+#srv/web/owncloud/l10n/ta_IN/user_webdavauth.po
 #srv/web/owncloud/l10n/ta_LK
 #srv/web/owncloud/l10n/ta_LK/core.po
 #srv/web/owncloud/l10n/ta_LK/files.po
@@ -9294,6 +11630,18 @@ srv/web/owncloud
 #srv/web/owncloud/l10n/uk/settings.po
 #srv/web/owncloud/l10n/uk/user_ldap.po
 #srv/web/owncloud/l10n/uk/user_webdavauth.po
+#srv/web/owncloud/l10n/ur
+#srv/web/owncloud/l10n/ur/core.po
+#srv/web/owncloud/l10n/ur/files.po
+#srv/web/owncloud/l10n/ur/files_encryption.po
+#srv/web/owncloud/l10n/ur/files_external.po
+#srv/web/owncloud/l10n/ur/files_sharing.po
+#srv/web/owncloud/l10n/ur/files_trashbin.po
+#srv/web/owncloud/l10n/ur/files_versions.po
+#srv/web/owncloud/l10n/ur/lib.po
+#srv/web/owncloud/l10n/ur/settings.po
+#srv/web/owncloud/l10n/ur/user_ldap.po
+#srv/web/owncloud/l10n/ur/user_webdavauth.po
 #srv/web/owncloud/l10n/ur_PK
 #srv/web/owncloud/l10n/ur_PK/core.po
 #srv/web/owncloud/l10n/ur_PK/files.po
@@ -9385,12 +11733,18 @@ srv/web/owncloud
 #srv/web/owncloud/lib/l10n/ady.php
 #srv/web/owncloud/lib/l10n/af.php
 #srv/web/owncloud/lib/l10n/af_ZA.php
+#srv/web/owncloud/lib/l10n/ak.php
+#srv/web/owncloud/lib/l10n/am_ET.php
 #srv/web/owncloud/lib/l10n/ar.php
+#srv/web/owncloud/lib/l10n/ast.php
+#srv/web/owncloud/lib/l10n/az.php
 #srv/web/owncloud/lib/l10n/be.php
 #srv/web/owncloud/lib/l10n/bg_BG.php
 #srv/web/owncloud/lib/l10n/bn_BD.php
+#srv/web/owncloud/lib/l10n/bn_IN.php
 #srv/web/owncloud/lib/l10n/bs.php
 #srv/web/owncloud/lib/l10n/ca.php
+#srv/web/owncloud/lib/l10n/ca@valencia.php
 #srv/web/owncloud/lib/l10n/cs_CZ.php
 #srv/web/owncloud/lib/l10n/cy_GB.php
 #srv/web/owncloud/lib/l10n/da.php
@@ -9401,12 +11755,23 @@ srv/web/owncloud
 #srv/web/owncloud/lib/l10n/el.php
 #srv/web/owncloud/lib/l10n/en@pirate.php
 #srv/web/owncloud/lib/l10n/en_GB.php
+#srv/web/owncloud/lib/l10n/en_NZ.php
 #srv/web/owncloud/lib/l10n/eo.php
 #srv/web/owncloud/lib/l10n/es.php
 #srv/web/owncloud/lib/l10n/es_AR.php
+#srv/web/owncloud/lib/l10n/es_BO.php
+#srv/web/owncloud/lib/l10n/es_CL.php
+#srv/web/owncloud/lib/l10n/es_CO.php
+#srv/web/owncloud/lib/l10n/es_CR.php
+#srv/web/owncloud/lib/l10n/es_EC.php
 #srv/web/owncloud/lib/l10n/es_MX.php
+#srv/web/owncloud/lib/l10n/es_PE.php
+#srv/web/owncloud/lib/l10n/es_PY.php
+#srv/web/owncloud/lib/l10n/es_US.php
+#srv/web/owncloud/lib/l10n/es_UY.php
 #srv/web/owncloud/lib/l10n/et_EE.php
 #srv/web/owncloud/lib/l10n/eu.php
+#srv/web/owncloud/lib/l10n/eu_ES.php
 #srv/web/owncloud/lib/l10n/fa.php
 #srv/web/owncloud/lib/l10n/fi.php
 #srv/web/owncloud/lib/l10n/fi_FI.php
@@ -9415,6 +11780,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/l10n/gl.php
 #srv/web/owncloud/lib/l10n/he.php
 #srv/web/owncloud/lib/l10n/hi.php
+#srv/web/owncloud/lib/l10n/hi_IN.php
 #srv/web/owncloud/lib/l10n/hr.php
 #srv/web/owncloud/lib/l10n/hu_HU.php
 #srv/web/owncloud/lib/l10n/hy.php
@@ -9422,7 +11788,9 @@ srv/web/owncloud
 #srv/web/owncloud/lib/l10n/id.php
 #srv/web/owncloud/lib/l10n/is.php
 #srv/web/owncloud/lib/l10n/it.php
+#srv/web/owncloud/lib/l10n/ja.php
 #srv/web/owncloud/lib/l10n/ja_JP.php
+#srv/web/owncloud/lib/l10n/jv.php
 #srv/web/owncloud/lib/l10n/ka.php
 #srv/web/owncloud/lib/l10n/ka_GE.php
 #srv/web/owncloud/lib/l10n/km.php
@@ -9433,7 +11801,9 @@ srv/web/owncloud
 #srv/web/owncloud/lib/l10n/lt_LT.php
 #srv/web/owncloud/lib/l10n/lv.php
 #srv/web/owncloud/lib/l10n/mk.php
+#srv/web/owncloud/lib/l10n/ml.php
 #srv/web/owncloud/lib/l10n/ml_IN.php
+#srv/web/owncloud/lib/l10n/mn.php
 #srv/web/owncloud/lib/l10n/ms_MY.php
 #srv/web/owncloud/lib/l10n/my_MM.php
 #srv/web/owncloud/lib/l10n/nb_NO.php
@@ -9443,6 +11813,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/l10n/nn_NO.php
 #srv/web/owncloud/lib/l10n/nqo.php
 #srv/web/owncloud/lib/l10n/oc.php
+#srv/web/owncloud/lib/l10n/or_IN.php
 #srv/web/owncloud/lib/l10n/pa.php
 #srv/web/owncloud/lib/l10n/pl.php
 #srv/web/owncloud/lib/l10n/pt_BR.php
@@ -9456,8 +11827,10 @@ srv/web/owncloud
 #srv/web/owncloud/lib/l10n/sq.php
 #srv/web/owncloud/lib/l10n/sr.php
 #srv/web/owncloud/lib/l10n/sr@latin.php
+#srv/web/owncloud/lib/l10n/su.php
 #srv/web/owncloud/lib/l10n/sv.php
 #srv/web/owncloud/lib/l10n/sw_KE.php
+#srv/web/owncloud/lib/l10n/ta_IN.php
 #srv/web/owncloud/lib/l10n/ta_LK.php
 #srv/web/owncloud/lib/l10n/te.php
 #srv/web/owncloud/lib/l10n/th_TH.php
@@ -9465,6 +11838,7 @@ 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
@@ -9481,24 +11855,25 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/appframework/app.php
 #srv/web/owncloud/lib/private/appframework/core
 #srv/web/owncloud/lib/private/appframework/core/api.php
+#srv/web/owncloud/lib/private/appframework/db
+#srv/web/owncloud/lib/private/appframework/db/db.php
 #srv/web/owncloud/lib/private/appframework/dependencyinjection
 #srv/web/owncloud/lib/private/appframework/dependencyinjection/dicontainer.php
 #srv/web/owncloud/lib/private/appframework/http
 #srv/web/owncloud/lib/private/appframework/http.php
 #srv/web/owncloud/lib/private/appframework/http/dispatcher.php
-#srv/web/owncloud/lib/private/appframework/http/downloadresponse.php
-#srv/web/owncloud/lib/private/appframework/http/redirectresponse.php
 #srv/web/owncloud/lib/private/appframework/http/request.php
 #srv/web/owncloud/lib/private/appframework/middleware
 #srv/web/owncloud/lib/private/appframework/middleware/middlewaredispatcher.php
 #srv/web/owncloud/lib/private/appframework/middleware/security
+#srv/web/owncloud/lib/private/appframework/middleware/security/corsmiddleware.php
 #srv/web/owncloud/lib/private/appframework/middleware/security/securityexception.php
 #srv/web/owncloud/lib/private/appframework/middleware/security/securitymiddleware.php
 #srv/web/owncloud/lib/private/appframework/routing
 #srv/web/owncloud/lib/private/appframework/routing/routeactionhandler.php
 #srv/web/owncloud/lib/private/appframework/routing/routeconfig.php
 #srv/web/owncloud/lib/private/appframework/utility
-#srv/web/owncloud/lib/private/appframework/utility/methodannotationreader.php
+#srv/web/owncloud/lib/private/appframework/utility/controllermethodreflector.php
 #srv/web/owncloud/lib/private/appframework/utility/simplecontainer.php
 #srv/web/owncloud/lib/private/appframework/utility/timefactory.php
 #srv/web/owncloud/lib/private/apphelper.php
@@ -9528,8 +11903,6 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/config.php
 #srv/web/owncloud/lib/private/connector
 #srv/web/owncloud/lib/private/connector/sabre
-#srv/web/owncloud/lib/private/connector/sabre/ServiceUnavailable.php
-#srv/web/owncloud/lib/private/connector/sabre/aborteduploaddetectionplugin.php
 #srv/web/owncloud/lib/private/connector/sabre/auth.php
 #srv/web/owncloud/lib/private/connector/sabre/directory.php
 #srv/web/owncloud/lib/private/connector/sabre/exception
@@ -9557,11 +11930,19 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/db/adaptersqlite.php
 #srv/web/owncloud/lib/private/db/adaptersqlsrv.php
 #srv/web/owncloud/lib/private/db/connection.php
+#srv/web/owncloud/lib/private/db/connectionfactory.php
 #srv/web/owncloud/lib/private/db/connectionwrapper.php
 #srv/web/owncloud/lib/private/db/mdb2schemamanager.php
 #srv/web/owncloud/lib/private/db/mdb2schemareader.php
 #srv/web/owncloud/lib/private/db/mdb2schemawriter.php
+#srv/web/owncloud/lib/private/db/migrationexception.php
+#srv/web/owncloud/lib/private/db/migrator.php
+#srv/web/owncloud/lib/private/db/mysqlmigrator.php
+#srv/web/owncloud/lib/private/db/nocheckmigrator.php
 #srv/web/owncloud/lib/private/db/oracleconnection.php
+#srv/web/owncloud/lib/private/db/oraclemigrator.php
+#srv/web/owncloud/lib/private/db/pgsqltools.php
+#srv/web/owncloud/lib/private/db/sqlitemigrator.php
 #srv/web/owncloud/lib/private/db/statementwrapper.php
 #srv/web/owncloud/lib/private/defaults.php
 #srv/web/owncloud/lib/private/eventsource.php
@@ -9572,22 +11953,20 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/files
 #srv/web/owncloud/lib/private/files.php
 #srv/web/owncloud/lib/private/files/cache
-#srv/web/owncloud/lib/private/files/cache/backgroundwatcher.php
 #srv/web/owncloud/lib/private/files/cache/cache.php
 #srv/web/owncloud/lib/private/files/cache/changepropagator.php
 #srv/web/owncloud/lib/private/files/cache/homecache.php
-#srv/web/owncloud/lib/private/files/cache/legacy.php
-#srv/web/owncloud/lib/private/files/cache/permissions.php
 #srv/web/owncloud/lib/private/files/cache/scanner.php
 #srv/web/owncloud/lib/private/files/cache/storage.php
 #srv/web/owncloud/lib/private/files/cache/updater.php
-#srv/web/owncloud/lib/private/files/cache/upgrade.php
 #srv/web/owncloud/lib/private/files/cache/watcher.php
+#srv/web/owncloud/lib/private/files/fileinfo.php
 #srv/web/owncloud/lib/private/files/filesystem.php
 #srv/web/owncloud/lib/private/files/mapper.php
 #srv/web/owncloud/lib/private/files/mount
 #srv/web/owncloud/lib/private/files/mount/manager.php
 #srv/web/owncloud/lib/private/files/mount/mount.php
+#srv/web/owncloud/lib/private/files/mount/moveablemount.php
 #srv/web/owncloud/lib/private/files/node
 #srv/web/owncloud/lib/private/files/node/file.php
 #srv/web/owncloud/lib/private/files/node/folder.php
@@ -9595,9 +11974,15 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/files/node/nonexistingfile.php
 #srv/web/owncloud/lib/private/files/node/nonexistingfolder.php
 #srv/web/owncloud/lib/private/files/node/root.php
+#srv/web/owncloud/lib/private/files/objectstore
+#srv/web/owncloud/lib/private/files/objectstore/homeobjectstorestorage.php
+#srv/web/owncloud/lib/private/files/objectstore/noopscanner.php
+#srv/web/owncloud/lib/private/files/objectstore/objectstorestorage.php
+#srv/web/owncloud/lib/private/files/objectstore/swift.php
 #srv/web/owncloud/lib/private/files/storage
 #srv/web/owncloud/lib/private/files/storage/common.php
 #srv/web/owncloud/lib/private/files/storage/commontest.php
+#srv/web/owncloud/lib/private/files/storage/dav.php
 #srv/web/owncloud/lib/private/files/storage/home.php
 #srv/web/owncloud/lib/private/files/storage/loader.php
 #srv/web/owncloud/lib/private/files/storage/local.php
@@ -9619,6 +12004,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/files/utils
 #srv/web/owncloud/lib/private/files/utils/scanner.php
 #srv/web/owncloud/lib/private/files/view.php
+#srv/web/owncloud/lib/private/forbiddenexception.php
 #srv/web/owncloud/lib/private/geo.php
 #srv/web/owncloud/lib/private/group
 #srv/web/owncloud/lib/private/group.php
@@ -9629,6 +12015,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/group/group.php
 #srv/web/owncloud/lib/private/group/interface.php
 #srv/web/owncloud/lib/private/group/manager.php
+#srv/web/owncloud/lib/private/group/metadata.php
 #srv/web/owncloud/lib/private/helper.php
 #srv/web/owncloud/lib/private/hintexception.php
 #srv/web/owncloud/lib/private/hook.php
@@ -9645,15 +12032,18 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/l10n.php
 #srv/web/owncloud/lib/private/l10n/factory.php
 #srv/web/owncloud/lib/private/l10n/string.php
+#srv/web/owncloud/lib/private/largefilehelper.php
 #srv/web/owncloud/lib/private/legacy
-#srv/web/owncloud/lib/private/legacy/cache
-#srv/web/owncloud/lib/private/legacy/cache.php
-#srv/web/owncloud/lib/private/legacy/cache/fileglobalgc.php
+#srv/web/owncloud/lib/private/legacy/appconfig.php
 #srv/web/owncloud/lib/private/legacy/config.php
-#srv/web/owncloud/lib/private/legacy/filesystem.php
-#srv/web/owncloud/lib/private/legacy/filesystemview.php
 #srv/web/owncloud/lib/private/legacy/log.php
 #srv/web/owncloud/lib/private/legacy/preferences.php
+#srv/web/owncloud/lib/private/legacy/search
+#srv/web/owncloud/lib/private/legacy/search.php
+#srv/web/owncloud/lib/private/legacy/search/provider
+#srv/web/owncloud/lib/private/legacy/search/provider.php
+#srv/web/owncloud/lib/private/legacy/search/provider/file.php
+#srv/web/owncloud/lib/private/legacy/search/result.php
 #srv/web/owncloud/lib/private/legacy/updater.php
 #srv/web/owncloud/lib/private/log
 #srv/web/owncloud/lib/private/log.php
@@ -9674,10 +12064,6 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/migration/content.php
 #srv/web/owncloud/lib/private/migration/provider.php
 #srv/web/owncloud/lib/private/mimetypes.list.php
-#srv/web/owncloud/lib/private/minimizer
-#srv/web/owncloud/lib/private/minimizer.php
-#srv/web/owncloud/lib/private/minimizer/css.php
-#srv/web/owncloud/lib/private/minimizer/js.php
 #srv/web/owncloud/lib/private/navigationmanager.php
 #srv/web/owncloud/lib/private/notsquareexception.php
 #srv/web/owncloud/lib/private/ocs
@@ -9703,16 +12089,22 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/preview/unknown.php
 #srv/web/owncloud/lib/private/previewmanager.php
 #srv/web/owncloud/lib/private/repair.php
+#srv/web/owncloud/lib/private/repairstep.php
 #srv/web/owncloud/lib/private/request.php
 #srv/web/owncloud/lib/private/response.php
-#srv/web/owncloud/lib/private/route.php
-#srv/web/owncloud/lib/private/router.php
+#srv/web/owncloud/lib/private/route
+#srv/web/owncloud/lib/private/route/cachingrouter.php
+#srv/web/owncloud/lib/private/route/route.php
+#srv/web/owncloud/lib/private/route/router.php
 #srv/web/owncloud/lib/private/search
 #srv/web/owncloud/lib/private/search.php
 #srv/web/owncloud/lib/private/search/provider
-#srv/web/owncloud/lib/private/search/provider.php
 #srv/web/owncloud/lib/private/search/provider/file.php
-#srv/web/owncloud/lib/private/search/result.php
+#srv/web/owncloud/lib/private/search/result
+#srv/web/owncloud/lib/private/search/result/audio.php
+#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/server.php
 #srv/web/owncloud/lib/private/session
 #srv/web/owncloud/lib/private/session/internal.php
@@ -9727,7 +12119,12 @@ srv/web/owncloud
 #srv/web/owncloud/lib/private/setup/postgresql.php
 #srv/web/owncloud/lib/private/setup/sqlite.php
 #srv/web/owncloud/lib/private/share
+#srv/web/owncloud/lib/private/share/constants.php
+#srv/web/owncloud/lib/private/share/helper.php
+#srv/web/owncloud/lib/private/share/hooks.php
+#srv/web/owncloud/lib/private/share/mailnotifications.php
 #srv/web/owncloud/lib/private/share/searchresultsorter.php
+#srv/web/owncloud/lib/private/share/share.php
 #srv/web/owncloud/lib/private/subadmin.php
 #srv/web/owncloud/lib/private/tagmanager.php
 #srv/web/owncloud/lib/private/tags.php
@@ -9761,15 +12158,24 @@ srv/web/owncloud
 #srv/web/owncloud/lib/public
 #srv/web/owncloud/lib/public/activity
 #srv/web/owncloud/lib/public/activity/iconsumer.php
+#srv/web/owncloud/lib/public/activity/iextension.php
 #srv/web/owncloud/lib/public/activity/imanager.php
 #srv/web/owncloud/lib/public/api.php
 #srv/web/owncloud/lib/public/app.php
 #srv/web/owncloud/lib/public/appframework
+#srv/web/owncloud/lib/public/appframework/apicontroller.php
 #srv/web/owncloud/lib/public/appframework/app.php
 #srv/web/owncloud/lib/public/appframework/controller.php
+#srv/web/owncloud/lib/public/appframework/db
+#srv/web/owncloud/lib/public/appframework/db/doesnotexistexception.php
+#srv/web/owncloud/lib/public/appframework/db/entity.php
+#srv/web/owncloud/lib/public/appframework/db/mapper.php
+#srv/web/owncloud/lib/public/appframework/db/multipleobjectsreturnedexception.php
 #srv/web/owncloud/lib/public/appframework/http
 #srv/web/owncloud/lib/public/appframework/http.php
+#srv/web/owncloud/lib/public/appframework/http/downloadresponse.php
 #srv/web/owncloud/lib/public/appframework/http/jsonresponse.php
+#srv/web/owncloud/lib/public/appframework/http/redirectresponse.php
 #srv/web/owncloud/lib/public/appframework/http/response.php
 #srv/web/owncloud/lib/public/appframework/http/templateresponse.php
 #srv/web/owncloud/lib/public/appframework/iapi.php
@@ -9777,7 +12183,10 @@ srv/web/owncloud
 #srv/web/owncloud/lib/public/appframework/middleware.php
 #srv/web/owncloud/lib/public/authentication
 #srv/web/owncloud/lib/public/authentication/iapachebackend.php
+#srv/web/owncloud/lib/public/backgroundjob
 #srv/web/owncloud/lib/public/backgroundjob.php
+#srv/web/owncloud/lib/public/backgroundjob/ijob.php
+#srv/web/owncloud/lib/public/backgroundjob/ijoblist.php
 #srv/web/owncloud/lib/public/config.php
 #srv/web/owncloud/lib/public/constants.php
 #srv/web/owncloud/lib/public/contacts
@@ -9790,6 +12199,7 @@ srv/web/owncloud
 #srv/web/owncloud/lib/public/files/alreadyexistsexception.php
 #srv/web/owncloud/lib/public/files/entitytoolargeexception.php
 #srv/web/owncloud/lib/public/files/file.php
+#srv/web/owncloud/lib/public/files/fileinfo.php
 #srv/web/owncloud/lib/public/files/folder.php
 #srv/web/owncloud/lib/public/files/invalidcontentexception.php
 #srv/web/owncloud/lib/public/files/invalidpathexception.php
@@ -9798,34 +12208,55 @@ srv/web/owncloud
 #srv/web/owncloud/lib/public/files/notenoughspaceexception.php
 #srv/web/owncloud/lib/public/files/notfoundexception.php
 #srv/web/owncloud/lib/public/files/notpermittedexception.php
+#srv/web/owncloud/lib/public/files/objectstore
+#srv/web/owncloud/lib/public/files/objectstore/iobjectstore.php
 #srv/web/owncloud/lib/public/files/storage.php
+#srv/web/owncloud/lib/public/files/storageinvalidexception.php
+#srv/web/owncloud/lib/public/files/storagenotavailableexception.php
 #srv/web/owncloud/lib/public/groupinterface.php
 #srv/web/owncloud/lib/public/iaddressbook.php
+#srv/web/owncloud/lib/public/iappconfig.php
 #srv/web/owncloud/lib/public/iavatar.php
 #srv/web/owncloud/lib/public/iavatarmanager.php
 #srv/web/owncloud/lib/public/icache.php
+#srv/web/owncloud/lib/public/icachefactory.php
 #srv/web/owncloud/lib/public/iconfig.php
 #srv/web/owncloud/lib/public/icontainer.php
+#srv/web/owncloud/lib/public/idb.php
 #srv/web/owncloud/lib/public/idbconnection.php
 #srv/web/owncloud/lib/public/ihelper.php
 #srv/web/owncloud/lib/public/il10n.php
+#srv/web/owncloud/lib/public/ilogger.php
 #srv/web/owncloud/lib/public/image.php
 #srv/web/owncloud/lib/public/inavigationmanager.php
 #srv/web/owncloud/lib/public/ipreview.php
 #srv/web/owncloud/lib/public/irequest.php
+#srv/web/owncloud/lib/public/isearch.php
 #srv/web/owncloud/lib/public/iservercontainer.php
 #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/iurlgenerator.php
+#srv/web/owncloud/lib/public/iuser.php
+#srv/web/owncloud/lib/public/iusermanager.php
 #srv/web/owncloud/lib/public/iusersession.php
 #srv/web/owncloud/lib/public/json.php
 #srv/web/owncloud/lib/public/response.php
+#srv/web/owncloud/lib/public/route
+#srv/web/owncloud/lib/public/route/iroute.php
+#srv/web/owncloud/lib/public/route/irouter.php
+#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/share.php
 #srv/web/owncloud/lib/public/template.php
 #srv/web/owncloud/lib/public/user.php
 #srv/web/owncloud/lib/public/userinterface.php
 #srv/web/owncloud/lib/public/util.php
+#srv/web/owncloud/lib/repair
+#srv/web/owncloud/lib/repair/collation.php
+#srv/web/owncloud/lib/repair/innodb.php
+#srv/web/owncloud/lib/repair/repairmimetypes.php
 #srv/web/owncloud/occ
 #srv/web/owncloud/ocs
 #srv/web/owncloud/ocs/providers.php
@@ -9844,7 +12275,9 @@ srv/web/owncloud
 #srv/web/owncloud/search/templates
 #srv/web/owncloud/search/templates/part.results.php
 #srv/web/owncloud/settings
+#srv/web/owncloud/settings/admin
 #srv/web/owncloud/settings/admin.php
+#srv/web/owncloud/settings/admin/controller.php
 #srv/web/owncloud/settings/ajax
 #srv/web/owncloud/settings/ajax/apps
 #srv/web/owncloud/settings/ajax/apps/ocs.php
@@ -9852,26 +12285,31 @@ srv/web/owncloud
 #srv/web/owncloud/settings/ajax/creategroup.php
 #srv/web/owncloud/settings/ajax/createuser.php
 #srv/web/owncloud/settings/ajax/decryptall.php
+#srv/web/owncloud/settings/ajax/deletekeys.php
 #srv/web/owncloud/settings/ajax/disableapp.php
 #srv/web/owncloud/settings/ajax/enableapp.php
+#srv/web/owncloud/settings/ajax/excludegroups.php
 #srv/web/owncloud/settings/ajax/getlog.php
+#srv/web/owncloud/settings/ajax/grouplist.php
+#srv/web/owncloud/settings/ajax/installapp.php
 #srv/web/owncloud/settings/ajax/lostpassword.php
 #srv/web/owncloud/settings/ajax/navigationdetect.php
 #srv/web/owncloud/settings/ajax/removegroup.php
 #srv/web/owncloud/settings/ajax/removeuser.php
+#srv/web/owncloud/settings/ajax/restorekeys.php
 #srv/web/owncloud/settings/ajax/setlanguage.php
 #srv/web/owncloud/settings/ajax/setloglevel.php
 #srv/web/owncloud/settings/ajax/setquota.php
 #srv/web/owncloud/settings/ajax/setsecurity.php
 #srv/web/owncloud/settings/ajax/togglegroups.php
 #srv/web/owncloud/settings/ajax/togglesubadmins.php
+#srv/web/owncloud/settings/ajax/uninstallapp.php
 #srv/web/owncloud/settings/ajax/updateapp.php
 #srv/web/owncloud/settings/ajax/userlist.php
 #srv/web/owncloud/settings/apps.php
 #srv/web/owncloud/settings/changepassword
 #srv/web/owncloud/settings/changepassword/controller.php
 #srv/web/owncloud/settings/css
-#srv/web/owncloud/settings/css/oauth.css
 #srv/web/owncloud/settings/css/settings.css
 #srv/web/owncloud/settings/help.php
 #srv/web/owncloud/settings/img
@@ -9881,9 +12319,6 @@ srv/web/owncloud
 #srv/web/owncloud/settings/img/apps.svg
 #srv/web/owncloud/settings/img/help.png
 #srv/web/owncloud/settings/img/help.svg
-#srv/web/owncloud/settings/img/log.png
-#srv/web/owncloud/settings/img/log.svg
-#srv/web/owncloud/settings/img/log_Icon_License
 #srv/web/owncloud/settings/img/personal.png
 #srv/web/owncloud/settings/img/personal.svg
 #srv/web/owncloud/settings/img/trans.png
@@ -9893,13 +12328,18 @@ srv/web/owncloud
 #srv/web/owncloud/settings/js/admin.js
 #srv/web/owncloud/settings/js/apps-custom.php
 #srv/web/owncloud/settings/js/apps.js
-#srv/web/owncloud/settings/js/isadmin.php
 #srv/web/owncloud/settings/js/log.js
 #srv/web/owncloud/settings/js/personal.js
-#srv/web/owncloud/settings/js/users.js
+#srv/web/owncloud/settings/js/users
+#srv/web/owncloud/settings/js/users/deleteHandler.js
+#srv/web/owncloud/settings/js/users/filter.js
+#srv/web/owncloud/settings/js/users/groups.js
+#srv/web/owncloud/settings/js/users/users.js
 #srv/web/owncloud/settings/l10n
 #srv/web/owncloud/settings/l10n/af_ZA.php
 #srv/web/owncloud/settings/l10n/ar.php
+#srv/web/owncloud/settings/l10n/ast.php
+#srv/web/owncloud/settings/l10n/be.php
 #srv/web/owncloud/settings/l10n/bg_BG.php
 #srv/web/owncloud/settings/l10n/bn_BD.php
 #srv/web/owncloud/settings/l10n/bs.php
@@ -9917,8 +12357,11 @@ srv/web/owncloud
 #srv/web/owncloud/settings/l10n/eo.php
 #srv/web/owncloud/settings/l10n/es.php
 #srv/web/owncloud/settings/l10n/es_AR.php
+#srv/web/owncloud/settings/l10n/es_CL.php
+#srv/web/owncloud/settings/l10n/es_MX.php
 #srv/web/owncloud/settings/l10n/et_EE.php
 #srv/web/owncloud/settings/l10n/eu.php
+#srv/web/owncloud/settings/l10n/eu_ES.php
 #srv/web/owncloud/settings/l10n/fa.php
 #srv/web/owncloud/settings/l10n/fi_FI.php
 #srv/web/owncloud/settings/l10n/fr.php
@@ -9932,7 +12375,9 @@ srv/web/owncloud
 #srv/web/owncloud/settings/l10n/id.php
 #srv/web/owncloud/settings/l10n/is.php
 #srv/web/owncloud/settings/l10n/it.php
+#srv/web/owncloud/settings/l10n/ja.php
 #srv/web/owncloud/settings/l10n/ja_JP.php
+#srv/web/owncloud/settings/l10n/jv.php
 #srv/web/owncloud/settings/l10n/ka.php
 #srv/web/owncloud/settings/l10n/ka_GE.php
 #srv/web/owncloud/settings/l10n/km.php
@@ -9955,6 +12400,7 @@ srv/web/owncloud
 #srv/web/owncloud/settings/l10n/ro.php
 #srv/web/owncloud/settings/l10n/ru.php
 #srv/web/owncloud/settings/l10n/si_LK.php
+#srv/web/owncloud/settings/l10n/sk.php
 #srv/web/owncloud/settings/l10n/sk_SK.php
 #srv/web/owncloud/settings/l10n/sl.php
 #srv/web/owncloud/settings/l10n/sq.php
@@ -9980,10 +12426,14 @@ srv/web/owncloud
 #srv/web/owncloud/settings/templates/admin.php
 #srv/web/owncloud/settings/templates/apps.php
 #srv/web/owncloud/settings/templates/help.php
-#srv/web/owncloud/settings/templates/oauth-required-apps.php
 #srv/web/owncloud/settings/templates/personal.php
 #srv/web/owncloud/settings/templates/settings.php
-#srv/web/owncloud/settings/templates/users.php
+#srv/web/owncloud/settings/templates/users
+#srv/web/owncloud/settings/templates/users/main.php
+#srv/web/owncloud/settings/templates/users/part.createuser.php
+#srv/web/owncloud/settings/templates/users/part.grouplist.php
+#srv/web/owncloud/settings/templates/users/part.setquota.php
+#srv/web/owncloud/settings/templates/users/part.userlist.php
 #srv/web/owncloud/settings/users.php
 #srv/web/owncloud/status.php
 #srv/web/owncloud/themes
index 74164e0b7785f689f71824b23f041135379b86f3..223a580cb0831809e47444627bc6a48c14d68c53 100644 (file)
 #usr/include/parted/parted.h
 #usr/include/parted/timer.h
 #usr/include/parted/unit.h
+#usr/lib/libparted-fs-resize.a
+#usr/lib/libparted-fs-resize.la
+#usr/lib/libparted-fs-resize.so
+usr/lib/libparted-fs-resize.so.0
+usr/lib/libparted-fs-resize.so.0.0.0
 #usr/lib/libparted.a
 #usr/lib/libparted.la
 #usr/lib/libparted.so
-usr/lib/libparted.so.0
-usr/lib/libparted.so.0.0.1
+usr/lib/libparted.so.2
+usr/lib/libparted.so.2.0.0
 #usr/lib/pkgconfig/libparted.pc
 usr/sbin/parted
 usr/sbin/partprobe
@@ -38,6 +43,8 @@ usr/sbin/partprobe
 #usr/share/locale/ru/LC_MESSAGES/parted.mo
 #usr/share/locale/rw/LC_MESSAGES/parted.mo
 #usr/share/locale/sk/LC_MESSAGES/parted.mo
+#usr/share/locale/sl/LC_MESSAGES/parted.mo
+#usr/share/locale/sr/LC_MESSAGES/parted.mo
 #usr/share/locale/sv/LC_MESSAGES/parted.mo
 #usr/share/locale/tr/LC_MESSAGES/parted.mo
 #usr/share/locale/uk/LC_MESSAGES/parted.mo
diff --git a/config/rootfiles/packages/perl-PDF-API2 b/config/rootfiles/packages/perl-PDF-API2
new file mode 100644 (file)
index 0000000..642579a
--- /dev/null
@@ -0,0 +1,176 @@
+usr/lib/perl5/site_perl/5.12.3/PDF
+usr/lib/perl5/site_perl/5.12.3/PDF/API2
+usr/lib/perl5/site_perl/5.12.3/PDF/API2.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Annotation.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Array.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Bool.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Dict.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/File.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Filter
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Filter.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Filter/ASCII85Decode.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Filter/ASCIIHexDecode.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Filter/FlateDecode.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Filter/LZWDecode.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Filter/RunLengthDecode.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Literal.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Name.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Null.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Number.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Objind.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Page.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Pages.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/String.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Basic/PDF/Utils.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Content
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Content.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Content/Text.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Lite.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Matrix.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/NamedDestination.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Outline.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Outlines.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Page.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/BaseFont.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CJKFont
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CJKFont.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CJKFont/adobemingstdlightacro.data
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CJKFont/adobemyungjostdmediumacro.data
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CJKFont/adobesongstdlightacro.data
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CJKFont/kozgopromediumacro.data
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CJKFont/kozminproregularacro.data
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CMap
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CMap/japanese.cmap
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CMap/korean.cmap
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CMap/simplified.cmap
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/CMap/traditional.cmap
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/TrueType
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/TrueType.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/CIDFont/TrueType/FontFile.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace/DeviceN.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace/Indexed
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace/Indexed.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace/Indexed/ACTFile.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace/Indexed/Hue.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace/Indexed/WebColor.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ColorSpace/Separation.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Colors.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/ExtGState.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/BdFont.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/bankgothic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/courier.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/courierbold.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/courierboldoblique.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/courieroblique.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/georgia.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/georgiabold.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/georgiabolditalic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/georgiaitalic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/helvetica.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/helveticabold.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/helveticaboldoblique.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/helveticaoblique.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/symbol.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/timesbold.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/timesbolditalic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/timesitalic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/timesroman.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/trebuchet.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/trebuchetbold.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/trebuchetbolditalic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/trebuchetitalic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/verdana.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/verdanabold.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/verdanabolditalic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/verdanaitalic.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/webdings.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/wingdings.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/CoreFont/zapfdingbats.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/Postscript.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Font/SynFont.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Glyphs.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/PaperSizes.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Pattern.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/Shading.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/UniFont.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form/BarCode
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form/BarCode.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form/BarCode/codabar.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form/BarCode/code128.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form/BarCode/code3of9.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form/BarCode/ean13.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form/BarCode/int2of5.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Form/Hybrid.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/GD.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/GIF.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/JPEG.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/PNG.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/PNM.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/XObject/Image/TIFF.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Resource/uniglyph.txt
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/UniWrap.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Util.pm
+usr/lib/perl5/site_perl/5.12.3/PDF/API2/Win32.pm
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/PDF
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/PDF/API2
+#usr/lib/perl5/site_perl/5.12.3/MACHINE-linux-thread-multi/auto/PDF/API2/.packlist
+#usr/share/man/man3/PDF::API2.3
+#usr/share/man/man3/PDF::API2::Annotation.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Array.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Bool.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Dict.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::File.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Filter.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Filter::RunLengthDecode.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Name.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Null.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Number.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Objind.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Page.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Pages.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::String.3
+#usr/share/man/man3/PDF::API2::Basic::PDF::Utils.3
+#usr/share/man/man3/PDF::API2::Content.3
+#usr/share/man/man3/PDF::API2::Lite.3
+#usr/share/man/man3/PDF::API2::NamedDestination.3
+#usr/share/man/man3/PDF::API2::Outline.3
+#usr/share/man/man3/PDF::API2::Page.3
+#usr/share/man/man3/PDF::API2::Resource.3
+#usr/share/man/man3/PDF::API2::Resource::BaseFont.3
+#usr/share/man/man3/PDF::API2::Resource::CIDFont.3
+#usr/share/man/man3/PDF::API2::Resource::CIDFont::CJKFont.3
+#usr/share/man/man3/PDF::API2::Resource::CIDFont::TrueType.3
+#usr/share/man/man3/PDF::API2::Resource::ColorSpace.3
+#usr/share/man/man3/PDF::API2::Resource::ColorSpace::Indexed::ACTFile.3
+#usr/share/man/man3/PDF::API2::Resource::ColorSpace::Separation.3
+#usr/share/man/man3/PDF::API2::Resource::ExtGState.3
+#usr/share/man/man3/PDF::API2::Resource::Font.3
+#usr/share/man/man3/PDF::API2::Resource::Font::BdFont.3
+#usr/share/man/man3/PDF::API2::Resource::Font::CoreFont.3
+#usr/share/man/man3/PDF::API2::Resource::Font::SynFont.3
+#usr/share/man/man3/PDF::API2::Resource::UniFont.3
+#usr/share/man/man3/PDF::API2::Resource::XObject.3
+#usr/share/man/man3/PDF::API2::Resource::XObject::Form.3
+#usr/share/man/man3/PDF::API2::Resource::XObject::Form::BarCode.3
+#usr/share/man/man3/PDF::API2::Resource::XObject::Form::BarCode::code128.3
+#usr/share/man/man3/PDF::API2::Resource::XObject::Image.3
+#usr/share/man/man3/PDF::API2::Resource::XObject::Image::TIFF.3
+#usr/share/man/man3/PDF::API2::Util.3
index 9882067685a73ca56a5f97e291aab755aa7965ef..aafa112acea222141a115edc3e9136b8dba595a5 100644 (file)
@@ -219,10 +219,10 @@ var/ipfire/samba/shares
 var/ipfire/samba/smb.conf
 var/ipfire/samba/smb.conf.default
 var/lib/samba
+var/lib/samba/winbindd_privileged
 var/log/samba
 var/nmbd
 etc/rc.d/init.d/samba
-etc/rc.d/init.d/winbind
 srv/web/ipfire/cgi-bin/samba.cgi
 srv/web/ipfire/cgi-bin/sambahlp.cgi
 var/ipfire/menu.d/EX-samba.menu
diff --git a/config/rootfiles/packages/squid-accounting b/config/rootfiles/packages/squid-accounting
new file mode 100644 (file)
index 0000000..29d09a1
--- /dev/null
@@ -0,0 +1,14 @@
+etc/fcron.hourly/squid-accounting
+srv/web/ipfire/cgi-bin/accounting.cgi
+#srv/web/ipfire/html/accounting
+srv/web/ipfire/html/accounting/logo
+usr/local/bin/acct.pl
+var/ipfire/accounting
+var/ipfire/accounting/acct-lib.pl
+var/ipfire/accounting/bill
+var/ipfire/accounting/dbinstall.pl
+var/ipfire/addon-lang/acct.de.pl
+var/ipfire/addon-lang/acct.en.pl
+var/ipfire/backup/addons/includes/squid-accounting
+var/ipfire/menu.d/EX-squid-accounting.menu
+var/log/accounting.log
index 574812166f72a9a01654d5b066891e5a99a2bbcf..5318673117e43f46bca63dd1d78ee9db7ec4e6fd 100644 (file)
@@ -19,6 +19,7 @@ other usefull commands from the Dom0:
 - reset the fire: "xm destroy ipfire-xen"
 - look what is going on: "xm top" or "xm list"
 
-This script can also build a Citrix XenCenter xva image.
+This script can also build a Citrix XenCenter xva image. (Need xz-aware
+xen version. Tested with Citrix Xen Server 6.2.5 beta)
 - run "XEN_IMG_TYPE=xva sh xen-image-maker.sh" to build an xva image.
 - import the vm with "xe vm-import file=ipfire.xfa"
index 8565439556f6b13756d197ec4aa1ad84117cda8c..34afa732b188ef863c3cb73d119fcf9fb969aef3 100644 (file)
@@ -21,6 +21,7 @@ WARNING: translation string unused: add-route
 WARNING: translation string unused: addon
 WARNING: translation string unused: admin user password has been changed
 WARNING: translation string unused: administrator user password
+WARNING: translation string unused: adsl settings
 WARNING: translation string unused: advproxy LDAP auth
 WARNING: translation string unused: advproxy NTLM auth
 WARNING: translation string unused: advproxy advanced proxy
@@ -42,7 +43,6 @@ WARNING: translation string unused: advproxy no cre groups
 WARNING: translation string unused: advproxy ssadvanced proxy
 WARNING: translation string unused: advproxy update notification
 WARNING: translation string unused: again
-WARNING: translation string unused: age second
 WARNING: translation string unused: age seconds
 WARNING: translation string unused: age shour
 WARNING: translation string unused: age sminute
@@ -237,7 +237,6 @@ WARNING: translation string unused: fwhost Custom Host
 WARNING: translation string unused: fwhost Custom Network
 WARNING: translation string unused: fwhost IpSec Host
 WARNING: translation string unused: fwhost IpSec Network
-WARNING: translation string unused: fwhost OpenVPN N-2-N
 WARNING: translation string unused: fwhost OpenVPN static host
 WARNING: translation string unused: fwhost OpenVPN static network
 WARNING: translation string unused: fwhost Standard Network
@@ -247,6 +246,7 @@ WARNING: translation string unused: fwhost changeremark
 WARNING: translation string unused: fwhost err addrgrp
 WARNING: translation string unused: fwhost err hostorip
 WARNING: translation string unused: fwhost err mac
+WARNING: translation string unused: fwhost err partofnet
 WARNING: translation string unused: fwhost green
 WARNING: translation string unused: fwhost hosts
 WARNING: translation string unused: fwhost ipadr
index aa957aa3f6907a0e46dc788fa27e1c4eb3c4a110..f50f01d47da6a91af0605b288c0037a4cc23565c 100644 (file)
@@ -20,6 +20,7 @@ WARNING: translation string unused: add xtaccess
 WARNING: translation string unused: add-route
 WARNING: translation string unused: admin user password has been changed
 WARNING: translation string unused: administrator user password
+WARNING: translation string unused: adsl settings
 WARNING: translation string unused: advproxy LDAP auth
 WARNING: translation string unused: advproxy NTLM auth
 WARNING: translation string unused: advproxy advanced proxy
@@ -42,7 +43,6 @@ WARNING: translation string unused: advproxy ssadvanced proxy
 WARNING: translation string unused: advproxy update information
 WARNING: translation string unused: advproxy update notification
 WARNING: translation string unused: again
-WARNING: translation string unused: age second
 WARNING: translation string unused: age seconds
 WARNING: translation string unused: age shour
 WARNING: translation string unused: age sminute
@@ -260,7 +260,6 @@ WARNING: translation string unused: fwhost Custom Host
 WARNING: translation string unused: fwhost Custom Network
 WARNING: translation string unused: fwhost IpSec Host
 WARNING: translation string unused: fwhost IpSec Network
-WARNING: translation string unused: fwhost OpenVPN N-2-N
 WARNING: translation string unused: fwhost OpenVPN static host
 WARNING: translation string unused: fwhost OpenVPN static network
 WARNING: translation string unused: fwhost Standard Network
@@ -270,6 +269,7 @@ WARNING: translation string unused: fwhost changeremark
 WARNING: translation string unused: fwhost err addrgrp
 WARNING: translation string unused: fwhost err hostorip
 WARNING: translation string unused: fwhost err mac
+WARNING: translation string unused: fwhost err partofnet
 WARNING: translation string unused: fwhost green
 WARNING: translation string unused: fwhost hosts
 WARNING: translation string unused: fwhost ipadr
index 11768836294b2167012d2adf4eb55b7d20eaebee..4842ee22b70f55e9843fd2a07d395b7314ab267c 100644 (file)
@@ -594,11 +594,19 @@ WARNING: untranslated string: Number of Countries for the pie chart
 WARNING: untranslated string: Scan for Songs
 WARNING: untranslated string: Set time on boot
 WARNING: untranslated string: addons
+WARNING: untranslated string: administrator password
+WARNING: untranslated string: administrator username
+WARNING: untranslated string: advproxy AUTH method ntlm
+WARNING: untranslated string: advproxy AUTH method ntlm auth
+WARNING: untranslated string: advproxy basic authentication
 WARNING: untranslated string: advproxy cache-digest
 WARNING: untranslated string: advproxy errmsg cache
 WARNING: untranslated string: advproxy errmsg invalid upstream proxy
 WARNING: untranslated string: advproxy errmsg proxy ports equal
+WARNING: untranslated string: advproxy group access control
+WARNING: untranslated string: advproxy group required
 WARNING: untranslated string: advproxy proxy port transparent
+WARNING: untranslated string: age second
 WARNING: untranslated string: atm device
 WARNING: untranslated string: attention
 WARNING: untranslated string: bit
@@ -723,9 +731,11 @@ WARNING: untranslated string: fwdfw dnat nochoice
 WARNING: untranslated string: fwdfw dnat porterr
 WARNING: untranslated string: fwdfw dnat porterr2
 WARNING: untranslated string: fwdfw edit
+WARNING: untranslated string: fwdfw err concon
 WARNING: untranslated string: fwdfw err nosrc
 WARNING: untranslated string: fwdfw err notgt
 WARNING: untranslated string: fwdfw err prot_port
+WARNING: untranslated string: fwdfw err ratecon
 WARNING: untranslated string: fwdfw err remark
 WARNING: untranslated string: fwdfw err ruleexists
 WARNING: untranslated string: fwdfw err same
@@ -741,12 +751,15 @@ WARNING: untranslated string: fwdfw hint ip1
 WARNING: untranslated string: fwdfw hint ip2
 WARNING: untranslated string: fwdfw hint mac
 WARNING: untranslated string: fwdfw iface
+WARNING: untranslated string: fwdfw limitconcon
 WARNING: untranslated string: fwdfw log
 WARNING: untranslated string: fwdfw log rule
 WARNING: untranslated string: fwdfw many
+WARNING: untranslated string: fwdfw maxconcon
 WARNING: untranslated string: fwdfw movedown
 WARNING: untranslated string: fwdfw moveup
 WARNING: untranslated string: fwdfw newrule
+WARNING: untranslated string: fwdfw numcon
 WARNING: untranslated string: fwdfw pol allow
 WARNING: untranslated string: fwdfw pol block
 WARNING: untranslated string: fwdfw pol text
@@ -754,6 +767,7 @@ WARNING: untranslated string: fwdfw pol text1
 WARNING: untranslated string: fwdfw pol title
 WARNING: untranslated string: fwdfw prot41
 WARNING: untranslated string: fwdfw prot41 short
+WARNING: untranslated string: fwdfw ratelimit
 WARNING: untranslated string: fwdfw red
 WARNING: untranslated string: fwdfw reread
 WARNING: untranslated string: fwdfw rule activate
@@ -778,6 +792,7 @@ WARNING: untranslated string: fwdfw wd_sun
 WARNING: untranslated string: fwdfw wd_thu
 WARNING: untranslated string: fwdfw wd_tue
 WARNING: untranslated string: fwdfw wd_wed
+WARNING: untranslated string: fwhost OpenVPN N-2-N
 WARNING: untranslated string: fwhost addgrp
 WARNING: untranslated string: fwhost addgrpname
 WARNING: untranslated string: fwhost addhost
@@ -818,7 +833,6 @@ WARNING: untranslated string: fwhost err name
 WARNING: untranslated string: fwhost err name1
 WARNING: untranslated string: fwhost err net
 WARNING: untranslated string: fwhost err netexist
-WARNING: untranslated string: fwhost err partofnet
 WARNING: untranslated string: fwhost err port
 WARNING: untranslated string: fwhost err remark
 WARNING: untranslated string: fwhost err srv exists
@@ -860,7 +874,14 @@ WARNING: untranslated string: last
 WARNING: untranslated string: least preferred
 WARNING: untranslated string: lifetime
 WARNING: untranslated string: mac filter
+WARNING: untranslated string: masquerade blue
+WARNING: untranslated string: masquerade green
+WARNING: untranslated string: masquerade orange
+WARNING: untranslated string: masquerading
+WARNING: untranslated string: masquerading disabled
+WARNING: untranslated string: masquerading enabled
 WARNING: untranslated string: maximum
+WARNING: untranslated string: messages
 WARNING: untranslated string: minimum
 WARNING: untranslated string: minute
 WARNING: untranslated string: model
@@ -932,6 +953,8 @@ 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: server restart
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
index beca0080bf8b804dd5cfc62e9ed4898752c7af70..a411de4fe85a2e75f1ee2cff367900330d22c6f0 100644 (file)
@@ -604,11 +604,19 @@ WARNING: untranslated string: MTU settings
 WARNING: untranslated string: Number of Countries for the pie chart
 WARNING: untranslated string: Scan for Songs
 WARNING: untranslated string: addons
+WARNING: untranslated string: administrator password
+WARNING: untranslated string: administrator username
+WARNING: untranslated string: advproxy AUTH method ntlm
+WARNING: untranslated string: advproxy AUTH method ntlm auth
+WARNING: untranslated string: advproxy basic authentication
 WARNING: untranslated string: advproxy cache-digest
 WARNING: untranslated string: advproxy errmsg cache
 WARNING: untranslated string: advproxy errmsg invalid upstream proxy
 WARNING: untranslated string: advproxy errmsg proxy ports equal
+WARNING: untranslated string: advproxy group access control
+WARNING: untranslated string: advproxy group required
 WARNING: untranslated string: advproxy proxy port transparent
+WARNING: untranslated string: age second
 WARNING: untranslated string: atm device
 WARNING: untranslated string: attention
 WARNING: untranslated string: bit
@@ -734,9 +742,11 @@ WARNING: untranslated string: fwdfw dnat nochoice
 WARNING: untranslated string: fwdfw dnat porterr
 WARNING: untranslated string: fwdfw dnat porterr2
 WARNING: untranslated string: fwdfw edit
+WARNING: untranslated string: fwdfw err concon
 WARNING: untranslated string: fwdfw err nosrc
 WARNING: untranslated string: fwdfw err notgt
 WARNING: untranslated string: fwdfw err prot_port
+WARNING: untranslated string: fwdfw err ratecon
 WARNING: untranslated string: fwdfw err remark
 WARNING: untranslated string: fwdfw err ruleexists
 WARNING: untranslated string: fwdfw err same
@@ -752,12 +762,15 @@ WARNING: untranslated string: fwdfw hint ip1
 WARNING: untranslated string: fwdfw hint ip2
 WARNING: untranslated string: fwdfw hint mac
 WARNING: untranslated string: fwdfw iface
+WARNING: untranslated string: fwdfw limitconcon
 WARNING: untranslated string: fwdfw log
 WARNING: untranslated string: fwdfw log rule
 WARNING: untranslated string: fwdfw many
+WARNING: untranslated string: fwdfw maxconcon
 WARNING: untranslated string: fwdfw movedown
 WARNING: untranslated string: fwdfw moveup
 WARNING: untranslated string: fwdfw newrule
+WARNING: untranslated string: fwdfw numcon
 WARNING: untranslated string: fwdfw pol allow
 WARNING: untranslated string: fwdfw pol block
 WARNING: untranslated string: fwdfw pol text
@@ -765,6 +778,7 @@ WARNING: untranslated string: fwdfw pol text1
 WARNING: untranslated string: fwdfw pol title
 WARNING: untranslated string: fwdfw prot41
 WARNING: untranslated string: fwdfw prot41 short
+WARNING: untranslated string: fwdfw ratelimit
 WARNING: untranslated string: fwdfw red
 WARNING: untranslated string: fwdfw reread
 WARNING: untranslated string: fwdfw rule activate
@@ -789,6 +803,7 @@ WARNING: untranslated string: fwdfw wd_sun
 WARNING: untranslated string: fwdfw wd_thu
 WARNING: untranslated string: fwdfw wd_tue
 WARNING: untranslated string: fwdfw wd_wed
+WARNING: untranslated string: fwhost OpenVPN N-2-N
 WARNING: untranslated string: fwhost addgrp
 WARNING: untranslated string: fwhost addgrpname
 WARNING: untranslated string: fwhost addhost
@@ -829,7 +844,6 @@ WARNING: untranslated string: fwhost err name
 WARNING: untranslated string: fwhost err name1
 WARNING: untranslated string: fwhost err net
 WARNING: untranslated string: fwhost err netexist
-WARNING: untranslated string: fwhost err partofnet
 WARNING: untranslated string: fwhost err port
 WARNING: untranslated string: fwhost err remark
 WARNING: untranslated string: fwhost err srv exists
@@ -871,7 +885,14 @@ WARNING: untranslated string: last
 WARNING: untranslated string: least preferred
 WARNING: untranslated string: lifetime
 WARNING: untranslated string: mac filter
+WARNING: untranslated string: masquerade blue
+WARNING: untranslated string: masquerade green
+WARNING: untranslated string: masquerade orange
+WARNING: untranslated string: masquerading
+WARNING: untranslated string: masquerading disabled
+WARNING: untranslated string: masquerading enabled
 WARNING: untranslated string: maximum
+WARNING: untranslated string: messages
 WARNING: untranslated string: minimum
 WARNING: untranslated string: minute
 WARNING: untranslated string: model
@@ -939,6 +960,8 @@ 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: server restart
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
index 6162636f61cbb207b1a255e817d2bd48a35ba70f..bb17cc7070e91f7d17999d18703e799035b724f2 100644 (file)
@@ -43,7 +43,6 @@ WARNING: translation string unused: advproxy ssadvanced proxy
 WARNING: translation string unused: advproxy update information
 WARNING: translation string unused: advproxy update notification
 WARNING: translation string unused: again
-WARNING: translation string unused: age second
 WARNING: translation string unused: age seconds
 WARNING: translation string unused: age shour
 WARNING: translation string unused: age sminute
@@ -260,7 +259,6 @@ WARNING: translation string unused: fwhost Custom Host
 WARNING: translation string unused: fwhost Custom Network
 WARNING: translation string unused: fwhost IpSec Host
 WARNING: translation string unused: fwhost IpSec Network
-WARNING: translation string unused: fwhost OpenVPN N-2-N
 WARNING: translation string unused: fwhost OpenVPN static host
 WARNING: translation string unused: fwhost OpenVPN static network
 WARNING: translation string unused: fwhost Standard Network
@@ -270,6 +268,7 @@ WARNING: translation string unused: fwhost changeremark
 WARNING: translation string unused: fwhost err addrgrp
 WARNING: translation string unused: fwhost err hostorip
 WARNING: translation string unused: fwhost err mac
+WARNING: translation string unused: fwhost err partofnet
 WARNING: translation string unused: fwhost green
 WARNING: translation string unused: fwhost hosts
 WARNING: translation string unused: fwhost ipadr
@@ -661,6 +660,13 @@ WARNING: translation string unused: yearly firewallhits
 WARNING: untranslated string: MTU settings
 WARNING: untranslated string: Number of Countries for the pie chart
 WARNING: untranslated string: Scan for Songs
+WARNING: untranslated string: administrator password
+WARNING: untranslated string: administrator username
+WARNING: untranslated string: advproxy AUTH method ntlm
+WARNING: untranslated string: advproxy AUTH method ntlm auth
+WARNING: untranslated string: advproxy basic authentication
+WARNING: untranslated string: advproxy group access control
+WARNING: untranslated string: advproxy group required
 WARNING: untranslated string: atm device
 WARNING: untranslated string: bytes
 WARNING: untranslated string: capabilities
@@ -678,11 +684,24 @@ WARNING: untranslated string: dnssec validating
 WARNING: untranslated string: download tls-auth key
 WARNING: untranslated string: drop outgoing
 WARNING: untranslated string: firewall logs country
+WARNING: untranslated string: fwdfw err concon
+WARNING: untranslated string: fwdfw err ratecon
+WARNING: untranslated string: fwdfw limitconcon
+WARNING: untranslated string: fwdfw maxconcon
+WARNING: untranslated string: fwdfw numcon
+WARNING: untranslated string: fwdfw ratelimit
 WARNING: untranslated string: fwhost err hostip
 WARNING: untranslated string: gen dh
 WARNING: untranslated string: generate dh key
 WARNING: untranslated string: imei
 WARNING: untranslated string: imsi
+WARNING: untranslated string: masquerade blue
+WARNING: untranslated string: masquerade green
+WARNING: untranslated string: masquerade orange
+WARNING: untranslated string: masquerading
+WARNING: untranslated string: masquerading disabled
+WARNING: untranslated string: masquerading enabled
+WARNING: untranslated string: messages
 WARNING: untranslated string: model
 WARNING: untranslated string: modem hardware details
 WARNING: untranslated string: modem information
@@ -712,6 +731,8 @@ 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: show dh
 WARNING: untranslated string: show tls-auth key
 WARNING: untranslated string: software version
index 11768836294b2167012d2adf4eb55b7d20eaebee..4842ee22b70f55e9843fd2a07d395b7314ab267c 100644 (file)
@@ -594,11 +594,19 @@ WARNING: untranslated string: Number of Countries for the pie chart
 WARNING: untranslated string: Scan for Songs
 WARNING: untranslated string: Set time on boot
 WARNING: untranslated string: addons
+WARNING: untranslated string: administrator password
+WARNING: untranslated string: administrator username
+WARNING: untranslated string: advproxy AUTH method ntlm
+WARNING: untranslated string: advproxy AUTH method ntlm auth
+WARNING: untranslated string: advproxy basic authentication
 WARNING: untranslated string: advproxy cache-digest
 WARNING: untranslated string: advproxy errmsg cache
 WARNING: untranslated string: advproxy errmsg invalid upstream proxy
 WARNING: untranslated string: advproxy errmsg proxy ports equal
+WARNING: untranslated string: advproxy group access control
+WARNING: untranslated string: advproxy group required
 WARNING: untranslated string: advproxy proxy port transparent
+WARNING: untranslated string: age second
 WARNING: untranslated string: atm device
 WARNING: untranslated string: attention
 WARNING: untranslated string: bit
@@ -723,9 +731,11 @@ WARNING: untranslated string: fwdfw dnat nochoice
 WARNING: untranslated string: fwdfw dnat porterr
 WARNING: untranslated string: fwdfw dnat porterr2
 WARNING: untranslated string: fwdfw edit
+WARNING: untranslated string: fwdfw err concon
 WARNING: untranslated string: fwdfw err nosrc
 WARNING: untranslated string: fwdfw err notgt
 WARNING: untranslated string: fwdfw err prot_port
+WARNING: untranslated string: fwdfw err ratecon
 WARNING: untranslated string: fwdfw err remark
 WARNING: untranslated string: fwdfw err ruleexists
 WARNING: untranslated string: fwdfw err same
@@ -741,12 +751,15 @@ WARNING: untranslated string: fwdfw hint ip1
 WARNING: untranslated string: fwdfw hint ip2
 WARNING: untranslated string: fwdfw hint mac
 WARNING: untranslated string: fwdfw iface
+WARNING: untranslated string: fwdfw limitconcon
 WARNING: untranslated string: fwdfw log
 WARNING: untranslated string: fwdfw log rule
 WARNING: untranslated string: fwdfw many
+WARNING: untranslated string: fwdfw maxconcon
 WARNING: untranslated string: fwdfw movedown
 WARNING: untranslated string: fwdfw moveup
 WARNING: untranslated string: fwdfw newrule
+WARNING: untranslated string: fwdfw numcon
 WARNING: untranslated string: fwdfw pol allow
 WARNING: untranslated string: fwdfw pol block
 WARNING: untranslated string: fwdfw pol text
@@ -754,6 +767,7 @@ WARNING: untranslated string: fwdfw pol text1
 WARNING: untranslated string: fwdfw pol title
 WARNING: untranslated string: fwdfw prot41
 WARNING: untranslated string: fwdfw prot41 short
+WARNING: untranslated string: fwdfw ratelimit
 WARNING: untranslated string: fwdfw red
 WARNING: untranslated string: fwdfw reread
 WARNING: untranslated string: fwdfw rule activate
@@ -778,6 +792,7 @@ WARNING: untranslated string: fwdfw wd_sun
 WARNING: untranslated string: fwdfw wd_thu
 WARNING: untranslated string: fwdfw wd_tue
 WARNING: untranslated string: fwdfw wd_wed
+WARNING: untranslated string: fwhost OpenVPN N-2-N
 WARNING: untranslated string: fwhost addgrp
 WARNING: untranslated string: fwhost addgrpname
 WARNING: untranslated string: fwhost addhost
@@ -818,7 +833,6 @@ WARNING: untranslated string: fwhost err name
 WARNING: untranslated string: fwhost err name1
 WARNING: untranslated string: fwhost err net
 WARNING: untranslated string: fwhost err netexist
-WARNING: untranslated string: fwhost err partofnet
 WARNING: untranslated string: fwhost err port
 WARNING: untranslated string: fwhost err remark
 WARNING: untranslated string: fwhost err srv exists
@@ -860,7 +874,14 @@ WARNING: untranslated string: last
 WARNING: untranslated string: least preferred
 WARNING: untranslated string: lifetime
 WARNING: untranslated string: mac filter
+WARNING: untranslated string: masquerade blue
+WARNING: untranslated string: masquerade green
+WARNING: untranslated string: masquerade orange
+WARNING: untranslated string: masquerading
+WARNING: untranslated string: masquerading disabled
+WARNING: untranslated string: masquerading enabled
 WARNING: untranslated string: maximum
+WARNING: untranslated string: messages
 WARNING: untranslated string: minimum
 WARNING: untranslated string: minute
 WARNING: untranslated string: model
@@ -932,6 +953,8 @@ 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: server restart
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
index 547e1d4062a7ab7e0c3f4ba2ecc362d5cb6f94b3..c471de96fa6cdcbe1f01213d7af729f506926f53 100644 (file)
@@ -597,11 +597,19 @@ WARNING: untranslated string: MTU settings
 WARNING: untranslated string: Number of Countries for the pie chart
 WARNING: untranslated string: Scan for Songs
 WARNING: untranslated string: addons
+WARNING: untranslated string: administrator password
+WARNING: untranslated string: administrator username
+WARNING: untranslated string: advproxy AUTH method ntlm
+WARNING: untranslated string: advproxy AUTH method ntlm auth
+WARNING: untranslated string: advproxy basic authentication
 WARNING: untranslated string: advproxy cache-digest
 WARNING: untranslated string: advproxy errmsg cache
 WARNING: untranslated string: advproxy errmsg invalid upstream proxy
 WARNING: untranslated string: advproxy errmsg proxy ports equal
+WARNING: untranslated string: advproxy group access control
+WARNING: untranslated string: advproxy group required
 WARNING: untranslated string: advproxy proxy port transparent
+WARNING: untranslated string: age second
 WARNING: untranslated string: atm device
 WARNING: untranslated string: attention
 WARNING: untranslated string: bit
@@ -718,9 +726,11 @@ WARNING: untranslated string: fwdfw dnat nochoice
 WARNING: untranslated string: fwdfw dnat porterr
 WARNING: untranslated string: fwdfw dnat porterr2
 WARNING: untranslated string: fwdfw edit
+WARNING: untranslated string: fwdfw err concon
 WARNING: untranslated string: fwdfw err nosrc
 WARNING: untranslated string: fwdfw err notgt
 WARNING: untranslated string: fwdfw err prot_port
+WARNING: untranslated string: fwdfw err ratecon
 WARNING: untranslated string: fwdfw err remark
 WARNING: untranslated string: fwdfw err ruleexists
 WARNING: untranslated string: fwdfw err same
@@ -736,12 +746,15 @@ WARNING: untranslated string: fwdfw hint ip1
 WARNING: untranslated string: fwdfw hint ip2
 WARNING: untranslated string: fwdfw hint mac
 WARNING: untranslated string: fwdfw iface
+WARNING: untranslated string: fwdfw limitconcon
 WARNING: untranslated string: fwdfw log
 WARNING: untranslated string: fwdfw log rule
 WARNING: untranslated string: fwdfw many
+WARNING: untranslated string: fwdfw maxconcon
 WARNING: untranslated string: fwdfw movedown
 WARNING: untranslated string: fwdfw moveup
 WARNING: untranslated string: fwdfw newrule
+WARNING: untranslated string: fwdfw numcon
 WARNING: untranslated string: fwdfw pol allow
 WARNING: untranslated string: fwdfw pol block
 WARNING: untranslated string: fwdfw pol text
@@ -749,6 +762,7 @@ WARNING: untranslated string: fwdfw pol text1
 WARNING: untranslated string: fwdfw pol title
 WARNING: untranslated string: fwdfw prot41
 WARNING: untranslated string: fwdfw prot41 short
+WARNING: untranslated string: fwdfw ratelimit
 WARNING: untranslated string: fwdfw red
 WARNING: untranslated string: fwdfw reread
 WARNING: untranslated string: fwdfw rule activate
@@ -773,6 +787,7 @@ WARNING: untranslated string: fwdfw wd_sun
 WARNING: untranslated string: fwdfw wd_thu
 WARNING: untranslated string: fwdfw wd_tue
 WARNING: untranslated string: fwdfw wd_wed
+WARNING: untranslated string: fwhost OpenVPN N-2-N
 WARNING: untranslated string: fwhost addgrp
 WARNING: untranslated string: fwhost addgrpname
 WARNING: untranslated string: fwhost addhost
@@ -813,7 +828,6 @@ WARNING: untranslated string: fwhost err name
 WARNING: untranslated string: fwhost err name1
 WARNING: untranslated string: fwhost err net
 WARNING: untranslated string: fwhost err netexist
-WARNING: untranslated string: fwhost err partofnet
 WARNING: untranslated string: fwhost err port
 WARNING: untranslated string: fwhost err remark
 WARNING: untranslated string: fwhost err srv exists
@@ -856,7 +870,14 @@ WARNING: untranslated string: last
 WARNING: untranslated string: least preferred
 WARNING: untranslated string: lifetime
 WARNING: untranslated string: mac filter
+WARNING: untranslated string: masquerade blue
+WARNING: untranslated string: masquerade green
+WARNING: untranslated string: masquerade orange
+WARNING: untranslated string: masquerading
+WARNING: untranslated string: masquerading disabled
+WARNING: untranslated string: masquerading enabled
 WARNING: untranslated string: maximum
+WARNING: untranslated string: messages
 WARNING: untranslated string: minimum
 WARNING: untranslated string: minute
 WARNING: untranslated string: model
@@ -922,6 +943,8 @@ 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: server restart
 WARNING: untranslated string: show dh
 WARNING: untranslated string: show tls-auth key
index cc40178b83556187a219796829e6051c9ea8a858..cb16a44805c336756c8e17259ef0801433c82b38 100644 (file)
@@ -1,4 +1,3 @@
-WARNING: translation string unused: Client status and controlc
 WARNING: translation string unused: ConnSched scheduler
 WARNING: translation string unused: ConnSched select profile
 WARNING: translation string unused: HDD temperature
@@ -21,6 +20,7 @@ WARNING: translation string unused: add xtaccess
 WARNING: translation string unused: add-route
 WARNING: translation string unused: admin user password has been changed
 WARNING: translation string unused: administrator user password
+WARNING: translation string unused: adsl settings
 WARNING: translation string unused: advproxy LDAP auth
 WARNING: translation string unused: advproxy NTLM auth
 WARNING: translation string unused: advproxy advanced proxy
@@ -43,7 +43,6 @@ WARNING: translation string unused: advproxy ssadvanced proxy
 WARNING: translation string unused: advproxy update information
 WARNING: translation string unused: advproxy update notification
 WARNING: translation string unused: again
-WARNING: translation string unused: age second
 WARNING: translation string unused: age seconds
 WARNING: translation string unused: age shour
 WARNING: translation string unused: age sminute
@@ -151,6 +150,7 @@ WARNING: translation string unused: destination ip bad
 WARNING: translation string unused: destination ip or net
 WARNING: translation string unused: destination net
 WARNING: translation string unused: destination port overlaps
+WARNING: translation string unused: dh name is invalid
 WARNING: translation string unused: dhcp base ip fixed lease
 WARNING: translation string unused: dhcp create fixed leases
 WARNING: translation string unused: dhcp fixed lease err1
@@ -174,6 +174,7 @@ WARNING: translation string unused: do not log this port list
 WARNING: translation string unused: domain not set
 WARNING: translation string unused: donation-link
 WARNING: translation string unused: done
+WARNING: translation string unused: download dh parameter
 WARNING: translation string unused: driver
 WARNING: translation string unused: dstprt range overlaps
 WARNING: translation string unused: dstprt within existing
@@ -259,7 +260,6 @@ WARNING: translation string unused: fwhost Custom Host
 WARNING: translation string unused: fwhost Custom Network
 WARNING: translation string unused: fwhost IpSec Host
 WARNING: translation string unused: fwhost IpSec Network
-WARNING: translation string unused: fwhost OpenVPN N-2-N
 WARNING: translation string unused: fwhost OpenVPN static host
 WARNING: translation string unused: fwhost OpenVPN static network
 WARNING: translation string unused: fwhost Standard Network
@@ -269,6 +269,7 @@ WARNING: translation string unused: fwhost changeremark
 WARNING: translation string unused: fwhost err addrgrp
 WARNING: translation string unused: fwhost err hostorip
 WARNING: translation string unused: fwhost err mac
+WARNING: translation string unused: fwhost err partofnet
 WARNING: translation string unused: fwhost green
 WARNING: translation string unused: fwhost hosts
 WARNING: translation string unused: fwhost ipadr
@@ -396,6 +397,7 @@ WARNING: translation string unused: network time
 WARNING: translation string unused: network traffic graphs
 WARNING: translation string unused: network updated
 WARNING: translation string unused: networks settings
+WARNING: translation string unused: never
 WARNING: translation string unused: new optionsfw must boot
 WARNING: translation string unused: no alcatelusb firmware
 WARNING: translation string unused: no cfg upload
@@ -443,9 +445,10 @@ WARNING: translation string unused: outgoing firewall warning
 WARNING: translation string unused: override mtu
 WARNING: translation string unused: ovpn config
 WARNING: translation string unused: ovpn dl
+WARNING: translation string unused: ovpn engines
 WARNING: translation string unused: ovpn log
+WARNING: translation string unused: ovpn reneg sec
 WARNING: translation string unused: ovpn_fastio
-WARNING: translation string unused: ovpn_fragment
 WARNING: translation string unused: ovpn_mssfix
 WARNING: translation string unused: ovpn_mtudisc
 WARNING: translation string unused: ovpn_processprio
@@ -557,6 +560,7 @@ WARNING: translation string unused: successfully refreshed updates list
 WARNING: translation string unused: system graphs
 WARNING: translation string unused: system log viewer
 WARNING: translation string unused: system status information
+WARNING: translation string unused: teovpn_fragment
 WARNING: translation string unused: test
 WARNING: translation string unused: test email could not be sent
 WARNING: translation string unused: test email was sent
@@ -635,10 +639,6 @@ WARNING: translation string unused: urlfilter update information
 WARNING: translation string unused: urlfilter update notification
 WARNING: translation string unused: urlfilter update results
 WARNING: translation string unused: urlfilter upload background
-WARNING: translation string unused: usb modem on acm0
-WARNING: translation string unused: usb modem on acm1
-WARNING: translation string unused: usb modem on acm2
-WARNING: translation string unused: usb modem on acm3
 WARNING: translation string unused: use
 WARNING: translation string unused: use dov
 WARNING: translation string unused: use ibod
@@ -661,60 +661,16 @@ WARNING: translation string unused: xtaccess all error
 WARNING: translation string unused: xtaccess bad transfert
 WARNING: translation string unused: year-graph
 WARNING: translation string unused: yearly firewallhits
-WARNING: untranslated string: MTU settings
-WARNING: untranslated string: Number of Countries for the pie chart
 WARNING: untranslated string: Scan for Songs
 WARNING: untranslated string: bytes
-WARNING: untranslated string: capabilities
-WARNING: untranslated string: default
-WARNING: untranslated string: dh
-WARNING: untranslated string: dh key move failed
-WARNING: untranslated string: dh key warn
-WARNING: untranslated string: dh key warn1
-WARNING: untranslated string: dh parameter
-WARNING: untranslated string: dnssec aware
-WARNING: untranslated string: dnssec information
-WARNING: untranslated string: dnssec not supported
-WARNING: untranslated string: dnssec validating
-WARNING: untranslated string: download tls-auth key
-WARNING: untranslated string: firewall logs country
+WARNING: untranslated string: fwdfw err concon
+WARNING: untranslated string: fwdfw err ratecon
+WARNING: untranslated string: fwdfw limitconcon
+WARNING: untranslated string: fwdfw maxconcon
+WARNING: untranslated string: fwdfw numcon
+WARNING: untranslated string: fwdfw ratelimit
 WARNING: untranslated string: fwhost err hostip
-WARNING: untranslated string: gen dh
-WARNING: untranslated string: generate dh key
-WARNING: untranslated string: imei
-WARNING: untranslated string: imsi
-WARNING: untranslated string: model
-WARNING: untranslated string: modem hardware details
-WARNING: untranslated string: modem information
-WARNING: untranslated string: modem network bit error rate
-WARNING: untranslated string: modem network information
-WARNING: untranslated string: modem network mode
-WARNING: untranslated string: modem network operator
-WARNING: untranslated string: modem network registration
-WARNING: untranslated string: modem network signal quality
-WARNING: untranslated string: modem no connection
-WARNING: untranslated string: modem no connection message
-WARNING: untranslated string: modem sim information
-WARNING: untranslated string: modem status
-WARNING: untranslated string: monitor interface
-WARNING: untranslated string: nameserver
-WARNING: untranslated string: not a valid dh key
-WARNING: untranslated string: ovpn crypt options
-WARNING: untranslated string: ovpn dh
-WARNING: untranslated string: ovpn dh new key
-WARNING: untranslated string: ovpn dh parameters
-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: route config changed
 WARNING: untranslated string: routing config added
 WARNING: untranslated string: routing config changed
 WARNING: untranslated string: routing table
-WARNING: untranslated string: show dh
-WARNING: untranslated string: show tls-auth key
-WARNING: untranslated string: software version
-WARNING: untranslated string: source ip country
-WARNING: untranslated string: ta key
-WARNING: untranslated string: upload dh key
-WARNING: untranslated string: vendor
index 4699f1276d5814939a253766a643a8104158e689..83c242fc3322422af57a2430a4345bbd34c89e40 100644 (file)
 # Checking cgi-bin translations for language: fr                           #
 ############################################################################
 < addon
+< administrator password
+< administrator username
+< adsl settings
+< advproxy AUTH method ntlm
+< advproxy AUTH method ntlm auth
+< advproxy basic authentication
 < advproxy cache-digest
 < advproxy errmsg cache
 < advproxy errmsg invalid upstream proxy
 < advproxy errmsg proxy ports equal
+< advproxy group access control
+< advproxy group required
 < advproxy proxy port transparent
 < age second
 < age seconds
 < fwdfw dnat porterr2
 < fwdfw DROP
 < fwdfw edit
+< fwdfw err concon
 < fwdfw err nosrc
 < fwdfw err nosrcip
 < fwdfw err notgt
 < fwdfw err notgtip
 < fwdfw err prot_port
 < fwdfw err prot_port1
+< fwdfw err ratecon
 < fwdfw err remark
 < fwdfw err ruleexists
 < fwdfw err same
 < fwdfw hint mac
 < fwdfw iface
 < fwdfw ipsec network
+< fwdfw limitconcon
 < fwdfw log
 < fwdfw log rule
 < fwdfw man port
 < fwdfw many
+< fwdfw maxconcon
 < fwdfw menu
 < fwdfw MODE1
 < fwdfw MODE2
 < fwdfw moveup
 < fwdfw natport used
 < fwdfw newrule
+< fwdfw numcon
 < fwdfw p2p txt
 < fwdfw pol allow
 < fwdfw pol block
 < fwdfw pol title
 < fwdfw prot41
 < fwdfw prot41 short
+< fwdfw ratelimit
 < fwdfw red
 < fwdfw REJECT
 < fwdfw reread
 < least preferred
 < lifetime
 < mac filter
+< masquerade blue
+< masquerade green
+< masquerade orange
+< masquerading
+< masquerading disabled
+< masquerading enabled
 < maximum
 < MB read
 < MB written
+< messages
 < minimum
 < minute
 < model
 < qos enter bandwidths
 < random number generator daemon
 < red1
+< samba join a domain
+< samba join domain
 < server restart
 < show dh
 < snat new source ip address
 # Checking cgi-bin translations for language: es                           #
 ############################################################################
 < addon
+< administrator password
+< administrator username
+< adsl settings
+< advproxy AUTH method ntlm
+< advproxy AUTH method ntlm auth
+< advproxy basic authentication
 < advproxy cache-digest
 < advproxy errmsg cache
 < advproxy errmsg invalid upstream proxy
 < advproxy errmsg proxy ports equal
+< advproxy group access control
+< advproxy group required
 < advproxy proxy port transparent
 < age second
 < age seconds
 < fwdfw dnat porterr2
 < fwdfw DROP
 < fwdfw edit
+< fwdfw err concon
 < fwdfw err nosrc
 < fwdfw err nosrcip
 < fwdfw err notgt
 < fwdfw err notgtip
 < fwdfw err prot_port
 < fwdfw err prot_port1
+< fwdfw err ratecon
 < fwdfw err remark
 < fwdfw err ruleexists
 < fwdfw err same
 < fwdfw hint mac
 < fwdfw iface
 < fwdfw ipsec network
+< fwdfw limitconcon
 < fwdfw log
 < fwdfw log rule
 < fwdfw man port
 < fwdfw many
+< fwdfw maxconcon
 < fwdfw menu
 < fwdfw MODE1
 < fwdfw MODE2
 < fwdfw moveup
 < fwdfw natport used
 < fwdfw newrule
+< fwdfw numcon
 < fwdfw p2p txt
 < fwdfw pol allow
 < fwdfw pol block
 < fwdfw pol title
 < fwdfw prot41
 < fwdfw prot41 short
+< fwdfw ratelimit
 < fwdfw red
 < fwdfw REJECT
 < fwdfw reread
 < least preferred
 < lifetime
 < mac filter
+< masquerade blue
+< masquerade green
+< masquerade orange
+< masquerading
+< masquerading disabled
+< masquerading enabled
 < maximum
 < MB read
 < MB written
+< messages
 < minimum
 < minute
 < model
 < qos enter bandwidths
 < random number generator daemon
 < red1
+< samba join a domain
+< samba join domain
 < server restart
 < Set time on boot
 < show dh
 # Checking cgi-bin translations for language: pl                           #
 ############################################################################
 < addon
+< administrator password
+< administrator username
+< adsl settings
+< advproxy AUTH method ntlm
+< advproxy AUTH method ntlm auth
+< advproxy basic authentication
 < advproxy cache-digest
 < advproxy errmsg cache
 < advproxy errmsg invalid upstream proxy
 < advproxy errmsg proxy ports equal
+< advproxy group access control
+< advproxy group required
 < advproxy proxy port transparent
 < age second
 < age seconds
 < fwdfw dnat porterr2
 < fwdfw DROP
 < fwdfw edit
+< fwdfw err concon
 < fwdfw err nosrc
 < fwdfw err nosrcip
 < fwdfw err notgt
 < fwdfw err notgtip
 < fwdfw err prot_port
 < fwdfw err prot_port1
+< fwdfw err ratecon
 < fwdfw err remark
 < fwdfw err ruleexists
 < fwdfw err same
 < fwdfw hint mac
 < fwdfw iface
 < fwdfw ipsec network
+< fwdfw limitconcon
 < fwdfw log
 < fwdfw log rule
 < fwdfw man port
 < fwdfw many
+< fwdfw maxconcon
 < fwdfw menu
 < fwdfw MODE1
 < fwdfw MODE2
 < fwdfw moveup
 < fwdfw natport used
 < fwdfw newrule
+< fwdfw numcon
 < fwdfw p2p txt
 < fwdfw pol allow
 < fwdfw pol block
 < fwdfw pol title
 < fwdfw prot41
 < fwdfw prot41 short
+< fwdfw ratelimit
 < fwdfw red
 < fwdfw REJECT
 < fwdfw reread
 < least preferred
 < lifetime
 < mac filter
+< masquerade blue
+< masquerade green
+< masquerade orange
+< masquerading
+< masquerading disabled
+< masquerading enabled
 < maximum
 < MB read
 < MB written
+< messages
 < minimum
 < minute
 < model
 < qos enter bandwidths
 < random number generator daemon
 < red1
+< samba join a domain
+< samba join domain
 < server restart
 < show dh
 < snat new source ip address
 ############################################################################
 < Add a route
 < addon
+< administrator password
+< administrator username
+< adsl settings
+< advproxy AUTH method ntlm
+< advproxy AUTH method ntlm auth
+< advproxy basic authentication
 < advproxy cache-digest
 < advproxy errmsg cache
 < advproxy errmsg invalid upstream proxy
 < advproxy errmsg proxy ports equal
+< advproxy group access control
+< advproxy group required
 < advproxy proxy port transparent
 < age second
 < age seconds
 < fwdfw dnat porterr2
 < fwdfw DROP
 < fwdfw edit
+< fwdfw err concon
 < fwdfw err nosrc
 < fwdfw err nosrcip
 < fwdfw err notgt
 < fwdfw err notgtip
 < fwdfw err prot_port
 < fwdfw err prot_port1
+< fwdfw err ratecon
 < fwdfw err remark
 < fwdfw err ruleexists
 < fwdfw err same
 < fwdfw hint mac
 < fwdfw iface
 < fwdfw ipsec network
+< fwdfw limitconcon
 < fwdfw log
 < fwdfw log rule
 < fwdfw man port
 < fwdfw many
+< fwdfw maxconcon
 < fwdfw menu
 < fwdfw MODE1
 < fwdfw MODE2
 < fwdfw moveup
 < fwdfw natport used
 < fwdfw newrule
+< fwdfw numcon
 < fwdfw p2p txt
 < fwdfw pol allow
 < fwdfw pol block
 < fwdfw pol title
 < fwdfw prot41
 < fwdfw prot41 short
+< fwdfw ratelimit
 < fwdfw red
 < fwdfw REJECT
 < fwdfw reread
 < least preferred
 < lifetime
 < mac filter
+< masquerade blue
+< masquerade green
+< masquerade orange
+< masquerading
+< masquerading disabled
+< masquerading enabled
 < maximum
 < MB read
 < MB written
+< messages
 < minimum
 < minute
 < model
 < qos enter bandwidths
 < random number generator daemon
 < red1
+< samba join a domain
+< samba join domain
 < server restart
 < show dh
 < snat new source ip address
index 7be9a50f073bd64560560204efb749014ef386fb..55841b2b99290ceb2562107f2229768dc8a90691 100644 (file)
@@ -89,7 +89,6 @@ close (FILE);
 # Save General Settings.
 #
 if ($settings{'ACTION'} eq $Lang::tr{'save'}) {
-
        # Open /var/ipfire/ddns/settings for writing.
        open(FILE, ">$settingsfile") or die "Unable to open $settingsfile.";
 
@@ -104,9 +103,6 @@ if ($settings{'ACTION'} eq $Lang::tr{'save'}) {
        # Close file after writing.
        close(FILE);
 
-       # Unset given CGI parmas.
-       undef %settings;
-
        # Update ddns config file.
        &GenerateDDNSConfigFile();
 }
@@ -115,7 +111,6 @@ if ($settings{'ACTION'} eq $Lang::tr{'save'}) {
 # Toggle enable/disable field.  Field is in second position
 #
 if ($settings{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
-
        # Open /var/ipfire/ddns/config for writing.
        open(FILE, ">$datafile") or die "Unable to open $datafile.";
 
@@ -127,23 +122,19 @@ if ($settings{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
 
        # Read file line by line.
        foreach my $line (@current) {
-
                # Remove newlines.
                chomp($line);
 
                if ($settings{'ID'} eq $id) {
-
                        # Splitt lines (splitting element is a single ",") and save values into temp array.
                        @temp = split(/\,/,$line);
 
                        # Check if we want to toggle ENABLED or WILDCARDS.
                        if ($settings{'ENABLED'} ne '') {
-
                                # Update ENABLED.
                                print FILE "$temp[0],$temp[1],$temp[2],$temp[3],$temp[4],$temp[5],$temp[6],$settings{'ENABLED'}\n";
                        }
                } else {
-
                        # Print unmodified line.
                        print FILE "$line\n";
                }
@@ -151,13 +142,11 @@ if ($settings{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
                # Increase $id.
                $id++;
        }
+       undef $settings{'ID'};
 
        # Close file after writing.
        close(FILE);
 
-       # Unset given CGI params.
-       undef %settings;
-
        # Write out logging notice.
        &General::log($Lang::tr{'ddns hostname modified'});
 
@@ -169,7 +158,6 @@ if ($settings{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
 # Add new accounts, or edit existing ones.
 #
 if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::tr{'update'})) {
-
        # Check if a hostname has been given.
        if ($settings{'HOSTNAME'} eq '') {
                $errormessage = $Lang::tr{'hostname not set'};
@@ -187,19 +175,23 @@ if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::
 
        # Check if a password has been typed in.
        # freedns.afraid.org does not require this field.
-       if (($settings{'PASSWORD'} eq '') && ($settings{'SERVICE'} ne 'freedns.afraid.org')) {
+       if (($settings{'PASSWORD'} eq '') && ($settings{'SERVICE'} ne 'freedns.afraid.org') && ($settings{'SERVICE'} ne 'regfish.com')) {
                $errormessage = $Lang::tr{'password not set'};
        }
 
        # Go furter if there was no error.
-       if ( ! $errormessage) {
-
+       if (!$errormessage) {
                # Splitt hostname field into 2 parts for storrage.
                my($hostname, $domain) = split(/\./, $settings{'HOSTNAME'}, 2);
 
+               # Handle enabled checkbox. When the checkbox is selected a "on" will be returned,
+               # if the checkbox is not checked nothing is returned in this case we set the value to "off".
+               if ($settings{'ENABLED'} ne 'on') {
+                       $settings{'ENABLED'} = 'off';
+               }
+
                # Handle adding new accounts.
                if ($settings{'ACTION'} eq $Lang::tr{'add'}) {
-
                        # Open /var/ipfire/ddns/config for writing.
                        open(FILE, ">>$datafile") or die "Unable to open $datafile.";
 
@@ -215,11 +207,8 @@ if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::
                        # Write out notice to logfile.
                        &General::log($Lang::tr{'ddns hostname added'});
 
-                       # Update ddns config file.
-
                # Handle account edditing.
                } elsif ($settings{'ACTION'} eq $Lang::tr{'update'}) {
-
                        # Open /var/ipfire/ddns/config for writing.
                        open(FILE, ">$datafile") or die "Unable to open $datafile.";
 
@@ -230,7 +219,6 @@ if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::
 
                        # Read file line by line.
                        foreach my $line (@current) {
-
                                if ($settings{'ID'} eq $id) {
                                        print FILE "$settings{'SERVICE'},$hostname,$domain,$settings{'PROXY'},$settings{'WILDCARDS'},$settings{'LOGIN'},$settings{'PASSWORD'},$settings{'ENABLED'}\n";
                                } else {
@@ -247,9 +235,7 @@ if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::
                        # Write out notice to logfile.
                        &General::log($Lang::tr{'ddns hostname modified'});
                }
-
-               # Unset given CGI params.
-               undef %settings;
+               undef $settings{'ID'};
 
                # Update ddns config file.
                &GenerateDDNSConfigFile();
@@ -260,7 +246,6 @@ if (($settings{'ACTION'} eq $Lang::tr{'add'}) || ($settings{'ACTION'} eq $Lang::
 # Remove existing accounts.
 #
 if ($settings{'ACTION'} eq $Lang::tr{'remove'}) {
-
        # Open /var/ipfire/ddns/config for writing.
        open(FILE, ">$datafile") or die "Unable to open $datafile.";
 
@@ -271,7 +256,6 @@ if ($settings{'ACTION'} eq $Lang::tr{'remove'}) {
 
        # Read file line by line.
        foreach my $line (@current) {
-
                # Write back every line, except the one we want to drop
                # (identified by the ID)
                unless ($settings{'ID'} eq $id) {
@@ -281,13 +265,11 @@ if ($settings{'ACTION'} eq $Lang::tr{'remove'}) {
                # Increase id.
                $id++;
        }
+       undef $settings{'ID'};
 
        # Close file after writing.
        close(FILE);
 
-       # Unset given CGI params.
-       undef %settings;
-
        # Write out notice to logfile.
        &General::log($Lang::tr{'ddns hostname removed'});
 
@@ -299,33 +281,41 @@ if ($settings{'ACTION'} eq $Lang::tr{'remove'}) {
 # Read items for editing.
 #
 if ($settings{'ACTION'} eq $Lang::tr{'edit'}) {
-
        my $id = 0;
        my @temp;
 
        # Read file line by line.
        foreach my $line (@current) {
-
                if ($settings{'ID'} eq $id) {
-
                        # Remove newlines.
                        chomp($line);
 
                        # Splitt lines (splitting element is a single ",") and save values into temp array.
                        @temp = split(/\,/,$line);
 
+                       # Handle hostname details. Only connect the values with a dott if both are available.
+                       my $hostname;
+
+                       if (($temp[1]) && ($temp[2])) {
+                               $hostname = "$temp[1].$temp[2]";
+                       } else {
+                               $hostname = "$temp[1]";
+                       }
+
                        $settings{'SERVICE'} = $temp[0];
-                       $settings{'HOSTNAME'} = "$temp[1].$temp[2]";
+                       $settings{'HOSTNAME'} = $hostname;
                        $settings{'PROXY'} = $temp[3];
                        $settings{'WILDCARDS'} = $temp[4];
                        $settings{'LOGIN'} = $temp[5];
                        $settings{'PASSWORD'} = $temp[6];
                        $settings{'ENABLED'} = $temp[7];
                }
-       # Increase $id.
-       $id++;
 
+               # Increase $id.
+               $id++;
        }
+
+       &GenerateDDNSConfigFile();
 }
 
 #
@@ -338,9 +328,10 @@ if ($settings{'ACTION'} eq $Lang::tr{'instant update'}) {
 #
 # Set default values.
 #
-if (! $settings{'ACTION'}) {
+if (!$settings{'ACTION'}) {
        $settings{'SERVICE'} = 'dyndns.org';
        $settings{'ENABLED'} = 'on';
+       $settings{'ID'} = '';
 }
 
 &Header::openpage($Lang::tr{'dynamic dns'}, 1, '');
@@ -354,7 +345,9 @@ $checked{'BEHINDROUTER'}{'RED_IP'} = '';
 $checked{'BEHINDROUTER'}{'FETCH_IP'} = '';
 $checked{'BEHINDROUTER'}{$settings{'BEHINDROUTER'}} = "checked='checked'";
 
-$checked{'ENABLED'}{'on'} = ($settings{'ENABLED'} eq '' ) ? '' : "checked='checked'";
+$checked{'ENABLED'}{'on'} = '';
+$checked{'ENABLED'}{'off'} = '';
+$checked{'ENABLED'}{$settings{'ENABLED'}} = "checked='checked'";
 
 # Show box for errormessages..
 if ($errormessage) {
@@ -404,18 +397,15 @@ my $buttontext = $Lang::tr{'add'};
 
 # Change buttontext and headline if we edit an account.
 if ($settings{'ACTION'} eq $Lang::tr{'edit'}) {
-
        # Rename button and print headline for updating.
        $buttontext = $Lang::tr{'update'};
        &Header::openbox('100%', 'left', $Lang::tr{'edit an existing host'});
 } else {
-
        # Otherwise use default button text and show headline for adding a new account.
        &Header::openbox('100%', 'left', $Lang::tr{'add a host'});
 }
 
 print <<END
-
 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
 <input type='hidden' name='ID' value='$settings{'ID'}' />
 <table width='100%'>
@@ -431,7 +421,6 @@ END
 
                # Loop to print the providerlist.
                foreach my $provider (@providers) {
-
                        # Check if the current provider needs to be selected.
                        if ($provider eq $settings{'SERVICE'}) {
                                $selected = 'selected';
@@ -451,7 +440,7 @@ print <<END
 
        <tr>
                <td class='base'>$Lang::tr{'enabled'}</td>
-               <td><input type='checkbox' name='ENABLED' value='on' $checked{'ENABLED'}{'on'} /></td>
+               <td><input type='checkbox' name='ENABLED' $checked{'ENABLED'}{'on'} /></td>
                <td class='base'>$Lang::tr{'username'}</td>
                <td><input type='text' name='LOGIN' value='$settings{'LOGIN'}' /></td>
        </tr>
@@ -507,17 +496,32 @@ END
                chomp(@current);
                my @temp = split(/\,/,$line);
 
+               # Handle hostname details. Only connect the values with a dott if both are available.
+               my $hostname="";
+
+               if (($temp[1]) && ($temp[2])) {
+                       $hostname="$temp[1].$temp[2]";
+               } else {
+                       $hostname="$temp[1]";
+               }
+
                # Generate value for enable/disable checkbox.
-               my $sync = "<font color='blue'>";
+               my $sync = '';
                my $gif = '';
                my $gdesc = '';
 
                if ($temp[7] eq "on") {
                        $gif = 'on.gif';
                        $gdesc = $Lang::tr{'click to disable'};
-                       $sync = (&General::DyndnsServiceSync ($ip,$temp[1], $temp[2]) ? "<font color='green'>": "<font color='red'>") ;
+
+                       # Check if the given hostname is a FQDN before doing a nslookup.
+                       if (&General::validfqdn($hostname)) {
+                               $sync = (&General::DyndnsServiceSync ($ip,$temp[1], $temp[2]) ? "<font color='green'>": "<font color='red'>") ;
+                       }
+
                        $toggle_enabled = 'off';
                } else {
+                       $sync = "<font color='blue'>";
                        $gif = 'off.gif';
                        $gdesc = $Lang::tr{'click to enable'};
                        $toggle_enabled = 'on';
@@ -536,11 +540,20 @@ END
                        $col="bgcolor='$color{'color22'}'";
                }
 
+               # Handle hostname details. Only connect the values with a dott if both are available.
+               my $hostname="";
+
+               if (($temp[1]) && ($temp[2])) {
+                       $hostname="$temp[1].$temp[2]";
+               } else {
+                       $hostname="$temp[1]";
+               }
+
                # The following HTML Code still is part of the loop.
                print <<END;
 <tr>
        <td align='center' $col><a href='http://$temp[0]'>$temp[0]</a></td>
-       <td align='center' $col>$sync$temp[1].$sync$temp[2]</td>
+       <td align='center' $col>$sync$hostname</td>
 
        <td align='center' $col><form method='post' action='$ENV{'SCRIPT_NAME'}'>
                <input type='hidden' name='ID' value='$id'>
@@ -630,6 +643,7 @@ sub GenerateDDNSConfigFile {
 
        while (<SETTINGS>) {
                my $line = $_;
+               chomp($line);
 
                # Generate array based on the line content (seperator is a single or multiple space's)
                my @settings = split(/,/, $line);
@@ -639,9 +653,15 @@ sub GenerateDDNSConfigFile {
                next unless ($provider ~~ @providers);
 
                # Skip disabled entries.
-               next if ($enabled eq "off");
+               next unless ($enabled eq "on");
+
+               # Handle hostname details. Only connect the values with a dott if both are available.
+               if (($hostname) && ($domain)) {
+                       print FILE "[$hostname.$domain]\n";
+               } else {
+                       print FILE "[$hostname]\n";
+               }
 
-               print FILE "[$hostname.$domain]\n";
                print FILE "provider = $provider\n";
 
                my $use_token = 0;
@@ -650,8 +670,8 @@ sub GenerateDDNSConfigFile {
                if ($provider ~~ ["dns.lightningwirelabs.com", "entrydns.net", "regfish.com"] && $username eq "token") {
                        $use_token = 1;
 
-               # Handle token auth for freedns.afraid.org.
-               } elsif ($provider eq "freedns.afraid.org" && $password eq "") {
+               # Handle token auth for freedns.afraid.org and regfish.com.
+               } elsif ($provider ~~ ["freedns.afraid.org", "regfish.com"] && $password eq "") {
                        $use_token = 1;
                        $password = $username;
 
index e6ae5272a2c2f5f7bc382196c3c91bcaf631510e..badee6b3c02ac115f4d9eda0abc02ae928ebd896 100644 (file)
@@ -161,6 +161,22 @@ print<<END;
                        \$("#TIME_CONSTRAINTS").toggle();
                });
 
+               // Limit concurrent connections per ip
+               if(!\$("#USE_LIMIT_CONCURRENT_CONNECTIONS_PER_IP").attr("checked")) {
+                       \$("#LIMIT_CON").hide();
+               }
+               \$("#USE_LIMIT_CONCURRENT_CONNECTIONS_PER_IP").change(function() {
+                       \$("#LIMIT_CON").toggle();
+               });
+
+               // Rate-limit new connections
+               if(!\$("#USE_RATELIMIT").attr("checked")) {
+                       \$("#RATELIMIT").hide();
+               }
+               \$("#USE_RATELIMIT").change(function() {
+                       \$("#RATELIMIT").toggle();
+               });
+
                // Automatically select radio buttons when corresponding
                // dropdown menu changes.
                \$("select").change(function() {
@@ -222,8 +238,8 @@ if ($fwdfwsettings{'ACTION'} eq 'saverule')
                #check if we have an identical rule already
                if($fwdfwsettings{'oldrulenumber'} eq $fwdfwsettings{'rulepos'}){
                        foreach my $key (sort keys %configinputfw){
-                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'LOG'},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'}"
-                                       eq "$configinputfw{$key}[0],$configinputfw{$key}[2],$configinputfw{$key}[3],$configinputfw{$key}[4],$configinputfw{$key}[5],$configinputfw{$key}[6],$configinputfw{$key}[7],$configinputfw{$key}[8],$configinputfw{$key}[9],$configinputfw{$key}[10],$configinputfw{$key}[11],$configinputfw{$key}[12],$configinputfw{$key}[13],$configinputfw{$key}[14],$configinputfw{$key}[15],$configinputfw{$key}[17],$configinputfw{$key}[18],$configinputfw{$key}[19],$configinputfw{$key}[20],$configinputfw{$key}[21],$configinputfw{$key}[22],$configinputfw{$key}[23],$configinputfw{$key}[24],$configinputfw{$key}[25],$configinputfw{$key}[26],$configinputfw{$key}[27],$configinputfw{$key}[28],$configinputfw{$key}[29],$configinputfw{$key}[30],$configinputfw{$key}[31]"){
+                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'LOG'},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'},$fwdfwsettings{'LIMIT_CON_CON'},$fwdfwsettings{'concon'},$fwdfwsettings{'RATE_LIMIT'},$fwdfwsettings{'ratecon'},$fwdfwsettings{'RATETIME'}"
+                                       eq "$configinputfw{$key}[0],$configinputfw{$key}[2],$configinputfw{$key}[3],$configinputfw{$key}[4],$configinputfw{$key}[5],$configinputfw{$key}[6],$configinputfw{$key}[7],$configinputfw{$key}[8],$configinputfw{$key}[9],$configinputfw{$key}[10],$configinputfw{$key}[11],$configinputfw{$key}[12],$configinputfw{$key}[13],$configinputfw{$key}[14],$configinputfw{$key}[15],$configinputfw{$key}[17],$configinputfw{$key}[18],$configinputfw{$key}[19],$configinputfw{$key}[20],$configinputfw{$key}[21],$configinputfw{$key}[22],$configinputfw{$key}[23],$configinputfw{$key}[24],$configinputfw{$key}[25],$configinputfw{$key}[26],$configinputfw{$key}[27],$configinputfw{$key}[28],$configinputfw{$key}[29],$configinputfw{$key}[30],$configinputfw{$key}[31],$configinputfw{$key}[32],$configinputfw{$key}[33],$configinputfw{$key}[34],$configinputfw{$key}[35],$configinputfw{$key}[36]"){
                                                $errormessage.=$Lang::tr{'fwdfw err ruleexists'};
                                                if($fwdfwsettings{'oldruleremark'} ne $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'updatefwrule'} eq 'on' && $fwdfwsettings{'ruleremark'} ne '' && !&validremark($fwdfwsettings{'ruleremark'})){
                                                        $errormessage=$Lang::tr{'fwdfw err remark'}."<br>";
@@ -241,14 +257,14 @@ if ($fwdfwsettings{'ACTION'} eq 'saverule')
                if($fwdfwsettings{'rulepos'} > 0 && !$fwdfwsettings{'oldrulenumber'}){
                        $fwdfwsettings{'oldrulenumber'}=$maxkey;
                        foreach my $key (sort keys %configinputfw){
-                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'LOG'},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'}"
-                                       eq "$configinputfw{$key}[0],$configinputfw{$key}[2],$configinputfw{$key}[3],$configinputfw{$key}[4],$configinputfw{$key}[5],$configinputfw{$key}[6],$configinputfw{$key}[7],$configinputfw{$key}[8],$configinputfw{$key}[9],$configinputfw{$key}[10],$configinputfw{$key}[11],$configinputfw{$key}[12],$configinputfw{$key}[13],$configinputfw{$key}[14],$configinputfw{$key}[15],$configinputfw{$key}[17],$configinputfw{$key}[18],$configinputfw{$key}[19],$configinputfw{$key}[20],$configinputfw{$key}[21],$configinputfw{$key}[22],$configinputfw{$key}[23],$configinputfw{$key}[24],$configinputfw{$key}[25],$configinputfw{$key}[26],$configinputfw{$key}[27],$configinputfw{$key}[28],$configinputfw{$key}[29],$configinputfw{$key}[30],$configinputfw{$key}[31]"){
+                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'LOG'},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'},$fwdfwsettings{'LIMIT_CON_CON'},$fwdfwsettings{'concon'},$fwdfwsettings{'RATE_LIMIT'},$fwdfwsettings{'ratecon'},$fwdfwsettings{'RATETIME'}"
+                                       eq "$configinputfw{$key}[0],$configinputfw{$key}[2],$configinputfw{$key}[3],$configinputfw{$key}[4],$configinputfw{$key}[5],$configinputfw{$key}[6],$configinputfw{$key}[7],$configinputfw{$key}[8],$configinputfw{$key}[9],$configinputfw{$key}[10],$configinputfw{$key}[11],$configinputfw{$key}[12],$configinputfw{$key}[13],$configinputfw{$key}[14],$configinputfw{$key}[15],$configinputfw{$key}[17],$configinputfw{$key}[18],$configinputfw{$key}[19],$configinputfw{$key}[20],$configinputfw{$key}[21],$configinputfw{$key}[22],$configinputfw{$key}[23],$configinputfw{$key}[24],$configinputfw{$key}[25],$configinputfw{$key}[26],$configinputfw{$key}[27],$configinputfw{$key}[28],$configinputfw{$key}[29],$configinputfw{$key}[30],$configinputfw{$key}[31],$configinputfw{$key}[32],$configinputfw{$key}[33],$configinputfw{$key}[34],$configinputfw{$key}[35],$configinputfw{$key}[36]"){
                                                $errormessage.=$Lang::tr{'fwdfw err ruleexists'};
                                }
                        }
                }
                #check if we just close a rule
-               if( $fwdfwsettings{'oldgrp1a'} eq  $fwdfwsettings{'grp1'} && $fwdfwsettings{'oldgrp1b'} eq $fwdfwsettings{$fwdfwsettings{'grp1'}} && $fwdfwsettings{'oldgrp2a'} eq  $fwdfwsettings{'grp2'} && $fwdfwsettings{'oldgrp2b'} eq $fwdfwsettings{$fwdfwsettings{'grp2'}} &&  $fwdfwsettings{'oldgrp3a'} eq $fwdfwsettings{'grp3'} && $fwdfwsettings{'oldgrp3b'} eq  $fwdfwsettings{$fwdfwsettings{'grp3'}} && $fwdfwsettings{'oldusesrv'} eq $fwdfwsettings{'USESRV'} && $fwdfwsettings{'oldruleremark'} eq $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'oldruletype'} eq $fwdfwsettings{'chain'}) {
+               if( $fwdfwsettings{'oldgrp1a'} eq  $fwdfwsettings{'grp1'} && $fwdfwsettings{'oldgrp1b'} eq $fwdfwsettings{$fwdfwsettings{'grp1'}} && $fwdfwsettings{'oldgrp2a'} eq  $fwdfwsettings{'grp2'} && $fwdfwsettings{'oldgrp2b'} eq $fwdfwsettings{$fwdfwsettings{'grp2'}} &&  $fwdfwsettings{'oldgrp3a'} eq $fwdfwsettings{'grp3'} && $fwdfwsettings{'oldgrp3b'} eq  $fwdfwsettings{$fwdfwsettings{'grp3'}} && $fwdfwsettings{'oldusesrv'} eq $fwdfwsettings{'USESRV'} && $fwdfwsettings{'oldruleremark'} eq $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'oldruletype'} eq $fwdfwsettings{'chain'} ) {
                        if($fwdfwsettings{'nosave'} eq 'on' && $fwdfwsettings{'updatefwrule'} eq 'on'){
                                $errormessage='';
                                $fwdfwsettings{'nosave2'} = 'on';
@@ -266,8 +282,8 @@ if ($fwdfwsettings{'ACTION'} eq 'saverule')
                my $maxkey=&General::findhasharraykey(\%configoutgoingfw);
                if($fwdfwsettings{'oldrulenumber'} eq $fwdfwsettings{'rulepos'}){
                        foreach my $key (sort keys %configoutgoingfw){
-                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'LOG'},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'}"
-                                       eq "$configoutgoingfw{$key}[0],$configoutgoingfw{$key}[2],$configoutgoingfw{$key}[3],$configoutgoingfw{$key}[4],$configoutgoingfw{$key}[5],$configoutgoingfw{$key}[6],$configoutgoingfw{$key}[7],$configoutgoingfw{$key}[8],$configoutgoingfw{$key}[9],$configoutgoingfw{$key}[10],$configoutgoingfw{$key}[11],$configoutgoingfw{$key}[12],$configoutgoingfw{$key}[13],$configoutgoingfw{$key}[14],$configoutgoingfw{$key}[15],$configoutgoingfw{$key}[17],$configoutgoingfw{$key}[18],$configoutgoingfw{$key}[19],$configoutgoingfw{$key}[20],$configoutgoingfw{$key}[21],$configoutgoingfw{$key}[22],$configoutgoingfw{$key}[23],$configoutgoingfw{$key}[24],$configoutgoingfw{$key}[25],$configoutgoingfw{$key}[26],$configoutgoingfw{$key}[27],$configoutgoingfw{$key}[28],$configoutgoingfw{$key}[29],$configoutgoingfw{$key}[30],$configoutgoingfw{$key}[31]"){
+                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'LOG'},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'},$fwdfwsettings{'LIMIT_CON_CON'},$fwdfwsettings{'concon'},$fwdfwsettings{'RATE_LIMIT'},$fwdfwsettings{'ratecon'},$fwdfwsettings{'RATETIME'}"
+                                       eq "$configoutgoingfw{$key}[0],$configoutgoingfw{$key}[2],$configoutgoingfw{$key}[3],$configoutgoingfw{$key}[4],$configoutgoingfw{$key}[5],$configoutgoingfw{$key}[6],$configoutgoingfw{$key}[7],$configoutgoingfw{$key}[8],$configoutgoingfw{$key}[9],$configoutgoingfw{$key}[10],$configoutgoingfw{$key}[11],$configoutgoingfw{$key}[12],$configoutgoingfw{$key}[13],$configoutgoingfw{$key}[14],$configoutgoingfw{$key}[15],$configoutgoingfw{$key}[17],$configoutgoingfw{$key}[18],$configoutgoingfw{$key}[19],$configoutgoingfw{$key}[20],$configoutgoingfw{$key}[21],$configoutgoingfw{$key}[22],$configoutgoingfw{$key}[23],$configoutgoingfw{$key}[24],$configoutgoingfw{$key}[25],$configoutgoingfw{$key}[26],$configoutgoingfw{$key}[27],$configoutgoingfw{$key}[28],$configoutgoingfw{$key}[29],$configoutgoingfw{$key}[30],$configoutgoingfw{$key}[31],$configoutgoingfw{$key}[32],$configoutgoingfw{$key}[33],$configoutgoingfw{$key}[34],$configoutgoingfw{$key}[35],$configoutgoingfw{$key}[36]"){
                                                $errormessage.=$Lang::tr{'fwdfw err ruleexists'};
                                                if($fwdfwsettings{'oldruleremark'} ne $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'updatefwrule'} eq 'on' && $fwdfwsettings{'ruleremark'} ne '' && !&validremark($fwdfwsettings{'ruleremark'})){
                                                        $errormessage=$Lang::tr{'fwdfw err remark'}."<br>";
@@ -285,14 +301,14 @@ if ($fwdfwsettings{'ACTION'} eq 'saverule')
                if($fwdfwsettings{'rulepos'} > 0 && !$fwdfwsettings{'oldrulenumber'}){
                        $fwdfwsettings{'oldrulenumber'}=$maxkey;
                        foreach my $key (sort keys %configoutgoingfw){
-                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'LOG'},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'}"
-                                       eq "$configoutgoingfw{$key}[0],$configoutgoingfw{$key}[2],$configoutgoingfw{$key}[3],$configoutgoingfw{$key}[4],$configoutgoingfw{$key}[5],$configoutgoingfw{$key}[6],$configoutgoingfw{$key}[7],$configoutgoingfw{$key}[8],$configoutgoingfw{$key}[9],$configoutgoingfw{$key}[10],$configoutgoingfw{$key}[11],$configoutgoingfw{$key}[12],$configoutgoingfw{$key}[13],$configoutgoingfw{$key}[14],$configoutgoingfw{$key}[15],$configoutgoingfw{$key}[17],$configoutgoingfw{$key}[18],$configoutgoingfw{$key}[19],$configoutgoingfw{$key}[20],$configoutgoingfw{$key}[21],$configoutgoingfw{$key}[22],$configoutgoingfw{$key}[23],$configoutgoingfw{$key}[24],$configoutgoingfw{$key}[25],$configoutgoingfw{$key}[26],$configoutgoingfw{$key}[27],$configoutgoingfw{$key}[28],$configoutgoingfw{$key}[29],$configoutgoingfw{$key}[30],$configoutgoingfw{$key}[31]"){
+                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'LOG'},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'},$fwdfwsettings{'LIMIT_CON_CON'},$fwdfwsettings{'concon'},$fwdfwsettings{'RATE_LIMIT'},$fwdfwsettings{'ratecon'},$fwdfwsettings{'RATETIME'}"
+                                       eq "$configoutgoingfw{$key}[0],$configoutgoingfw{$key}[2],$configoutgoingfw{$key}[3],$configoutgoingfw{$key}[4],$configoutgoingfw{$key}[5],$configoutgoingfw{$key}[6],$configoutgoingfw{$key}[7],$configoutgoingfw{$key}[8],$configoutgoingfw{$key}[9],$configoutgoingfw{$key}[10],$configoutgoingfw{$key}[11],$configoutgoingfw{$key}[12],$configoutgoingfw{$key}[13],$configoutgoingfw{$key}[14],$configoutgoingfw{$key}[15],$configoutgoingfw{$key}[17],$configoutgoingfw{$key}[18],$configoutgoingfw{$key}[19],$configoutgoingfw{$key}[20],$configoutgoingfw{$key}[21],$configoutgoingfw{$key}[22],$configoutgoingfw{$key}[23],$configoutgoingfw{$key}[24],$configoutgoingfw{$key}[25],$configoutgoingfw{$key}[26],$configoutgoingfw{$key}[27],$configoutgoingfw{$key}[28],$configoutgoingfw{$key}[29],$configoutgoingfw{$key}[30],$configoutgoingfw{$key}[31],$configoutgoingfw{$key}[32],$configoutgoingfw{$key}[33],$configoutgoingfw{$key}[34],$configoutgoingfw{$key}[35],$configoutgoingfw{$key}[36]"){
                                                $errormessage.=$Lang::tr{'fwdfw err ruleexists'};
                                }
                        }
                }
                #check if we just close a rule
-               if( $fwdfwsettings{'oldgrp1a'} eq  $fwdfwsettings{'grp1'} && $fwdfwsettings{'oldgrp1b'} eq $fwdfwsettings{$fwdfwsettings{'grp1'}} && $fwdfwsettings{'oldgrp2a'} eq  $fwdfwsettings{'grp2'} && $fwdfwsettings{'oldgrp2b'} eq $fwdfwsettings{$fwdfwsettings{'grp2'}} &&  $fwdfwsettings{'oldgrp3a'} eq $fwdfwsettings{'grp3'} && $fwdfwsettings{'oldgrp3b'} eq  $fwdfwsettings{$fwdfwsettings{'grp3'}} && $fwdfwsettings{'oldusesrv'} eq $fwdfwsettings{'USESRV'} && $fwdfwsettings{'oldruleremark'} eq $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'oldruletype'} eq $fwdfwsettings{'chain'}) {
+               if( $fwdfwsettings{'oldgrp1a'} eq  $fwdfwsettings{'grp1'} && $fwdfwsettings{'oldgrp1b'} eq $fwdfwsettings{$fwdfwsettings{'grp1'}} && $fwdfwsettings{'oldgrp2a'} eq  $fwdfwsettings{'grp2'} && $fwdfwsettings{'oldgrp2b'} eq $fwdfwsettings{$fwdfwsettings{'grp2'}} &&  $fwdfwsettings{'oldgrp3a'} eq $fwdfwsettings{'grp3'} && $fwdfwsettings{'oldgrp3b'} eq  $fwdfwsettings{$fwdfwsettings{'grp3'}} && $fwdfwsettings{'oldusesrv'} eq $fwdfwsettings{'USESRV'} && $fwdfwsettings{'oldruleremark'} eq $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'oldruletype'} eq $fwdfwsettings{'chain'} ) {
                        if($fwdfwsettings{'nosave'} eq 'on' && $fwdfwsettings{'updatefwrule'} eq 'on'){
                                $fwdfwsettings{'nosave2'} = 'on';
                                $errormessage='';
@@ -312,8 +328,8 @@ if ($fwdfwsettings{'ACTION'} eq 'saverule')
                if($fwdfwsettings{'oldrulenumber'} eq $fwdfwsettings{'rulepos'}){
                        #check if we have an identical rule already
                        foreach my $key (sort keys %configfwdfw){
-                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'}"
-                                       eq "$configfwdfw{$key}[0],$configfwdfw{$key}[2],$configfwdfw{$key}[3],$configfwdfw{$key}[4],$configfwdfw{$key}[5],$configfwdfw{$key}[6],$configfwdfw{$key}[7],$configfwdfw{$key}[8],$configfwdfw{$key}[9],$configfwdfw{$key}[10],$configfwdfw{$key}[11],$configfwdfw{$key}[12],$configfwdfw{$key}[13],$configfwdfw{$key}[14],$configfwdfw{$key}[15],$configfwdfw{$key}[18],$configfwdfw{$key}[19],$configfwdfw{$key}[20],$configfwdfw{$key}[21],$configfwdfw{$key}[22],$configfwdfw{$key}[23],$configfwdfw{$key}[24],$configfwdfw{$key}[25],$configfwdfw{$key}[26],$configfwdfw{$key}[27],$configfwdfw{$key}[28],$configfwdfw{$key}[29],$configfwdfw{$key}[30],$configfwdfw{$key}[31]"){
+                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'},$fwdfwsettings{'LIMIT_CON_CON'},$fwdfwsettings{'concon'},$fwdfwsettings{'RATE_LIMIT'},$fwdfwsettings{'ratecon'},$fwdfwsettings{'RATETIME'}"
+                                       eq "$configfwdfw{$key}[0],$configfwdfw{$key}[2],$configfwdfw{$key}[3],$configfwdfw{$key}[4],$configfwdfw{$key}[5],$configfwdfw{$key}[6],$configfwdfw{$key}[7],$configfwdfw{$key}[8],$configfwdfw{$key}[9],$configfwdfw{$key}[10],$configfwdfw{$key}[11],$configfwdfw{$key}[12],$configfwdfw{$key}[13],$configfwdfw{$key}[14],$configfwdfw{$key}[15],$configfwdfw{$key}[18],$configfwdfw{$key}[19],$configfwdfw{$key}[20],$configfwdfw{$key}[21],$configfwdfw{$key}[22],$configfwdfw{$key}[23],$configfwdfw{$key}[24],$configfwdfw{$key}[25],$configfwdfw{$key}[26],$configfwdfw{$key}[27],$configfwdfw{$key}[28],$configfwdfw{$key}[29],$configfwdfw{$key}[30],$configfwdfw{$key}[31],$configfwdfw{$key}[32],$configfwdfw{$key}[33],$configfwdfw{$key}[34],$configfwdfw{$key}[35],$configfwdfw{$key}[36]"){
                                                $errormessage.=$Lang::tr{'fwdfw err ruleexists'};
                                                if($fwdfwsettings{'oldruleremark'} ne $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'updatefwrule'} eq 'on' && $fwdfwsettings{'ruleremark'} ne '' && !&validremark($fwdfwsettings{'ruleremark'})){
                                                        $errormessage=$Lang::tr{'fwdfw err remark'}."<br>";
@@ -331,19 +347,35 @@ if ($fwdfwsettings{'ACTION'} eq 'saverule')
                if($fwdfwsettings{'rulepos'} > 0 && !$fwdfwsettings{'oldrulenumber'}){
                        $fwdfwsettings{'oldrulenumber'}=$maxkey;
                        foreach my $key (sort keys %configfwdfw){
-                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'}"
-                                       eq "$configfwdfw{$key}[0],$configfwdfw{$key}[2],$configfwdfw{$key}[3],$configfwdfw{$key}[4],$configfwdfw{$key}[5],$configfwdfw{$key}[6],$configfwdfw{$key}[7],$configfwdfw{$key}[8],$configfwdfw{$key}[9],$configfwdfw{$key}[10],$configfwdfw{$key}[11],$configfwdfw{$key}[12],$configfwdfw{$key}[13],$configfwdfw{$key}[14],$configfwdfw{$key}[15],$configfwdfw{$key}[18],$configfwdfw{$key}[19],$configfwdfw{$key}[20],$configfwdfw{$key}[21],$configfwdfw{$key}[22],$configfwdfw{$key}[23],$configfwdfw{$key}[24],$configfwdfw{$key}[25],$configfwdfw{$key}[26],$configfwdfw{$key}[27],$configfwdfw{$key}[28],$configfwdfw{$key}[29],$configfwdfw{$key}[30],$configfwdfw{$key}[31]"){
+                               if (   "$fwdfwsettings{'RULE_ACTION'},$fwdfwsettings{'ACTIVE'},$fwdfwsettings{'grp1'},$fwdfwsettings{$fwdfwsettings{'grp1'}},$fwdfwsettings{'grp2'},$fwdfwsettings{$fwdfwsettings{'grp2'}},$fwdfwsettings{'USE_SRC_PORT'},$fwdfwsettings{'PROT'},$fwdfwsettings{'ICMP_TYPES'},$fwdfwsettings{'SRC_PORT'},$fwdfwsettings{'USESRV'},$fwdfwsettings{'TGT_PROT'},$fwdfwsettings{'ICMP_TGT'},$fwdfwsettings{'grp3'},$fwdfwsettings{$fwdfwsettings{'grp3'}},$fwdfwsettings{'TIME'},$fwdfwsettings{'TIME_MON'},$fwdfwsettings{'TIME_TUE'},$fwdfwsettings{'TIME_WED'},$fwdfwsettings{'TIME_THU'},$fwdfwsettings{'TIME_FRI'},$fwdfwsettings{'TIME_SAT'},$fwdfwsettings{'TIME_SUN'},$fwdfwsettings{'TIME_FROM'},$fwdfwsettings{'TIME_TO'},$fwdfwsettings{'USE_NAT'},$fwdfwsettings{$fwdfwsettings{'nat'}},$fwdfwsettings{'dnatport'},$fwdfwsettings{'nat'},$fwdfwsettings{'LIMIT_CON_CON'},$fwdfwsettings{'concon'},$fwdfwsettings{'RATE_LIMIT'},$fwdfwsettings{'ratecon'},$fwdfwsettings{'RATETIME'}"
+                                       eq "$configfwdfw{$key}[0],$configfwdfw{$key}[2],$configfwdfw{$key}[3],$configfwdfw{$key}[4],$configfwdfw{$key}[5],$configfwdfw{$key}[6],$configfwdfw{$key}[7],$configfwdfw{$key}[8],$configfwdfw{$key}[9],$configfwdfw{$key}[10],$configfwdfw{$key}[11],$configfwdfw{$key}[12],$configfwdfw{$key}[13],$configfwdfw{$key}[14],$configfwdfw{$key}[15],$configfwdfw{$key}[18],$configfwdfw{$key}[19],$configfwdfw{$key}[20],$configfwdfw{$key}[21],$configfwdfw{$key}[22],$configfwdfw{$key}[23],$configfwdfw{$key}[24],$configfwdfw{$key}[25],$configfwdfw{$key}[26],$configfwdfw{$key}[27],$configfwdfw{$key}[28],$configfwdfw{$key}[29],$configfwdfw{$key}[30],$configfwdfw{$key}[31],$configfwdfw{$key}[32],$configfwdfw{$key}[33],$configfwdfw{$key}[34],$configfwdfw{$key}[35],$configfwdfw{$key}[36]"){
                                                $errormessage.=$Lang::tr{'fwdfw err ruleexists'};
                                }
                        }
                }
                #check if we just close a rule
-               if( $fwdfwsettings{'oldgrp1a'} eq  $fwdfwsettings{'grp1'} && $fwdfwsettings{'oldgrp1b'} eq $fwdfwsettings{$fwdfwsettings{'grp1'}} && $fwdfwsettings{'oldgrp2a'} eq  $fwdfwsettings{'grp2'} && $fwdfwsettings{'oldgrp2b'} eq $fwdfwsettings{$fwdfwsettings{'grp2'}} &&  $fwdfwsettings{'oldgrp3a'} eq $fwdfwsettings{'grp3'} && $fwdfwsettings{'oldgrp3b'} eq  $fwdfwsettings{$fwdfwsettings{'grp3'}} && $fwdfwsettings{'oldusesrv'} eq $fwdfwsettings{'USESRV'} && $fwdfwsettings{'oldruleremark'} eq $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'oldruletype'} eq $fwdfwsettings{'chain'}) {
+               if( $fwdfwsettings{'oldgrp1a'} eq  $fwdfwsettings{'grp1'} && $fwdfwsettings{'oldgrp1b'} eq $fwdfwsettings{$fwdfwsettings{'grp1'}} && $fwdfwsettings{'oldgrp2a'} eq  $fwdfwsettings{'grp2'} && $fwdfwsettings{'oldgrp2b'} eq $fwdfwsettings{$fwdfwsettings{'grp2'}} &&  $fwdfwsettings{'oldgrp3a'} eq $fwdfwsettings{'grp3'} && $fwdfwsettings{'oldgrp3b'} eq  $fwdfwsettings{$fwdfwsettings{'grp3'}} && $fwdfwsettings{'oldusesrv'} eq $fwdfwsettings{'USESRV'} && $fwdfwsettings{'oldruleremark'} eq $fwdfwsettings{'ruleremark'} && $fwdfwsettings{'oldruletype'} eq $fwdfwsettings{'chain'}){
                        if($fwdfwsettings{'nosave'} eq 'on' && $fwdfwsettings{'updatefwrule'} eq 'on'){
                                $fwdfwsettings{'nosave2'} = 'on';
                                $errormessage='';
                        }
                }
+               #check max concurrent connections per ip address
+               if ($fwdfwsettings{'LIMIT_CON_CON'} eq 'ON'){
+                       if (!($fwdfwsettings{'concon'} =~ /^(\d+)$/)) {
+                               $errormessage.=$Lang::tr{'fwdfw err concon'};
+                       }
+               }else{
+                       $fwdfwsettings{'concon'}='';
+               }
+               #check ratelimit value
+               if ($fwdfwsettings{'RATE_LIMIT'} eq 'ON'){
+                       if (!($fwdfwsettings{'ratecon'} =~ /^(\d+)$/)) {
+                               $errormessage.=$Lang::tr{'fwdfw err ratecon'};
+                       }
+               }else{
+                       $fwdfwsettings{'ratecon'}='';
+               }
                #increase counters
                if (!$errormessage){
                        if ($fwdfwsettings{'nosave2'} ne 'on'){
@@ -1064,7 +1096,6 @@ print<<END;
 END
        foreach my $network (sort keys %defaultNetworks)
                {
-                       next if($defaultNetworks{$network}{'NAME'} eq "RED" && $srctgt eq 'src');
                        next if($defaultNetworks{$network}{'NAME'} eq "IPFire");
                        print "<option value='$defaultNetworks{$network}{'NAME'}'";
                        print " selected='selected'" if ($fwdfwsettings{$fwdfwsettings{$grp}} eq $defaultNetworks{$network}{'NAME'});
@@ -1517,6 +1548,11 @@ sub newrule
                                $fwdfwsettings{'nat'}                                   = $hash{$key}[31]; #changed order
                                $fwdfwsettings{$fwdfwsettings{'nat'}}   = $hash{$key}[29];
                                $fwdfwsettings{'dnatport'}                              = $hash{$key}[30];
+                               $fwdfwsettings{'LIMIT_CON_CON'}                 = $hash{$key}[32];
+                               $fwdfwsettings{'concon'}                                = $hash{$key}[33];
+                               $fwdfwsettings{'RATE_LIMIT'}                    = $hash{$key}[34];
+                               $fwdfwsettings{'ratecon'}                               = $hash{$key}[35];
+                               $fwdfwsettings{'RATETIME'}                              = $hash{$key}[36];
                                $checked{'grp1'}{$fwdfwsettings{'grp1'}}                                = 'CHECKED';
                                $checked{'grp2'}{$fwdfwsettings{'grp2'}}                                = 'CHECKED';
                                $checked{'grp3'}{$fwdfwsettings{'grp3'}}                                = 'CHECKED';
@@ -1534,12 +1570,15 @@ sub newrule
                                $checked{'TIME_SUN'}{$fwdfwsettings{'TIME_SUN'}}                = 'CHECKED';
                                $checked{'USE_NAT'}{$fwdfwsettings{'USE_NAT'}}                  = 'CHECKED';
                                $checked{'nat'}{$fwdfwsettings{'nat'}}                                  = 'CHECKED';
+                               $checked{'LIMIT_CON_CON'}{$fwdfwsettings{'LIMIT_CON_CON'}}      = 'CHECKED';
+                               $checked{'RATE_LIMIT'}{$fwdfwsettings{'RATE_LIMIT'}}    = 'CHECKED';
                                $selected{'TIME_FROM'}{$fwdfwsettings{'TIME_FROM'}}             = 'selected';
                                $selected{'TIME_TO'}{$fwdfwsettings{'TIME_TO'}}                 = 'selected';
                                $selected{'ipfire'}{$fwdfwsettings{$fwdfwsettings{'grp2'}}} ='selected';
                                $selected{'ipfire_src'}{$fwdfwsettings{$fwdfwsettings{'grp1'}}} ='selected';
                                $selected{'dnat'}{$fwdfwsettings{'dnat'}}                               ='selected';
                                $selected{'snat'}{$fwdfwsettings{'snat'}}                               ='selected';
+                               $selected{'RATETIME'}{$fwdfwsettings{'RATETIME'}}               ='selected';
                        }
                }
                $fwdfwsettings{'oldgrp1a'}=$fwdfwsettings{'grp1'};
@@ -1552,6 +1591,11 @@ sub newrule
                $fwdfwsettings{'oldruleremark'}=$fwdfwsettings{'ruleremark'};
                $fwdfwsettings{'oldnat'}=$fwdfwsettings{'USE_NAT'};
                $fwdfwsettings{'oldruletype'}=$fwdfwsettings{'chain'};
+               $fwdfwsettings{'oldconcon'}=$fwdfwsettings{'LIMIT_CON_CON'};
+               $fwdfwsettings{'olduseratelimit'}=$fwdfwsettings{'RATE_LIMIT'};
+               $fwdfwsettings{'olduseratelimitamount'}=$fwdfwsettings{'ratecon'};
+               $fwdfwsettings{'oldratelimittime'}=$fwdfwsettings{'RATETIME'};
+
                #check if manual ip (source) is orange network
                if ($fwdfwsettings{'grp1'} eq 'src_addr'){
                        my ($sip,$scidr) = split("/",$fwdfwsettings{$fwdfwsettings{'grp1'}});
@@ -1573,6 +1617,7 @@ sub newrule
                $fwdfwsettings{'oldusesrv'}=$fwdfwsettings{'USESRV'};
                $fwdfwsettings{'oldruleremark'}=$fwdfwsettings{'ruleremark'};
                $fwdfwsettings{'oldnat'}=$fwdfwsettings{'USE_NAT'};
+               $fwdfwsettings{'oldconcon'}=$fwdfwsettings{'LIMIT_CON_CON'};
                #check if manual ip (source) is orange network
                if ($fwdfwsettings{'grp1'} eq 'src_addr'){
                        my ($sip,$scidr) = split("/",$fwdfwsettings{$fwdfwsettings{'grp1'}});
@@ -2012,6 +2057,44 @@ END
                                        </table>
                                </td>
                        </tr>
+                       <tr>
+                               <td width='1%'>
+                                       <input type='checkbox' name='LIMIT_CON_CON' id="USE_LIMIT_CONCURRENT_CONNECTIONS_PER_IP" value='ON' $checked{'LIMIT_CON_CON'}{'ON'}>
+                               </td>
+                               <td>$Lang::tr{'fwdfw limitconcon'}</td>
+                       </tr>
+                       <tr id="LIMIT_CON">
+                               <td colspan='2'>
+                                       <table width='66%' border='0'>
+                                               <tr>
+                                                       <td width="20em">&nbsp;</td>
+                                                       <td>$Lang::tr{'fwdfw maxconcon'}: <input type='text' name='concon' size='2' value="$fwdfwsettings{'concon'}"></td>
+                                               </tr>
+                                       </table>
+                               </td>
+                       </tr>
+                       <tr>
+                               <td width='1%'>
+                                       <input type='checkbox' name='RATE_LIMIT' id="USE_RATELIMIT" value='ON' $checked{'RATE_LIMIT'}{'ON'}>
+                               </td>
+                               <td>$Lang::tr{'fwdfw ratelimit'}</td>
+                       </tr>
+                       <tr id="RATELIMIT">
+                               <td colspan='2'>
+                                       <table width='66%' border='0'>
+                                               <tr>
+                                                       <td width="20em">&nbsp;</td>
+                                                       <td>$Lang::tr{'fwdfw numcon'}: <input type='text' name='ratecon' size='2' value="$fwdfwsettings{'ratecon'}"> /
+                                                               <select name='RATETIME' style='width:100px;'>
+                                                                       <option value='second' $selected{'RATETIME'}{'second'}>$Lang::tr{'age second'}</option>
+                                                                       <option value='minute' $selected{'RATETIME'}{'minute'}>$Lang::tr{'minute'}</option>
+                                                                       <option value='hour' $selected{'RATETIME'}{'hour'}>$Lang::tr{'hour'}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+                                       </table>
+                               </td>
+                       </tr>
                </table>
                <br>
 END
@@ -2044,6 +2127,7 @@ END
                        <input type='hidden' name='oldorange' value='$fwdfwsettings{'oldorange'}' />
                        <input type='hidden' name='oldnat' value='$fwdfwsettings{'oldnat'}' />
                        <input type='hidden' name='oldruletype' value='$fwdfwsettings{'oldruletype'}' />
+                       <input type='hidden' name='oldconcon' value='$fwdfwsettings{'oldconcon'}' />
                        <input type='hidden' name='ACTION' value='saverule' ></form><form method='post' style='display:inline'><input type='submit' value='$Lang::tr{'fwhost back'}' style='min-width:100px;'><input type='hidden' name='ACTION' value'reset'></td></td>
                        </table></form>
 END
@@ -2180,6 +2264,11 @@ sub saverule
                        $$hash{$key}[29] = $fwdfwsettings{$fwdfwsettings{'nat'}};
                        $$hash{$key}[30] = $fwdfwsettings{'dnatport'};
                        $$hash{$key}[31] = $fwdfwsettings{'nat'};
+                       $$hash{$key}[32] = $fwdfwsettings{'LIMIT_CON_CON'};
+                       $$hash{$key}[33] = $fwdfwsettings{'concon'};
+                       $$hash{$key}[34] = $fwdfwsettings{'RATE_LIMIT'};
+                       $$hash{$key}[35] = $fwdfwsettings{'ratecon'};
+                       $$hash{$key}[36] = $fwdfwsettings{'RATETIME'};
                        &General::writehasharray("$config", $hash);
                }else{
                        foreach my $key (sort {$a <=> $b} keys %$hash){
@@ -2216,6 +2305,11 @@ sub saverule
                                        $$hash{$key}[29] = $fwdfwsettings{$fwdfwsettings{'nat'}};
                                        $$hash{$key}[30] = $fwdfwsettings{'dnatport'};
                                        $$hash{$key}[31] = $fwdfwsettings{'nat'};
+                                       $$hash{$key}[32] = $fwdfwsettings{'LIMIT_CON_CON'};
+                                       $$hash{$key}[33] = $fwdfwsettings{'concon'};
+                                       $$hash{$key}[34] = $fwdfwsettings{'RATE_LIMIT'};
+                                       $$hash{$key}[35] = $fwdfwsettings{'ratecon'};
+                                       $$hash{$key}[36] = $fwdfwsettings{'RATETIME'};
                                        last;
                                }
                        }
index 1f96336a6b4d9b964b80572504aeacf5089c5cf3..c3642f0f0e9ca7838d9b8b766df55e3c3197b1c1 100644 (file)
@@ -291,42 +291,13 @@ if ($fwhostsettings{'ACTION'} eq 'savenet' )
                        $errormessage=$errormessage.$Lang::tr{'fwhost err sub32'};
                }
                if($fwhostsettings{'error'} ne 'on'){
-                       #check if we use one of ipfire's networks (green,orange,blue)
-                       if (($ownnet{'GREEN_NETADDRESS'}        ne '' && $ownnet{'GREEN_NETADDRESS'}    ne '0.0.0.0') && ($fwhostsettings{'IP'} eq $ownnet{'GREEN_NETADDRESS'} && $fwhostsettings{'SUBNET'} eq $ownnet{'GREEN_NETMASK'}))
-                       { 
-                               $errormessage=$errormessage.$Lang::tr{'ccd err green'}."<br>";
-                               $fwhostsettings{'HOSTNAME'} = $fwhostsettings{'orgname'};
-                               if ($fwhostsettings{'update'} eq 'on'){$fwhostsettings{'ACTION'}='editnet';}
-                       }
-                       if (($ownnet{'ORANGE_NETADDRESS'}       ne '' && $ownnet{'ORANGE_NETADDRESS'}   ne '0.0.0.0') && ($fwhostsettings{'IP'} eq $ownnet{'ORANGE_NETADDRESS'} && $fwhostsettings{'SUBNET'} eq $ownnet{'ORANGE_NETMASK'}))
-                       { 
-                               $errormessage=$errormessage.$Lang::tr{'ccd err orange'}."<br>";
-                               $fwhostsettings{'HOSTNAME'} = $fwhostsettings{'orgname'};
-                               if ($fwhostsettings{'update'} eq 'on'){$fwhostsettings{'ACTION'}='editnet';}
-                       }
-                       if (($ownnet{'BLUE_NETADDRESS'}         ne '' && $ownnet{'BLUE_NETADDRESS'}     ne '0.0.0.0') && ($fwhostsettings{'IP'} eq $ownnet{'BLUE_NETADDRESS'} && $fwhostsettings{'SUBNET'} eq $ownnet{'BLUE_NETMASK'}))
-                       { 
-                               $errormessage=$errormessage.$Lang::tr{'ccd err blue'}."<br>";
-                               $fwhostsettings{'HOSTNAME'} = $fwhostsettings{'orgname'};
-                               if ($fwhostsettings{'update'} eq 'on'){$fwhostsettings{'ACTION'}='editnet';}
-                       }
-                       if (($ownnet{'RED_NETADDRESS'}  ne '' && $ownnet{'RED_NETADDRESS'}              ne '0.0.0.0') && ($fwhostsettings{'IP'} eq $ownnet{'RED_NETADDRESS'} && $fwhostsettings{'SUBNET'} eq $ownnet{'RED_NETMASK'}))
-                       { 
-                               $errormessage=$errormessage.$Lang::tr{'ccd err red'}."<br>";
-                               $fwhostsettings{'HOSTNAME'} = $fwhostsettings{'orgname'};
-                               if ($fwhostsettings{'update'} eq 'on'){$fwhostsettings{'ACTION'}='editnet';}
-                       }
+                               my $fullip="$fwhostsettings{'IP'}/".&General::iporsubtocidr($fwhostsettings{'SUBNET'});
+                               $errormessage=$errormessage.&General::checksubnets($fwhostsettings{'HOSTNAME'},$fullip,"");
                }
                #only check plausi when no error till now
                if (!$errormessage){
                        &plausicheck("editnet");
                }
-               #check if network ip is part of an already used one 
-               if(&checksubnet(\%customnetwork))
-               {
-                       $errormessage=$errormessage.$Lang::tr{'fwhost err partofnet'};
-                       $fwhostsettings{'HOSTNAME'} = $fwhostsettings{'orgname'};
-               }                               
                if($fwhostsettings{'actualize'} eq 'on' && $fwhostsettings{'newnet'} ne 'on' && $errormessage)
                {
                        $fwhostsettings{'actualize'} = '';
@@ -338,9 +309,8 @@ if ($fwhostsettings{'ACTION'} eq 'savenet' )
                        $customnetwork{$key}[3] = $fwhostsettings{'orgnetremark'};
                        &General::writehasharray("$confignet", \%customnetwork);
                        undef %customnetwork;
-               }                       
+               }
                if (!$errormessage){
-                       
                        &General::readhasharray("$confignet", \%customnetwork);
                        if ($fwhostsettings{'ACTION'} eq 'updatenet'){
                                if ($fwhostsettings{'update'} == '0'){
@@ -392,7 +362,7 @@ if ($fwhostsettings{'ACTION'} eq 'savenet' )
                                                &General::writehasharray("$fwconfiginp", \%fwinp);
                                        }
                                }
-                       }                                       
+                       }
                        my $key = &General::findhasharraykey (\%customnetwork);
                        foreach my $i (0 .. 3) { $customnetwork{$key}[$i] = "";}
                        $fwhostsettings{'SUBNET'}       = &General::iporsubtocidr($fwhostsettings{'SUBNET'});
@@ -416,7 +386,8 @@ if ($fwhostsettings{'ACTION'} eq 'savenet' )
                        }
                        &addnet;
                        &viewtablenet;
-               }else           {
+               }else{
+                       $fwhostsettings{'HOSTNAME'} = $fwhostsettings{'orgname'};
                        &addnet;
                        &viewtablenet;
                }
@@ -1644,7 +1615,10 @@ sub getcolor
                        $tdcolor="<font style='color: $Header::colourblue;'>$c</font>";
                        return $tdcolor;
                }
-
+               if ("$sip/$scidr" eq "0.0.0.0/0"){
+                       $tdcolor="<font style='color: $Header::colourred;'>$c</font>";
+                       return $tdcolor;
+               }
                #Check if IP is part of OpenVPN N2N subnet
                foreach my $key (sort keys %ccdhost){
                        if ($ccdhost{$key}[3] eq 'net'){
@@ -2501,6 +2475,9 @@ sub getipforgroup
                        &General::readhash("${General::swroot}/vpn/settings",\%hash);
                        return $hash{'RW_NET'};
                }
+               if ($name eq 'RED'){
+                       return "0.0.0.0/0";
+               }
        }
 }
 sub decrease
index 5a28daaedd2b5118b554b29f70429f5fc395bd5d..ff72b7894b2457754a55021124a0d78e396599b5 100644 (file)
@@ -263,11 +263,11 @@ if (-e "/etc/snort/snort.conf") {
 #######################  End added for snort rules control  #################################
 
 if ($snortsettings{'RULES'} eq 'subscripted') {
-       $url=" http://www.snort.org/sub-rules/snortrules-snapshot-2961.tar.gz/$snortsettings{'OINKCODE'}";
+       $url=" https://www.snort.org/rules/snortrules-snapshot-2961.tar.gz?oinkcode=$snortsettings{'OINKCODE'}";
 } elsif ($snortsettings{'RULES'} eq 'registered') {
-       $url=" http://www.snort.org/reg-rules/snortrules-snapshot-2960.tar.gz/$snortsettings{'OINKCODE'}";
+       $url=" https://www.snort.org/rules/snortrules-snapshot-2961.tar.gz?oinkcode=$snortsettings{'OINKCODE'}";
 } elsif ($snortsettings{'RULES'} eq 'community') {
-       $url=" http://s3.amazonaws.com/snort-org/www/rules/community/community-rules.tar.gz";
+       $url=" https://www.snort.org/rules/community";
 } else {
        $url="http://rules.emergingthreats.net/open/snort-2.9.0/emerging.rules.tar.gz";
 }
index 86207c2aa248dc355d6ce1378de7310ee7fa7d77..44b3abdac8c77bb64bed7051c56a95c1ed73cc63 100644 (file)
@@ -336,7 +336,7 @@ print <<END
 END
        ;
        if ($sid ne "n/a") {
-               print "<a href='http://www.snort.org/search/sid/$sid' ";
+               print "<a href='https://www.snort.org/rule_docs/$sid' ";
                print "target='_blank'>$sid</a></td>\n";
        } else {
                print $sid;
index dacd518a142a6fcb9ebef99e6f8e22aa3fc5c7b2..1813862fe0eeacc15266f95feb0c0b4ff469f2b5 100644 (file)
@@ -51,6 +51,7 @@ $cgiparams{'SECTION'} = 'ipfire';
 my %sections = (
         'ipfire' => '(ipfire: )',
         '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\[.*\]: )',
         'dhcp' => '(dhcpd: )',
         'clamav' => '(clamd\[.*\]: |freshclam\[.*\]: )',
@@ -70,6 +71,7 @@ my %sections = (
 my %trsections = (
         'ipfire' => 'IPFire',
         'red' => 'RED',
+        'ddns' => $Lang::tr{'dynamic dns'},
         'dns' => 'DNS',
         'dhcp' => "$Lang::tr{'dhcp server'}",
         'cron' => 'Cron',
index 00fa1b45a253c7637805b357e9314e7d184ff2b0..34e0cdcabac6a8bb037faa65441f6d36226034a5 100644 (file)
@@ -70,6 +70,17 @@ if ($errormessage) {
         &Header::closebox();
 }
 
+# Set new defaults
+if (!$settings{'MASQUERADE_GREEN'}) {
+       $settings{'MASQUERADE_GREEN'} = 'on';
+}
+if (!$settings{'MASQUERADE_ORANGE'}) {
+       $settings{'MASQUERADE_ORANGE'} = 'on';
+}
+if (!$settings{'MASQUERADE_BLUE'}) {
+       $settings{'MASQUERADE_BLUE'} = 'on';
+}
+
 $checked{'DROPNEWNOTSYN'}{'off'} = '';
 $checked{'DROPNEWNOTSYN'}{'on'} = '';
 $checked{'DROPNEWNOTSYN'}{$settings{'DROPNEWNOTSYN'}} = "checked='checked'";
@@ -112,12 +123,69 @@ $checked{'SHOWDROPDOWN'}{$settings{'SHOWDROPDOWN'}} = "checked='checked'";
 $selected{'FWPOLICY'}{$settings{'FWPOLICY'}}= 'selected';
 $selected{'FWPOLICY1'}{$settings{'FWPOLICY1'}}= 'selected';
 $selected{'FWPOLICY2'}{$settings{'FWPOLICY2'}}= 'selected';
+$selected{'MASQUERADE_GREEN'}{'off'} = '';
+$selected{'MASQUERADE_GREEN'}{'on'} = '';
+$selected{'MASQUERADE_GREEN'}{$settings{'MASQUERADE_GREEN'}} = 'selected="selected"';
+$selected{'MASQUERADE_ORANGE'}{'off'} = '';
+$selected{'MASQUERADE_ORANGE'}{'on'} = '';
+$selected{'MASQUERADE_ORANGE'}{$settings{'MASQUERADE_ORANGE'}} = 'selected="selected"';
+$selected{'MASQUERADE_BLUE'}{'off'} = '';
+$selected{'MASQUERADE_BLUE'}{'on'} = '';
+$selected{'MASQUERADE_BLUE'}{$settings{'MASQUERADE_BLUE'}} = 'selected="selected"';
 
 &Header::openbox('100%', 'center',);
 print "<form method='post' action='$ENV{'SCRIPT_NAME'}'>";
 
-print <<END
+print <<END;
 <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table width='95%' cellspacing='0'>
+               <tr bgcolor='$color{'color20'}'>
+                       <td colspan='2' align='left'><b>$Lang::tr{'masquerading'}</b></td>
+               </tr>
+               <tr>
+                       <td align='left' width='60%'>$Lang::tr{'masquerade green'}</td>
+                       <td>
+                               <select name='MASQUERADE_GREEN'>
+                                       <option value='on' $selected{'MASQUERADE_GREEN'}{'on'}>$Lang::tr{'masquerading enabled'}</option>
+                                       <option value='off' $selected{'MASQUERADE_GREEN'}{'off'}>$Lang::tr{'masquerading disabled'}</option>
+                               </select>
+                       </td>
+               </tr>
+END
+
+       if (&Header::orange_used()) {
+               print <<END;
+                       <tr>
+                               <td align='left' width='60%'>$Lang::tr{'masquerade orange'}</td>
+                               <td>
+                                       <select name='MASQUERADE_ORANGE'>
+                                               <option value='on' $selected{'MASQUERADE_ORANGE'}{'on'}>$Lang::tr{'masquerading enabled'}</option>
+                                               <option value='off' $selected{'MASQUERADE_ORANGE'}{'off'}>$Lang::tr{'masquerading disabled'}</option>
+                                       </select>
+                               </td>
+                       </tr>
+END
+       }
+
+       if (&Header::blue_used()) {
+               print <<END;
+                       <tr>
+                               <td align='left' width='60%'>$Lang::tr{'masquerade blue'}</td>
+                               <td>
+                                       <select name='MASQUERADE_BLUE'>
+                                               <option value='on' $selected{'MASQUERADE_BLUE'}{'on'}>$Lang::tr{'masquerading enabled'}</option>
+                                               <option value='off' $selected{'MASQUERADE_BLUE'}{'off'}>$Lang::tr{'masquerading disabled'}</option>
+                                       </select>
+                               </td>
+                       </tr>
+END
+       }
+
+       print <<END
+       </table>
+
+       <br>
+
 <table width='95%' cellspacing='0'>
 <tr bgcolor='$color{'color20'}'><td colspan='2' align='left'><b>$Lang::tr{'fw logging'}</b></td></tr>
 <tr><td align='left' width='60%'>$Lang::tr{'drop newnotsyn'}</td><td align='left'>on <input type='radio' name='DROPNEWNOTSYN' value='on' $checked{'DROPNEWNOTSYN'}{'on'} />/
index 331151f7819b3a8b0ae94383f3770c3cd993fb7b..969b2557fffde5033403d13aa75bd2cf61934fca 100644 (file)
@@ -3968,10 +3968,8 @@ if ($cgiparams{'TYPE'} eq 'net') {
                $errormessage = $Lang::tr{'name too long'};
                goto VPNCONF_ERROR;
            }
-           if ($cgiparams{'CERT_NAME'} !~ /^[a-zA-Z0-9 ,\.\-_]+$/) {
+           if ($cgiparams{'CERT_NAME'} eq '' || $cgiparams{'CERT_NAME'} !~ /^[a-zA-Z0-9 ,\.\-_]+$/) {
                $errormessage = $Lang::tr{'invalid input for name'};
-               unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!";
-               rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!";
                goto VPNCONF_ERROR;
            }
            if ($cgiparams{'CERT_EMAIL'} ne '' && (! &General::validemail($cgiparams{'CERT_EMAIL'}))) {
index 9c3be0b054446066331b13c2d039c28ed860306a..ba2455a96ca17dcf966ffc5cb2ecb81049552887 100644 (file)
@@ -172,6 +172,8 @@ unless (-e $acl_include) { system("touch $acl_include"); }
 unless (-e $browserdb) { system("touch $browserdb"); }
 unless (-e $mimetypes) { system("touch $mimetypes"); }
 
+my $HAVE_NTLM_AUTH = (-e "/usr/bin/ntlm_auth");
+
 open FILE, $browserdb;
 @useragentlist = sort { reverse(substr(reverse(substr($a,index($a,',')+1)),index(reverse(substr($a,index($a,','))),',')+1)) cmp reverse(substr(reverse(substr($b,index($b,',')+1)),index(reverse(substr($b,index($b,','))),',')+1))} grep !/(^$)|(^\s*#)/,<FILE>;
 close(FILE);
@@ -264,6 +266,8 @@ $proxysettings{'LDAP_PORT'} = '389';
 $proxysettings{'LDAP_BINDDN_USER'} = '';
 $proxysettings{'LDAP_BINDDN_PASS'} = '';
 $proxysettings{'LDAP_GROUP'} = '';
+$proxysettings{'NTLM_AUTH_GROUP'} = '';
+$proxysettings{'NTLM_AUTH_BASIC'} = 'off';
 $proxysettings{'NTLM_DOMAIN'} = '';
 $proxysettings{'NTLM_PDC'} = '';
 $proxysettings{'NTLM_BDC'} = '';
@@ -860,6 +864,7 @@ $checked{'AUTH_METHOD'}{'ncsa'} = '';
 $checked{'AUTH_METHOD'}{'ident'} = '';
 $checked{'AUTH_METHOD'}{'ldap'} = '';
 $checked{'AUTH_METHOD'}{'ntlm'} = '';
+$checked{'AUTH_METHOD'}{'ntlm-auth'} = '';
 $checked{'AUTH_METHOD'}{'radius'} = '';
 $checked{'AUTH_METHOD'}{$proxysettings{'AUTH_METHOD'}} = "checked='checked'";
 
@@ -891,6 +896,10 @@ $checked{'NTLM_USER_ACL'}{'positive'} = '';
 $checked{'NTLM_USER_ACL'}{'negative'} = '';
 $checked{'NTLM_USER_ACL'}{$proxysettings{'NTLM_USER_ACL'}} = "checked='checked'";
 
+$checked{'NTLM_AUTH_BASIC'}{'on'} = '';
+$checked{'NTLM_AUTH_BASIC'}{'off'} = '';
+$checked{'NTLM_AUTH_BASIC'}{$proxysettings{'NTLM_AUTH_BASIC'}} = "checked='checked'";
+
 $checked{'RADIUS_ENABLE_ACL'}{'off'} = '';
 $checked{'RADIUS_ENABLE_ACL'}{'on'} = '';
 $checked{'RADIUS_ENABLE_ACL'}{$proxysettings{'RADIUS_ENABLE_ACL'}} = "checked='checked'";
@@ -1686,18 +1695,33 @@ print <<END
 END
 ;
 
-print <<END
+my $auth_columns = 5;
+if ($HAVE_NTLM_AUTH) {
+       $auth_columns++;
+}
+my $auth_column_width = 100 / $auth_columns;
+
+print <<END;
 <table width='100%'>
 <tr>
-       <td colspan='5'><b>$Lang::tr{'advproxy AUTH method'}</b></td>
+       <td colspan='$auth_columns'><b>$Lang::tr{'advproxy AUTH method'}</b></td>
 </tr>
 <tr>
-       <td width='16%' class='base'><input type='radio' name='AUTH_METHOD' value='none' $checked{'AUTH_METHOD'}{'none'} />$Lang::tr{'advproxy AUTH method none'}</td>
-       <td width='16%' class='base'><input type='radio' name='AUTH_METHOD' value='ncsa' $checked{'AUTH_METHOD'}{'ncsa'} />$Lang::tr{'advproxy AUTH method ncsa'}</td>
-       <td width='16%' class='base'><input type='radio' name='AUTH_METHOD' value='ident' $checked{'AUTH_METHOD'}{'ident'} />$Lang::tr{'advproxy AUTH method ident'}</td>
-       <td width='16%' class='base'><input type='radio' name='AUTH_METHOD' value='ldap' $checked{'AUTH_METHOD'}{'ldap'} />$Lang::tr{'advproxy AUTH method ldap'}</td>
-       <td width='16%' class='base'><input type='radio' name='AUTH_METHOD' value='ntlm' $checked{'AUTH_METHOD'}{'ntlm'} />$Lang::tr{'advproxy AUTH method ntlm'}</td>
-       <td width='16%' class='base'><input type='radio' name='AUTH_METHOD' value='radius' $checked{'AUTH_METHOD'}{'radius'} />$Lang::tr{'advproxy AUTH method radius'}</td>
+       <td width='$auth_column_width%' class='base'><input type='radio' name='AUTH_METHOD' value='none' $checked{'AUTH_METHOD'}{'none'} />$Lang::tr{'advproxy AUTH method none'}</td>
+       <td width='$auth_column_width%' class='base'><input type='radio' name='AUTH_METHOD' value='ncsa' $checked{'AUTH_METHOD'}{'ncsa'} />$Lang::tr{'advproxy AUTH method ncsa'}</td>
+       <td width='$auth_column_width%' class='base'><input type='radio' name='AUTH_METHOD' value='ident' $checked{'AUTH_METHOD'}{'ident'} />$Lang::tr{'advproxy AUTH method ident'}</td>
+       <td width='$auth_column_width%' class='base'><input type='radio' name='AUTH_METHOD' value='ldap' $checked{'AUTH_METHOD'}{'ldap'} />$Lang::tr{'advproxy AUTH method ldap'}</td>
+       <td width='$auth_column_width%' class='base'><input type='radio' name='AUTH_METHOD' value='ntlm' $checked{'AUTH_METHOD'}{'ntlm'} />$Lang::tr{'advproxy AUTH method ntlm'}</td>
+END
+
+if ($HAVE_NTLM_AUTH) {
+       print <<END;
+       <td width='$auth_column_width%' class='base'><input type='radio' name='AUTH_METHOD' value='ntlm-auth' $checked{'AUTH_METHOD'}{'ntlm-auth'} />$Lang::tr{'advproxy AUTH method ntlm auth'}</td>
+END
+}
+
+print <<END
+       <td width='$auth_column_width%' class='base'><input type='radio' name='AUTH_METHOD' value='radius' $checked{'AUTH_METHOD'}{'radius'} />$Lang::tr{'advproxy AUTH method radius'}</td>
 </tr>
 </table>
 END
@@ -1976,6 +2000,35 @@ if ($proxysettings{'AUTH_METHOD'} eq 'ntlm') { print <<END
 END
 ; }
 
+# ===================================================================
+#  NTLM-AUTH settings
+# ===================================================================
+
+if ($proxysettings{'AUTH_METHOD'} eq 'ntlm-auth') {
+       print <<END;
+               <hr size ='1'>
+               <table width='100%'>
+                       <td width='20%' class='base'>$Lang::tr{'advproxy basic authentication'}:</td>
+                       <td width='40%'><input type='checkbox' name='NTLM_AUTH_BASIC' $checked{'NTLM_AUTH_BASIC'}{'on'} /></td>
+                       <td colspan='2'>&nbsp;</td>
+               </table>
+
+               <hr size='1' />
+
+               <table width='100%'>
+                       <tr>
+                               <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='40%'><input type='text' name='NTLM_AUTH_GROUP' value='$proxysettings{'NTLM_AUTH_GROUP'}' size='37' /></td>
+                               <td>&nbsp;</td>
+                               <td>&nbsp;</td>
+                       </tr>
+       </table>
+END
+}
+
 # ===================================================================
 #  LDAP auth settings
 # ===================================================================
@@ -3143,7 +3196,6 @@ END
        print FILE <<END
 
 cache_effective_user squid
-cache_effective_group squid
 umask 022
 
 pid_filename /var/run/squid.pid
@@ -3169,6 +3221,48 @@ END
                print FILE "\n";
        }
 
+       open (PORTS,"$acl_ports_ssl");
+       my @ssl_ports = <PORTS>;
+       close PORTS;
+
+       if (@ssl_ports) {
+               foreach (@ssl_ports) {
+                       print FILE "acl SSL_ports port $_";
+               }
+       }
+
+       open (PORTS,"$acl_ports_safe");
+       my @safe_ports = <PORTS>;
+       close PORTS;
+
+       if (@safe_ports) {
+               foreach (@safe_ports) {
+                       print FILE "acl Safe_ports port $_";
+               }
+       }
+
+       print FILE <<END
+
+acl IPFire_http  port $http_port
+acl IPFire_https port $https_port
+acl IPFire_ips              dst $netsettings{'GREEN_ADDRESS'}
+acl IPFire_networks         src "$acl_src_subnets"
+acl IPFire_servers          dst "$acl_src_subnets"
+acl IPFire_green_network    src $green_cidr
+acl IPFire_green_servers    dst $green_cidr
+END
+       ;
+       if ($netsettings{'BLUE_DEV'}) { print FILE "acl IPFire_blue_network     src $blue_cidr\n"; }
+       if ($netsettings{'BLUE_DEV'}) { print FILE "acl IPFire_blue_servers     dst $blue_cidr\n"; }
+       if (!-z $acl_src_banned_ip) { print FILE "acl IPFire_banned_ips       src \"$acl_src_banned_ip\"\n"; }
+       if (!-z $acl_src_banned_mac) { print FILE "acl IPFire_banned_mac       arp \"$acl_src_banned_mac\"\n"; }
+       if (!-z $acl_src_unrestricted_ip) { print FILE "acl IPFire_unrestricted_ips src \"$acl_src_unrestricted_ip\"\n"; }
+       if (!-z $acl_src_unrestricted_mac) { print FILE "acl IPFire_unrestricted_mac arp \"$acl_src_unrestricted_mac\"\n"; }
+       print FILE <<END
+acl CONNECT method CONNECT
+END
+       ;
+
        if ($proxysettings{'CACHE_SIZE'} > 0) {
                print FILE <<END
 maximum_object_size $proxysettings{'MAX_SIZE'} KB
@@ -3326,6 +3420,35 @@ END
                        }
                }
 
+               if ($proxysettings{'AUTH_METHOD'} eq 'ntlm-auth')
+               {
+                       print FILE "auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp";
+                       if ($proxysettings{'NTLM_AUTH_GROUP'}) {
+                               my $ntlm_auth_group = $proxysettings{'NTLM_AUTH_GROUP'};
+                               $ntlm_auth_group =~ s/\\/\+/;
+
+                               print FILE " --require-membership-of=\"$ntlm_auth_group\"";
+                       }
+                       print FILE "\n";
+
+                       print FILE "auth_param ntlm children $proxysettings{'AUTH_CHILDREN'}\n\n";
+
+                       # BASIC authentication
+                       if ($proxysettings{'NTLM_AUTH_BASIC'} eq "on") {
+                               print FILE "auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic";
+                               if ($proxysettings{'NTLM_AUTH_GROUP'}) {
+                                       my $ntlm_auth_group = $proxysettings{'NTLM_AUTH_GROUP'};
+                                       $ntlm_auth_group =~ s/\\/\+/;
+
+                                       print FILE " --require-membership-of=\"$ntlm_auth_group\"";
+                               }
+                               print FILE "\n";
+                               print FILE "auth_param basic children 10\n";
+                               print FILE "auth_param basic realm IPFire Web Proxy Server\n";
+                               print FILE "auth_param basic credentialsttl 2 hours\n\n";
+                       }
+               }
+
                if ($proxysettings{'AUTH_METHOD'} eq 'radius')
                {
                        print FILE "auth_param basic program $authdir/basic_radius_auth -h $proxysettings{'RADIUS_SERVER'} -p $proxysettings{'RADIUS_PORT'} ";
@@ -3421,48 +3544,6 @@ END
                print FILE "acl blocked_mimetypes rep_mime_type \"$mimetypes\"\n\n";
        }
 
-open (PORTS,"$acl_ports_ssl");
-my @ssl_ports = <PORTS>;
-close PORTS;
-
-if (@ssl_ports) {
-       foreach (@ssl_ports) {
-               print FILE "acl SSL_ports port $_";
-       }
-}
-
-open (PORTS,"$acl_ports_safe");
-my @safe_ports = <PORTS>;
-close PORTS;
-
-if (@safe_ports) {
-       foreach (@safe_ports) {
-               print FILE "acl Safe_ports port $_";
-       }
-}
-
-       print FILE <<END
-
-acl IPFire_http  port $http_port
-acl IPFire_https port $https_port
-acl IPFire_ips              dst $netsettings{'GREEN_ADDRESS'}
-acl IPFire_networks         src "$acl_src_subnets"
-acl IPFire_servers          dst "$acl_src_subnets"
-acl IPFire_green_network    src $green_cidr
-acl IPFire_green_servers    dst $green_cidr
-END
-       ;
-       if ($netsettings{'BLUE_DEV'}) { print FILE "acl IPFire_blue_network     src $blue_cidr\n"; }
-       if ($netsettings{'BLUE_DEV'}) { print FILE "acl IPFire_blue_servers     dst $blue_cidr\n"; }
-       if (!-z $acl_src_banned_ip) { print FILE "acl IPFire_banned_ips       src \"$acl_src_banned_ip\"\n"; }
-       if (!-z $acl_src_banned_mac) { print FILE "acl IPFire_banned_mac       arp \"$acl_src_banned_mac\"\n"; }
-       if (!-z $acl_src_unrestricted_ip) { print FILE "acl IPFire_unrestricted_ips src \"$acl_src_unrestricted_ip\"\n"; }
-       if (!-z $acl_src_unrestricted_mac) { print FILE "acl IPFire_unrestricted_mac arp \"$acl_src_unrestricted_mac\"\n"; }
-       print FILE <<END
-acl CONNECT method CONNECT
-END
-       ;
-
        if ($proxysettings{'CLASSROOM_EXT'} eq 'on') {
                print FILE <<END
 
index bfa0b89edb272fc013fb65a87543f4653af626a3..0e1409c73bf3294ae76e37e42042ced9b90318bc 100644 (file)
@@ -67,8 +67,7 @@ $ovpnip[3]=$ovpnip[3]+1;
 ############################################################################################################################
 ############################################# Samba Dienste fr Statusberprfung ##########################################
 
-my %servicenames = ('SMB Daemon' => 'smbd','NetBIOS Nameserver' => 'nmbd');
-#my %servicenames = ('SMB Daemon' => 'smbd','NetBIOS Nameserver' => 'nmbd','Winbind Daemon' => 'winbindd');
+my %servicenames = ('SMB Daemon' => 'smbd', 'NetBIOS Nameserver' => 'nmbd', 'Winbind Daemon' => 'winbindd');
 
 &Header::showhttpheaders();
 
@@ -192,6 +191,10 @@ if ($sambasettings{'ACTION'} eq 'globalresetyes')
        refreshpage();
        }
 
+if ($sambasettings{'ACTION'} eq 'join') {
+       $message .= &joindomain($sambasettings{'USERNAME'}, $sambasettings{'PASSWORD'});
+}
+
 ############################################################################################################################
 ################################################ Sicherheitsabfrage für den Reset ##########################################
 
@@ -276,6 +279,7 @@ print FILE <<END
 netbios name = $sambasettings{'NETBIOSNAME'}
 server string = $sambasettings{'SRVSTRING'}
 workgroup = $sambasettings{'WORKGRP'}
+realm = $mainsettings{'DOMAINNAME'}
 passdb backend = smbpasswd
 
 wide links = $sambasettings{'WIDELINKS'}
@@ -315,8 +319,12 @@ username level = 1
 wins support = $sambasettings{'WINSSUPPORT'}
 wins server = $sambasettings{'WINSSRV'}
 
+winbind separator = +
+winbind uid = 10000-20000
+winbind gid = 10000-20000
+winbind use default domain = yes
+
 log file       = /var/log/samba/samba-log.%m
-lock directory = /var/lock/samba
 pid directory  = /var/run/
 log level = $sambasettings{'LOGLEVEL'}
 syslog = $sambasettings{'SYSLOGLEVEL'}
@@ -384,6 +392,15 @@ if ($errormessage)
        &Header::closebox();
        }
 
+if ($message) {
+       $message = &Header::cleanhtml($message);
+       $message =~ s/\n/<br>/g;
+
+       &Header::openbox('100%', 'left', $Lang::tr{'messages'});
+       print "$message\n";
+       &Header::closebox();
+}
+
 ############################################################################################################################
 ########################################## Aktivieren von Checkboxen und Dropdowns #########################################
 
@@ -440,14 +457,6 @@ $selected{'SECURITY'}{$sambasettings{'SECURITY'}} = "selected='selected'";
 print <<END
 <br />
 <table width='95%' cellspacing='0'>
-END
-;
-if ( $message ne "" )
-       {
-       print "<tr><td colspan='3' align='left'><font color='red'>$message</font>";
-       }
-
-print <<END
 <tr bgcolor='$color{'color20'}'><td colspan='2' align='left'><b>$Lang::tr{'all services'}</b></td></tr>
 </table><table width='95%' cellspacing='0'>
 END
@@ -875,6 +884,55 @@ END
 &Header::closebox();
 }
 
+if ($sambasettings{'SECURITY'} eq "ADS") {
+       &Header::openbox('100%', 'center', $Lang::tr{'samba join a domain'});
+
+       my $AD_DOMAINNAME = uc($mainsettings{'DOMAINNAME'});
+
+       print <<END;
+       <form method="POST" action="$ENV{'SCRIPT_NAME'}">
+               <input type="hidden" name="ACTION" value="join">
+
+               <table width="95%">
+                       <tbody>
+                               <tr>
+                                       <td width="40%">
+                                               $Lang::tr{'domain'}
+                                       </td>
+                                       <td>
+                                               $AD_DOMAINNAME
+                                       </td>
+                               </tr>
+                               <tr>
+                                       <td width="40%">
+                                               $Lang::tr{'administrator username'}
+                                       </td>
+                                       <td>
+                                               <input type="text" name="USERNAME" size="30">
+                                       </td>
+                               </tr>
+                               <tr>
+                                       <td width="40%">
+                                               $Lang::tr{'administrator password'}
+                                       </td>
+                                       <td>
+                                               <input type="password" name="PASSWORD" size="30">
+                                       </td>
+                               </tr>
+                               <tr>
+                                       <td></td>
+                                       <td>
+                                               <input type="submit" value="$Lang::tr{'samba join domain'}">
+                                       </td>
+                               </tr>
+                       </tbody>
+               </table>
+       </form>
+END
+
+       &Header::closebox();
+}
+
 ############################################################################################################################
 ############################################### Verwalten von Freigaben ####################################################
 
@@ -1304,3 +1362,13 @@ sub isrunning
                }
        return $status;
        }
+
+sub joindomain {
+       my $username = shift;
+       my $password = shift;
+
+       my @options = ("/usr/local/bin/sambactrl", "join", $username, $password);
+       my $output = qx(@options);
+
+       return $output;
+}
index 9f7e6ff8240356aba1322650c6f8b6076234d7db..1e50de92879f99d52c9be94bbefa6cad60520f59 100644 (file)
@@ -935,7 +935,7 @@ if (($besettings{'ACTION'} eq $Lang::tr{'urlfilter install blacklist'}) && ($bes
                close FILE;
 
                system("rm -f $dbdir/$besettings{'BE_NAME'}/*.db");
-               system("/usr/sbin/squidGuard -c $editdir/install.conf -C all");
+               system("/usr/bin/squidGuard -c $editdir/install.conf -C all");
                system("chmod a+w $dbdir/$besettings{'BE_NAME'}/*.db");
 
                &readblockcategories;
@@ -2722,9 +2722,9 @@ sub setpermissions
 
 sub writeconfigfile
 {
-       my $executables = "\\.\(ade|adp|asx|bas|bat|chm|com|cmd|cpl|crt|dll|eml|exe|hiv|hlp|hta|inc|inf|ins|isp|jse|jtd|lnk|msc|msh|msi|msp|mst|nws|ocx|oft|ops|pcd|pif|plx|reg|scr|sct|sha|shb|shm|shs|sys|tlb|tsp|url|vbe|vbs|vxd|wsc|wsf|wsh\)\$";
-       my $audiovideo = "\\.\(aiff|asf|avi|dif|divx|mov|movie|mp3|mpe?g?|mpv2|ogg|ra?m|snd|qt|wav|wma|wmf|wmv\)\$";
-       my $archives = "\\.\(bin|bz2|cab|cdr|dmg|gz|hqx|rar|smi|sit|sea|tar|tgz|zip\)\$";
+       my $executables = "/[^/]*\\.\(ade|adp|asx|bas|bat|chm|com|cmd|cpl|crt|dll|eml|exe|hiv|hlp|hta|inc|inf|ins|isp|jse|jtd|lnk|msc|msh|msi|msp|mst|nws|ocx|oft|ops|pcd|pif|plx|reg|scr|sct|sha|shb|shm|shs|sys|tlb|tsp|url|vbe|vbs|vxd|wsc|wsf|wsh\)\$";
+       my $audiovideo = "/[^/]*\\.\(aiff|asf|avi|dif|divx|flv|mkv|mov|movie|mp3|mp4|mpe?g?|mpv2|ogg|ra?m|snd|qt|wav|wma|wmf|wmv\)\$";
+       my $archives = "/[^/]*\\.\(7z|bin|bz2|cab|cdr|dmg|gz|hqx|rar|smi|sit|sea|tar|tgz|zip\)\$";
 
        my $ident = " anonymous";
 
@@ -2854,11 +2854,13 @@ sub writeconfigfile
                if ($filtersettings{'ENABLE_SAFESEARCH'} eq 'on')
                {
                        print FILE "    # rewrite safesearch\n";
-                       print FILE "    s@(.*\\Wgoogle\\.\\w+/(webhp|search|imghp|images|grphp|groups|frghp|froogle)\\?)(.*)(\\bsafe=\\w+)(.*)\@\\1\\3safe=strict\\5\@i\n";
-                       print FILE "    s@(.*\\Wgoogle\\.\\w+/(webhp|search|imghp|images|grphp|groups|frghp|froogle)\\?)(.*)\@\\1safe=strict\\\&\\3\@i\n";
+                       print FILE "    s@(.*\\Wgoogle\\.\\w+/(webhp|search|imghp|images|grphp|groups|nwshp|frghp|froogle)\\?)(.*)(\\bsafe=\\w+)(.*)\@\\1\\3safe=strict\\5\@i\n";
+                       print FILE "    s@(.*\\Wgoogle\\.\\w+/(webhp|search|imghp|images|grphp|groups|nwshp|frghp|froogle)\\?)(.*)\@\\1safe=strict\\\&\\3\@i\n";
                        print FILE "    s@(.*\\Wsearch\\.yahoo\\.\\w+/search\\W)(.*)(\\bvm=\\w+)(.*)\@\\1\\2vm=r\\4\@i\n";
                        print FILE "    s@(.*\\Wsearch\\.yahoo\\.\\w+/search\\W.*)\@\\1\\\&vm=r\@i\n";
                        print FILE "    s@(.*\\Walltheweb\\.com/customize\\?)(.*)(\\bcopt_offensive=\\w+)(.*)\@\\1\\2copt_offensive=on\\4\@i\n";
+                       print FILE "    s@(.*\\Wbing\\.\\w+/)(.*)(\\badlt=\\w+)(.*)\@\\1\\2adlt=strict\\4\@i\n";
+                       print FILE "    s@(.*\\Wbing\\.\\w+/.*)\@\\1\\\&adlt=strict\@i\n";
                }
 
                print FILE "}\n\n";
index 556e65cfd3db0ab1884a3bd1d1164f9f0ca77f13..b7692ee7b7e659c8a5383eb221f20f6a46916635 100644 (file)
 'addon' => 'Addons',
 'admin user password has been changed' => 'Passwort für Benutzer admin wurde geändert.',
 'admin users' => 'Liste der Benutzer mit Super User Rechten',
+'administrator password' => 'Administrator-Passwort',
 'administrator user password' => 'Passwort für Benutzer &quot;admin&quot;:',
+'administrator username' => 'Administrator-Benutzername',
+'adsl settings' => 'ADSL-Einstellungen',
 'advanced' => 'Erweitert',
 'advanced server' => 'Erweiterte Server-Optionen',
 'advproxy AUTH always required' => 'Authentifizierung für uneingeschränkte Quelladressen erforderlich',
 'advproxy AUTH method ldap' => 'LDAP',
 'advproxy AUTH method ncsa' => 'Lokal',
 'advproxy AUTH method none' => 'Keine',
-'advproxy AUTH method ntlm' => 'Windows',
+'advproxy AUTH method ntlm' => 'Windows NT4-Domäne',
+'advproxy AUTH method ntlm auth' => 'Windows Active Directory',
 'advproxy AUTH method radius' => 'RADIUS',
 'advproxy AUTH no auth' => 'Domains ohne Authentifizierung (eine pro Zeile)',
 'advproxy AUTH number of auth processes' => 'Anzahl der Authentifizierungsprozesse',
 'advproxy back to main page' => 'Zurück zur Hauptseite',
 'advproxy banned ip clients' => 'Gesperrte IP-Adressen (eine pro Zeile)',
 'advproxy banned mac clients' => 'Gesperrte MAC-Adressen (eine pro Zeile)',
+'advproxy basic authentication' => 'Erlaube HTTP-Basic-Authentifizierung',
 'advproxy cache management' => 'Cacheverwaltung',
 'advproxy cache replacement policy' => 'Cache Ersetzungsrichtlinie',
 'advproxy cache-digest' => 'Cache-Digest-Erstellung aktivieren',
 'advproxy fake useragent' => 'Gefälschter Useragent für externe Web-Sites',
 'advproxy friday' => 'Fre',
 'advproxy from' => 'Von',
+'advproxy group access control' => 'Gruppenbasierte Zugriffskontrolle',
+'advproxy group required' => 'Erforderliche Gruppe',
 'advproxy hdd cache size' => 'Cachegröße auf der Festplatte (MB)',
 'advproxy invalid num of children' => 'Ungültige Anzahl der Filter-Prozesse',
 'advproxy log enabled' => 'Protokoll aktiviert',
 'fwdfw dnat porterr' => 'Für NAT-Regeln muss ein einzelner Port oder Portbereich angegeben werden.',
 'fwdfw dnat porterr2' => 'Externer Port (NAT) darf nur angegeben werden, wenn ein Ziel-Port definiert ist.',
 'fwdfw edit' => 'Bearbeiten',
+'fwdfw err concon' => 'Ungültige Zahl für gleichzeitige Verbindungen',
 'fwdfw err nosrc' => 'Keine Quelle ausgewählt',
 'fwdfw err nosrcip' => 'Bitte Quell-IP-Adresse angeben',
 'fwdfw err notgt' => 'Kein Ziel ausgewählt',
 'fwdfw err notgtip' => 'Bitte Ziel-IP-Adresse angeben',
 'fwdfw err prot_port' => 'Bei dem gewählten Protokoll sind Quell- und Zielport nicht erlaubt',
 'fwdfw err prot_port1' => 'Bei Nutzung von Quell- oder Zielport muss als Protokoll TCP oder UDP gewählt werden.',
+'fwdfw err ratecon' => 'Ungültiger Wert bei Anzahl der Verbindungen für Ratenlimitierung',
 'fwdfw err remark' => 'Die Bemerkung enthält ungültige Zeichen',
 'fwdfw err ruleexists' => 'Eine identische Regel existiert bereits',
 'fwdfw err same' => 'Quelle und Ziel sind identisch',
 'fwdfw hint mac' => 'Sie nutzen MAC-Adressen in der Zielgruppe. Diese werden bei der Regelerstellung übersprungen.',
 'fwdfw iface' => 'Interface',
 'fwdfw ipsec network' => 'IPsec-Netzwerke:',
+'fwdfw limitconcon' => 'Beschränke gleichzeitige Verbindungen je IP-Adresse',
 'fwdfw log' => 'Log',
 'fwdfw log rule' => 'Logging aktivieren',
 'fwdfw man port' => 'Port(s):',
 'fwdfw many' => 'Diverse',
+'fwdfw maxconcon' => 'Max. gleichzeitige Verbindungen',
 'fwdfw menu' => 'Firewall',
 'fwdfw movedown' => 'Herunter',
 'fwdfw moveup' => 'Herauf',
 'fwdfw natport used' => 'Der eingegebene Port wird bereits von einer anderen DNAT-Regel benutzt.',
 'fwdfw newrule' => 'Neue Regel erstellen',
+'fwdfw numcon' => 'Anzahl der Verbindungen',
 'fwdfw p2p txt' => 'P2P-Netzwerke erlauben/verbieten.',
 'fwdfw pol allow' => 'Zugelassen',
 'fwdfw pol block' => 'Blockiert',
 'fwdfw pol title' => 'Standardverhalten der Firewall',
 'fwdfw prot41' => 'IPv6 Encapsulation (Protokoll 41)',
 'fwdfw prot41 short' => 'IPv6 Encap',
+'fwdfw ratelimit' => 'Ratenlimitierung für neue Verbindungen',
 'fwdfw red' => 'ROT',
 'fwdfw reread' => 'Änderungen übernehmen',
 'fwdfw rule action' => 'Regelaktion:',
 'fwhost err remark' => 'Ungültige Bemerkung. Erlaubte Zeichen: Klein- und Großbuchstaben, Bindestrich, Unterstrich, Runde Klammern, Semikolon, Punkt.',
 'fwhost err srv exists' => 'Ein Service mit diesem Namen existiert bereits',
 'fwhost err srvexist' => 'Dieser Dienst ist bereits in der Gruppe',
-'fwhost err sub32' => 'Bitte einen einzelnen Host hinzufügen, keine Netzwerke',
+'fwhost err sub32' => 'Bitte Netzwerke hinzufügen, keinen einzelnen Host',
 'fwhost green' => 'Grün',
 'fwhost hint' => 'Hinweis',
 'fwhost hosts' => 'Firewall-Hosts',
 'map to guest' => 'Map to Guest',
 'march' => 'März',
 'marked' => 'Markiert',
+'masquerade blue' => 'NAT auf BLAU',
+'masquerade green' => 'NAT auf GREEN',
+'masquerade orange' => 'NAT auf ORANGE',
+'masquerading' => 'Masquerading/NAT',
+'masquerading disabled' => 'NAT ausgeschaltet',
+'masquerading enabled' => 'NAT eingeschaltet',
 'max bandwith' => 'Maximale Bandbreite',
 'max incoming size' => 'Max. eingehende Größe (kB):',
 'max lease time' => 'Max. Haltezeit in min:',
 'memory' => 'Speicher',
 'memory information' => 'Speicherinformationen',
 'memory usage per' => 'Speichernutzung pro',
+'messages' => 'Meldungen',
 'messages logging' => 'Logeinstellungen für /var/log/messages',
 'method' => 'Methode:',
 'min costs' => 'Minimale Kosten',
 'running' => 'LÄUFT',
 'safe removal of umounted device' => 'Sie können gefahrlos das abgemeldete Gerät entfernen',
 'samba' => 'Samba',
+'samba join a domain' => 'Einer Domäne beitreten',
+'samba join domain' => 'Domäne beitreten',
 'samba status' => 'Samba Status',
 'saturday' => 'Samstag',
 'save' => 'Speichern',
index f4fafca0801b1bf271781c7d9f2f6734e8d4c90c..19864093499c5797630ea79631a0d27a0760165c 100644 (file)
 'addons' => 'Addons',
 'admin user password has been changed' => 'Admin user password has been changed.',
 'admin users' => 'User with superuser rights',
+'administrator password' => 'Administrator password',
 'administrator user password' => 'Admin user password:',
+'administrator username' => 'Administrator username',
+'adsl settings' => 'ADSL settings',
 'advanced' => 'Advanced',
 'advanced server' => 'Advanced server options',
 'advproxy AUTH always required' => 'Require authentication for unrestricted source addresses',
 'advproxy AUTH method ldap' => 'LDAP',
 'advproxy AUTH method ncsa' => 'Local',
 'advproxy AUTH method none' => 'None',
-'advproxy AUTH method ntlm' => 'Windows',
+'advproxy AUTH method ntlm' => 'Windows NT4 Domain',
+'advproxy AUTH method ntlm auth' => 'Windows Active Directory',
 'advproxy AUTH method radius' => 'RADIUS',
 'advproxy AUTH no auth' => 'Domains without authentication (one per line)',
 'advproxy AUTH number of auth processes' => 'Number of authentication processes',
 'advproxy back to main page' => 'Back to main page',
 'advproxy banned ip clients' => 'Banned IP addresses (one per line)',
 'advproxy banned mac clients' => 'Banned MAC addresses (one per line)',
+'advproxy basic authentication' => 'Allow HTTP Basic authentication',
 'advproxy cache management' => 'Cache management',
 'advproxy cache replacement policy' => 'Cache replacement policy',
 'advproxy cache-digest' => 'Enable Cache-Digest Generation',
 'advproxy fake useragent' => 'Fake useragent submitted to external sites',
 'advproxy friday' => 'Fri',
 'advproxy from' => 'From',
+'advproxy group access control' => 'Group based access control',
+'advproxy group required' => 'Required group',
 'advproxy hdd cache size' => 'Harddisk cache size (MB)',
 'advproxy invalid num of children' => 'Invalid number of filter processes',
 'advproxy log enabled' => 'Log enabled',
 'fwdfw dnat porterr' => 'You have to select a single port or portrange (tcp/udp) for NAT',
 'fwdfw dnat porterr2' => 'Cannot use external port (NAT) when no destination port is defined.',
 'fwdfw edit' => 'Edit',
+'fwdfw err concon' => 'Invalid number for concurrent connections',
 'fwdfw err nosrc' => 'No source selected.',
 'fwdfw err nosrcip' => 'Please provide a source IP address.',
 'fwdfw err notgt' => 'No destination selected.',
 'fwdfw err notgtip' => 'Please provide a destination IP address.',
 'fwdfw err prot_port' => 'Source- or targetport are not allowed with selected protocol',
 'fwdfw err prot_port1' => 'When using Source- or targetport you have to select TCP or UDP for protocol',
+'fwdfw err ratecon' => 'Invalid value for connections in Rate-limit',
 'fwdfw err remark' => 'Invalid characters in remark.',
 'fwdfw err ruleexists' => 'This rule already exists.',
 'fwdfw err same' => 'Source and destination are identical.',
 'fwdfw hint mac' => 'The destination group contains MAC addresses, which will be skipped during rule creation.',
 'fwdfw iface' => 'Interface',
 'fwdfw ipsec network' => 'IPsec networks:',
+'fwdfw limitconcon' => 'Limit concurrent connections per IP address',
 'fwdfw log' => 'Log',
 'fwdfw log rule' => 'Log rule',
 'fwdfw man port' => 'Port(s):',
 'fwdfw many' => 'Many',
+'fwdfw maxconcon' => 'Max. concurrent connections',
 'fwdfw menu' => 'Firewall',
 'fwdfw movedown' => 'Move down',
 'fwdfw moveup' => 'Move up',
 'fwdfw natport used' => 'The given port for NAPT is already in use by an other DNAT rule.',
 'fwdfw newrule' => 'New rule',
+'fwdfw numcon' => 'Number of connections',
 'fwdfw p2p txt' => 'Grant/deny access to P2P networks.',
 'fwdfw pol allow' => 'Allowed',
 'fwdfw pol block' => 'Blocked',
 'fwdfw pol title' => 'Default firewall behaviour',
 'fwdfw prot41' => 'IPv6 Encapsulation (Protocol 41)',
 'fwdfw prot41 short' => 'IPv6 Encap',
+'fwdfw ratelimit' => 'Rate-limit new connections',
 'fwdfw red' => 'RED',
 'fwdfw reread' => 'Apply changes',
 'fwdfw rule action' => 'Rule action:',
 'fwhost err remark' => 'Invalid remark. Allowed characters: Upper- and lowercase letters, digits, space, dash, braces, semicolon, pipe and dot.',
 'fwhost err srv exists' => 'A service with the same name already exists',
 'fwhost err srvexist' => 'This service already exists in the group',
-'fwhost err sub32' => 'Please add a single host, not a network.',
+'fwhost err sub32' => 'Please add a network, not a single host',
 'fwhost green' => 'Green',
 'fwhost hint' => 'Note',
 'fwhost hosts' => 'Firewall Hosts',
 'map to guest' => 'Map to Guest',
 'march' => 'March',
 'marked' => 'Marked',
+'masquerade blue' => 'Masquerade BLUE',
+'masquerade green' => 'Masquerade GREEN',
+'masquerade orange' => 'Masquerade ORANGE',
+'masquerading' => 'Masquerading',
+'masquerading disabled' => 'Masquerading disabled',
+'masquerading enabled' => 'Masquerading enabled',
 'max bandwith' => 'Maximum bandwith',
 'max incoming size' => 'Max incoming size (KB):',
 'max lease time' => 'Max lease time (mins):',
 'memory' => 'Memory',
 'memory information' => 'Memory information',
 'memory usage per' => 'Memory Usage per',
+'messages' => 'Messages',
 'messages logging' => 'Logsettings for /var/log/messages',
 'method' => 'Method:',
 'min costs' => 'Minimum costs',
 'running' => 'RUNNING',
 'safe removal of umounted device' => 'You can safely remove the unmounted device',
 'samba' => 'Samba',
+'samba join a domain' => 'Join a domain',
+'samba join domain' => 'Join domain',
 'samba status' => 'Samba Status',
 'saturday' => 'Saturday',
 'save' => 'Save',
 'swap usage per' => 'Swap usage per',
 'system' => 'System',
 'system graphs' => 'System Graphs',
-'system has hwrng' => 'This system has got a hardware random number generator.',
-'system has rdrand' => 'This system has got support for Intel(R) RDRAND.',
+'system has hwrng' => 'This system has a hardware random number generator.',
+'system has rdrand' => 'This system has support for Intel(R) RDRAND.',
 'system information' => 'System Information',
 'system log viewer' => 'System Log Viewer',
 'system logs' => 'System Logs',
index 2be3d36e4c51b3edf0c290f159bc091d1ff26e1b..8c757a9b39373a41d514f6d396ea241927e56194 100644 (file)
 'advproxy AUTH method ldap' => 'LDAP',
 'advproxy AUTH method ncsa' => 'Local',
 'advproxy AUTH method none' => 'Ninguno',
-'advproxy AUTH method ntlm' => 'Windows',
 'advproxy AUTH method radius' => 'RADIUS',
 'advproxy AUTH no auth' => 'Dominios sin autenticación (uno por línea)',
 'advproxy AUTH number of auth processes' => 'Número de proceso de autenticación',
index f4e9518ff46d70a6fb5ae1cb32a8488ae7b24b98..ccd61cb407bff7bbb46a992fed8e19bba269b6d3 100644 (file)
 'advproxy AUTH method ldap' => 'LDAP',
 'advproxy AUTH method ncsa' => 'Local',
 'advproxy AUTH method none' => 'Rien',
-'advproxy AUTH method ntlm' => 'Windows',
 'advproxy AUTH method radius' => 'RADIUS',
 'advproxy AUTH no auth' => 'Domaines sans authentification (un par ligne)',
 'advproxy AUTH number of auth processes' => 'Nombre de processus d\'authentification',
index b9e4c6f764b500c8f342945234f26b9b8337f526..fdad1d3abda7b5ff9d91005e578ad06dbbde3bef 100644 (file)
 'advproxy AUTH method ldap' => 'LDAP',
 'advproxy AUTH method ncsa' => 'Lokaal',
 'advproxy AUTH method none' => 'Geen',
-'advproxy AUTH method ntlm' => 'Windows',
 'advproxy AUTH method radius' => 'RADIUS',
 'advproxy AUTH no auth' => 'Domeinen zonder authenticatie (een per regel)',
 'advproxy AUTH number of auth processes' => 'Aantal authenticatieprocessen',
index a79eed0e969b26b87b180d6cf31e1e95d7d1a211..5a205e1dee2e973ee8c6246ee1b16ed6de6131e6 100644 (file)
 'advproxy AUTH method ldap' => 'LDAP',
 'advproxy AUTH method ncsa' => 'Local',
 'advproxy AUTH method none' => 'None',
-'advproxy AUTH method ntlm' => 'Windows',
 'advproxy AUTH method radius' => 'RADIUS',
 'advproxy AUTH no auth' => 'Domeny bez autoryzacji (jedna w linii)',
 'advproxy AUTH number of auth processes' => 'Liczba procesów autoryzujących',
index e3aaab4fb71a0e3d61d324ebfd7edc2bdbd8746c..38b844169eb5ecb87121657d806f1d8d45b75c19 100644 (file)
 'advproxy AUTH method ldap' => 'LDAP',
 'advproxy AUTH method ncsa' => 'Локальный',
 'advproxy AUTH method none' => 'Нет',
-'advproxy AUTH method ntlm' => 'Windows',
 'advproxy AUTH method radius' => 'RADIUS',
 'advproxy AUTH no auth' => 'Домен без аутентификации (один на строчку)',
 'advproxy AUTH number of auth processes' => 'Кол-во процессов аутентификации',
index 459a80ceb529744a24ed404068f469ac4f778e18..90eed2d121082c75f06f7d8dbc7d2682bd030ae4 100644 (file)
@@ -10,7 +10,6 @@
 'Choose Rule' => 'Aşağıdaki kurallardan <u>birini</u> seçin.',
 'Class' => 'Sınıf',
 'Class was deleted' => 'with potential subclasses was deleted',
-'Client status and controlc' => 'İstemci durum ve kontrolü:',
 'ConnSched action' => 'Eylem:',
 'ConnSched add action' => 'Eylem ekle',
 'ConnSched change profile title' => 'Profili değitirin:',
@@ -40,6 +39,8 @@
 'MB read' => 'Okunan MB',
 'MB written' => 'Yazılan MB',
 'MTU' => 'MTU boyutu:',
+'MTU settings' => 'MTU ayarları:',
+'Number of Countries for the pie chart' => 'Pasta grafiği için ülkelerin sayısı',
 'Number of IPs for the pie chart' => 'Pasta grafiği için IP numarası',
 'Number of Ports for the pie chart' => 'Pasta grafiği için bağlantı noktası sayısı',
 'OVPN' => 'OpenVPN',
 'addons' => 'Eklentiler',
 'admin user password has been changed' => 'Yönetici kullanıcı şifresi değiştirildi.',
 'admin users' => 'Yetkili kullanıcı hakları ile kullanıcı',
+'administrator password' => 'Admin parolası',
 'administrator user password' => 'Admin kullanıcı parolası:',
+'administrator username' => 'Admin kullanıcısı',
+'adsl settings' => 'ADSL ayarları',
 'advanced' => 'Gelişmiş',
 'advanced server' => 'Gelişmiş Sunucu Seçenekleri',
 'advproxy AUTH always required' => 'Sınırsız kaynak adresleri için kimlik doğrulaması iste',
 'advproxy AUTH method ncsa' => 'Yerel',
 'advproxy AUTH method none' => 'Yok',
 'advproxy AUTH method ntlm' => 'Windows',
+'advproxy AUTH method ntlm auth' => 'Windows Aktif Dizini',
 'advproxy AUTH method radius' => 'RADIUS',
 'advproxy AUTH no auth' => 'Kimlik doğrulaması olmayan hedefler (her satırda bir tane)',
 'advproxy AUTH number of auth processes' => 'Kimlik doğrulama işlemlerinin sayısı',
 'advproxy back to main page' => 'Ana Sayfaya Geri Dön',
 'advproxy banned ip clients' => 'Yasaklanan IP adresleri (her satırda bir tane)',
 'advproxy banned mac clients' => 'Yasaklanan MAC adresleri (her satırda bir tane)',
+'advproxy basic authentication' => 'Temel HTTP kimlik doğrulama izni',
 'advproxy cache management' => 'Önbellek yönetimi',
 'advproxy cache replacement policy' => 'Önbellek değiştirme kuralı',
 'advproxy cache-digest' => 'Önbellek-özeti üretimini aktifleştir',
 'advproxy fake useragent' => 'Sahte yönlendiriciyi harici sitelere gönder',
 'advproxy friday' => 'Cum',
 'advproxy from' => 'Başlangıç',
+'advproxy group access control' => 'Grup tabanlı erişim kontrolü',
+'advproxy group required' => 'Gerekli grup',
 'advproxy hdd cache size' => 'Sabit disk önbellek boyutu (MB)',
 'advproxy invalid num of children' => 'Filtre işlemleri geçersiz sayıda',
 'advproxy log enabled' => 'Günlük aktif',
 'cant change certificates' => 'Sertikalar değiştirilemiyor.',
 'cant enable xtaccess' => 'İlgili bağlantı noktası yönlendirme kuralı devre dışı, bu nedenle bu kural için harici erişimi aktifleştirmelisiniz.',
 'cant start openssl' => 'OpenSSH başlatılamıyor',
+'capabilities' => 'Kapasite',
 'caps all' => 'TÜMÜ',
 'capsclosed' => 'BAĞLANTI YOK',
 'capsinactive' => 'PASİF',
 'december' => 'Aralık',
 'deep scan directories' => 'Ardışık tarama',
 'def lease time' => 'Varsayılan Kira Zamanı',
+'default' => 'Varsayılan',
 'default ip' => 'Varsayılan IP adresi',
 'default lease time' => 'Varsayılan kira zamanı (dakika):',
 'default networks' => 'Varsayılan ağlar',
 'details' => 'Detaylar',
 'device' => 'Aygıt',
 'devices on blue' => 'Mavi üzerindeki aygıtlar',
+'dh' => 'Anahtar değişim parametreleri',
+'dh key move failed' => 'Anahtar değişim parametreleri taşınması başarısız.',
+'dh key warn' => '1024 veya 2048 bit uzunluğunda anahtar değişim paremetrelerini oluşturma birkaç dakika sürer. 3072 veya 4096 bit uzunluğundaki anahtar oluşturma ise birkaç saat sürebilir. Lütfen sabırlı olun.',
+'dh key warn1' => 'Küçük entropi veya zayıf sistemler için yükleme fonksiyonu kullanımı ile uzun anahtar değişim parametreleri yüklemesi tavsiye edilir.',
+'dh name is invalid' => 'Geçersiz ad. Lütfen "dh1024.pem" biçiminde ad kullanın.',
+'dh parameter' => 'Anahtar değişim parametreleri',
 'dhcp advopt add' => 'DHCP seçeneği ekle',
 'dhcp advopt added' => 'DHCP seçeneği eklendi',
 'dhcp advopt blank value' => 'DHCP seçeneği değeri boş olamaz.',
 'dnsforward entries' => 'Güncel kayıtlar:',
 'dnsforward forward_server' => 'Ad sunucusu',
 'dnsforward zone' => 'Bölge',
+'dnssec aware' => 'DNSSEC Duyarlılığı',
+'dnssec information' => 'DNSSEC Bilgisi',
+'dnssec not supported' => 'DNSSEC desteklenmiyor',
+'dnssec validating' => 'DNSSEC Doğrulama',
 'do not log this port list' => 'Otorumdan hemen önce bu bağlantı noktaları listesini bırak (günlük boyutunu küçültür)',
 'dod' => 'Çevirmeli bağlantı üzerinden talep et',
 'dod for dns' => 'DNS için çevirmeli bağlantı üzerinden talep et:',
 'download' => 'İndir',
 'download ca certificate' => 'CA sertifikası indir',
 'download certificate' => 'Sertifika indir',
+'download dh parameter' => 'Anahtar değişimi parametrelerini indir',
 'download host certificate' => 'Ana bilgisayar belgesi indir',
 'download new ruleset' => 'Yeni Kural Kümesi İndir',
 'download pkcs12 file' => 'PKCS12 dosyasını indir',
 'download root certificate' => 'Root sertifikasını indir',
+'download tls-auth key' => 'Tls kimlik doğrulama anahtarını indir',
 'dpd action' => 'Hareketsiz eş algılama eylemi',
 'dpd delay' => 'Gecikme',
 'dpd timeout' => 'Zaman Aşımı',
 'firewall log' => 'Güvenlik duvarı günlüğü',
 'firewall log viewer' => 'Güvenlik Duvarı Günlük Görüntüleyicisi',
 'firewall logs' => 'Güvenlik Duvarı Günlükleri',
+'firewall logs country' => 'Fw günlük grafikleri (Ülke)',
 'firewall logs ip' => 'Gd-Günlük Grafikleri (IP)',
 'firewall logs port' => 'Gd-Günlük Grafikleri (Port)',
 'firewall rules' => 'Güvenlik Duvarı Kuralları',
 'g.lite' => 'KALDIRILACAK',
 'gateway' => 'Ağ geçidi',
 'gateway ip' => 'Ağ Geçidi IP Adresi',
+'gen dh' => 'Yeni anahtar değişimi parametrelerini oluştur',
 'gen static key' => 'Statik bir anahtar oluştur',
 'generate' => 'Yönetici/Sunucu Sertifikası Oluştur',
 'generate a certificate' => 'Sertifika oluştur:',
+'generate dh key' => 'Anahtar değişimi parametrelerini oluştur',
 'generate iso' => 'ISO oluştur',
 'generate root/host certificates' => 'Yönetici/Sunucu Sertifikası Oluştur',
 'generate tripwire keys and init' => 'tripwire anahtarları ve init oluştur',
 'ike integrity' => 'IKE Bütünlüğü:',
 'ike lifetime' => 'IKE Yaşam Süresi:',
 'ike lifetime should be between 1 and 8 hours' => 'IKE yaşam süresi 1 ila 8 saat arasında olmalıdır.',
+'imei' => 'IMEI',
 'import' => 'Al',
 'importkey' => 'PSK Al',
+'imsi' => 'IMSI',
 'in' => 'içinde',
 'inactive' => 'Pasif',
 'include logfiles' => 'Günlük dosyaları dahil',
 'map to guest' => 'Ziyaretçi haritası',
 'march' => 'Mart',
 'marked' => 'İşaretli',
+'masquerade blue' => 'MAVİ gizli',
+'masquerade green' => 'YEŞİL gizli',
+'masquerade orange' => 'TURUNCU gizil',
+'masquerading' => 'Gizle',
+'masquerading disabled' => 'Gizlemeyi kapat',
+'masquerading enabled' => 'Gizlemeyi aç',
 'max bandwith' => 'En fazla bant genişliği',
 'max incoming size' => 'En fazla gelen boyut (KB):',
 'max lease time' => 'En fazla kira süresi (dakika):',
 'memory' => 'Bellek',
 'memory information' => 'Bellek bilgisi',
 'memory usage per' => 'bellek başına kullanım - ',
+'messages' => 'Mesajlar',
 'messages logging' => '/var/log/messages için günlük ayarları',
 'method' => 'Yöntem:',
 'min costs' => 'En az maliyet',
 'missing dat' => 'Şifreli arşiv bulunamadı',
 'missing gz' => 'Şifrelenmemiş arşiv bulunamadı',
 'mode' => 'Yöntem',
+'model' => 'Model',
 'modem' => 'Modem',
 'modem configuration' => 'Modem yapılandırması',
+'modem hardware details' => 'Modem Donanımı',
+'modem information' => 'Modem Bilgisi',
+'modem network bit error rate' => 'Bit hata oranı',
+'modem network information' => 'Ağ bilgisi',
+'modem network mode' => 'Ağ Yöntemi',
+'modem network operator' => 'Ağ Oparatörü',
+'modem network registration' => 'Ağ Kaydı',
+'modem network signal quality' => 'Sinyal Kalitesi',
+'modem no connection' => 'Bağlantı Yok',
+'modem no connection message' => 'Modemle bağlantı kurulamadı.',
 'modem on com1' => 'COM1 üzerindeki modem',
 'modem on com2' => 'COM2 üzerindeki modem',
 'modem on com3' => 'COM3 üzerindeki modem',
 'modem on com4' => 'COM4 üzerindeki modem',
 'modem on com5' => 'COM5 üzerindeki modem',
 'modem settings have errors' => 'Modem ayarları hatalı',
+'modem sim information' => 'SIM Bilgisi',
 'modem speaker on' => 'Modem üzerindeki hoparlör:',
+'modem status' => 'Modem Durumu',
 'modify' => 'Düzenle',
 'modulation' => 'Geçiş',
 'monday' => 'Pazartesi',
+'monitor interface' => 'Ekran Arabirimi',
 'month' => 'Ay',
 'month-graph' => 'ay',
 'monthly firewallhits' => 'aylık güvenlik duvarı kaydı',
 'name is invalid' => 'Geçersiz ad',
 'name must only contain characters' => 'Ad sadece karakter içermelidir.',
 'name too long' => 'Kullanıcının tam adı veya sistem ana bilgisayar adı çok uzun',
+'nameserver' => 'Sunucu adı',
 'nat-traversal' => 'Nat Geçişi:',
 'needreboot' => 'Bu güncelleştirmeden sonra yeniden başlatmak gerekir',
 'net' => 'Ağ',
 'network traffic graphs others' => 'Ağ (diğer)',
 'network updated' => 'Özel ağ güncellendi',
 'networks settings' => 'Güvenlik Duvarı - Ağ Ayarları',
+'never' => 'Asla',
 'new optionsfw later' => 'Yaptığınız değişiklikler yeniden başlatıldıktan sonra aktif olacaktır',
 'new optionsfw must boot' => 'IPFire yeniden başlatmanız gerekir',
 'newer' => 'Daha yeni',
 'nonetworkname' => 'Ağ adı girilmedi',
 'noservicename' => 'Hizmet adı girilmedi',
 'not a valid ca certificate' => 'Geçerli bir CA sertifikası değil.',
+'not a valid dh key' => 'Geçerli bir anahtar değişim parametre dosyası yok. 1024, 2048, 3072 veya 4096 bit uzunluğunda ve PKCS#3 biçimini kullanın.',
 'not enough disk space' => 'Yeterli disk alanı yok',
 'not present' => 'Mevcut <b>değil</b>',
 'not running' => 'çalışmıyor',
 'ovpn' => 'OpenVPN',
 'ovpn con stat' => 'OpenVPN Bağlantı İstatistiği',
 'ovpn config' => 'OVPN-Yapılandırması',
+'ovpn crypt options' => 'Şifreleme seçenekleri',
 'ovpn device' => 'OpenVPN aygıtı:',
+'ovpn dh' => 'Anahtar değişim uzunluğu parametreleri',
+'ovpn dh new key' => 'Yeni anahtar değişimi parametreleri oluşturun',
+'ovpn dh parameters' => 'Anahtar değişimi parametre seçenekleri',
+'ovpn dh upload' => 'Yeni anahtar değişimi parametrelerini yükle',
 'ovpn dl' => 'OVPN-Yapılandırması İndir',
+'ovpn engines' => 'kripto motoru',
 'ovpn errmsg green already pushed' => 'Yeşil ağ için her zaman bir yol ayarla',
 'ovpn errmsg invalid ip or mask' => 'Geçersiz ağ adresi veya alt ağ maskesi',
+'ovpn generating the root and host certificates' => 'Root ve ana bilgisayar belge üretimi uzun zaman alabilir.',
+'ovpn ha' => 'Hash algoritması',
+'ovpn hmac' => 'HMAC seçenekleri',
 'ovpn log' => 'OVPN-Günlük',
 'ovpn mgmt in root range' => 'Bağlantı noktası numarası 1024 ya da daha yüksek bir numara olmalıdır.',
 'ovpn mtu-disc' => 'MTU algılama',
 'ovpn on orange' => 'TURUNCU üzerindeki OpenVPN',
 'ovpn on red' => 'KIRMIZI üzerindeki OpenVPN',
 'ovpn port in root range' => '1024 ya da daha yüksek bir bağlantı noktası numarası gereklidir..',
+'ovpn reneg sec' => 'Oturum anahtarının kullanım süresi:',
 'ovpn routes push' => 'Yollar (her satırda bir tane) örneğin 192.168.10.0/255.255.255.0 192.168.20.0/24',
 'ovpn routes push options' => 'Yol baskı seçenekleri',
 'ovpn server status' => 'Güncel OpenVPN sunucu durumu:',
 'ovpn subnet is invalid' => 'Geçersiz OpenVPN alt ağı.',
 'ovpn subnet overlap' => 'OpenVPN alt ağı ile örtüşenler: ',
 'ovpn_fastio' => 'Hızlı-IO',
-'ovpn_fragment' => 'Parça boyutu',
 'ovpn_mssfix' => 'MSSFIX Boyutu',
 'ovpn_mtudisc' => 'MTU-Keşfi',
 'ovpn_processprio' => 'İşlem Önceliği',
 'running' => 'ÇALIŞIYOR',
 'safe removal of umounted device' => 'Bağlantısı kesilen aygıtı güvenli bir şekilde kaldırabilirsiniz',
 'samba' => 'Samba',
+'samba join a domain' => 'Bir etki alanına katılın',
+'samba join domain' => 'Etki alanına üyelik',
 'samba status' => 'Samba durumu',
 'saturday' => 'Cumartesi',
 'save' => 'Kaydet',
 'show ca certificate' => 'CA sertifikalarını göster',
 'show certificate' => 'Sertifika göster',
 'show crl' => 'Sertifika İptal Listesini Göster',
+'show dh' => 'Anahtar değişimi parametrelerini göster',
 'show host certificate' => 'Ana bilgisayar sertifikalarını göster',
 'show last x lines' => 'Son x satırlarını göster',
 'show lines' => 'Satırları göster',
 'show root certificate' => 'Root sertifikasını göster',
 'show share options' => 'Paylaşım seçeneklerini göster',
+'show tls-auth key' => 'Tls kimlik doğrulama anahtarını göster',
 'shuffle' => 'Karma',
 'shutdown' => 'Kapat',
 'shutdown ask' => 'Kapat?',
 'snort hits' => 'Saldırı kuralları için toplam aktif sayı',
 'snort working' => 'Snort çalışıyor ... Tüm işlemler başarıyla tamamlanana kadar bekleyin.',
 'socket options' => 'Soket seçenekleri',
+'software version' => 'Yazılım sürümü',
 'sort ascending' => 'Artan sıralama',
 'sort descending' => 'Azalan sıralama',
 'sound' => 'Ses',
 'source ip' => 'Kaynak IP',
 'source ip and port' => 'Kaynak IP: Bağlantı noktası numarası',
 'source ip bad' => 'Geçersiz bir IP adresi ya da ağ adresi.',
+'source ip country' => 'Kaynak Ip ülke',
 'source ip in use' => 'Kullanılan kaynak IP:',
 'source ip or net' => 'Kaynak IP veya Ağ',
 'source net' => 'Kaynak Ağ',
 'system log viewer' => 'Sistem Günlük Görüntüleyicisi',
 'system logs' => 'Sistem Günlükleri',
 'system status information' => 'Sistem Durum Bilgisi',
+'ta key' => 'Tls kimlik doğrulama anahtarı',
 'telephone not set' => 'Telefon ayarlanmamış.',
 'template' => 'Ön Ayar',
 'template warning' => 'QoS kurmak için iki seçeneğiniz vardır. İlk olarak kaydet düğmesine basıp kendi sınıf ve kurallarınızı oluşturabilirsiniz. İkinci olarak ise ön ayar düğmesine basıp sınıf ve kurallar için bir şablonun kurulmasını sağlayın. ',
+'teovpn_fragment' => 'Fragment boyutu',
 'test' => 'test',
 'test email could not be sent' => 'Test e-posta gönderilemedi',
 'test email was sent' => 'Test e-posta başarıyla gönderildi.',
 'upload a certificate' => 'Sertifika yükle:',
 'upload a certificate request' => 'Sertifika isteği yükle:',
 'upload ca certificate' => 'CA Sertifikası Yükle',
+'upload dh key' => 'Anahtar değişimi parametrelerini yükle',
 'upload fcdsl.o' => 'KALDIRILACAK',
 'upload file' => 'Dosya yükle',
 'upload new ruleset' => 'Yeni kurallar yükle',
 'urlfilter weekly' => 'Haftalık',
 'urlfilter whitelist always allowed' => 'Yasaklı istemciler için özel beyaz liste izini',
 'urlfilter wrong filetype' => 'Uzantısı .tar.gz olan dosya yok',
-'usb modem on acm0' => 'ACM0 üzerindeki USB Modem',
-'usb modem on acm1' => 'ACM1 üzerindeki USB Modem',
-'usb modem on acm2' => 'ACM2 üzerindeki USB Modem',
-'usb modem on acm3' => 'ACM3 üzerindeki USB Modem',
 'use' => 'Kullan',
 'use a pre-shared key' => 'Ön paylaşımlı anahtar kullan:',
 'use dov' => 'Ses üzerinden veri kullan (DOV):',
 'valid root certificate already exists' => 'Geçerli bir yönetici sertifikası zaten mevcut.',
 'valid till' => 'Geçerlilik süresi',
 'vci number' => 'VCI numarası:',
+'vendor' => 'Sağlayıcı',
 'view log' => 'günlükleri göster',
 'virtual address' => 'Sanal Adres',
 'virtual private networking' => 'Sanal ÖZel Ağ',
diff --git a/lfs/bacula b/lfs/bacula
new file mode 100644 (file)
index 0000000..0e7d39b
--- /dev/null
@@ -0,0 +1,91 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2009  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        = 5.2.13
+
+THISAPP    = bacula-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = bacula
+PAK_VER    = 2
+
+DEPS       = ""
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 43417bae0c221afb1f30a581c9e0f2fe
+
+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 \
+                               --sysconfdir=/etc/bacula \
+                               --with-working-dir=/var/bacula/working \
+                               --enable-client-only
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       ln -s /etc/bacula/bacula-ctl-fd /etc/rc.d/init.d/bacula
+       rm -f /root/.rnd
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
+
index c89ff545a99b6e1a6952f219b19abd8ffecbe4d6..c75895124590524f412a2072cb08393487c93d2b 100644 (file)
--- a/lfs/bash
+++ b/lfs/bash
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 3.2
+VER        = 4.3
 
 THISAPP    = bash-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -35,20 +35,15 @@ DIR_APP    = $(DIR_SRC)/$(THISAPP)
 #
 ifeq "$(ROOT)" ""
   TARGET = $(DIR_INFO)/$(THISAPP)
-  EXTRA_CONFIG = --prefix=/usr --bindir=/bin \
-    --without-bash-malloc --with-installed-readline \
-    --disable-nls
-  EXTRA_MAKE =
-  EXTRA_INSTALL =
+  CONFIGURE_OPTIONS = --prefix=/usr --bindir=/bin \
+    --with-installed-readline
 else
   TARGET = $(DIR_INFO)/$(THISAPP)-tools
-  EXTRA_CONFIG = --prefix=/tools --without-bash-malloc \
-    --disable-nls
-  EXTRA_MAKE = 
-  EXTRA_INSTALL = 
+  CONFIGURE_OPTIONS = --prefix=/tools
 endif
 
-EXTRA_CONFIG += ac_cv_func_working_mktime=yes
+CONFIGURE_OPTIONS += \
+       --without-bash-malloc
 
 ###############################################################################
 # Top-level Rules
@@ -58,7 +53,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE)             = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5         = 00bfa16d58e034e3c2aa27f390390d30
+$(DL_FILE)_MD5         = 81348932d5da294953e15d4814c74dd1
 
 install : $(TARGET)
 
@@ -87,24 +82,31 @@ $(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 zaxf $(DIR_DL)/$(DL_FILE)
 
-       for i in $$(seq 1 51); do \
-               cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/bash/bash32-$$(printf "%03d" "$${i}") || exit 1; \
+       sed -e "s/filename, RTLD_LAZY/filename, RTLD_NOW/" \
+               -i $(DIR_APP)/builtins/enable.def
+
+       for i in $$(seq 1 30); do \
+               cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/bash/bash43-$$(printf "%03d" "$${i}") || exit 1; \
        done
 
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash-4.0-paths-1.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash-4.0-profile-1.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash-3.2-ssh_source_bash.patch
-       cd $(DIR_APP) && ./configure $(EXTRA_CONFIG)
-       cd $(DIR_APP) && make $(EXTRA_MAKE)
-       cd $(DIR_APP) && make $(EXTRA_INSTALL) install
+
+       cd $(DIR_APP) && ./configure $(CONFIGURE_OPTIONS)
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+
        ln -sf bash /bin/sh
+
 ifneq "$(ROOT)" ""
        -mkdir -p $(ROOT)/bin
        -mkdir -p $(ROOT)/usr/bin
        ln -sf bash /tools/bin/sh
        -ln -sf /tools/bin/bash $(ROOT)/bin/sh
 endif
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
diff --git a/lfs/batctl b/lfs/batctl
new file mode 100644 (file)
index 0000000..6a66982
--- /dev/null
@@ -0,0 +1,79 @@
+###############################################################################
+#                                                                             #
+# 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        = 2014.3.0
+
+THISAPP    = batctl-$(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 = 7d2b8c129424c014d020c4b1a2add31b
+
+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) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install PREFIX=/usr
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/boost b/lfs/boost
new file mode 100644 (file)
index 0000000..b9b5015
--- /dev/null
+++ b/lfs/boost
@@ -0,0 +1,99 @@
+###############################################################################
+#                                                                             #
+# 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_55_0
+
+THISAPP    = boost_$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+CFLAGS    += -fno-strict-aliasing
+CXXFLAGS  += -fno-strict-aliasing
+
+CONFIGURE_OPTIONS = \
+       --prefix=/usr \
+       --layout=tagged \
+       --without-mpi \
+       --without-graph_parallel \
+       --build-dir=serial \
+       cflags="$(CFLAGS)" \
+       cxxflags="$(CXXFLAGS)" \
+       variant=release \
+       threading=single,multi \
+       debug-symbols=off \
+       pch=off
+
+ifeq "$(MACHINE)" "armv5tel"
+       MAKETUNING = -j2
+endif
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 93780777cfbf999a600f62883bd54b17
+
+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) && ./bootstrap.sh --with-toolset=gcc
+       cd $(DIR_APP) && ./b2 -d+2 -q $(MAKETUNING) $(CONFIGURE_OPTIONS) stage
+       cd $(DIR_APP) && ./b2 $(MAKETUNING) $(CONFIGURE_OPTIONS) install
+
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
index 541d7d6a06a89cb29b8babe31480eec674e114d0..53264711141ac428c79a53ec3078629b4fd3b34c 100644 (file)
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/check_mk-${VER}
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = check_mk_agent
-PAK_VER    = 3
+PAK_VER    = 4
 
 DEPS       = ""
 
index fcb08b0d495713ac886d2019a12b7d1a503c0e74..e0bb346d0ffab1588c9c1533beb9e6b4f7ad138d 100644 (file)
@@ -77,6 +77,7 @@ $(TARGET) :
        # Copy initial configfiles
        cp $(DIR_SRC)/config/cfgroot/header.pl                  $(CONFIG_ROOT)/
        cp $(DIR_SRC)/config/cfgroot/general-functions.pl       $(CONFIG_ROOT)/
+       cp $(DIR_SRC)/config/cfgroot/network-functions.pl       $(CONFIG_ROOT)/
        cp $(DIR_SRC)/config/cfgroot/lang.pl                    $(CONFIG_ROOT)/
        cp $(DIR_SRC)/config/cfgroot/countries.pl               $(CONFIG_ROOT)/
        cp $(DIR_SRC)/config/cfgroot/graphs.pl                  $(CONFIG_ROOT)/
index c8348cee2299a1b5bda03ec789a1757d5b1c1baf..b94b3a124c917e4e804e0afca43c70637c81675f 100644 (file)
--- a/lfs/ddns
+++ b/lfs/ddns
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 003
+VER        = 004
 
 THISAPP    = ddns-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 9ff8ab5fa716859b51f63b0a241f1337
+$(DL_FILE)_MD5 = ff77cb72d0cb06c73bde70419b15bae8
 
 install : $(TARGET)
 
index 58b001755dbbc8d6175537ed94d9f8c4a266d8f7..60dabf4a53ce7ed16df026302dae3fd0b783afd8 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 2.71
+VER        = 2.72
 
 THISAPP    = dnsmasq-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -42,7 +42,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 9e2e4d59c75e71ee3ca817ff0f9be69e
+$(DL_FILE)_MD5 = 0256e0a71e27c8d8a5c89a0d18f3cfe2
 
 install : $(TARGET)
 
@@ -72,9 +72,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) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq-2.71-use-nettle-with-minigmp.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq-2.71-support-nettle-3.0.patch
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq-2.70-Add-support-to-read-ISC-DHCP-lease-file.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dnsmasq-2.72rc2-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 c05aca3cb712f853996ef290898d29a264ea5141..e2dd04a02296e15ec50569911d370cc9f62bbbd3 100644 (file)
@@ -91,6 +91,10 @@ ifeq "$(ROOT)" ""
        mv -v /usr/bin/find /bin
        sed -i -e 's|BINDIR=/usr/bin|BINDIR=/bin|' /usr/bin/updatedb
        -mkdir -p /var/lib/locate
+
+       -mkdir -pv /etc/fcron.weekly
+       install -v -m 754 $(DIR_SRC)/config/findutils/updatedb \
+               /etc/fcron.weekly/updatedb
 endif
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index f0d8aba647caeda0d2d636c4ab7f7e84bb51954a..32c494f24388a06cbb18d45530f3372d148ca564 100644 (file)
--- a/lfs/glibc
+++ b/lfs/glibc
@@ -268,6 +268,12 @@ endif
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh966775.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh966778.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh970090.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1008310.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1022022.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1091162.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1098050.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1133809-1.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh1133809-2.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
diff --git a/lfs/gmp b/lfs/gmp
index 1e518a2b3b50803e7f8cfbb54cf6b04ed54e603b..780e7f69df9dfb824489f2bd72387fbb0d0bb3ab 100644 (file)
--- a/lfs/gmp
+++ b/lfs/gmp
 
 include Config
 
-VER        = 5.0.5
+VER        = 6.0.0
 
 THISAPP    = gmp-$(VER)
-DL_FILE    = $(THISAPP).tar.bz2
+DL_FILE    = $(THISAPP)a.tar.xz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
@@ -51,7 +51,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 041487d25e9c230b0c42b106361055fe
+$(DL_FILE)_MD5 = 1e6da4e434553d2811437aa42c7f7c76
 
 install : $(TARGET)
 
@@ -80,7 +80,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_ARGS) \
                ./configure \
@@ -102,8 +102,7 @@ ifeq "$(MACHINE)" "i586"
        cd $(DIR_APP) && make $(MAKETUNING)
 
        -mkdir -pv /usr/lib/sse2
-       cd $(DIR_APP) && install -v -m 755 .libs/libgmp.so.10.0.5 /usr/lib/sse2
-       cd $(DIR_APP) && install -v -m 755 .libs/libmp.so.3.1.25 /usr/lib/sse2
+       cd $(DIR_APP) && install -v -m 755 .libs/libgmp.so.10.2.0 /usr/lib/sse2
 endif
 
        @rm -rf $(DIR_APP)
index 02f97431a2318186c57dbed65374451cf17141f1..4acf65e13eb965ae8673e0a40e72786a30d3a5c9 100755 (executable)
@@ -180,14 +180,12 @@ $(TARGET) :
        ln -sf ../init.d/wlanclient  /etc/rc.d/rc6.d/K82wlanclient
 
        ln -sf ../../dnsmasq /etc/rc.d/init.d/networking/red.up/05-RS-dnsmasq
-       ln -sf ../../firewall /etc/rc.d/init.d/networking/red.up/20-RL-firewall
        ln -sf ../../../../../usr/local/bin/snortctrl \
                /etc/rc.d/init.d/networking/red.up/23-RS-snort
        ln -sf ../../../../../usr/local/bin/qosctrl \
                /etc/rc.d/init.d/networking/red.up/24-RS-qos
        ln -sf ../../squid /etc/rc.d/init.d/networking/red.up/27-RS-squid
        ln -sf ../../dnsmasq /etc/rc.d/init.d/networking/red.down/05-RS-dnsmasq
-       ln -sf ../../firewall /etc/rc.d/init.d/networking/red.down/20-RL-firewall
 
        for i in green blue orange; do \
                ln -sf any /etc/rc.d/init.d/networking/$$i; \
index 9310c1f285e5a606b4253816e884f6e25578d6e0..7741c0ed0dee2adf77c7297c2e85a3d6840aa936 100644 (file)
@@ -73,8 +73,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/iputils-20020927-headers.patch
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/iputils-20020927-rh.patch
        cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/iputils-glibckernheaders.patch
-       cd $(DIR_APP) && make ping
+       cd $(DIR_APP) && make ping tracepath
        cd $(DIR_APP) && install -m 4755 ping /usr/bin
+       cd $(DIR_APP) && install -m 0755 tracepath /usr/bin
 
        # Some scripts expect ping in /bin/ping.
        ln -svf ../usr/bin/ping /bin/ping
diff --git a/lfs/krb5 b/lfs/krb5
new file mode 100644 (file)
index 0000000..64eb670
--- /dev/null
+++ b/lfs/krb5
@@ -0,0 +1,105 @@
+###############################################################################
+#                                                                             #
+# 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.12.1
+
+THISAPP    = krb5-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)/src
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = krb5
+PAK_VER    = 1
+
+DEPS       = ""
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 4a631b3474d3e44773f1ecda96f04400
+
+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) && patch -Np2 < $(DIR_SRC)/src/patches/mitkrb-1.12.1-db2_fix-1.patch
+
+       cd $(DIR_APP) && sed -e "s@python2.5/Python.h@& python2.7/Python.h@g" \
+               -e "s@-lpython2.5]@&,\n  AC_CHECK_LIB(python2.7,main,[PYTHON_LIB=-lpython2.7])@g" \
+               -i configure.in
+       cd $(DIR_APP) && autoconf
+
+       cd $(DIR_APP) && ./configure \
+               --prefix=/usr \
+               --sysconfdir=/etc \
+               --localstatedir=/var/lib \
+               --with-system-et \
+               --with-system-ss \
+               --enable-dns-for-realm \
+               CPPFLAGS="-I/usr/include/et"
+
+       cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
+       cd $(DIR_APP) && make $(EXTRA_INSTALL) install
+
+       for LIB in gssapi_krb5 gssrpc k5crypto kadm5clnt kadm5srv \
+                       kdb5 kdb_ldap krad krb5 krb5support verto; do \
+               chmod -f -v 755 "/usr/lib/lib$$LIB.so"; \
+       done
+
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/libnl-3 b/lfs/libnl-3
new file mode 100644 (file)
index 0000000..3bb7f52
--- /dev/null
@@ -0,0 +1,80 @@
+###############################################################################
+#                                                                             #
+# 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.2.25
+
+THISAPP    = libnl-$(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 = 03f74d0cd5037cadc8cdfa313bbd195c
+
+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 --sysconfdir=/etc
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/lzo b/lfs/lzo
index 1745f4ccad41ad16acd220ec501927f109cfe382..19ad0909cc3d4f003ac3a3f6a94f3ab795551a92 100644 (file)
--- a/lfs/lzo
+++ b/lfs/lzo
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 2.08
+VER        = 2.06
 
 THISAPP    = lzo-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = fcec64c26a0f4f4901468f360029678f
+$(DL_FILE)_MD5 = 95380bd4081f85ef08c5209f4107e9f8
 
 install : $(TARGET)
 
@@ -70,6 +70,7 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/lzo-2.06-CVE-2014-4607.patch
        cd $(DIR_APP) && ./configure --prefix=/usr --enable-shared 
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
index 26ec3dd0087ed71f7601eb3f06adf88363a847f3..155cd4a07146f4dfad5995013948a42a40b4c173 100644 (file)
 
 include Config
 
-VER        = 1.0.25
+VER        = 1.1.3
 
 THISAPP    = minidlna-$(VER)
-DL_FILE    = minidlna_$(VER)_src.tar.gz
+DL_FILE    = minidlna-$(VER).tar.gz
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = minidlna
-PAK_VER    = 2
+PAK_VER    = 3
 
 DEPS       = "ffmpeg flac libexif libid3tag libogg sqlite"
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = d966256baf2f9b068b9de871ab5dade5
+$(DL_FILE)_MD5 = 879027192c89e5376cdd2ae2d1aa33b4
 
 install : $(TARGET)
 
@@ -77,7 +77,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) && sed -i '/include/a #include <limits.h>/' metadata.c
+       cd $(DIR_APP) && ./configure --prefix=/usr
        cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
        cd $(DIR_APP) && make install
 
index de5e006dc1185cd02bcbb9abfea9f37f06ff49a5..b4cfc6653f67236c5b79303c7ed9bf5fc38c682d 100644 (file)
--- a/lfs/mpfr
+++ b/lfs/mpfr
 
 include Config
 
-VER        = 2.4.2
+VER        = 3.1.2
 
 THISAPP    = mpfr-$(VER)
-DL_FILE    = $(THISAPP).tar.bz2
+DL_FILE    = $(THISAPP).tar.xz
 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 = 89e59fe665e2b3ad44a6789f40b059a0
+$(DL_FILE)_MD5 = e3d203d188b8fe60bb6578dd3152e05c
 
 install : $(TARGET)
 
@@ -69,7 +69,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_ARGS) ./configure --prefix=/usr \
                --enable-thread-safe --disable-nls
        cd $(DIR_APP) && make $(MAKETUNING)
index 12cea68b2851ffc14f9edb2e2955060312e9351a..186ea6c6ae49377e1bfb1f1be5a661a316cf395f 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 1.0.1h
+VER        = 1.0.1j
 
 THISAPP    = openssl-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -51,7 +51,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 8d6d684a9430d5cc98a62a5d8fbda8cf
+$(DL_FILE)_MD5 = f7175c9cd3c39bb1907ac8bba9df8ed3
 
 install : $(TARGET)
 
index d2ae6a0e909d412a639d1d38157e710502591a1b..683d979ae04b4601e5f8f48b76c625ff02b5dc91 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2013  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2014  IPFire Team  <info@ipfire.org>                     #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 0.9.8y
+VER        = 0.9.8zc
 
 THISAPP    = openssl-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 47c7fb37f78c970f1d30aa2f9e9e26d8
+$(DL_FILE)_MD5 = 1b239eea3a60d67863e7b66700e47a16
 
 install : $(TARGET)
 
index 5d46b932ecddd559c4b4b937d33e004d146f4586..93ab3a58bdf5026997f3db0e29005b16f79f34a4 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 6.0.4
+VER        = 7.0.0
 
 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           = 1
+PAK_VER           = 2
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 0a92cf5971e9c9c58e40219b385bd8f4
+$(DL_FILE)_MD5 = 28cfdc99e8ee9350fe88430b4c7d62f2
 
 install : $(TARGET)
 
index 25db9e5c3d7658a6686dcee80de8bc52fc9929ec..5dee653a420f2e0998d1862527a9712acfea9e31 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2011  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2014  IPFire Team  <info@ipfire.org>                     #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
 
 include Config
 
-VER        = 2.3
+VER        = 3.1
 
 THISAPP    = parted-$(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       = parted
-PAK_VER    = 1
+PAK_VER    = 2
 
 DEPS       = ""
 
@@ -45,7 +45,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 30ceb6df7e8681891e865e2fe5a7903d
+$(DL_FILE)_MD5 = 5d89d64d94bcfefa9ce8f59f4b81bdcb
 
 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)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP) && ./configure --prefix=/usr --disable-device-mapper
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
diff --git a/lfs/perl-PDF-API2 b/lfs/perl-PDF-API2
new file mode 100644 (file)
index 0000000..8b0af9a
--- /dev/null
@@ -0,0 +1,82 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2011  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.020
+
+THISAPP    = PDF-API2-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = perl-PDF-API2
+PAK_VER    = 1
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = c0d20bfd03883b5b2b2a7fd47455249a
+
+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)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/ppp b/lfs/ppp
index 3c60938dcdcd65d6a208cb667af70c71ebf5579f..f25531006aa4f6f49233b0625d6ce3a136b3f9e8 100644 (file)
--- a/lfs/ppp
+++ b/lfs/ppp
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2007-2014   IPFire Team   <info@ipfire.org>                   #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 2.4.6
+VER        = 2.4.7
 
 THISAPP    = ppp-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -42,7 +42,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 3434d2cc9327167a0723aaaa8670083b
+$(DL_FILE)_MD5 = 78818f40e6d33a1d1de68a1551f6595a
 
 install : $(TARGET)
 
index 7b88adff2c6c6aaed1416eb7469c7dc73425eee9..eb488e3363af3798335470e5dc0bdb97b3e7d31f 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 6.2
+VER        = 6.3
 
 THISAPP    = readline-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 67948acb2ca081f23359d0256e9a271c
+$(DL_FILE)_MD5 = 33c8fb279e981274f485fd91da77e94a
 
 install : $(TARGET)
 
@@ -71,8 +71,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
 
-       for i in $$(seq 1 4); do \
-               cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/readline/readline62-$$(printf "%03d" "$${i}") || exit 1; \
+       for i in $$(seq 1 6); do \
+               cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/readline/readline63-$$(printf "%03d" "$${i}") || exit 1; \
        done
 
        cd $(DIR_APP) && ./configure --prefix=/usr --disable-static
index 57c822cc2bc8e72b2f862a37e479224e2282b3c8..8899ec0ed47783d7437749687625b19d66b80d74 100644 (file)
--- a/lfs/rsync
+++ b/lfs/rsync
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 3.1.0
+VER        = 3.1.1
 
 THISAPP    = rsync-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = rsync
-PAK_VER    = 8
+PAK_VER    = 9
 
 DEPS       = ""
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 3be148772a33224771a8d4d2a028b132
+$(DL_FILE)_MD5 = 43bd6676f0b404326eee2d63be3cdcfe
 
 install : $(TARGET)
 
index 603f215b3c702c70eaf83526bac7a016a5f39918..3772ad3028085043be106f52ee19ea3184343d69 100644 (file)
--- a/lfs/samba
+++ b/lfs/samba
@@ -32,9 +32,9 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = samba
-PAK_VER    = 58
+PAK_VER    = 59
 
-DEPS       = "cups"
+DEPS       = "cups krb5"
 
 ###############################################################################
 # Top-level Rules
@@ -78,16 +78,27 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
        cd $(DIR_APP)/source3 && ./configure \
-                               --prefix=/usr \
-                               --libdir=/usr/lib/ \
-                               --sysconfdir=/var/ipfire \
-                               --localstatedir=/var \
-                               --with-piddir=/var/run \
-                               --with-fhs \
-                               --with-winbind \
-                               --disable-swat \
-                               --enable-cups \
-                               --with-syslog
+               --prefix=/usr \
+               --libdir=/usr/lib/ \
+               --sysconfdir=/var/ipfire \
+               --localstatedir=/var \
+               --with-cachedir=/var/lib/samba \
+               --with-lockdir=/var/lib/samba \
+               --with-piddir=/var/run \
+               --with-ads \
+               --with-acl-support \
+               --with-libsmbclient \
+               --with-libsmbsharemodes \
+               --with-sendfile-support \
+               --without-smbwrapper \
+               --with-mmap \
+               --with-fhs \
+               --with-vfs \
+               --with-winbind \
+               --disable-swat \
+               --enable-cups \
+               --disable-avahi \
+               --with-syslog
        cd $(DIR_APP)/source3 && make proto && make all $(MAKETUNING) $(EXTRA_MAKE)
        cd $(DIR_APP)/source3 && make install
        cd $(DIR_APP)/source3 && chmod -v 644 /usr/include/libsmbclient.h
@@ -107,5 +118,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cat /var/ipfire/samba/global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf
        -mkdir -p /var/log/samba
        install -v -m 644 $(DIR_SRC)/config/backup/includes/samba /var/ipfire/backup/addons/includes/samba
+
+       -mkdir -p 750 /var/lib/samba/winbindd_privileged
+       chgrp wbpriv /var/lib/samba/winbindd_privileged
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 842b5484610ae9013a4275a0efd17a900084f9ce..39b9603b5ba51c59f12da06ba7a21b3a9de8530d 100644 (file)
--- a/lfs/sane
+++ b/lfs/sane
@@ -33,9 +33,9 @@ DIR_APP    = $(DIR_SRC)/sane-backends-$(VER)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 
 PROG       = sane
-PAK_VER    = 3
+PAK_VER    = 4
 
-DEPS       = "libtiff"
+DEPS       = "cups libtiff"
 
 ###############################################################################
 # Top-level Rules
index e050b17c5c4edaa8f5d8c725479ecf95e0792a87..548abd937a2373d3dafd41abd92beb205949a550 100644 (file)
--- a/lfs/squid
+++ b/lfs/squid
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 3.4.5
+VER        = 3.4.8
 
 THISAPP    = squid-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = a831efb36cfbaa419f8dc7a43cba72c9
+$(DL_FILE)_MD5 = b0c4335447248810169f58ea4d8b204a
 
 install : $(TARGET)
 
diff --git a/lfs/squid-accounting b/lfs/squid-accounting
new file mode 100644 (file)
index 0000000..0dca63f
--- /dev/null
@@ -0,0 +1,71 @@
+###############################################################################
+# IPFire.org    - An Open Source Firewall Solution                            #
+# Copyright (C) - IPFire Development Team <info@ipfire.org>                   #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 1.0.1
+
+THISAPP    = squid-accounting-$(VER)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+PROG       = squid-accounting
+PAK_VER    = 3
+
+DEPS       = "perl-DBI perl-DBD-SQLite perl-File-ReadBackwards perl-PDF-API2 sendEmail"
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+install : $(TARGET)
+
+check : 
+
+download :
+
+md5 : 
+
+dist: 
+       @$(PAK)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && mkdir $(DIR_APP) && cp -R $(DIR_SRC)/src/squid-accounting/ $(DIR_APP)
+       cd $(DIR_APP)
+       mkdir -p /var/ipfire/accounting/bill
+       mkdir -p /srv/web/ipfire/html/accounting/logo
+
+#Touch Logfile
+       touch /var/log/accounting.log
+       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/
+       install -v -m 655 $(DIR_APP)/squid-accounting/acct.de.pl /var/ipfire/addon-lang/
+       install -v -m 655 $(DIR_APP)/squid-accounting/acct.en.pl /var/ipfire/addon-lang/
+       install -v -m 655 $(DIR_APP)/squid-accounting/EX-squid-accounting.menu /var/ipfire/menu.d/
+       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)
+
diff --git a/lfs/tor b/lfs/tor
index 6f9e5028955beee3775367750d6c02b8dd5ca76f..0cc2957ed91ee7d3e2a939cf1930dfce7e898d08 100644 (file)
--- a/lfs/tor
+++ b/lfs/tor
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 0.2.4.22
+VER        = 0.2.4.23
 
 THISAPP    = tor-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -32,7 +32,7 @@ DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = tor
-PAK_VER    = 7
+PAK_VER    = 8
 
 DEPS       = "libevent2"
 
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = 5a7eee0d9df87233255d78b25c6f8270
+$(DL_FILE)_MD5 = 9e39928e310612c3bffee727f554c63f
 
 install : $(TARGET)
 
diff --git a/make.sh b/make.sh
index b0d00b2813e3721bcd7228a8757641a27faa2d3d..854c64f072908dfd041ce0a1674f910f8af885b3 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -25,8 +25,8 @@
 NAME="IPFire"                                                  # Software name
 SNAME="ipfire"                                                 # Short name
 VERSION="2.15"                                                 # Version number
-CORE="80"                                                      # Core Level (Filename)
-PAKFIRE_CORE="80"                                              # Core Level (PAKFIRE)
+CORE="85"                                                      # Core Level (Filename)
+PAKFIRE_CORE="84"                                              # 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
@@ -464,6 +464,7 @@ buildipfire() {
   ipfiremake bind
   ipfiremake dhcp
   ipfiremake dhcpcd
+  ipfiremake boost
   ipfiremake linux-atm
   ipfiremake cpio
   ipfiremake dracut
@@ -477,6 +478,7 @@ buildipfire() {
   ipfiremake fireinfo
   ipfiremake libnet
   ipfiremake libnl
+  ipfiremake libnl-3
   ipfiremake libidn
   ipfiremake nasm
   ipfiremake libjpeg
@@ -615,6 +617,7 @@ buildipfire() {
   ipfiremake foomatic
   ipfiremake hplip
   ipfiremake cifs-utils
+  ipfiremake krb5
   ipfiremake samba
   ipfiremake sudo
   ipfiremake mc
@@ -809,6 +812,10 @@ buildipfire() {
   ipfiremake stunnel
   ipfiremake sslscan
   ipfiremake owncloud
+  ipfiremake bacula
+  ipfiremake batctl
+  ipfiremake perl-PDF-API2
+  ipfiremake squid-accounting
 }
 
 buildinstaller() {
index 7a18502bfa728743bc951fef3ccbce84389a57f4..66ca432a26d607b1eb8afdcdf17be4c61370dad9 100644 (file)
@@ -64,16 +64,20 @@ iptables_init() {
        iptables -A BADTCP -i lo -j RETURN
 
        # Disallow packets frequently used by port-scanners
-       # nmap xmas
-       iptables -A BADTCP -p tcp --tcp-flags ALL FIN,URG,PSH  -j PSCAN
-       # Null
-       iptables -A BADTCP -p tcp --tcp-flags ALL NONE -j PSCAN
-       # FIN
+       # NMAP FIN/URG/PSH (XMAS scan)
+       iptables -A BADTCP -p tcp --tcp-flags ALL FIN,URG,PSH -j PSCAN
+       # SYN/RST/ACK/FIN/URG
+       iptables -A BADTCP -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j PSCAN
+       # ALL/ALL
+       iptables -A BADTCP -p tcp --tcp-flags ALL ALL -j PSCAN
+       # FIN Stealth
        iptables -A BADTCP -p tcp --tcp-flags ALL FIN -j PSCAN
        # SYN/RST (also catches xmas variants that set SYN+RST+...)
        iptables -A BADTCP -p tcp --tcp-flags SYN,RST SYN,RST -j PSCAN
        # SYN/FIN (QueSO or nmap OS probe)
        iptables -A BADTCP -p tcp --tcp-flags SYN,FIN SYN,FIN -j PSCAN
+       # Null
+       iptables -A BADTCP -p tcp --tcp-flags ALL NONE -j PSCAN
        # NEW TCP without SYN
        iptables -A BADTCP -p tcp ! --syn -m conntrack --ctstate NEW -j NEWNOTSYN
 
@@ -83,6 +87,7 @@ iptables_init() {
        # Connection tracking chain
        iptables -N CONNTRACK
        iptables -A CONNTRACK -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
+       iptables -A CONNTRACK -m conntrack --ctstate INVALID -j DROP
 
        # Fix for braindead ISP's
        iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
@@ -254,20 +259,6 @@ iptables_init() {
        iptables -t nat -N REDNAT
        iptables -t nat -A POSTROUTING -j REDNAT
 
-       # Filter logging of incoming broadcasts.
-       iptables -N BROADCAST_FILTER
-       iptables -A INPUT -j BROADCAST_FILTER
-
-       iptables -A BROADCAST_FILTER -i "${GREEN_DEV}" -d "${GREEN_BROADCAST}" -j DROP
-
-       if [ -n "${BLUE_DEV}" -a -n "${BLUE_BROADCAST}" ]; then
-               iptables -A BROADCAST_FILTER -i "${BLUE_DEV}" -d "${BLUE_BROADCAST}" -j DROP
-       fi
-
-       if [ -n "${ORANGE_DEV}" -a -n "${ORANGE_BROADCAST}" ]; then
-               iptables -A BROADCAST_FILTER -i "${ORANGE_DEV}" -d "${ORANGE_BROADCAST}" -j DROP
-       fi
-
        # Apply OpenVPN firewall rules
        /usr/local/bin/openvpnctrl --firewall-rules
 
@@ -286,10 +277,16 @@ iptables_init() {
        /usr/sbin/firewall-policy
 
        # Install firewall rules for the red interface.
-       iptables_red
+       iptables_red_up
+
+       # If red has not been brought up yet, we will
+       # add the blocking rules for MASQUERADE
+       if [ ! -e "/var/ipfire/red/active" ]; then
+               iptables_red_down
+       fi
 }
 
-iptables_red() {
+iptables_red_up() {
        iptables -F REDINPUT
        iptables -F REDFORWARD
        iptables -t nat -F REDNAT
@@ -336,10 +333,45 @@ iptables_red() {
                # 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
-                       iptables -t nat -A REDNAT -o $IFACE -j MASQUERADE
+               if [ "$IFACE" = "$GREEN_DEV" ]; then
+                       MASQUERADE_GREEN="off"
+               fi
+
+               local NO_MASQ_NETWORKS
+
+               if [ "${MASQUERADE_GREEN}" = "off" ]; then
+                       NO_MASQ_NETWORKS="${NO_MASQ_NETWORKS} ${GREEN_NETADDRESS}/${GREEN_NETMASK}"
+               fi
+
+               if [ "${MASQUERADE_BLUE}" = "off" ]; then
+                       NO_MASQ_NETWORKS="${NO_MASQ_NETWORKS} ${BLUE_NETADDRESS}/${BLUE_NETMASK}"
                fi
 
+               if [ "${MASQUERADE_ORANGE}" = "off" ]; then
+                       NO_MASQ_NETWORKS="${NO_MASQ_NETWORKS} ${ORANGE_NETADDRESS}/${ORANGE_NETMASK}"
+               fi
+
+               local network
+               for network in ${NO_MASQ_NETWORKS}; do
+                       iptables -t nat -A REDNAT -s "${network}" -o "${IFACE}" -j RETURN
+               done
+
+               # Masquerade everything else
+               iptables -t nat -A REDNAT -o $IFACE -j MASQUERADE
+       fi
+
+       # Reload all rules.
+       /usr/local/bin/firewallctrl
+}
+
+iptables_red_down() {
+       # Prohibit packets to reach the masquerading rule
+       # while the wan interface is down - this is required to
+       # circumvent udp related NAT issues
+       # http://forum.ipfire.org/index.php?topic=11127.0
+       if [ -n "${IFACE}" ]; then
+               iptables -F REDFORWARD
+               iptables -A REDFORWARD -o "${IFACE}" -j DROP
        fi
 
        # Reload all rules.
@@ -370,27 +402,18 @@ case "$1" in
        boot_mesg "Setting up firewall"
        iptables_init
        evaluate_retval
-
-       # run local firewall configuration, if present
-       if [ -x /etc/sysconfig/firewall.local ]; then
-               /etc/sysconfig/firewall.local start
-       fi
        ;;
-  reload)
+  reload|up)
        boot_mesg "Reloading firewall"
-       iptables_red
+       iptables_red_up
+       evaluate_retval
+       ;;
+  down)
+       boot_mesg "Disabling firewall access to RED"
+       iptables_red_down
        evaluate_retval
-
-       # run local firewall configuration, if present
-       if [ -x /etc/sysconfig/firewall.local ]; then
-               /etc/sysconfig/firewall.local reload
-       fi
        ;;
   restart)
-       # run local firewall configuration, if present
-       if [ -x /etc/sysconfig/firewall.local ]; then
-               /etc/sysconfig/firewall.local stop
-       fi
        $0 start
        ;;
   *)
index 682306760b5edb783d4c7cfbcead90a315eca370..74ad8f880f3d714fcd9b1c49273f5966574dbc03 100644 (file)
 case "${1}" in
        start)
                boot_mesg "Starting minidlna..."
-               loadproc /usr/sbin/minidlna
+               loadproc /usr/sbin/minidlnad
                ;;
 
        stop)
                boot_mesg "Stopping minidlna..."
-               killproc /usr/sbin/minidlna
+               killproc /usr/sbin/minidlnad
                ;;
 
        reload)
                boot_mesg "Reloading minidlna..."
-               reloadproc /usr/sbin/minidlna
+               reloadproc /usr/sbin/minidlnad
                ;;
 
        restart)
@@ -36,7 +36,7 @@ case "${1}" in
                ;;
 
        status)
-               statusproc /usr/sbin/minidlna
+               statusproc /usr/sbin/minidlnad
                ;;
 
        *)
index 5aecd1557d0742097fdf263a175ecc8b04da229d..9182e9801fec62c139755fd6c8ef55c93c6966f9 100644 (file)
@@ -18,7 +18,6 @@ eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
 
 init_networking() {
        /etc/rc.d/init.d/dnsmasq start
-       /etc/rc.d/init.d/static-routes start
 }
 
 DO="${1}"
@@ -26,7 +25,7 @@ shift
 
 if [ -n "${1}" ]; then
        ALL=0
-       for i in green red blue orange; do      
+       for i in green red blue orange; do
                eval "${i}=0"
        done
 else
@@ -68,7 +67,9 @@ case "${DO}" in
                                rm -f /var/ipfire/red/{active,device,dial-on-demand,dns1,dns2,local-ipaddress,remote-ipaddress,resolv.conf}
                                [ "$AUTOCONNECT" == "off" ] || /etc/rc.d/init.d/networking/red start
                        fi
-               fi                           
+               fi
+
+               /etc/rc.d/init.d/static-routes start
                ;;
 
        stop)
diff --git a/src/initscripts/init.d/networking/red.down/20-firewall b/src/initscripts/init.d/networking/red.down/20-firewall
new file mode 100644 (file)
index 0000000..d21c97c
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+exec /etc/rc.d/init.d/firewall down
diff --git a/src/initscripts/init.d/networking/red.up/20-firewall b/src/initscripts/init.d/networking/red.up/20-firewall
new file mode 100644 (file)
index 0000000..ca52b4b
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+exec /etc/rc.d/init.d/firewall up
index 22437fdc4e5c2b4a9603d18a3f4d1fb521496c2a..df4aa7da2f26d3b5b922ba6590867ceaf28ef82f 100644 (file)
@@ -28,12 +28,18 @@ case "${1}" in
                fi
 
                boot_mesg "Starting Random Number Generator Daemon..."
-               loadproc /usr/sbin/rngd --no-tpm=1
+
+               if pidofproc /usr/sbin/rngd &>/dev/null; then
+                       # Is already running.
+                       echo_ok
+               else
+                       loadproc /usr/sbin/rngd --no-tpm=1
+               fi
                ;;
 
        stop)
                boot_mesg "Stopping Random Number Generator Daemon..."
-               killproc /usr/sbin/rngd
+               killproc -p /var/run/rngd.pid /usr/sbin/rngd
                ;;
 
        restart)
index d6bdb262af92e7bab7e42cd7a9108635d0a2e81c..614c9b8343059c572dc38bd0536816eff6c55b1d 100644 (file)
@@ -4,19 +4,28 @@
 # Based on sysklogd script from LFS-3.1 and earlier.
 # Rewritten by Gerard Beekmans  - gerard@linuxfromscratch.org
 
-#$LastChangedBy: bdubbs $
-#$Date: 2005-08-01 14:29:19 -0500 (Mon, 01 Aug 2005) $
-
 . /etc/sysconfig/rc
 . $rc_functions
 
+function fix_permissions() {
+       local lockdir="/var/lib/samba/winbindd_privileged"
+
+       chmod 750 "${lockdir}"
+       chgrp wbpriv "${lockdir}"
+}
+
 case "$1" in
        start)
+               fix_permissions
+
                boot_mesg "Starting nmbd..."
                loadproc /usr/sbin/nmbd -D
 
                boot_mesg "Starting smbd..."
                loadproc /usr/sbin/smbd -D
+
+               boot_mesg "Starting winbind..."
+               loadproc /usr/sbin/winbindd
                ;;
 
        stop)
@@ -25,6 +34,9 @@ case "$1" in
 
                boot_mesg "Stopping nmbd..."
                killproc -p /var/run/nmbd.pid /usr/sbin/nmbd
+
+               boot_mesg "Stopping winbind..."
+               killproc -p /var/run/winbindd.pid /usr/sbin/winbindd
                 ;;
 
        reload)
@@ -33,6 +45,9 @@ case "$1" in
 
                boot_mesg "Reloading nmbd..."
                reloadproc /usr/sbin/nmbd
+
+               boot_mesg "Reloading winbind..."
+               reloadproc /usr/sbin/winbindd
                ;;
 
        restart)
@@ -44,6 +59,7 @@ case "$1" in
        status)
                statusproc /usr/sbin/nmbd
                statusproc /usr/sbin/smbd
+               statusproc /usr/sbin/winbindd
                ;;
 
        *)
diff --git a/src/initscripts/init.d/winbind b/src/initscripts/init.d/winbind
deleted file mode 100644 (file)
index 590fddf..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/bash
-# Begin $rc_base/init.d/winbind
-
-# Based on sysklogd script from LFS-3.1 and earlier.
-# Rewritten by Gerard Beekmans  - gerard@linuxfromscratch.org
-
-#$LastChangedBy: bdubbs $
-#$Date: 2005-08-01 14:29:19 -0500 (Mon, 01 Aug 2005) $
-
-. /etc/sysconfig/rc
-. $rc_functions
-
-PIDFILE="/var/run/winbindd.pid"
-KILLDELAY="10"
-
-case "$1" in
-
-        start)
-                boot_mesg "Starting winbind..."
-                loadproc /usr/sbin/winbindd
-                ;;
-
-        stop)
-                boot_mesg "Stopping winbind..."
-               killproc -p ${PIDFILE} /usr/sbin/winbind
-               ;;
-
-       reload)
-               boot_mesg "Reloading winbind..."
-               reloadproc /usr/sbin/winbindd
-               ;;
-
-        restart)
-                $0 stop
-                sleep 1
-                $0 start
-                ;;
-
-        status)
-                statusproc /usr/sbin/winbindd
-                ;;
-
-        *)
-                echo "Usage: $0 {start|stop|reload|restart|status}"
-                exit 1
-                ;;
-
-esac
-
-# End $rc_base/init.d/winbind
index f81b295cc27553d7f249a7b5c54b6a252cd42345..45c166d4616a9e1757bec887ab30e14507b622fc 100644 (file)
 
 char command[BUFFER_SIZE]; 
 
-int main(int argc, char *argv[])
-{
+int main(int argc, char *argv[]) {
+       if (!(initsetuid()))
+               exit(1);
 
-if (!(initsetuid()))
-exit(1);
+       // Check what command is asked
+       if (argc == 1) {
+               fprintf (stderr, "Missing smbctrl command!\n");
+               return 1;
 
-// Check what command is asked
-if (argc==1)
-{
-fprintf (stderr, "Missing smbctrl command!\n");
-return 1;
-}
-else if (strcmp(argv[1], "smbuserdisable")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbpasswd -d %s >/dev/null", argv[2]);
-safe_system(command);
-return 0;
-}
-else if (strcmp(argv[1], "smbuserenable")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbpasswd -e %s >/dev/null", argv[2]);
-safe_system(command);
-return 0;
-}
-else if (strcmp(argv[1], "smbuserdelete")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbpasswd -x %s >/dev/null", argv[2]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/userdel %s >/dev/null", argv[2]);
-safe_system(command);
-return 0;
-}
-else if (strcmp(argv[1], "smbsafeconf")==0)
-{
-safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf");
-return 0;
-}
-else if (strcmp(argv[1], "smbsafeconfcups")==0)
-{
-safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/shares /var/ipfire/samba/printer > /var/ipfire/samba/smb.conf");
-return 0;
-}
-else if (strcmp(argv[1], "smbsafeconfpdc")==0)
-{
-safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/pdc /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf");
-return 0;
-}
-else if (strcmp(argv[1], "smbsafeconfpdccups")==0)
-{
-safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/pdc /var/ipfire/samba/shares /var/ipfire/samba/printer > /var/ipfire/samba/smb.conf");
-return 0;
-}
-else if (strcmp(argv[1], "smbglobalreset")==0)
-{
-safe_system("/bin/cat /var/ipfire/samba/default.global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf");
-safe_system("/bin/cat /var/ipfire/samba/default.settings > /var/ipfire/samba/settings");
-safe_system("/bin/cat /var/ipfire/samba/default.global > /var/ipfire/samba/global");
-safe_system("/bin/cat /var/ipfire/samba/default.pdc > /var/ipfire/samba/pdc");
-return 0;
-}
-else if (strcmp(argv[1], "smbsharesreset")==0)
-{
-safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/default.shares > /var/ipfire/samba/smb.conf");
-safe_system("/bin/cat /var/ipfire/samba/default.shares > /var/ipfire/samba/shares");
-return 0;
-}
-else if (strcmp(argv[1], "smbprinterreset")==0)
-{
-safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/shares /var/default.printer > /var/ipfire/samba/smb.conf");
-safe_system("/bin/cat /var/ipfire/samba/default.printer > /var/ipfire/samba/printer");
-return 0;
-}
-else if (strcmp(argv[1], "smbstop")==0)
-{
-safe_system("/etc/rc.d/init.d/samba stop >/dev/null");
-safe_system("/usr/local/bin/sambactrl disable");
-return 0;
-}
-else if (strcmp(argv[1], "smbstart")==0)
-{
-safe_system("/etc/rc.d/init.d/samba start >/dev/null");
-safe_system("/usr/local/bin/sambactrl enable");
-return 0;
-}
-else if (strcmp(argv[1], "smbrestart")==0)
-{
-safe_system("/etc/rc.d/init.d/samba restart >/dev/null");
-return 0;
-}
-else if (strcmp(argv[1], "smbreload")==0)
-{
-safe_system("/etc/rc.d/init.d/samba reload >/dev/null");
-return 0;
-}
-else if (strcmp(argv[1], "smbstatus")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbstatus 2>/dev/null");
-safe_system(command);
-return 0;
-}
-else if (strcmp(argv[1], "smbuseradd")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/groupadd sambauser >/dev/null");
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/useradd -c 'Samba User' -m -g %s -s %s %s >/dev/null", argv[4], argv[5], argv[2]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "echo %s:%s | chpasswd", argv[2], argv[3]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/bin/printf '%s\n%s\n' | /usr/bin/smbpasswd -as %s >/dev/null", argv[3], argv[3], argv[2]);
-safe_system(command);
-return 0;
-}
-else if (strcmp(argv[1], "smbpcadd")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/groupadd sambawks >/dev/null");
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/sbin/useradd -c 'Samba Workstation' -g %s -s %s %s >/dev/null", argv[3], argv[4], argv[2]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbpasswd -a -m %s >/dev/null", argv[2]);
-safe_system(command);
-return 0;
-}
-else if (strcmp(argv[1], "smbchangepw")==0)
-{
-snprintf(command, BUFFER_SIZE-1, "echo %s:%s | chpasswd", argv[2], argv[3]);
-safe_system(command);
-snprintf(command, BUFFER_SIZE-1, "/usr/bin/printf '%s\n%s\n' | /usr/bin/smbpasswd -as %s >/dev/null", argv[3], argv[3], argv[2]);
-safe_system(command);
-return 0;
-}
-else if (strcmp(argv[1], "readsmbpasswd")==0)
-{
-safe_system("/bin/chown root:nobody /var/ipfire/samba/private >/dev/null");
-safe_system("/bin/chown root:nobody /var/ipfire/samba/private/smbpasswd >/dev/null");
-safe_system("/bin/chmod 640 /var/ipfire/samba/private/smbpasswd >/dev/null");
-safe_system("/bin/chmod 650 /var/ipfire/samba/private >/dev/null");
-return 0;
-}
-else if (strcmp(argv[1], "locksmbpasswd")==0)
-{
-safe_system("/bin/chown root:root /var/ipfire/samba/private >/dev/null");
-safe_system("/bin/chown root:root /var/ipfire/samba/private/smbpasswd >/dev/null");
-safe_system("/bin/chmod 600 /var/ipfire/samba/private/smbpasswd >/dev/null");
-safe_system("/bin/chmod 600 /var/ipfire/samba/private >/dev/null");
-return 0;
-}
-else if (strcmp(argv[1], "enable")==0)
-{
-safe_system("touch /var/ipfire/samba/enable");
-safe_system("ln -snf /etc/rc.d/init.d/samba /etc/rc.d/rc3.d/S45samba");
-safe_system("ln -snf /etc/rc.d/init.d/samba /etc/rc.d/rc0.d/K48samba");
-safe_system("ln -snf /etc/rc.d/init.d/samba /etc/rc.d/rc6.d/K48samba");
-return 0;
-}
-else if (strcmp(argv[1], "disable")==0)
-{
-safe_system("unlink /var/ipfire/samba/enable");
-safe_system("rm -rf /etc/rc.d/rc*.d/*samba");
-return 0;
-}
-return 0;
+       } else if (strcmp(argv[1], "smbuserdisable") == 0) {
+               snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbpasswd -d %s >/dev/null", argv[2]);
+               safe_system(command);
+
+       } else if (strcmp(argv[1], "smbuserenable") == 0) {
+               snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbpasswd -e %s >/dev/null", argv[2]);
+               safe_system(command);
+
+       } else if (strcmp(argv[1], "smbuserdelete") == 0) {
+               snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbpasswd -x %s >/dev/null", argv[2]);
+               safe_system(command);
+
+               snprintf(command, BUFFER_SIZE-1, "/usr/sbin/userdel %s >/dev/null", argv[2]);
+               safe_system(command);
+
+       } else if (strcmp(argv[1], "smbsafeconf") == 0) {
+               safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf");
+
+       } else if (strcmp(argv[1], "smbsafeconfcups") == 0) {
+               safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/shares /var/ipfire/samba/printer > /var/ipfire/samba/smb.conf");
+
+       } else if (strcmp(argv[1], "smbsafeconfpdc") == 0) {
+               safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/pdc /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf");
+
+       } else if (strcmp(argv[1], "smbsafeconfpdccups") == 0) {
+               safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/pdc /var/ipfire/samba/shares /var/ipfire/samba/printer > /var/ipfire/samba/smb.conf");
+
+       } else if (strcmp(argv[1], "smbglobalreset") == 0) {
+               safe_system("/bin/cat /var/ipfire/samba/default.global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf");
+               safe_system("/bin/cat /var/ipfire/samba/default.settings > /var/ipfire/samba/settings");
+               safe_system("/bin/cat /var/ipfire/samba/default.global > /var/ipfire/samba/global");
+               safe_system("/bin/cat /var/ipfire/samba/default.pdc > /var/ipfire/samba/pdc");
+
+       } else if (strcmp(argv[1], "smbsharesreset") == 0) {
+               safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/default.shares > /var/ipfire/samba/smb.conf");
+               safe_system("/bin/cat /var/ipfire/samba/default.shares > /var/ipfire/samba/shares");
+
+       } else if (strcmp(argv[1], "smbprinterreset") == 0) {
+               safe_system("/bin/cat /var/ipfire/samba/global /var/ipfire/samba/shares /var/default.printer > /var/ipfire/samba/smb.conf");
+               safe_system("/bin/cat /var/ipfire/samba/default.printer > /var/ipfire/samba/printer");
+
+       } else if (strcmp(argv[1], "smbstop") == 0) {
+               safe_system("/etc/rc.d/init.d/samba stop >/dev/null");
+               safe_system("/usr/local/bin/sambactrl disable");
+
+       } else if (strcmp(argv[1], "smbstart") == 0) {
+               safe_system("/etc/rc.d/init.d/samba start >/dev/null");
+               safe_system("/usr/local/bin/sambactrl enable");
+
+       } else if (strcmp(argv[1], "smbrestart") == 0) {
+               safe_system("/etc/rc.d/init.d/samba restart >/dev/null");
+
+       } else if (strcmp(argv[1], "smbreload") == 0) {
+               safe_system("/etc/rc.d/init.d/samba reload >/dev/null");
+
+       } else if (strcmp(argv[1], "smbstatus") == 0) {
+               snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbstatus 2>/dev/null");
+               safe_system(command);
+
+       } else if (strcmp(argv[1], "smbuseradd") == 0) {
+               snprintf(command, BUFFER_SIZE-1, "/usr/sbin/groupadd sambauser >/dev/null");
+               safe_system(command);
+
+               snprintf(command, BUFFER_SIZE-1, "/usr/sbin/useradd -c 'Samba User' -m -g %s -s %s %s >/dev/null", argv[4], argv[5], argv[2]);
+               safe_system(command);
+
+               snprintf(command, BUFFER_SIZE-1, "echo %s:%s | chpasswd", argv[2], argv[3]);
+               safe_system(command);
+
+               snprintf(command, BUFFER_SIZE-1, "/usr/bin/printf '%s\n%s\n' | /usr/bin/smbpasswd -as %s >/dev/null", argv[3], argv[3], argv[2]);
+               safe_system(command);
+
+       } else if (strcmp(argv[1], "smbpcadd") == 0) {
+               snprintf(command, BUFFER_SIZE-1, "/usr/sbin/groupadd sambawks >/dev/null");
+               safe_system(command);
+
+               snprintf(command, BUFFER_SIZE-1, "/usr/sbin/useradd -c 'Samba Workstation' -g %s -s %s %s >/dev/null", argv[3], argv[4], argv[2]);
+               safe_system(command);
+
+               snprintf(command, BUFFER_SIZE-1, "/usr/bin/smbpasswd -a -m %s >/dev/null", argv[2]);
+               safe_system(command);
+
+       } else if (strcmp(argv[1], "smbchangepw") == 0) {
+               snprintf(command, BUFFER_SIZE-1, "echo %s:%s | chpasswd", argv[2], argv[3]);
+               safe_system(command);
+
+               snprintf(command, BUFFER_SIZE-1, "/usr/bin/printf '%s\n%s\n' | /usr/bin/smbpasswd -as %s >/dev/null", argv[3], argv[3], argv[2]);
+               safe_system(command);
+
+       } else if (strcmp(argv[1], "readsmbpasswd") == 0) {
+               safe_system("/bin/chown root:nobody /var/ipfire/samba/private >/dev/null");
+               safe_system("/bin/chown root:nobody /var/ipfire/samba/private/smbpasswd >/dev/null");
+               safe_system("/bin/chmod 640 /var/ipfire/samba/private/smbpasswd >/dev/null");
+               safe_system("/bin/chmod 650 /var/ipfire/samba/private >/dev/null");
+
+       } else if (strcmp(argv[1], "locksmbpasswd") == 0) {
+               safe_system("/bin/chown root:root /var/ipfire/samba/private >/dev/null");
+               safe_system("/bin/chown root:root /var/ipfire/samba/private/smbpasswd >/dev/null");
+               safe_system("/bin/chmod 600 /var/ipfire/samba/private/smbpasswd >/dev/null");
+               safe_system("/bin/chmod 600 /var/ipfire/samba/private >/dev/null");
+
+       } else if (strcmp(argv[1], "enable") == 0) {
+               safe_system("touch /var/ipfire/samba/enable");
+               safe_system("ln -snf /etc/rc.d/init.d/samba /etc/rc.d/rc3.d/S45samba");
+               safe_system("ln -snf /etc/rc.d/init.d/samba /etc/rc.d/rc0.d/K48samba");
+               safe_system("ln -snf /etc/rc.d/init.d/samba /etc/rc.d/rc6.d/K48samba");
+
+       } else if (strcmp(argv[1], "disable") == 0) {
+               safe_system("unlink /var/ipfire/samba/enable");
+               safe_system("rm -rf /etc/rc.d/rc*.d/*samba");
+
+       } else if (strcmp(argv[1], "join") == 0) {
+               if (argc == 4) {
+                       snprintf(command, BUFFER_SIZE - 1, "/usr/bin/net join -U \"%s%%%s\"",
+                               argv[2], argv[3]);
+                       return safe_system(command);
+               } else {
+                       fprintf(stderr, "Wrong number of arguments. Need username and password.\n");
+                       return 1;
+               }
+       }
+
+       return 0;
 }
index 3a0860afeb82b8725380cc6fb5a67f98b9e3481b..51449f55b79732002b55dc1596c61d9940e6ec0d 100644 (file)
@@ -22,6 +22,7 @@
 ############################################################################
 #
 . /opt/pakfire/lib/functions.sh
+extract_backup_includes
 make_backup ${NAME}
 remove_files
 
index 9c4f7f47873150a286b93c8ed6e5fc2143975ec8..b7a2fc1cc8f6df80b7cd5e1b4d3d50e8cf7c74c6 100644 (file)
 ############################################################################
 #
 . /opt/pakfire/lib/functions.sh
+
+# If the wbpriv group does not exist yet, then create it and put squid
+# into it.
+if ! getent group wbpriv >/dev/null; then
+       groupadd -g 88 wbpriv
+       usermod -a -G wbpriv squid
+fi
+
 extract_files
 restore_backup ${NAME}
 /usr/local/bin/sambactrl smbstart
index 6f4cb60645ddabdbf7d97bc8489aada5b79c7f96..648b025b7edd701cb69e253f2be18a2e22e572c3 100644 (file)
 #
 . /opt/pakfire/lib/functions.sh
 ./uninstall.sh
+
+# If the wbpriv group does not exist yet, then create it and put squid
+# into it.
+if ! getent group wbpriv >/dev/null; then
+       groupadd -g 88 wbpriv
+       usermod -a -G wbpriv squid
+fi
+
 extract_files
 restore_backup ${NAME}
 echo "passdb backend = smbpasswd" >> /var/ipfire/samba/smb.conf
diff --git a/src/paks/squid-accounting/install.sh b/src/paks/squid-accounting/install.sh
new file mode 100644 (file)
index 0000000..835055a
--- /dev/null
@@ -0,0 +1,38 @@
+#!/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 2 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) 2009 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+extract_files
+restore_backup ${NAME}
+
+#Generate SQLite DB if it does not exist
+if [ ! -f /var/ipfire/accounting/acct.db ]; then
+       perl /var/ipfire/accounting/dbinstall.pl
+       chmod 644 /var/ipfire/accounting/acct.db
+       chown nobody.nobody /var/ipfire/accounting/acct.db
+fi
+#Set right permissions of directory /srv/web/ipfire/html/accounting
+chown -R nobody.nobody /srv/web/ipfire/html/accounting
+chmod 755 -R /srv/web/ipfire/html/accounting
+rm -f /var/ipfire/accounting/dbinstall.pl
+/usr/local/bin/update-lang-cache
diff --git a/src/paks/squid-accounting/uninstall.sh b/src/paks/squid-accounting/uninstall.sh
new file mode 100644 (file)
index 0000000..841124b
--- /dev/null
@@ -0,0 +1,27 @@
+#!/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 2 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) 2014 IPFire-Team <alexander.marx@ipfire.org>               #
+#                                                                          #
+############################################################################
+
+. /opt/pakfire/lib/functions.sh
+make_backup ${NAME}
+remove_files
+/usr/local/bin/update-lang-cache
diff --git a/src/paks/squid-accounting/update.sh b/src/paks/squid-accounting/update.sh
new file mode 100644 (file)
index 0000000..89c40d0
--- /dev/null
@@ -0,0 +1,26 @@
+#!/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 2 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) 2007 IPFire-Team <info@ipfire.org>.                        #
+#                                                                          #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+./uninstall.sh
+./install.sh
index 4b371326a3818747a70733dc6102d6b9ed3a12e3..5bd19ce9adf13373aa8f045defe6b1f5ddc28359 100644 (file)
@@ -1,9 +1,12 @@
-diff -up bash-3.2/config-top.h.ssh_source_bash bash-3.2/config-top.h
---- bash-3.2/config-top.h.ssh_source_bash      2008-10-23 15:08:04.000000000 +0200
-+++ bash-3.2/config-top.h      2008-10-23 15:08:33.000000000 +0200
-@@ -86,4 +86,4 @@
- /* Define this if you want bash to try to check whether it's being run by
-    sshd and source the .bashrc if so (like the rshd behavior). */
+diff -up bash-4.0/config-top.h.ssh_source_bash bash-4.0/config-top.h
+--- bash-4.0/config-top.h.ssh_source_bash      2009-01-21 15:20:06.000000000 +0100
++++ bash-4.0/config-top.h      2009-01-21 15:25:46.000000000 +0100
+@@ -90,7 +90,7 @@
+    sshd and source the .bashrc if so (like the rshd behavior).  This checks
+    for the presence of SSH_CLIENT or SSH2_CLIENT in the initial environment,
+    which can be fooled under certain not-uncommon circumstances. */
 -/* #define SSH_SOURCE_BASHRC */
 +#define SSH_SOURCE_BASHRC
+ /* Define if you want the case-capitalizing operators (~[~]) and the
+    `capcase' variable attribute (declare -c). */
index 735a3810f048d128cbb0cb3ef26ab6f24a561464..24ec5cc0ba2809e8ddcca66c1045a1601b6a308f 100644 (file)
@@ -1,25 +1,6 @@
---- bash-3.0/config.h.in.paths 2004-07-21 21:08:31.000000000 +0100
-+++ bash-3.0/config.h.in       2004-07-28 09:16:27.257884999 +0100
-@@ -197,7 +197,7 @@
- /* System paths */
--#define DEFAULT_MAIL_DIRECTORY "/usr/spool/mail"
-+#define DEFAULT_MAIL_DIRECTORY "/var/spool/mail"
- /* Characteristics of the system's header files and libraries that affect
-    the compilation environment. */
 --- bash-3.0/config-top.h.paths        2003-08-05 15:36:12.000000000 +0100
 +++ bash-3.0/config-top.h      2004-07-28 09:36:27.117205637 +0100
-@@ -52,14 +52,14 @@
- /* The default value of the PATH variable. */
- #ifndef DEFAULT_PATH_VALUE
- #define DEFAULT_PATH_VALUE \
--  "/usr/gnu/bin:/usr/local/bin:/bin:/usr/bin:."
-+  "/usr/local/bin:/bin:/usr/bin"
- #endif
- /* The value for PATH when invoking `command -p'.  This is only used when
+@@ -66,7 +66,7 @@
     the Posix.2 confstr () function, or CS_PATH define are not present. */
  #ifndef STANDARD_UTILS_PATH
  #define STANDARD_UTILS_PATH \
diff --git a/src/patches/bash/bash32-001 b/src/patches/bash/bash32-001
deleted file mode 100644 (file)
index b7d1f1e..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-001
-
-Bug-Reported-by:       Greg Schafer <gschafer@zip.com.au>
-Bug-Reference-ID:      <20061012084940.GA15768@tigers.local>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00046.html
-
-Bug-Description:
-
-When using historical ``-style command substitution, bash incorrectly attempts
-to interpret shell comments while scanning for the closing backquote.
-
-Patch:
-
-*** ../bash-3.2/parse.y        Tue Sep 19 16:37:21 2006
---- parse.y    Thu Oct 12 10:30:57 2006
-***************
-*** 2736,2740 ****
-    count = 1;
-    pass_next_character = backq_backslash = was_dollar = in_comment = 0;
-!   check_comment = (flags & P_COMMAND) && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0;
-  
-    /* RFLAGS is the set of flags we want to pass to recursive calls. */
---- 2736,2740 ----
-    count = 1;
-    pass_next_character = backq_backslash = was_dollar = in_comment = 0;
-!   check_comment = (flags & P_COMMAND) && qc != '`' && qc != '\'' && qc != '"' && (flags & P_DQUOTE) == 0;
-  
-    /* RFLAGS is the set of flags we want to pass to recursive calls. */
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 0
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 1
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-002 b/src/patches/bash/bash32-002
deleted file mode 100644 (file)
index b934df9..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-002
-
-Bug-Reported-by:       Jim Gifford <jim@jg555.com>
-Bug-Reference-ID:      <12j2pc3aq35mb04@corp.supernews.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00082.html
-
-Bug-Description:
-
-An incorrect encoding specification in the Content-Type header causes msgfmt
-to fail, which causes `make install' to fail.
-
-Patch:
-
-*** ../bash-3.2/po/ru.po        Tue Jan 10 17:51:03 2006
---- po/ru.po    Mon Oct 16 15:13:23 2006
-***************
-*** 13,17 ****
-  "Language-Team: Russian <ru@li.org>\n"
-  "MIME-Version: 1.0\n"
-! "Content-Type: text/plain; charset=UTF-8\n"
-  "Content-Transfer-Encoding: 8bit\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"
---- 13,17 ----
-  "Language-Team: Russian <ru@li.org>\n"
-  "MIME-Version: 1.0\n"
-! "Content-Type: text/plain; charset=KOI8-R\n"
-  "Content-Transfer-Encoding: 8bit\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"
-
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 1
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 2
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-003 b/src/patches/bash/bash32-003
deleted file mode 100644 (file)
index 922041b..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-003
-
-Bug-Reported-by:       John Gatewood Ham <zappaman@buraphalinux.org>
-Bug-Reference-ID:      <Pine.LNX.4.64.0610121334140.15558@www.buraphalinux.org>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00045.html
-
-Bug-Description:
-
-When using the conditional command's `=~' operator to match regular
-expressions, the parser did not skip over shell metacharacters in the
-regular expression, leading to syntax errors.
-
-Patch:
-
-*** ../bash-3.2-patched/parse.y        Tue Oct 17 11:45:20 2006
---- parse.y    Sat Oct 14 14:56:16 2006
-***************
-*** 1029,1034 ****
---- 1029,1035 ----
-  #define PST_CMDTOKEN 0x1000          /* command token OK - unused */
-  #define PST_COMPASSIGN       0x2000          /* parsing x=(...) compound assignment */
-  #define PST_ASSIGNOK 0x4000          /* assignment statement ok in this context */
-+ #define PST_REGEXP   0x8000          /* parsing an ERE/BRE as a single word */
-  
-  /* Initial size to allocate for tokens, and the
-     amount to grow them by. */
-***************
-*** 2591,2596 ****
---- 2592,2600 ----
-        return (character);
-      }
-  
-+   if (parser_state & PST_REGEXP)
-+     goto tokword;
-+ 
-    /* Shell meta-characters. */
-    if MBTEST(shellmeta (character) && ((parser_state & PST_DBLPAREN) == 0))
-      {
-***************
-*** 2698,2703 ****
---- 2702,2708 ----
-    if MBTEST(character == '-' && (last_read_token == LESS_AND || last_read_token == GREATER_AND))
-      return (character);
-  
-+ tokword:
-    /* Okay, if we got this far, we have to read a word.  Read one,
-       and then check it against the known ones. */
-    result = read_token_word (character);
-***************
-*** 3202,3209 ****
-        if (tok == WORD && test_binop (yylval.word->word))
-       op = yylval.word;
-  #if defined (COND_REGEXP)
-!       else if (tok == WORD && STREQ (yylval.word->word,"=~"))
-!      op = yylval.word;
-  #endif
-        else if (tok == '<' || tok == '>')
-       op = make_word_from_token (tok);  /* ( */
---- 3207,3217 ----
-        if (tok == WORD && test_binop (yylval.word->word))
-       op = yylval.word;
-  #if defined (COND_REGEXP)
-!       else if (tok == WORD && STREQ (yylval.word->word, "=~"))
-!      {
-!        op = yylval.word;
-!        parser_state |= PST_REGEXP;
-!      }
-  #endif
-        else if (tok == '<' || tok == '>')
-       op = make_word_from_token (tok);  /* ( */
-***************
-*** 3234,3239 ****
---- 3242,3248 ----
-  
-        /* rhs */
-        tok = read_token (READ);
-+       parser_state &= ~PST_REGEXP;
-        if (tok == WORD)
-       {
-         tright = make_cond_node (COND_TERM, yylval.word, (COND_COM *)NULL, (COND_COM *)NULL);
-***************
-*** 3419,3427 ****
-         goto next_character;
-       }
-  
-  #ifdef EXTENDED_GLOB
-        /* Parse a ksh-style extended pattern matching specification. */
-!       if (extended_glob && PATTERN_CHAR (character))
-       {
-         peek_char = shell_getc (1);
-         if MBTEST(peek_char == '(')           /* ) */
---- 3428,3461 ----
-         goto next_character;
-       }
-  
-+ #ifdef COND_REGEXP
-+       /* When parsing a regexp as a single word inside a conditional command,
-+       we need to special-case characters special to both the shell and
-+       regular expressions.  Right now, that is only '(' and '|'. */ /*)*/
-+       if MBTEST((parser_state & PST_REGEXP) && (character == '(' || character == '|'))               /*)*/
-+         {
-+           if (character == '|')
-+             goto got_character;
-+ 
-+        push_delimiter (dstack, character);
-+        ttok = parse_matched_pair (cd, '(', ')', &ttoklen, 0);
-+        pop_delimiter (dstack);
-+        if (ttok == &matched_pair_error)
-+          return -1;          /* Bail immediately. */
-+        RESIZE_MALLOCED_BUFFER (token, token_index, ttoklen + 2,
-+                                token_buffer_size, TOKEN_DEFAULT_GROW_SIZE);
-+        token[token_index++] = character;
-+        strcpy (token + token_index, ttok);
-+        token_index += ttoklen;
-+        FREE (ttok);
-+        dollar_present = all_digit_token = 0;
-+        goto next_character;
-+         }
-+ #endif /* COND_REGEXP */
-+ 
-  #ifdef EXTENDED_GLOB
-        /* Parse a ksh-style extended pattern matching specification. */
-!       if MBTEST(extended_glob && PATTERN_CHAR (character))
-       {
-         peek_char = shell_getc (1);
-         if MBTEST(peek_char == '(')           /* ) */
-
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 2
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 3
-  
-  #endif /* _PATCHLEVEL_H_ */
-
diff --git a/src/patches/bash/bash32-004 b/src/patches/bash/bash32-004
deleted file mode 100644 (file)
index cd2accf..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-004
-
-Bug-Reported-by:       Stuart Shelton <srcshelton@gmail.com>
-Bug-Reference-ID:      <619141e40610261203y6cda5aa6i23cb24c7aeba996e@mail.gmail.com>
-Bug-Reference-URL:     
-
-Bug-Description:
-
-A bug in the parameter pattern substitution implementation treated a pattern
-whose first character was `/' (after expansion) as specifying global
-replacement.
-
-Patch:
-
-*** ../bash-3.2/subst.c        Tue Sep 19 08:35:09 2006
---- subst.c    Thu Oct 26 09:17:50 2006
-***************
-*** 5707,5712 ****
---- 5707,5717 ----
-    vtype &= ~VT_STARSUB;
-  
-    mflags = 0;
-+   if (patsub && *patsub == '/')
-+     {
-+       mflags |= MATCH_GLOBREP;
-+       patsub++;
-+     }
-  
-    /* Malloc this because expand_string_if_necessary or one of the expansion
-       functions in its call chain may free it on a substitution error. */
-***************
-*** 5741,5753 ****
-      }
-  
-    /* ksh93 doesn't allow the match specifier to be a part of the expanded
-!      pattern.  This is an extension. */
-    p = pat;
-!   if (pat && pat[0] == '/')
-!     {
-!       mflags |= MATCH_GLOBREP|MATCH_ANY;
-!       p++;
-!     }
-    else if (pat && pat[0] == '#')
-      {
-        mflags |= MATCH_BEG;
---- 5746,5757 ----
-      }
-  
-    /* ksh93 doesn't allow the match specifier to be a part of the expanded
-!      pattern.  This is an extension.  Make sure we don't anchor the pattern
-!      at the beginning or end of the string if we're doing global replacement,
-!      though. */
-    p = pat;
-!   if (mflags & MATCH_GLOBREP)
-!     mflags |= MATCH_ANY;
-    else if (pat && pat[0] == '#')
-      {
-        mflags |= MATCH_BEG;
-*** ../bash-3.2/tests/new-exp.right    Thu Aug 10 12:00:00 2006
---- tests/new-exp.right        Sun Oct 29 16:03:36 2006
-***************
-*** 430,436 ****
-  Case06---1---A B C::---
-  Case07---3---A:B:C---
-  Case08---3---A:B:C---
-! ./new-exp.tests: line 506: /${$(($#-1))}: bad substitution
-  argv[1] = <a>
-  argv[2] = <b>
-  argv[3] = <c>
---- 430,436 ----
-  Case06---1---A B C::---
-  Case07---3---A:B:C---
-  Case08---3---A:B:C---
-! ./new-exp.tests: line 506: ${$(($#-1))}: bad substitution
-  argv[1] = <a>
-  argv[2] = <b>
-  argv[3] = <c>
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 3
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 4
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-005 b/src/patches/bash/bash32-005
deleted file mode 100644 (file)
index 903ec58..0000000
+++ /dev/null
@@ -1,223 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-005
-
-Bug-Reported-by:       Stuart Shelton <stuart@openobjects.com>
-Bug-Reference-ID:      <453F7CC8.6030907@openobjects.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2006-10/msg00127.html
-
-Bug-Description:
-
-A missing extern declaration for `asprintf' caused `double' arguments to be
-passed as `0', leading to incorrect results.  Additionally, a bug in the
-replacement asprintf/snprintf function caused an infinite loop when passed
-0 arguments to the floating point conversions under some circumstances.
-
-Patch:
-
-*** ../bash-3.2/builtins/printf.def    Mon Sep 18 08:48:42 2006
---- builtins/printf.def        Tue Oct 31 08:19:44 2006
-***************
-*** 49,54 ****
---- 49,60 ----
-  #  define INT_MIN            (-2147483647-1)
-  #endif
-  
-+ #if defined (PREFER_STDARG)
-+ #  include <stdarg.h>
-+ #else
-+ #  include <varargs.h>
-+ #endif
-+ 
-  #include <stdio.h>
-  #include <chartypes.h>
-  
-***************
-*** 151,156 ****
---- 157,166 ----
-  #define SKIP1 "#'-+ 0"
-  #define LENMODS "hjlLtz"
-  
-+ #ifndef HAVE_ASPRINTF
-+ extern int asprintf __P((char **, const char *, ...)) __attribute__((__format__ (printf, 2, 3)));
-+ #endif
-+ 
-  static void printf_erange __P((char *));
-  static int printstr __P((char *, char *, int, int, int));
-  static int tescape __P((char *, char *, int *));
-
-
-*** ../bash-3.2/lib/sh/snprintf.c      Thu Apr  6 09:48:40 2006
---- lib/sh/snprintf.c  Sat Oct 28 00:00:13 2006
-***************
-*** 471,476 ****
---- 476,483 ----
-         10^x ~= r
-   * log_10(200) = 2;
-   * log_10(250) = 2;
-+  *
-+  * NOTE: do not call this with r == 0 -- an infinite loop results.
-   */
-  static int
-  log_10(r)
-***************
-*** 576,583 ****
-      { 
-        integral_part[0] = '0';
-        integral_part[1] = '\0';
-!       fraction_part[0] = '0';
-!       fraction_part[1] = '\0';
-        if (fract)
-       *fract = fraction_part;
-        return integral_part;
---- 583,593 ----
-      { 
-        integral_part[0] = '0';
-        integral_part[1] = '\0';
-!       /* The fractional part has to take the precision into account */
-!       for (ch = 0; ch < precision-1; ch++)
-!      fraction_part[ch] = '0';
-!       fraction_part[ch] = '0';
-!       fraction_part[ch+1] = '\0';
-        if (fract)
-       *fract = fraction_part;
-        return integral_part;
-***************
-*** 805,810 ****
---- 815,821 ----
-        PUT_CHAR(*tmp, p);
-        tmp++;
-      }
-+ 
-    PAD_LEFT(p);
-  }
-  
-***************
-*** 972,982 ****
-    if ((p->flags & PF_THOUSANDS) && grouping && (t = groupnum (tmp)))
-      tmp = t;
-  
-    /* calculate the padding. 1 for the dot */
-    p->width = p->width -
-           ((d > 0. && p->justify == RIGHT) ? 1:0) -
-           ((p->flags & PF_SPACE) ? 1:0) -
-!          strlen(tmp) - p->precision - 1;
-    PAD_RIGHT(p);  
-    PUT_PLUS(d, p, 0.);
-    PUT_SPACE(d, p, 0.);
---- 983,1003 ----
-    if ((p->flags & PF_THOUSANDS) && grouping && (t = groupnum (tmp)))
-      tmp = t;
-  
-+   if ((*p->pf == 'g' || *p->pf == 'G') && (p->flags & PF_ALTFORM) == 0)
-+     {
-+       /* smash the trailing zeros unless altform */
-+       for (i = strlen(tmp2) - 1; i >= 0 && tmp2[i] == '0'; i--)
-+         tmp2[i] = '\0'; 
-+       if (tmp2[0] == '\0')
-+      p->precision = 0;
-+     }
-+ 
-    /* calculate the padding. 1 for the dot */
-    p->width = p->width -
-           ((d > 0. && p->justify == RIGHT) ? 1:0) -
-           ((p->flags & PF_SPACE) ? 1:0) -
-!          strlen(tmp) - p->precision -
-!          ((p->precision != 0 || (p->flags & PF_ALTFORM)) ? 1 : 0);   /* radix char */
-    PAD_RIGHT(p);  
-    PUT_PLUS(d, p, 0.);
-    PUT_SPACE(d, p, 0.);
-***************
-*** 991,1001 ****
-    if (p->precision != 0 || (p->flags & PF_ALTFORM))
-      PUT_CHAR(decpoint, p);  /* put the '.' */
-  
--   if ((*p->pf == 'g' || *p->pf == 'G') && (p->flags & PF_ALTFORM) == 0)
--     /* smash the trailing zeros unless altform */
--     for (i = strlen(tmp2) - 1; i >= 0 && tmp2[i] == '0'; i--)
--       tmp2[i] = '\0'; 
-- 
-    for (; *tmp2; tmp2++)
-      PUT_CHAR(*tmp2, p); /* the fraction */
-    
---- 1012,1017 ----
-***************
-*** 1011,1024 ****
-    char *tmp, *tmp2;
-    int j, i;
-  
-!   if (chkinfnan(p, d, 1) || chkinfnan(p, d, 2))
-      return;  /* already printed nan or inf */
-  
-    GETLOCALEDATA(decpoint, thoussep, grouping);
-    DEF_PREC(p);
-!   j = log_10(d);
-!   d = d / pow_10(j);  /* get the Mantissa */
-!   d = ROUND(d, p);             
-    tmp = dtoa(d, p->precision, &tmp2);
-  
-    /* 1 for unit, 1 for the '.', 1 for 'e|E',
---- 1027,1045 ----
-    char *tmp, *tmp2;
-    int j, i;
-  
-!   if (d != 0 && (chkinfnan(p, d, 1) || chkinfnan(p, d, 2)))
-      return;  /* already printed nan or inf */
-  
-    GETLOCALEDATA(decpoint, thoussep, grouping);
-    DEF_PREC(p);
-!   if (d == 0.)
-!     j = 0;
-!   else
-!     {
-!       j = log_10(d);
-!       d = d / pow_10(j);  /* get the Mantissa */
-!       d = ROUND(d, p);                 
-!     }
-    tmp = dtoa(d, p->precision, &tmp2);
-  
-    /* 1 for unit, 1 for the '.', 1 for 'e|E',
-***************
-*** 1076,1081 ****
---- 1097,1103 ----
-         PUT_CHAR(*tmp, p);
-         tmp++;
-       }
-+ 
-     PAD_LEFT(p);
-  }
-  #endif
-***************
-*** 1358,1364 ****
-               STAR_ARGS(data);
-               DEF_PREC(data);
-               d = GETDOUBLE(data);
-!              i = log_10(d);
-               /*
-                * for '%g|%G' ANSI: use f if exponent
-                * is in the range or [-4,p] exclusively
---- 1380,1386 ----
-               STAR_ARGS(data);
-               DEF_PREC(data);
-               d = GETDOUBLE(data);
-!              i = (d != 0.) ? log_10(d) : -1;
-               /*
-                * for '%g|%G' ANSI: use f if exponent
-                * is in the range or [-4,p] exclusively
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 4
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 5
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-006 b/src/patches/bash/bash32-006
deleted file mode 100644 (file)
index 589db9e..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-006
-
-Bug-Reported-by:       ebb9@byu.net
-Bug-Reference-ID:      <45540862.9030900@byu.net>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00017.html
-                       http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00016.html
-
-Bug-Description:
-
-In some cases, code that is intended to be used in the presence of multibyte
-characters is called when no such characters are present, leading to incorrect
-display position calculations and incorrect redisplay.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/display.c Thu Sep 14 14:20:12 2006
---- lib/readline/display.c     Mon Nov 13 17:55:57 2006
-***************
-*** 2381,2384 ****
---- 2409,2414 ----
-    if (end <= start)
-      return 0;
-+   if (MB_CUR_MAX == 1 || rl_byte_oriented)
-+     return (end - start);
-  
-    memset (&ps, 0, sizeof (mbstate_t));
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 5
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 6
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-007 b/src/patches/bash/bash32-007
deleted file mode 100644 (file)
index 9b86f4a..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-007
-
-Bug-Reported-by:       jidanni@jidanni.org
-Bug-Reference-ID:      <E1Gkg12-00017D-Fm@jidanni.org>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00039.html
-
-Bug-Description:
-
-When removing the current or previous job from the jobs list, bash incorrectly
-resets the current job under some circumstances.
-
-Patch:
-
-*** ../bash-3.2-patched/jobs.c Sat Jul 29 16:40:48 2006
---- jobs.c     Fri Nov 24 14:50:01 2006
-***************
-*** 985,990 ****
-    if (temp == 0)
-      return;
--   if (job_index == js.j_current || job_index == js.j_previous)
--     reset_current ();
-  
-    if ((dflags & DEL_NOBGPID) == 0)
---- 985,988 ----
-***************
-*** 1029,1032 ****
---- 1027,1033 ----
-    else if (jobs[js.j_firstj] == 0 || jobs[js.j_lastj] == 0)
-      reset_job_indices ();
-+ 
-+   if (job_index == js.j_current || job_index == js.j_previous)
-+     reset_current ();
-  }
-
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 6
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 7
-  
-  #endif /* _PATCHLEVEL_H_ */
-
-  
diff --git a/src/patches/bash/bash32-008 b/src/patches/bash/bash32-008
deleted file mode 100644 (file)
index 7ec07ff..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-008
-
-Bug-Reported-by:       Linda Walsh <bash@tlinx.org>
-Bug-Reference-ID:      <456041FD.8000605@tlinx.org>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00040.html
-
-Bug-Description:
-
-When checking pathnames from the command hash table (e.g., when the `checkhash'
-shell option is enabled), a bug causes bash to delete and re-lookup each
-command.
-
-Patch:
-
-*** ../bash-3.2-patched/findcmd.c      Wed Aug 17 16:49:54 2005
---- findcmd.c  Fri Nov 24 10:48:37 2006
-***************
-*** 309,313 ****
-      {
-        st = file_status (hashed_file);
-!       if ((st ^ (FS_EXISTS | FS_EXECABLE)) != 0)
-       {
-         phash_remove (pathname);
---- 309,313 ----
-      {
-        st = file_status (hashed_file);
-!       if ((st & (FS_EXISTS|FS_EXECABLE)) != (FS_EXISTS|FS_EXECABLE))
-       {
-         phash_remove (pathname);
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 7
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 8
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-009 b/src/patches/bash/bash32-009
deleted file mode 100644 (file)
index 9cfd16e..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-009
-
-Bug-Reported-by:       James.M.Botte@lowes.com
-Bug-Reference-ID:      <BA9FF90F7E5B424998F98EDA9F1F94BE01FA9853@msexchdb01.lowes.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2006-12/msg00000.html
-
-Bug-Description:
-
-When using its built-in replacement for snprintf/asprintf, bash does not
-treat the %x, %X, and %o format specifiers as unsigned numbers.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/sh/snprintf.c      Mon Nov 13 08:58:52 2006
---- lib/sh/snprintf.c  Wed Dec  6 11:15:04 2006
-***************
-*** 669,673 ****
-  
-    sd = d;    /* signed for ' ' padding in base 10 */
-!   flags = (*p->pf == 'u' || *p->pf == 'U') ? FL_UNSIGNED : 0;
-    if (*p->pf == 'X')
-      flags |= FL_HEXUPPER;
---- 674,679 ----
-  
-    sd = d;    /* signed for ' ' padding in base 10 */
-!   flags = 0;
-!   flags = (*p->pf == 'x' || *p->pf == 'X' || *p->pf == 'o' || *p->pf == 'u' || *p->pf == 'U') ? FL_UNSIGNED : 0;
-    if (*p->pf == 'X')
-      flags |= FL_HEXUPPER;
-***************
-*** 739,743 ****
-  
-    sd = d;    /* signed for ' ' padding in base 10 */
-!   flags = (*p->pf == 'u' || *p->pf == 'U') ? FL_UNSIGNED : 0;
-    if (*p->pf == 'X')
-      flags |= FL_HEXUPPER;
---- 745,749 ----
-  
-    sd = d;    /* signed for ' ' padding in base 10 */
-!   flags = (*p->pf == 'x' || *p->pf == 'X' || *p->pf == 'o' || *p->pf == 'u' || *p->pf == 'U') ? FL_UNSIGNED : 0;
-    if (*p->pf == 'X')
-      flags |= FL_HEXUPPER;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 8
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 9
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-010 b/src/patches/bash/bash32-010
deleted file mode 100644 (file)
index 88de575..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-010
-
-Bug-Reported-by:       Ryan Waldron <rew@erebor.com>
-Bug-Reference-ID:      <20070119065603.546D011E9C@kansas.erebor.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-01/msg00059.html
-
-Bug-Description:
-
-The glibc implementation of regcomp/regexec does not allow backslashes to
-escape "ordinary" pattern characters when matching.  Bash used backslashes
-to quote all characters when the pattern argument to the [[ special
-command's =~ operator was quoted.  This caused the match to fail on Linux
-and other systems using GNU libc.
-
-Patch:
-
-*** ../bash-3.2.9/pathexp.h    Sat Feb 19 17:23:18 2005
---- pathexp.h  Wed Jan 31 22:53:16 2007
-***************
-*** 1,5 ****
-  /* pathexp.h -- The shell interface to the globbing library. */
-  
-! /* Copyright (C) 1987-2005 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
---- 1,5 ----
-  /* pathexp.h -- The shell interface to the globbing library. */
-  
-! /* Copyright (C) 1987-2007 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
-***************
-*** 33,36 ****
---- 33,37 ----
-  #define QGLOB_CVTNULL        0x01    /* convert QUOTED_NULL strings to '\0' */
-  #define QGLOB_FILENAME       0x02    /* do correct quoting for matching filenames */
-+ #define QGLOB_REGEXP 0x04    /* quote an ERE for regcomp/regexec */
-  
-  #if defined (EXTENDED_GLOB)
-*** ../bash-3.2.9/pathexp.c    Mon May  6 13:43:05 2002
---- pathexp.c  Mon Feb 26 16:59:23 2007
-***************
-*** 1,5 ****
-  /* pathexp.c -- The shell interface to the globbing library. */
-  
-! /* Copyright (C) 1995-2002 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
---- 1,5 ----
-  /* pathexp.c -- The shell interface to the globbing library. */
-  
-! /* Copyright (C) 1995-2007 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
-***************
-*** 111,114 ****
---- 111,141 ----
-  }
-  
-+ /* Return 1 if C is a character that is `special' in a POSIX ERE and needs to
-+    be quoted to match itself. */
-+ static inline int
-+ ere_char (c)
-+      int c;
-+ {
-+   switch (c)
-+     {
-+     case '.':
-+     case '[':
-+     case '\\':
-+     case '(':
-+     case ')':
-+     case '*':
-+     case '+':
-+     case '?':
-+     case '{':
-+     case '|':
-+     case '^':
-+     case '$':
-+       return 1;
-+     default: 
-+       return 0;
-+     }
-+   return (0);
-+ }
-+ 
-  /* PATHNAME can contain characters prefixed by CTLESC; this indicates
-     that the character is to be quoted.  We quote it here in the style
-***************
-*** 143,146 ****
---- 170,175 ----
-         if ((qflags & QGLOB_FILENAME) && pathname[i+1] == '/')
-           continue;
-+        if ((qflags & QGLOB_REGEXP) && ere_char (pathname[i+1]) == 0)
-+          continue;
-         temp[j++] = '\\';
-         i++;
-*** ../bash-3.2.9/subst.c      Tue Nov  7 16:14:41 2006
---- subst.c    Wed Jan 31 23:09:58 2007
-***************
-*** 5,9 ****
-       beauty, but, hey, you're alright.'' */
-  
-! /* Copyright (C) 1987-2006 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
---- 5,9 ----
-       beauty, but, hey, you're alright.'' */
-  
-! /* Copyright (C) 1987-2007 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
-***************
-*** 2647,2655 ****
-  /* This needs better error handling. */
-  /* Expand W for use as an argument to a unary or binary operator in a
-!    [[...]] expression.  If SPECIAL is nonzero, this is the rhs argument
-     to the != or == operator, and should be treated as a pattern.  In
-!    this case, we quote the string specially for the globbing code.  The
-!    caller is responsible for removing the backslashes if the unquoted
-!    words is needed later. */   
-  char *
-  cond_expand_word (w, special)
---- 2647,2656 ----
-  /* This needs better error handling. */
-  /* Expand W for use as an argument to a unary or binary operator in a
-!    [[...]] expression.  If SPECIAL is 1, this is the rhs argument
-     to the != or == operator, and should be treated as a pattern.  In
-!    this case, we quote the string specially for the globbing code.  If
-!    SPECIAL is 2, this is an rhs argument for the =~ operator, and should
-!    be quoted appropriately for regcomp/regexec.  The caller is responsible
-!    for removing the backslashes if the unquoted word is needed later. */   
-  char *
-  cond_expand_word (w, special)
-***************
-*** 2659,2662 ****
---- 2660,2664 ----
-    char *r, *p;
-    WORD_LIST *l;
-+   int qflags;
-  
-    if (w->word == 0 || w->word[0] == '\0')
-***************
-*** 2673,2678 ****
-        else
-       {
-         p = string_list (l);
-!        r = quote_string_for_globbing (p, QGLOB_CVTNULL);
-         free (p);
-       }
---- 2675,2683 ----
-        else
-       {
-+        qflags = QGLOB_CVTNULL;
-+        if (special == 2)
-+          qflags |= QGLOB_REGEXP;
-         p = string_list (l);
-!        r = quote_string_for_globbing (p, qflags);
-         free (p);
-       }
-*** ../bash-3.2.9/execute_cmd.c        Sat Aug 26 00:23:17 2006
---- execute_cmd.c      Wed Jan 31 23:12:06 2007
-***************
-*** 1,5 ****
-  /* execute_cmd.c -- Execute a COMMAND structure. */
-  
-! /* Copyright (C) 1987-2005 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
---- 1,5 ----
-  /* execute_cmd.c -- Execute a COMMAND structure. */
-  
-! /* Copyright (C) 1987-2007 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
-***************
-*** 2547,2551 ****
-        if (arg1 == 0)
-       arg1 = nullstr;
-!       arg2 = cond_expand_word (cond->right->op, patmatch||rmatch);
-        if (arg2 == 0)
-       arg2 = nullstr;
---- 2547,2551 ----
-        if (arg1 == 0)
-       arg1 = nullstr;
-!       arg2 = cond_expand_word (cond->right->op, rmatch ? 2 : (patmatch ? 1 : 0));
-        if (arg2 == 0)
-       arg2 = nullstr;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 9
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 10
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-011 b/src/patches/bash/bash32-011
deleted file mode 100644 (file)
index c021f52..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-011
-
-Bug-Reported-by: Petr Sumbera <Petr.Sumbera@Sun.COM>
-Bug-Reference-ID: <45AF5F4B.1020800@sun.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-01/msg00049.html
-
-Bug-Description:
-
-Under certain circumstances (loopback mounts), the bash getcwd does not
-return correct results.  This patch allows the use of the Solaris libc
-getcwd even though it doesn't dynamically allocate memory.
-
-Run `touch configure' to make sure make doesn't try to run autoconf.
-Then run configure with whatever options you like.
-
-Patch:
-
-*** ../bash-3.2-patched/configure.in   Tue Sep 26 11:05:45 2006
---- configure.in       Wed Jan 31 09:48:00 2007
-***************
-*** 6,10 ****
-  dnl Process this file with autoconf to produce a configure script.
-  
-! # Copyright (C) 1987-2006 Free Software Foundation, Inc.
-  
-  # This program is free software; you can redistribute it and/or modify
---- 6,10 ----
-  dnl Process this file with autoconf to produce a configure script.
-  
-! # Copyright (C) 1987-2007 Free Software Foundation, Inc.
-  
-  # This program is free software; you can redistribute it and/or modify
-***************
-*** 992,996 ****
-  sco3.2*)     LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
-  sunos4*)     LOCAL_CFLAGS=-DSunOS4 ;;
-! solaris2.5*) LOCAL_CFLAGS=-DSunOS5 ;;
-  lynxos*)     LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-  linux*)              LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
---- 992,997 ----
-  sco3.2*)     LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
-  sunos4*)     LOCAL_CFLAGS=-DSunOS4 ;;
-! solaris2.5*) LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
-! solaris2*)   LOCAL_CFLAGS=-DSOLARIS ;;
-  lynxos*)     LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-  linux*)              LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
-*** ../bash-3.2-patched/config-bot.h   Tue Sep 12 16:43:04 2006
---- config-bot.h       Tue Mar  6 10:41:31 2007
-***************
-*** 2,6 ****
-  /* modify settings or make new ones based on what autoconf tells us. */
-  
-! /* Copyright (C) 1989-2002 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
---- 2,6 ----
-  /* modify settings or make new ones based on what autoconf tells us. */
-  
-! /* Copyright (C) 1989-2007 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
-***************
-*** 71,77 ****
-  #endif
-  
-! /* If we have a getcwd(3), but it calls popen(), #undef HAVE_GETCWD so
-!    the replacement in getcwd.c will be built. */
-! #if defined (HAVE_GETCWD) && defined (GETCWD_BROKEN)
-  #  undef HAVE_GETCWD
-  #endif
---- 71,79 ----
-  #endif
-  
-! /* If we have a getcwd(3), but one that does not dynamically allocate memory,
-!    #undef HAVE_GETCWD so the replacement in getcwd.c will be built.  We do
-!    not do this on Solaris, because their implementation of loopback mounts
-!    breaks the traditional file system assumptions that getcwd uses. */
-! #if defined (HAVE_GETCWD) && defined (GETCWD_BROKEN) && !defined (SOLARIS)
-  #  undef HAVE_GETCWD
-  #endif
-*** ../bash-3.2-patched/builtins/common.c      Thu Jul 27 09:39:51 2006
---- builtins/common.c  Tue Mar  6 10:43:27 2007
-***************
-*** 1,3 ****
-! /* Copyright (C) 1987-2005 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
---- 1,3 ----
-! /* Copyright (C) 1987-2007 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
-***************
-*** 476,480 ****
---- 476,484 ----
-    if (the_current_working_directory == 0)
-      {
-+ #if defined (GETCWD_BROKEN)
-+       the_current_working_directory = getcwd (0, PATH_MAX);
-+ #else
-        the_current_working_directory = getcwd (0, 0);
-+ #endif
-        if (the_current_working_directory == 0)
-       {
-*** ../bash-3.2-patched/configure      Tue Sep 26 11:06:01 2006
---- configure  Tue Mar  6 10:59:20 2007
-***************
-*** 27317,27321 ****
-  sco3.2*)     LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
-  sunos4*)     LOCAL_CFLAGS=-DSunOS4 ;;
-! solaris2.5*) LOCAL_CFLAGS=-DSunOS5 ;;
-  lynxos*)     LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-  linux*)              LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
---- 27317,27322 ----
-  sco3.2*)     LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
-  sunos4*)     LOCAL_CFLAGS=-DSunOS4 ;;
-! solaris2.5*) LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
-! solaris2*)   LOCAL_CFLAGS=-DSOLARIS ;;
-  lynxos*)     LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
-  linux*)              LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 10
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 11
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-012 b/src/patches/bash/bash32-012
deleted file mode 100644 (file)
index 8d669d2..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-012
-
-Bug-Reported-by: John Wyman <JohnWyman@celink.com>
-Bug-Reference-ID: <5E7DEFC094C35044B87FAE761D9F0EE20143A3B7@exchange2k.celink.com>
-Bug-Reference-URL: 
-
-Bug-Description:
-
-Some systems (AIX 4.x) don't implement the PRI_xxx macros correctly,
-causing syntax errors when attempting to compile bash on those systems.
-This patch adds support for the PRI_MACROS_BROKEN define.
-
-You will need to re-run `configure' after applying the patch.  Run
-`touch configure' so make doesn't try to run autoconf.
-
-Patch:
-
-*** ../bash-3.2.11/config.h.in Tue Sep 12 16:00:54 2006
---- config.h.in        Tue Mar  6 11:17:55 2007
-***************
-*** 1,5 ****
-  /* config.h -- Configuration file for bash. */
-  
-! /* Copyright (C) 1987-2006 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
---- 1,5 ----
-  /* config.h -- Configuration file for bash. */
-  
-! /* Copyright (C) 1987-2007 Free Software Foundation, Inc.
-  
-     This file is part of GNU Bash, the Bourne Again SHell.
-***************
-*** 414,417 ****
---- 414,419 ----
-  #undef HAVE_DECL_STRTOLD
-  
-+ #undef PRI_MACROS_BROKEN
-+ 
-  #undef STRTOLD_BROKEN
-  
-***************
-*** 1007,1010 ****
---- 1009,1015 ----
-  #undef HAVE_DCGETTEXT
-  
-+ /* Define if you have the `localeconv' function. */
-+ #undef HAVE_LOCALECONV
-+ 
-  /* Define if your system has a working `malloc' function. */
-  /* #undef HAVE_MALLOC */
-*** ../bash-3.2.11/builtins/printf.def Mon Nov 13 08:58:52 2006
---- builtins/printf.def        Sun Feb  4 13:58:59 2007
-***************
-*** 2,6 ****
-  It implements the builtin "printf" in Bash.
-  
-! Copyright (C) 1997-2005 Free Software Foundation, Inc.
-  
-  This file is part of GNU Bash, the Bourne Again SHell.
---- 2,6 ----
-  It implements the builtin "printf" in Bash.
-  
-! Copyright (C) 1997-2007 Free Software Foundation, Inc.
-  
-  This file is part of GNU Bash, the Bourne Again SHell.
-***************
-*** 71,74 ****
---- 71,78 ----
-  #include "common.h"
-  
-+ #if defined (PRI_MACROS_BROKEN)
-+ #  undef PRIdMAX
-+ #endif
-+ 
-  #if !defined (PRIdMAX)
-  #  if HAVE_LONG_LONG
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 11
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 12
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-013 b/src/patches/bash/bash32-013
deleted file mode 100644 (file)
index d47bc1a..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-013
-
-Bug-Reported-by: Magnus Svensson <msvensson@mysql.com>
-Bug-Reference-ID: <45BDC44D.80609@mysql.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-01/msg00002.html
-
-Bug-Description:
-
-Readline neglects to reallocate the array it uses to keep track of wrapped
-screen lines when increasing its size.  This will eventually result in
-segmentation faults when given sufficiently long input.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/display.c Thu Sep 14 14:20:12 2006
---- lib/readline/display.c     Fri Feb  2 20:23:17 2007
-***************
-*** 561,574 ****
---- 561,586 ----
-        wrap_offset = prompt_invis_chars_first_line = 0;
-      }
-  
-+ #if defined (HANDLE_MULTIBYTE)
-  #define CHECK_INV_LBREAKS() \
-        do { \
-       if (newlines >= (inv_lbsize - 2)) \
-         { \
-           inv_lbsize *= 2; \
-           inv_lbreaks = (int *)xrealloc (inv_lbreaks, inv_lbsize * sizeof (int)); \
-+          _rl_wrapped_line = (int *)xrealloc (_rl_wrapped_line, inv_lbsize * sizeof (int)); \
-         } \
-        } while (0)
-+ #else
-+ #define CHECK_INV_LBREAKS() \
-+       do { \
-+      if (newlines >= (inv_lbsize - 2)) \
-+        { \
-+          inv_lbsize *= 2; \
-+          inv_lbreaks = (int *)xrealloc (inv_lbreaks, inv_lbsize * sizeof (int)); \
-+        } \
-+       } while (0)
-+ #endif /* HANDLE_MULTIBYTE */
-  
-  #if defined (HANDLE_MULTIBYTE)         
-  #define CHECK_LPOS() \
-
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 12
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 13
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-014 b/src/patches/bash/bash32-014
deleted file mode 100644 (file)
index b706505..0000000
+++ /dev/null
@@ -1,307 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-014
-
-Bug-Reported-by: Brett Stahlman <brettstahlman@comcast.net>
-Bug-Reference-ID: <000701c72d29$a227e0e0$5ec7cf47@computerroom>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-12/msg00065.html
-
-Bug-Description:
-
-Bash mishandles word splitting under certain circumstances when IFS is
-null (IFS=).  Constructs affected include ${param/pat/sub} and others
-when expanding arrays (array[@]).
-
-Patch:
-
-*** ../bash-3.2-patched/array.c        Wed Jun  1 16:39:22 2005
---- array.c    Mon Jan 15 22:58:00 2007
-***************
-*** 121,125 ****
-  }
-  
-- #ifdef INCLUDE_UNUSED
-  /*
-   * Make and return a new array composed of the elements in array A from
---- 121,124 ----
-***************
-*** 142,146 ****
-               n = array_create_element (element_index(p), element_value(p));
-               ADD_BEFORE(a->head, n);
-!              mi = element_index(ae);
-       }
-       a->num_elements = i;
---- 141,145 ----
-               n = array_create_element (element_index(p), element_value(p));
-               ADD_BEFORE(a->head, n);
-!              mi = element_index(n);
-       }
-       a->num_elements = i;
-***************
-*** 148,152 ****
-       return a;
-  }
-- #endif
-  
-  /*
---- 147,150 ----
-***************
-*** 301,304 ****
---- 299,319 ----
-  }
-  
-+ ARRAY        *
-+ array_quote_escapes(array)
-+ ARRAY        *array;
-+ {
-+      ARRAY_ELEMENT   *a;
-+      char    *t;
-+ 
-+      if (array == 0 || array_head(array) == 0 || array_empty(array))
-+              return (ARRAY *)NULL;
-+      for (a = element_forw(array->head); a != array->head; a = element_forw(a)) {
-+              t = quote_escapes (a->value);
-+              FREE(a->value);
-+              a->value = t;
-+      }
-+      return array;
-+ }
-+ 
-  /*
-   * Return a string whose elements are the members of array A beginning at
-***************
-*** 312,318 ****
-  int  starsub, quoted;
-  {
-       ARRAY_ELEMENT   *h, *p;
-       arrayind_t      i;
-!      char            *ifs, sep[2];
-  
-       p = a ? array_head (a) : 0;
---- 327,334 ----
-  int  starsub, quoted;
-  {
-+      ARRAY           *a2;
-       ARRAY_ELEMENT   *h, *p;
-       arrayind_t      i;
-!      char            *ifs, sep[2], *t;
-  
-       p = a ? array_head (a) : 0;
-***************
-*** 337,340 ****
---- 353,363 ----
-               ;
-  
-+      a2 = array_slice(a, h, p);
-+ 
-+      if (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT))
-+              array_quote(a2);
-+      else
-+              array_quote_escapes(a2);
-+ 
-       if (starsub && (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT))) {
-               ifs = getifs();
-***************
-*** 344,348 ****
-       sep[1] = '\0';
-  
-!      return (array_to_string_internal (h, p, sep, quoted));
-  }
-  
---- 367,374 ----
-       sep[1] = '\0';
-  
-!      t = array_to_string (a2, sep, 0);
-!      array_dispose(a2);
-! 
-!      return t;
-  }
-  
-***************
-*** 368,372 ****
-  
-       if (mflags & MATCH_QUOTED)
-!              array_quote (a2);
-       if (mflags & MATCH_STARSUB) {
-               ifs = getifs();
---- 394,400 ----
-  
-       if (mflags & MATCH_QUOTED)
-!              array_quote(a2);
-!      else
-!              array_quote_escapes(a2);
-       if (mflags & MATCH_STARSUB) {
-               ifs = getifs();
-*** ../bash-3.2-patched/array.h        Sun Jun  1 15:50:30 2003
---- array.h    Mon Jan 15 22:35:35 2007
-***************
-*** 56,59 ****
---- 56,60 ----
-  extern int   array_shift_element __P((ARRAY *, char *));
-  extern ARRAY *array_quote __P((ARRAY *));
-+ extern ARRAY *array_quote_escapes __P((ARRAY *));
-  
-  extern char  *array_subrange __P((ARRAY *, arrayind_t, arrayind_t, int, int));
-*** ../bash-3.2-patched/subst.c        Fri Mar  2 16:20:50 2007
---- subst.c    Tue Mar  6 11:40:55 2007
-***************
-*** 1888,1892 ****
---- 1889,1899 ----
-  #endif
-  
-+   /* XXX -- why call quote_list if ifs == 0?  we can get away without doing
-+      it now that quote_escapes quotes spaces */
-+ #if 0
-    tlist = ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) || (ifs && *ifs == 0))
-+ #else
-+   tlist = (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES))
-+ #endif
-               ? quote_list (list)
-               : list_quote_escapes (list);
-***************
-*** 2922,2926 ****
-  /* Quote escape characters in string s, but no other characters.  This is
-     used to protect CTLESC and CTLNUL in variable values from the rest of
-!    the word expansion process after the variable is expanded. */
-  char *
-  quote_escapes (string)
---- 2935,2944 ----
-  /* Quote escape characters in string s, but no other characters.  This is
-     used to protect CTLESC and CTLNUL in variable values from the rest of
-!    the word expansion process after the variable is expanded.  If IFS is
-!    null, we quote spaces as well, just in case we split on spaces later
-!    (in the case of unquoted $@, we will eventually attempt to split the
-!    entire word on spaces).  Corresponding code exists in dequote_escapes.
-!    Even if we don't end up splitting on spaces, quoting spaces is not a
-!    problem. */
-  char *
-  quote_escapes (string)
-***************
-*** 2930,2933 ****
---- 2948,2952 ----
-    size_t slen;
-    char *result, *send;
-+   int quote_spaces;
-    DECLARE_MBSTATE; 
-  
-***************
-*** 2935,2938 ****
---- 2954,2958 ----
-    send = string + slen;
-  
-+   quote_spaces = (ifs_value && *ifs_value == 0);
-    t = result = (char *)xmalloc ((slen * 2) + 1);
-    s = string;
-***************
-*** 2940,2944 ****
-    while (*s)
-      {
-!       if (*s == CTLESC || *s == CTLNUL)
-       *t++ = CTLESC;
-        COPY_CHAR_P (t, s, send);
---- 2960,2964 ----
-    while (*s)
-      {
-!       if (*s == CTLESC || *s == CTLNUL || (quote_spaces && *s == ' '))
-       *t++ = CTLESC;
-        COPY_CHAR_P (t, s, send);
-***************
-*** 2982,2985 ****
---- 3002,3006 ----
-    size_t slen;
-    char *result, *send;
-+   int quote_spaces;
-    DECLARE_MBSTATE;
-  
-***************
-*** 2996,3002 ****
-      return (strcpy (result, s));
-  
-    while (*s)
-      {
-!       if (*s == CTLESC && (s[1] == CTLESC || s[1] == CTLNUL))
-       {
-         s++;
---- 3017,3024 ----
-      return (strcpy (result, s));
-  
-+   quote_spaces = (ifs_value && *ifs_value == 0);
-    while (*s)
-      {
-!       if (*s == CTLESC && (s[1] == CTLESC || s[1] == CTLNUL || (quote_spaces && s[1] == ' ')))
-       {
-         s++;
-***************
-*** 4462,4466 ****
-        RESIZE_MALLOCED_BUFFER (istring, istring_index, 2, istring_size, DEFAULT_ARRAY_SIZE);
-  
-!       if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) || c == CTLESC || c == CTLNUL)
-       istring[istring_index++] = CTLESC;
-  
---- 4498,4510 ----
-        RESIZE_MALLOCED_BUFFER (istring, istring_index, 2, istring_size, DEFAULT_ARRAY_SIZE);
-  
-!       /* This is essentially quote_string inline */
-!       if ((quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) /* || c == CTLESC || c == CTLNUL */)
-!      istring[istring_index++] = CTLESC;
-!       /* Escape CTLESC and CTLNUL in the output to protect those characters
-!       from the rest of the word expansions (word splitting and globbing.)
-!       This is essentially quote_escapes inline. */
-!       else if (c == CTLESC)
-!      istring[istring_index++] = CTLESC;
-!       else if (c == CTLNUL || (c == ' ' && (ifs_value && *ifs_value == 0)))
-       istring[istring_index++] = CTLESC;
-  
-***************
-*** 5552,5555 ****
---- 5610,5616 ----
-        rely on array_subrange to understand how to deal with them). */
-        tt = array_subrange (array_cell (v), e1, e2, starsub, quoted);
-+ #if 0
-+       /* array_subrange now calls array_quote_escapes as appropriate, so the
-+       caller no longer needs to. */
-        if ((quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)) == 0)
-       {
-***************
-*** 5558,5561 ****
---- 5619,5623 ----
-       }
-        else
-+ #endif
-       temp = tt;
-        break;
-***************
-*** 5808,5811 ****
---- 5870,5876 ----
-      case VT_ARRAYVAR:
-        temp = array_patsub (array_cell (v), p, rep, mflags);
-+ #if 0
-+       /* Don't need to do this anymore; array_patsub calls array_quote_escapes
-+       as appropriate before adding the space separators. */
-        if (temp && (mflags & MATCH_QUOTED) == 0)
-       {
-***************
-*** 5814,5817 ****
---- 5879,5883 ----
-         temp = tt;
-       }
-+ #endif
-        break;
-  #endif
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 13
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 14
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-015 b/src/patches/bash/bash32-015
deleted file mode 100644 (file)
index d887f6e..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-015
-
-Bug-Reported-by:
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-Under certain circumstances, when using FIFOs for process substitution,
-bash fails to unlink the FIFOs.  This leaves open file descriptors that
-can cause the shell to hang and litters the file system.
-
-Patch:
-
-*** ../bash-3.2-patched/execute_cmd.c  Fri Mar  2 16:20:50 2007
---- execute_cmd.c      Wed Jan 31 23:12:06 2007
-***************
-*** 3051,3054 ****
---- 3051,3059 ----
-      command_line = savestring (the_printed_command_except_trap);
-  
-+ #if defined (PROCESS_SUBSTITUTION)
-+   if ((subshell_environment & SUBSHELL_COMSUB) && (simple_command->flags & CMD_NO_FORK) && fifos_pending() > 0)
-+     simple_command->flags &= ~CMD_NO_FORK;
-+ #endif
-+ 
-    execute_disk_command (words, simple_command->redirects, command_line,
-                       pipe_in, pipe_out, async, fds_to_close,
-*** ../bash-3.2-patched/subst.c        Fri Mar  2 16:20:50 2007
---- subst.c    Tue Mar  6 11:40:55 2007
-***************
-*** 4129,4132 ****
---- 4151,4160 ----
-  }
-  
-+ int
-+ fifos_pending ()
-+ {
-+   return nfifo;
-+ }
-+ 
-  static char *
-  make_named_pipe ()
-***************
-*** 4178,4181 ****
---- 4206,4215 ----
-  }
-  
-+ int
-+ fifos_pending ()
-+ {
-+   return 0;  /* used for cleanup; not needed with /dev/fd */
-+ }
-+ 
-  void
-  unlink_fifo_list ()
-***************
-*** 4671,4674 ****
---- 4719,4725 ----
-        last_command_exit_value = rc;
-        rc = run_exit_trap ();
-+ #if defined (PROCESS_SUBSTITUTION)
-+       unlink_fifo_list ();
-+ #endif
-        exit (rc);
-      }
-*** ../bash-3.2-patched/subst.h        Tue Sep 19 08:34:41 2006
---- subst.h    Wed Jan 10 09:46:47 2007
-***************
-*** 223,226 ****
---- 223,227 ----
-  extern char *pat_subst __P((char *, char *, char *, int));
-  
-+ extern int fifos_pending __P((void));
-  extern void unlink_fifo_list __P((void));
-
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 14
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 15
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-016 b/src/patches/bash/bash32-016
deleted file mode 100644 (file)
index a0f065a..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-016
-
-Bug-Reported-by: Peter Volkov <torre_cremata@mail.ru>
-Bug-Reference-ID: <1171795523.8021.18.camel@localhost>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-02/msg00054.html
-
-Bug-Description:
-
-When moving the cursor, bash sometimes misplaces the cursor when the prompt
-contains two or more multibyte characters.  The particular circumstance that
-uncovered the problem was having the (multibyte) current directory name in
-the prompt string.
-
-Patch:
-
-*** ../bash-3.2/lib/readline/display.c Fri Jan 19 13:34:50 2007
---- lib/readline/display.c     Sat Mar 10 17:25:44 2007
-***************
-*** 1745,1749 ****
-      {
-        dpos = _rl_col_width (data, 0, new);
-!       if (dpos > prompt_last_invisible)              /* XXX - don't use woff here */
-       {
-         dpos -= woff;
---- 1745,1752 ----
-      {
-        dpos = _rl_col_width (data, 0, new);
-!       /* Use NEW when comparing against the last invisible character in the
-!       prompt string, since they're both buffer indices and DPOS is a
-!       desired display position. */
-!       if (new > prompt_last_invisible)               /* XXX - don't use woff here */
-       {
-         dpos -= woff;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 15
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 16
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-017 b/src/patches/bash/bash32-017
deleted file mode 100644 (file)
index 99e5e70..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-017
-
-Bug-Reported-by: Peter Volkov <torre_cremata@mail.ru>
-Bug-Reference-ID: <1173636022.7039.36.camel@localhost>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00039.html
-
-Bug-Description:
-
-When restoring the original prompt after finishing an incremental search,
-bash sometimes places the cursor incorrectly if the primary prompt contains
-invisible characters.
-
-Patch:
-
-*** ../bash-3.2.16/lib/readline/display.c      Fri Apr 20 13:30:16 2007
---- lib/readline/display.c     Fri Apr 20 15:17:01 2007
-***************
-*** 1599,1604 ****
-         if (temp > 0)
-           {
-             _rl_output_some_chars (nfd, temp);
-!            _rl_last_c_pos += _rl_col_width (nfd, 0, temp);;
-           }
-       }
---- 1599,1618 ----
-         if (temp > 0)
-           {
-+            /* If nfd begins at the prompt, or before the invisible
-+               characters in the prompt, we need to adjust _rl_last_c_pos
-+               in a multibyte locale to account for the wrap offset and
-+               set cpos_adjusted accordingly. */
-             _rl_output_some_chars (nfd, temp);
-!            if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
-!              {
-!                   _rl_last_c_pos += _rl_col_width (nfd, 0, temp);
-!                   if (current_line == 0 && wrap_offset &&  ((nfd - new) <= prompt_last_invisible))
-!                  {
-!                    _rl_last_c_pos -= wrap_offset;
-!                    cpos_adjusted = 1;
-!                  }
-!              }
-!               else
-!                 _rl_last_c_pos += temp;
-           }
-       }
-***************
-*** 1608,1613 ****
---- 1622,1639 ----
-         if (temp > 0)
-           {
-+            /* If nfd begins at the prompt, or before the invisible
-+               characters in the prompt, we need to adjust _rl_last_c_pos
-+               in a multibyte locale to account for the wrap offset and
-+               set cpos_adjusted accordingly. */
-             _rl_output_some_chars (nfd, temp);
-             _rl_last_c_pos += col_temp;               /* XXX */
-+            if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
-+              {
-+                if (current_line == 0 && wrap_offset &&  ((nfd - new) <= prompt_last_invisible))
-+                  {
-+                    _rl_last_c_pos -= wrap_offset;
-+                    cpos_adjusted = 1;
-+                  }
-+              }
-           }
-         lendiff = (oe - old) - (ne - new);
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 16
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 17
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-018 b/src/patches/bash/bash32-018
deleted file mode 100644 (file)
index d729aaf..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-018
-
-Bug-Reported-by:       osicka@post.cz
-Bug-Reference-ID:      <228.177-19682-1132061412-1179356692@post.cz>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-05/msg00061.html
-
-Bug-Description:
-
-In certain cases, bash can lose the saved status of a background job, though
-it should still be reported by `wait'.  Bash can also loop infinitely after
-creating and waiting for 4096 jobs.
-
-Patch:
-
-*** ../bash-20070510/jobs.c    Thu Mar  8 16:05:50 2007
---- jobs.c     Fri May 18 11:40:14 2007
-***************
-*** 784,792 ****
-      {
-        old = js.j_firstj++;
-        while (js.j_firstj != old)
-       {
-         if (js.j_firstj >= js.j_jobslots)
-           js.j_firstj = 0;
-!        if (jobs[js.j_firstj])
-           break;
-         js.j_firstj++;
---- 784,794 ----
-      {
-        old = js.j_firstj++;
-+       if (old >= js.j_jobslots)
-+      old = js.j_jobslots - 1;
-        while (js.j_firstj != old)
-       {
-         if (js.j_firstj >= js.j_jobslots)
-           js.j_firstj = 0;
-!        if (jobs[js.j_firstj] || js.j_firstj == old)  /* needed if old == 0 */
-           break;
-         js.j_firstj++;
-***************
-*** 798,806 ****
-      {
-        old = js.j_lastj--;
-        while (js.j_lastj != old)
-       {
-         if (js.j_lastj < 0)
-           js.j_lastj = js.j_jobslots - 1;
-!        if (jobs[js.j_lastj])
-           break;
-         js.j_lastj--;
---- 800,810 ----
-      {
-        old = js.j_lastj--;
-+       if (old < 0)
-+      old = 0;
-        while (js.j_lastj != old)
-       {
-         if (js.j_lastj < 0)
-           js.j_lastj = js.j_jobslots - 1;
-!        if (jobs[js.j_lastj] || js.j_lastj == old)    /* needed if old == js.j_jobslots */
-           break;
-         js.j_lastj--;
-***************
-*** 964,968 ****
-    realloc_jobs_list ();
-  
-!   return (js.j_lastj);
-  }
-  
---- 975,983 ----
-    realloc_jobs_list ();
-  
-! #ifdef DEBUG
-!   itrace("compact_jobs_list: returning %d", (js.j_lastj || jobs[js.j_lastj]) ? js.j_lastj + 1 : 0);
-! #endif
-! 
-!   return ((js.j_lastj || jobs[js.j_lastj]) ? js.j_lastj + 1 : 0);
-  }
-  
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 17
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 18
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-019 b/src/patches/bash/bash32-019
deleted file mode 100644 (file)
index 647bd1f..0000000
+++ /dev/null
@@ -1,343 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-019
-
-Bug-Reported-by:       Thomas Loeber <ifp@loeber1.de>
-Bug-Reference-ID:      <200703082223.08919.ifp@loeber1.de>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00036.html
-
-Bug-Description:
-
-When rl_read_key returns -1, indicating that bash's controlling terminal
-has been invalidated for some reason (e.g., receiving a SIGHUP), the error
-status was not reported correctly to the caller.  This could cause input
-loops. 
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/complete.c        Fri Jul 28 11:35:49 2006
---- lib/readline/complete.c    Tue Mar 13 08:50:16 2007
-***************
-*** 429,433 ****
-        if (c == 'n' || c == 'N' || c == RUBOUT)
-       return (0);
-!       if (c == ABORT_CHAR)
-       _rl_abort_internal ();
-        if (for_pager && (c == NEWLINE || c == RETURN))
---- 440,444 ----
-        if (c == 'n' || c == 'N' || c == RUBOUT)
-       return (0);
-!       if (c == ABORT_CHAR || c < 0)
-       _rl_abort_internal ();
-        if (for_pager && (c == NEWLINE || c == RETURN))
-*** ../bash-3.2-patched/lib/readline/input.c   Wed Aug 16 15:15:16 2006
---- lib/readline/input.c       Wed May  2 16:07:59 2007
-***************
-*** 514,518 ****
-       int size;
-  {
-!   int mb_len = 0;
-    size_t mbchar_bytes_length;
-    wchar_t wc;
---- 522,526 ----
-       int size;
-  {
-!   int mb_len, c;
-    size_t mbchar_bytes_length;
-    wchar_t wc;
-***************
-*** 521,531 ****
-    memset(&ps, 0, sizeof (mbstate_t));
-    memset(&ps_back, 0, sizeof (mbstate_t));
-!   
-    while (mb_len < size)
-      {
-        RL_SETSTATE(RL_STATE_MOREINPUT);
-!       mbchar[mb_len++] = rl_read_key ();
-        RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  
-        mbchar_bytes_length = mbrtowc (&wc, mbchar, mb_len, &ps);
-        if (mbchar_bytes_length == (size_t)(-1))
---- 529,545 ----
-    memset(&ps, 0, sizeof (mbstate_t));
-    memset(&ps_back, 0, sizeof (mbstate_t));
-! 
-!   mb_len = 0;  
-    while (mb_len < size)
-      {
-        RL_SETSTATE(RL_STATE_MOREINPUT);
-!       c = rl_read_key ();
-        RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  
-+       if (c < 0)
-+      break;
-+ 
-+       mbchar[mb_len++] = c;
-+ 
-        mbchar_bytes_length = mbrtowc (&wc, mbchar, mb_len, &ps);
-        if (mbchar_bytes_length == (size_t)(-1))
-***************
-*** 565,569 ****
-    c = first;
-    memset (mb, 0, mlen);
-!   for (i = 0; i < mlen; i++)
-      {
-        mb[i] = (char)c;
---- 579,583 ----
-    c = first;
-    memset (mb, 0, mlen);
-!   for (i = 0; c >= 0 && i < mlen; i++)
-      {
-        mb[i] = (char)c;
-*** ../bash-3.2-patched/lib/readline/isearch.c Mon Dec 26 17:18:53 2005
---- lib/readline/isearch.c     Fri Mar  9 14:30:59 2007
-***************
-*** 328,333 ****
-  
-    f = (rl_command_func_t *)NULL;
-!  
-!  /* Translate the keys we do something with to opcodes. */
-    if (c >= 0 && _rl_keymap[c].type == ISFUNC)
-      {
---- 328,340 ----
-  
-    f = (rl_command_func_t *)NULL;
-! 
-!   if (c < 0)
-!     {
-!       cxt->sflags |= SF_FAILED;
-!       cxt->history_pos = cxt->last_found_line;
-!       return -1;
-!     }
-! 
-!   /* Translate the keys we do something with to opcodes. */
-    if (c >= 0 && _rl_keymap[c].type == ISFUNC)
-      {
-*** ../bash-3.2-patched/lib/readline/misc.c    Mon Dec 26 17:20:46 2005
---- lib/readline/misc.c        Fri Mar  9 14:44:11 2007
-***************
-*** 147,150 ****
---- 147,152 ----
-         rl_clear_message ();
-         RL_UNSETSTATE(RL_STATE_NUMERICARG);
-+        if (key < 0)
-+          return -1;
-         return (_rl_dispatch (key, _rl_keymap));
-       }
-*** ../bash-3.2-patched/lib/readline/readline.c        Wed Aug 16 15:00:36 2006
---- lib/readline/readline.c    Fri Mar  9 14:47:24 2007
-***************
-*** 646,649 ****
---- 669,677 ----
-      {
-        nkey = _rl_subseq_getchar (cxt->okey);
-+       if (nkey < 0)
-+      {
-+        _rl_abort_internal ();
-+        return -1;
-+      }
-        r = _rl_dispatch_subseq (nkey, cxt->dmap, cxt->subseq_arg);
-        cxt->flags |= KSEQ_DISPATCHED;
-*** ../bash-3.2-patched/lib/readline/text.c    Fri Jul 28 11:55:27 2006
---- lib/readline/text.c        Sun Mar 25 13:41:38 2007
-***************
-*** 858,861 ****
---- 864,870 ----
-    RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  
-+   if (c < 0)
-+     return -1;
-+ 
-  #if defined (HANDLE_SIGNALS)
-    if (RL_ISSTATE (RL_STATE_CALLBACK) == 0)
-***************
-*** 1521,1524 ****
---- 1530,1536 ----
-    mb_len = _rl_read_mbchar (mbchar, MB_LEN_MAX);
-  
-+   if (mb_len <= 0)
-+     return -1;
-+ 
-    if (count < 0)
-      return (_rl_char_search_internal (-count, bdir, mbchar, mb_len));
-***************
-*** 1537,1540 ****
---- 1549,1555 ----
-    RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  
-+   if (c < 0)
-+     return -1;
-+ 
-    if (count < 0)
-      return (_rl_char_search_internal (-count, bdir, c));
-*** ../bash-3.2-patched/lib/readline/vi_mode.c Sat Jul 29 16:42:28 2006
---- lib/readline/vi_mode.c     Fri Mar  9 15:02:11 2007
-***************
-*** 887,890 ****
---- 887,897 ----
-    c = rl_read_key ();
-    RL_UNSETSTATE(RL_STATE_MOREINPUT);
-+ 
-+   if (c < 0)
-+     {
-+       *nextkey = 0;
-+       return -1;
-+     }
-+ 
-    *nextkey = c;
-  
-***************
-*** 903,906 ****
---- 910,918 ----
-         c = rl_read_key ();   /* real command */
-         RL_UNSETSTATE(RL_STATE_MOREINPUT);
-+        if (c < 0)
-+          {
-+            *nextkey = 0;
-+            return -1;
-+          }
-         *nextkey = c;
-       }
-***************
-*** 1225,1236 ****
-       _rl_callback_generic_arg *data;
-  {
-  #if defined (HANDLE_MULTIBYTE)
-!   _rl_vi_last_search_mblen = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
-  #else
-    RL_SETSTATE(RL_STATE_MOREINPUT);
-!   _rl_vi_last_search_char = rl_read_key ();
-    RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  #endif
-  
-    _rl_callback_func = 0;
-    _rl_want_redisplay = 1;
---- 1243,1262 ----
-       _rl_callback_generic_arg *data;
-  {
-+   int c;
-  #if defined (HANDLE_MULTIBYTE)
-!   c = _rl_vi_last_search_mblen = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
-  #else
-    RL_SETSTATE(RL_STATE_MOREINPUT);
-!   c = rl_read_key ();
-    RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  #endif
-  
-+   if (c <= 0)
-+     return -1;
-+ 
-+ #if !defined (HANDLE_MULTIBYTE)
-+   _rl_vi_last_search_char = c;
-+ #endif
-+ 
-    _rl_callback_func = 0;
-    _rl_want_redisplay = 1;
-***************
-*** 1248,1251 ****
---- 1274,1278 ----
-       int count, key;
-  {
-+   int c;
-  #if defined (HANDLE_MULTIBYTE)
-    static char *target;
-***************
-*** 1294,1302 ****
-       {
-  #if defined (HANDLE_MULTIBYTE)
-!        _rl_vi_last_search_mblen = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
-  #else
-         RL_SETSTATE(RL_STATE_MOREINPUT);
-!        _rl_vi_last_search_char = rl_read_key ();
-         RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  #endif
-       }
---- 1321,1335 ----
-       {
-  #if defined (HANDLE_MULTIBYTE)
-!        c = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
-!        if (c <= 0)
-!          return -1;
-!        _rl_vi_last_search_mblen = c;
-  #else
-         RL_SETSTATE(RL_STATE_MOREINPUT);
-!        c = rl_read_key ();
-         RL_UNSETSTATE(RL_STATE_MOREINPUT);
-+        if (c < 0)
-+          return -1;
-+        _rl_vi_last_search_char = c;
-  #endif
-       }
-***************
-*** 1468,1471 ****
---- 1501,1507 ----
-    RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  
-+   if (c < 0)
-+     return -1;
-+ 
-  #if defined (HANDLE_MULTIBYTE)
-    if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
-***************
-*** 1486,1489 ****
---- 1522,1528 ----
-    _rl_vi_last_replacement = c = _rl_vi_callback_getchar (mb, MB_LEN_MAX);
-  
-+   if (c < 0)
-+     return -1;
-+ 
-    _rl_callback_func = 0;
-    _rl_want_redisplay = 1;
-***************
-*** 1517,1520 ****
---- 1556,1562 ----
-      _rl_vi_last_replacement = c = _rl_vi_callback_getchar (mb, MB_LEN_MAX);
-  
-+   if (c < 0)
-+     return -1;
-+ 
-    return (_rl_vi_change_char (count, c, mb));
-  }
-***************
-*** 1651,1655 ****
-    RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  
-!   if (ch < 'a' || ch > 'z')
-      {
-        rl_ding ();
---- 1693,1697 ----
-    RL_UNSETSTATE(RL_STATE_MOREINPUT);
-  
-!   if (ch < 0 || ch < 'a' || ch > 'z')        /* make test against 0 explicit */
-      {
-        rl_ding ();
-***************
-*** 1703,1707 ****
-        return 0;
-      }
-!   else if (ch < 'a' || ch > 'z')
-      {
-        rl_ding ();
---- 1745,1749 ----
-        return 0;
-      }
-!   else if (ch < 0 || ch < 'a' || ch > 'z')   /* make test against 0 explicit */
-      {
-        rl_ding ();
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 18
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 19
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-020 b/src/patches/bash/bash32-020
deleted file mode 100644 (file)
index 8c7e328..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-020
-
-Bug-Reported-by:       Ian A Watson <WATSON_IAN_A@LILLY.COM>
-Bug-Reference-ID:      <OFEC551808.69D02C7F-ON8525729A.0045708D-8525729A.0046150B@EliLilly.lilly.com>
-Bug-Reference-URL:
-
-Bug-Description:
-
-In some cases of error processing, a jump back to the top-level processing
-loop from a builtin command  would leave the shell in an inconsistent state.
-
-Patch:
-
-*** ../bash-3.2-patched/sig.c  Wed Jan 25 14:57:59 2006
---- sig.c      Sat Mar 10 11:11:30 2007
-***************
-*** 351,354 ****
---- 351,373 ----
-  #undef XHANDLER
-  
-+ /* Run some of the cleanups that should be performed when we run
-+    jump_to_top_level from a builtin command context.  XXX - might want to
-+    also call reset_parser here. */
-+ void
-+ top_level_cleanup ()
-+ {
-+   /* Clean up string parser environment. */
-+   while (parse_and_execute_level)
-+     parse_and_execute_cleanup ();
-+ 
-+ #if defined (PROCESS_SUBSTITUTION)
-+   unlink_fifo_list ();
-+ #endif /* PROCESS_SUBSTITUTION */
-+ 
-+   run_unwind_protects ();
-+   loop_level = continuing = breaking = 0;
-+   return_catch_flag = 0;
-+ }
-+ 
-  /* What to do when we've been interrupted, and it is safe to handle it. */
-  void
-*** ../bash-3.2-patched/sig.h  Wed Jan 25 14:50:27 2006
---- sig.h      Sat Mar 10 11:14:18 2007
-***************
-*** 122,125 ****
---- 122,126 ----
-  extern void initialize_terminating_signals __P((void));
-  extern void reset_terminating_signals __P((void));
-+ extern void top_level_cleanup __P((void));
-  extern void throw_to_top_level __P((void));
-  extern void jump_to_top_level __P((int)) __attribute__((__noreturn__));
-*** ../bash-3.2-patched/builtins/common.c      Tue Apr  3 16:47:13 2007
---- builtins/common.c  Mon Apr 30 15:01:33 2007
-***************
-*** 132,135 ****
---- 132,136 ----
-      {
-        builtin_error (_("too many arguments"));
-+       top_level_cleanup ();
-        jump_to_top_level (DISCARD);
-      }
-***************
-*** 396,400 ****
-           throw_to_top_level ();
-         else
-!          jump_to_top_level (DISCARD);
-       }
-        no_args (list->next);
---- 410,417 ----
-           throw_to_top_level ();
-         else
-!          {
-!            top_level_cleanup ();
-!            jump_to_top_level (DISCARD);
-!          }
-       }
-        no_args (list->next);
-*** ../bash-3.2-patched/subst.c        Tue Apr  3 16:47:19 2007
---- subst.c    Tue Jul 17 09:45:11 2007
-***************
-*** 1279,1283 ****
-        if (no_longjmp_on_fatal_error == 0)
-       {                       /* { */
-!        report_error ("bad substitution: no closing `%s' in %s", "}", string);
-         last_command_exit_value = EXECUTION_FAILURE;
-         exp_jump_to_top_level (DISCARD);
---- 1290,1294 ----
-        if (no_longjmp_on_fatal_error == 0)
-       {                       /* { */
-!        report_error (_("bad substitution: no closing `%s' in %s"), "}", string);
-         last_command_exit_value = EXECUTION_FAILURE;
-         exp_jump_to_top_level (DISCARD);
-***************
-*** 7662,7665 ****
---- 7706,7711 ----
-    expand_no_split_dollar_star = 0;   /* XXX */
-    expanding_redir = 0;
-+ 
-+   top_level_cleanup ();                      /* from sig.c */
-  
-    jump_to_top_level (v);
-***************
-*** 7880,7884 ****
-           {
-             report_error (_("no match: %s"), tlist->word->word);
-!            jump_to_top_level (DISCARD);
-           }
-         else if (allow_null_glob_expansion == 0)
---- 7927,7931 ----
-           {
-             report_error (_("no match: %s"), tlist->word->word);
-!            exp_jump_to_top_level (DISCARD);
-           }
-         else if (allow_null_glob_expansion == 0)
-*** ../bash-3.2-patched/arrayfunc.c    Thu Jul 27 09:37:59 2006
---- arrayfunc.c        Thu May 31 11:55:46 2007
-***************
-*** 619,622 ****
---- 619,624 ----
-      {
-        last_command_exit_value = EXECUTION_FAILURE;
-+ 
-+       top_level_cleanup ();      
-        jump_to_top_level (DISCARD);
-      }
-*** ../bash-3.2-patched/expr.c Wed Dec 28 17:47:03 2005
---- expr.c     Tue Apr 24 14:17:59 2007
-***************
-*** 930,933 ****
---- 930,934 ----
-       {
-         expr_unwind ();
-+        top_level_cleanup ();
-         jump_to_top_level (DISCARD);
-       }
-*** ../bash-3.2-patched/variables.c    Fri Sep  8 13:33:32 2006
---- variables.c        Tue Jul 17 09:54:59 2007
-***************
-*** 1822,1830 ****
-         lval = evalexp (oval, &expok);        /* ksh93 seems to do this */
-         if (expok == 0)
-!          jump_to_top_level (DISCARD);
-       }
-        rval = evalexp (value, &expok);
-        if (expok == 0)
-!      jump_to_top_level (DISCARD);
-        if (flags & ASS_APPEND)
-       rval += lval;
---- 1855,1869 ----
-         lval = evalexp (oval, &expok);        /* ksh93 seems to do this */
-         if (expok == 0)
-!          {
-!            top_level_cleanup ();
-!            jump_to_top_level (DISCARD);
-!          }
-       }
-        rval = evalexp (value, &expok);
-        if (expok == 0)
-!      {
-!        top_level_cleanup ();
-!        jump_to_top_level (DISCARD);
-!      }
-        if (flags & ASS_APPEND)
-       rval += lval;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 19
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 20
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-021 b/src/patches/bash/bash32-021
deleted file mode 100644 (file)
index 003489c..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-021
-
-Bug-Reported-by:       BAGSHAW Paul RD-TECH-REN <paul.bagshaw@orange-ftgroup.com>
-Bug-Reference-ID:      <941BA0BF46DB8F4983FF7C8AFE800BC205EA7D4B@ftrdmel3.rd.francetelecom.fr>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00065.html
-
-Bug-Description:
-
-When the parser read a backslash-escaped character that would be treated
-internally as an escape, it would double the number of escape characters.
-
-Patch:
-
-*** ../bash-3.2-patched/parse.y        Mon Oct 30 17:22:00 2006
---- parse.y    Sat Mar 24 17:13:20 2007
-***************
-*** 3377,3381 ****
-       {
-         pass_next_character = 0;
-!        goto got_character;
-       }
-  
---- 3377,3381 ----
-       {
-         pass_next_character = 0;
-!        goto got_escaped_character;
-       }
-  
-***************
-*** 3651,3660 ****
-      got_character:
-  
--       all_digit_token &= DIGIT (character);
--       dollar_present |= character == '$';
-- 
-        if (character == CTLESC || character == CTLNUL)
-       token[token_index++] = CTLESC;
-  
-        token[token_index++] = character;
-  
---- 3651,3662 ----
-      got_character:
-  
-        if (character == CTLESC || character == CTLNUL)
-       token[token_index++] = CTLESC;
-  
-+     got_escaped_character:
-+ 
-+       all_digit_token &= DIGIT (character);
-+       dollar_present |= character == '$';
-+ 
-        token[token_index++] = character;
-  
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 20
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 21
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-022 b/src/patches/bash/bash32-022
deleted file mode 100644 (file)
index d3679e6..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-022
-
-Bug-Reported-by:       Chet Ramey <chet.ramey@cwru.edu>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-POSIX specifies that the `read' builtin invoked from an interative shell
-must prompt with $PS2 when a line is continued using a backslash while
-reading from a terminal.
-
-Patch:
-
-*** ../bash-3.2-patched/builtins/read.def      Tue Sep 19 08:45:48 2006
---- builtins/read.def  Thu May 24 16:03:30 2007
-***************
-*** 128,133 ****
-  {
-    register char *varname;
-!   int size, i, nr, pass_next, saw_escape, eof, opt, retval, code;
-!   int input_is_tty, input_is_pipe, unbuffered_read;
-    int raw, edit, nchars, silent, have_timeout, fd;
-    unsigned int tmout;
---- 131,136 ----
-  {
-    register char *varname;
-!   int size, i, nr, pass_next, saw_escape, eof, opt, retval, code, print_ps2;
-!   int input_is_tty, input_is_pipe, unbuffered_read, skip_ctlesc, skip_ctlnul;
-    int raw, edit, nchars, silent, have_timeout, fd;
-    unsigned int tmout;
-***************
-*** 135,139 ****
-    char c;
-    char *input_string, *orig_input_string, *ifs_chars, *prompt, *arrayname;
-!   char *e, *t, *t1;
-    struct stat tsb;
-    SHELL_VAR *var;
---- 138,142 ----
-    char c;
-    char *input_string, *orig_input_string, *ifs_chars, *prompt, *arrayname;
-!   char *e, *t, *t1, *ps2;
-    struct stat tsb;
-    SHELL_VAR *var;
-***************
-*** 149,152 ****
---- 152,156 ----
-    USE_VAR(i);
-    USE_VAR(pass_next);
-+   USE_VAR(print_ps2);
-    USE_VAR(saw_escape);
-    USE_VAR(input_is_pipe);
-***************
-*** 164,167 ****
---- 168,172 ----
-  #endif
-    USE_VAR(list);
-+   USE_VAR(ps2);
-  
-    i = 0;             /* Index into the string that we are reading. */
-***************
-*** 387,391 ****
-  #endif
-  
-!   for (eof = retval = 0;;)
-      {
-  #if defined (READLINE)
---- 394,399 ----
-  #endif
-  
-!   ps2 = 0;
-!   for (print_ps2 = eof = retval = 0;;)
-      {
-  #if defined (READLINE)
-***************
-*** 413,416 ****
---- 421,433 ----
-  #endif
-  
-+       if (print_ps2)
-+      {
-+        if (ps2 == 0)
-+          ps2 = get_string_value ("PS2");
-+        fprintf (stderr, "%s", ps2 ? ps2 : "");
-+        fflush (stderr);
-+        print_ps2 = 0;
-+      }
-+ 
-        if (unbuffered_read)
-       retval = zread (fd, &c, 1);
-***************
-*** 441,445 ****
-         pass_next = 0;
-         if (c == '\n')
-!          i--;                /* back up over the CTLESC */
-         else
-           goto add_char;
---- 458,466 ----
-         pass_next = 0;
-         if (c == '\n')
-!          {
-!            i--;              /* back up over the CTLESC */
-!            if (interactive && input_is_tty && raw == 0)
-!              print_ps2 = 1;
-!          }
-         else
-           goto add_char;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 21
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 22
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-023 b/src/patches/bash/bash32-023
deleted file mode 100644 (file)
index 34a6394..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-023
-
-Bug-Reported-by:       Chet Ramey <chet.ramey@cwru.edu>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-When an error occurs during the pattern removal word expansion, the shell
-can free unallocated memory or free memory multiple times.
-
-Patch:
-
-*** ../bash-3.2-patched/subst.c        Tue Apr  3 16:47:19 2007
---- subst.c    Tue Jul 17 09:45:11 2007
-***************
-*** 3975,3979 ****
-      patstr++;
-  
-!   pattern = getpattern (patstr, quoted, 1);
-  
-    temp1 = (char *)NULL;              /* shut up gcc */
---- 4008,4016 ----
-      patstr++;
-  
-!   /* Need to pass getpattern newly-allocated memory in case of expansion --
-!      the expansion code will free the passed string on an error. */
-!   temp1 = savestring (patstr);
-!   pattern = getpattern (temp1, quoted, 1);
-!   free (temp1);
-  
-    temp1 = (char *)NULL;              /* shut up gcc */
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 22
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 23
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-024 b/src/patches/bash/bash32-024
deleted file mode 100644 (file)
index 1575f37..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-024
-
-Bug-Reported-by:       Peter Volkov <torre_cremata@mail.ru>
-Bug-Reference-ID:      <1178376645.9063.25.camel@localhost>
-Bug-Reference-URL:     http://bugs.gentoo.org/177095
-
-Bug-Description:
-
-The readline display code miscalculated the screen position when performing
-a redisplay in which the new text occupies more screen space that the old,
-but takes fewer bytes to do so (e.g., when replacing a shorter string
-containing multibyte characters with a longer one containing only ASCII).
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/display.c Thu Apr 26 11:38:22 2007
---- lib/readline/display.c     Thu Jul 12 23:10:10 2007
-***************
-*** 1519,1527 ****
-        /* Non-zero if we're increasing the number of lines. */
-        int gl = current_line >= _rl_vis_botlin && inv_botlin > _rl_vis_botlin;
-        /* Sometimes it is cheaper to print the characters rather than
-        use the terminal's capabilities.  If we're growing the number
-        of lines, make sure we actually cause the new line to wrap
-        around on auto-wrapping terminals. */
-!       if (_rl_terminal_can_insert && ((2 * col_temp) >= col_lendiff || _rl_term_IC) && (!_rl_term_autowrap || !gl))
-       {
-         /* If lendiff > prompt_visible_length and _rl_last_c_pos == 0 and
---- 1568,1596 ----
-        /* Non-zero if we're increasing the number of lines. */
-        int gl = current_line >= _rl_vis_botlin && inv_botlin > _rl_vis_botlin;
-+       /* If col_lendiff is > 0, implying that the new string takes up more
-+       screen real estate than the old, but lendiff is < 0, meaning that it
-+       takes fewer bytes, we need to just output the characters starting
-+       from the first difference.  These will overwrite what is on the
-+       display, so there's no reason to do a smart update.  This can really
-+       only happen in a multibyte environment. */
-+       if (lendiff < 0)
-+      {
-+        _rl_output_some_chars (nfd, temp);
-+        _rl_last_c_pos += _rl_col_width (nfd, 0, temp);
-+        /* If nfd begins before any invisible characters in the prompt,
-+           adjust _rl_last_c_pos to account for wrap_offset and set
-+           cpos_adjusted to let the caller know. */
-+        if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
-+          {
-+            _rl_last_c_pos -= wrap_offset;
-+            cpos_adjusted = 1;
-+          }
-+        return;
-+      }
-        /* Sometimes it is cheaper to print the characters rather than
-        use the terminal's capabilities.  If we're growing the number
-        of lines, make sure we actually cause the new line to wrap
-        around on auto-wrapping terminals. */
-!       else if (_rl_terminal_can_insert && ((2 * col_temp) >= col_lendiff || _rl_term_IC) && (!_rl_term_autowrap || !gl))
-       {
-         /* If lendiff > prompt_visible_length and _rl_last_c_pos == 0 and
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 23
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 24
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-025 b/src/patches/bash/bash32-025
deleted file mode 100644 (file)
index 4d53d89..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-025
-
-Bug-Reported-by:       Tom Bjorkholm <tom.bjorkholm@ericsson.com>
-Bug-Reference-ID:      <AEA1A32F001C6B4F98614B5B80D7647D01C075E9@esealmw115.eemea.ericsson.se>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-readline/2007-04/msg00004.html
-
-Bug-Description:
-
-An off-by-one error in readline's input buffering caused readline to drop
-each 511th character of buffered input (e.g., when pasting a large amount
-of data into a terminal window).
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/input.c   Wed Aug 16 15:15:16 2006
---- lib/readline/input.c       Tue Jul 17 09:24:21 2007
-***************
-*** 134,139 ****
-  
-    *key = ibuffer[pop_index++];
-! 
-    if (pop_index >= ibuffer_len)
-      pop_index = 0;
-  
---- 134,142 ----
-  
-    *key = ibuffer[pop_index++];
-! #if 0
-    if (pop_index >= ibuffer_len)
-+ #else
-+   if (pop_index > ibuffer_len)
-+ #endif
-      pop_index = 0;
-  
-***************
-*** 251,255 ****
-       {
-         k = (*rl_getc_function) (rl_instream);
-!        rl_stuff_char (k);
-         if (k == NEWLINE || k == RETURN)
-           break;
---- 254,259 ----
-       {
-         k = (*rl_getc_function) (rl_instream);
-!        if (rl_stuff_char (k) == 0)
-!          break;                      /* some problem; no more room */
-         if (k == NEWLINE || k == RETURN)
-           break;
-***************
-*** 374,378 ****
---- 378,386 ----
-      }
-    ibuffer[push_index++] = key;
-+ #if 0
-    if (push_index >= ibuffer_len)
-+ #else
-+   if (push_index > ibuffer_len)
-+ #endif
-      push_index = 0;
-  
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 24
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 25
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-026 b/src/patches/bash/bash32-026
deleted file mode 100644 (file)
index ba7de50..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-026
-
-Bug-Reported-by:       Chet Ramey <chet.ramey@case.edu>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-This keeps the Apple linker from attempting to link bash against Apple's
-readline library "replacement" rather than the one shipped with bash.  It
-extends the configure workaround to Mac OS X Leopard (10.5).
-
-As a side effect, the patch updates the copyright date displayed in the
-version string.
-
-You must re-run configure after applying the patch, and before rebuilding
-bash.
-
-Patch:
-
-*** ../bash-3.2-patched/configure.in   2007-03-06 11:07:38.000000000 -0500
---- configure.in       2007-11-23 15:37:41.000000000 -0500
-***************
-*** 519,523 ****
-               # dynamic version
-               case "${host_os}" in
-!              darwin8*)       READLINE_LIB='${READLINE_LIBRARY}' ;;
-               *)              READLINE_LIB=-lreadline ;;
-               esac
---- 519,523 ----
-               # dynamic version
-               case "${host_os}" in
-!              darwin[[89]]*)  READLINE_LIB='${READLINE_LIBRARY}' ;;
-               *)              READLINE_LIB=-lreadline ;;
-               esac
-*** ../bash-3.2-patched/configure      2007-03-24 14:51:22.000000000 -0400
---- configure  2007-11-23 15:46:15.000000000 -0500
-***************
-*** 4872,4876 ****
-               # dynamic version
-               case "${host_os}" in
-!              darwin8*)       READLINE_LIB='${READLINE_LIBRARY}' ;;
-               *)              READLINE_LIB=-lreadline ;;
-               esac
---- 4872,4876 ----
-               # dynamic version
-               case "${host_os}" in
-!              darwin[89]*)    READLINE_LIB='${READLINE_LIBRARY}' ;;
-               *)              READLINE_LIB=-lreadline ;;
-               esac
-*** ../bash-3.2-patched/version.c      2005-05-16 11:58:34.000000000 -0400
---- version.c  2007-11-23 16:03:40.000000000 -0500
-***************
-*** 80,83 ****
-    printf ("GNU bash, version %s (%s)\n", shell_version_string (), MACHTYPE);
-    if (extended)
-!     printf (_("Copyright (C) 2005 Free Software Foundation, Inc.\n"));
-  }
---- 80,83 ----
-    printf ("GNU bash, version %s (%s)\n", shell_version_string (), MACHTYPE);
-    if (extended)
-!     printf (_("Copyright (C) 2007 Free Software Foundation, Inc.\n"));
-  }
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 25
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 26
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-027 b/src/patches/bash/bash32-027
deleted file mode 100644 (file)
index 5e110cb..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-027
-
-Bug-Reported-by:       dAniel hAhler <ubuntu@thequod.de>
-Bug-Reference-ID:      <4702ED8A.5000503@thequod.de>
-Bug-Reference-URL:     https://bugs.launchpad.net/ubuntu/+source/bash/+bug/119938
-
-Bug-Description:
-
-When updating the display after displaying, for instance, a list of possible
-completions, readline will place the cursor at the wrong position if the
-prompt contains invisible characters and a newline.
-
-Patch:
-
-*** ../bash-3.2.25/lib/readline/display.c      Mon Aug  6 14:26:29 2007
---- lib/readline/display.c     Wed Oct 10 22:43:58 2007
-***************
-*** 1049,1053 ****
-             else
-               tx = nleft;
-!            if (_rl_last_c_pos > tx)
-               {
-                 _rl_backspace (_rl_last_c_pos - tx);  /* XXX */
---- 1049,1053 ----
-             else
-               tx = nleft;
-!            if (tx >= 0 && _rl_last_c_pos > tx)
-               {
-                 _rl_backspace (_rl_last_c_pos - tx);  /* XXX */
-***************
-*** 1205,1209 ****
-  {
-    register char *ofd, *ols, *oe, *nfd, *nls, *ne;
-!   int temp, lendiff, wsatend, od, nd;
-    int current_invis_chars;
-    int col_lendiff, col_temp;
---- 1205,1209 ----
-  {
-    register char *ofd, *ols, *oe, *nfd, *nls, *ne;
-!   int temp, lendiff, wsatend, od, nd, o_cpos;
-    int current_invis_chars;
-    int col_lendiff, col_temp;
-***************
-*** 1466,1469 ****
---- 1466,1471 ----
-      }
-  
-+   o_cpos = _rl_last_c_pos;
-+ 
-    /* When this function returns, _rl_last_c_pos is correct, and an absolute
-       cursor postion in multibyte mode, but a buffer index when not in a
-***************
-*** 1475,1479 ****
-       invisible characters in the prompt string.  Let's see if setting this when
-       we make sure we're at the end of the drawn prompt string works. */
-!   if (current_line == 0 && MB_CUR_MAX > 1 && rl_byte_oriented == 0 && _rl_last_c_pos == prompt_physical_chars)
-      cpos_adjusted = 1;
-  #endif
---- 1477,1483 ----
-       invisible characters in the prompt string.  Let's see if setting this when
-       we make sure we're at the end of the drawn prompt string works. */
-!   if (current_line == 0 && MB_CUR_MAX > 1 && rl_byte_oriented == 0 && 
-!       (_rl_last_c_pos > 0 || o_cpos > 0) &&
-!       _rl_last_c_pos == prompt_physical_chars)
-      cpos_adjusted = 1;
-  #endif
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 26
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 27
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-028 b/src/patches/bash/bash32-028
deleted file mode 100644 (file)
index e818294..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-028
-
-Bug-Reported-by:       dAniel hAhler <ubuntu@thequod.de>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-Under some circumstances, readline will incorrectly display a prompt string
-containing invisible characters after the final newline.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/display.c 2007-08-25 13:47:08.000000000 -0400
---- lib/readline/display.c     2007-11-10 17:51:29.000000000 -0500
-***************
-*** 392,396 ****
-        local_prompt = expand_prompt (p, &prompt_visible_length,
-                                      &prompt_last_invisible,
-!                                     (int *)NULL,
-                                      &prompt_physical_chars);
-        c = *t; *t = '\0';
---- 420,424 ----
-        local_prompt = expand_prompt (p, &prompt_visible_length,
-                                      &prompt_last_invisible,
-!                                     &prompt_invis_chars_first_line,
-                                      &prompt_physical_chars);
-        c = *t; *t = '\0';
-***************
-*** 399,403 ****
-        local_prompt_prefix = expand_prompt (prompt, &prompt_prefix_length,
-                                                  (int *)NULL,
-!                                                 &prompt_invis_chars_first_line,
-                                                  (int *)NULL);
-        *t = c;
---- 427,431 ----
-        local_prompt_prefix = expand_prompt (prompt, &prompt_prefix_length,
-                                                  (int *)NULL,
-!                                                 (int *)NULL,
-                                                  (int *)NULL);
-        *t = c;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 27
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 28
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-029 b/src/patches/bash/bash32-029
deleted file mode 100644 (file)
index 9de2085..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-029
-
-Bug-Reported-by:       Tomas Janousek <tjanouse@redhat.com>
-Bug-Reference-ID:      <20071102104034.GA26893@redhat.com>
-Bug-Reference-URL:     https://bugzilla.redhat.com/show_bug.cgi?id=286861
-
-Bug-Description:
-
-When the bash arithmetic expression evaluator has temporarily turned off
-evalation, such as when parsing a pre- or post-decrement or -increment
-operator, and an error occurs, evaluation is not re-enabled.
-
-Patch:
-
-*** ../bash-3.2-patched/expr.c 2007-08-25 13:47:05.000000000 -0400
---- expr.c     2007-10-18 08:08:44.000000000 -0400
-***************
-*** 287,290 ****
---- 287,292 ----
-      }
-    free (expr_stack[expr_depth]);     /* free the allocated EXPR_CONTEXT */
-+ 
-+   noeval = 0;        /* XXX */
-  }
-  
-***************
-*** 320,323 ****
---- 322,326 ----
-  
-    val = 0;
-+   noeval = 0;
-  
-    FASTCOPY (evalbuf, oevalbuf, sizeof (evalbuf));
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 28
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 29
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-030 b/src/patches/bash/bash32-030
deleted file mode 100644 (file)
index 3f12c28..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-030
-
-Bug-Reported-by:       Paul Eggert <eggert@cs.ucla.edu> Andreas Schwab <schwab@suse.de>
-Bug-Reference-ID:      <877il0nu84.fsf_-_@penguin.cs.ucla.edu> <m28x5gparz.fsf@igel.home>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-11/msg00023.html http://lists.gnu.org/archive/html/bug-bash/2007-11/msg00022.htmlhttp://lists.gnu.org/archive/html/bug-bash/2007-11/msg00022.html
-
-Bug-Description:
-
-If redirections attached to a compound command fail, bash does not set the
-command's exit status correctly.  This only happens when the command is the
-first in a sequential list.
-
-Patch:
-
-*** ../bash-3.2-patched/execute_cmd.c  2007-03-24 14:51:05.000000000 -0400
---- execute_cmd.c      2007-11-05 22:31:14.000000000 -0500
-***************
-*** 615,619 ****
-        redirection_undo_list = (REDIRECT *)NULL;
-        dispose_exec_redirects ();
-!       return (EXECUTION_FAILURE);
-      }
-  
---- 620,624 ----
-        redirection_undo_list = (REDIRECT *)NULL;
-        dispose_exec_redirects ();
-!       return (last_command_exit_value = EXECUTION_FAILURE);
-      }
-
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 29
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 30
-  
-  #endif /* _PATCHLEVEL_H_ */
-
-  
diff --git a/src/patches/bash/bash32-031 b/src/patches/bash/bash32-031
deleted file mode 100644 (file)
index 6c96fb9..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-031
-
-Bug-Reported-by:       Miroslav Lichvar <mlichvar@redhat.com>
-Bug-Reference-ID:      Fri, 02 Nov 2007 14:07:45 +0100
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-readline/2007-11/msg00000.html
-
-Bug-Description:
-
-In certain cases when outputting characters at the end of the line,
-e.g., when displaying the prompt string, readline positions the cursor
-incorrectly if the prompt string contains invisible characters and the
-text being drawn begins before the last invisible character in the line.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/display.c 2007-08-25 13:47:08.000000000 -0400
---- lib/readline/display.c     2007-11-10 17:51:29.000000000 -0500
-***************
-*** 1566,1574 ****
-         else
-           {
--            /* We have horizontal scrolling and we are not inserting at
--               the end.  We have invisible characters in this line.  This
--               is a dumb update. */
-             _rl_output_some_chars (nfd, temp);
-             _rl_last_c_pos += col_temp;
-             return;
-           }
---- 1619,1632 ----
-         else
-           {
-             _rl_output_some_chars (nfd, temp);
-             _rl_last_c_pos += col_temp;
-+            /* If nfd begins before any invisible characters in the prompt,
-+               adjust _rl_last_c_pos to account for wrap_offset and set
-+               cpos_adjusted to let the caller know. */
-+            if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
-+              {
-+                _rl_last_c_pos -= wrap_offset;
-+                cpos_adjusted = 1;
-+              }
-             return;
-           }
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 30
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 31
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-032 b/src/patches/bash/bash32-032
deleted file mode 100644 (file)
index 5e53e29..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-032
-
-Bug-Reported-by:       Uwe Doering <gemini@geminix.org>
-Bug-Reference-ID:      <46F3DD72.2090801@geminix.org>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-09/msg00102.html
-
-Bug-Description:
-
-There is an off-by-one error in the code that buffers characters received
-very quickly in succession, causing characters to be dropped.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/input.c   2007-08-25 13:47:10.000000000 -0400
---- lib/readline/input.c       2007-10-12 22:55:25.000000000 -0400
-***************
-*** 155,159 ****
-        pop_index--;
-        if (pop_index < 0)
-!      pop_index = ibuffer_len - 1;
-        ibuffer[pop_index] = key;
-        return (1);
---- 155,159 ----
-        pop_index--;
-        if (pop_index < 0)
-!      pop_index = ibuffer_len;
-        ibuffer[pop_index] = key;
-        return (1);
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 31
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 32
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-033 b/src/patches/bash/bash32-033
deleted file mode 100644 (file)
index 0d69810..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-033
-
-Bug-Reported-by:       Christophe Martin <schplurtz@free.fr>
-Bug-Reference-ID:      <465ABA4A.3030805@free.fr>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-05/msg00104.html
-
-Bug-Description:
-
-References made within a function to an uninitialized local array variable
-using the [*] subscript in a double-quoted string  can result in spurious
-ASCII 127 characters in the expanded value.
-
-Patch:
-
-*** ../bash-3.2-patched/arrayfunc.c    2007-08-25 13:47:05.000000000 -0400
---- arrayfunc.c        2007-05-31 11:55:46.000000000 -0400
-***************
-*** 723,727 ****
-      {
-        if (rtype)
-!      *rtype = 1;
-        if (allow_all == 0)
-       {
---- 723,727 ----
-      {
-        if (rtype)
-!      *rtype = (t[0] == '*') ? 1 : 2;
-        if (allow_all == 0)
-       {
-*** ../bash-3.2-patched/subst.c        2007-08-25 13:47:08.000000000 -0400
---- subst.c    2007-11-14 15:43:00.000000000 -0500
-***************
-*** 4908,4915 ****
-    intmax_t arg_index;
-    SHELL_VAR *var;
-!   int atype;
-  
-    ret = 0;
-    temp = 0;
-  
-    /* Handle multiple digit arguments, as in ${11}. */  
---- 4973,4981 ----
-    intmax_t arg_index;
-    SHELL_VAR *var;
-!   int atype, rflags;
-  
-    ret = 0;
-    temp = 0;
-+   rflags = 0;
-  
-    /* Handle multiple digit arguments, as in ${11}. */  
-***************
-*** 4944,4947 ****
---- 5010,5015 ----
-                 ? quote_string (temp)
-                 : quote_escapes (temp);
-+       else if (atype == 1 && temp && QUOTED_NULL (temp) && (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)))
-+      rflags |= W_HASQUOTEDNULL;
-      }
-  #endif
-***************
-*** 4971,4974 ****
---- 5039,5043 ----
-        ret = alloc_word_desc ();
-        ret->word = temp;
-+       ret->flags |= rflags;
-      }
-    return ret;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 32
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 33
-  
-  #endif /* _PATCHLEVEL_H_ */
-
diff --git a/src/patches/bash/bash32-034 b/src/patches/bash/bash32-034
deleted file mode 100644 (file)
index 4f08162..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-034
-
-Bug-Reported-by:       Ian Campbell <ian.campbell@xensource.com>
-Bug-Reference-ID:      <EXCHPAFExU3l5bhn1ow00001dfe@rpc.xensource.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-10/msg00060.html
-
-Bug-Description:
-
-The bash getcwd replacement will write past the end of allocated memory
-when it allocates the buffer itself if it uses the buffer size passed as
-an argument, and that size is less than the length of the pathname.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/sh/getcwd.c        2004-07-21 17:15:19.000000000 -0400
---- lib/sh/getcwd.c    2007-12-31 19:26:36.000000000 -0500
-***************
-*** 252,268 ****
-    {
-      size_t len = pathbuf + pathsize - pathp;
-      if (buf == NULL)
-        {
-!      if (len < (size_t) size)
-!        len = size;
-!      buf = (char *) malloc (len);
-       if (buf == NULL)
-         goto lose2;
-        }
-!     else if ((size_t) size < len)
-!       {
-!      errno = ERANGE;
-!      goto lose2;
-!       }
-      (void) memcpy((PTR_T) buf, (PTR_T) pathp, len);
-    }
---- 287,305 ----
-    {
-      size_t len = pathbuf + pathsize - pathp;
-+     if (buf == NULL && size <= 0)
-+       size = len;
-+ 
-+     if ((size_t) size < len)
-+       {
-+      errno = ERANGE;
-+      goto lose2;
-+       }
-      if (buf == NULL)
-        {
-!      buf = (char *) malloc (size);
-       if (buf == NULL)
-         goto lose2;
-        }
-! 
-      (void) memcpy((PTR_T) buf, (PTR_T) pathp, len);
-    }
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 33
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 34
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-035 b/src/patches/bash/bash32-035
deleted file mode 100644 (file)
index 55506ba..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-035
-
-Bug-Reported-by:       Ingo Molnar <mingo@elte.hu>
-Bug-Reference-ID:      <20071205202901.GA25202@elte.hu>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2007-12/msg00014.html
-
-Bug-Description:
-
-Bash incorrectly puts the second and subsequent children spawned by a
-shell forked to run a command substitution in the wrong process group.
-
-Patch:
-
-*** ../bash-3.2-patched/subst.c        2007-12-13 22:31:21.000000000 -0500
---- subst.c    2008-01-17 22:48:15.000000000 -0500
-***************
-*** 4621,4627 ****
-  
-  #if defined (JOB_CONTROL)
-    set_sigchld_handler ();
-    stop_making_children ();
-!   pipeline_pgrp = old_pipeline_pgrp;
-  #else
-    stop_making_children ();
---- 4721,4728 ----
-  
-  #if defined (JOB_CONTROL)
-    set_sigchld_handler ();
-    stop_making_children ();
-!   if (pid != 0)
-!     pipeline_pgrp = old_pipeline_pgrp;
-  #else
-    stop_making_children ();
-*** ../bash-3.2-patched/jobs.c 2007-08-25 13:46:59.000000000 -0400
---- jobs.c     2007-12-08 16:47:43.000000000 -0500
-***************
-*** 251,254 ****
---- 251,255 ----
-  static int set_job_status_and_cleanup __P((int));
-  
-+ static WAIT job_signal_status __P((int));
-  static WAIT raw_job_exit_status __P((int));
-  
-***************
-*** 2220,2223 ****
---- 2238,2261 ----
-  }
-  
-+ static WAIT
-+ job_signal_status (job)
-+      int job;
-+ {
-+   register PROCESS *p;
-+   WAIT s;
-+ 
-+   p = jobs[job]->pipe;
-+   do
-+     {
-+       s = p->status;
-+       if (WIFSIGNALED(s) || WIFSTOPPED(s))
-+      break;
-+       p = p->next;
-+     }
-+   while (p != jobs[job]->pipe);
-+ 
-+   return s;
-+ }
-+   
-  /* Return the exit status of the last process in the pipeline for job JOB.
-     This is the exit status of the entire job. */
-***************
-*** 2302,2310 ****
-       received, only if one of the jobs run is killed via SIGINT.  If
-       job control is not set, the job will be run in the same pgrp as
-!      the shell, and the shell will see any signals the job gets. */
-  
-    /* This is possibly a race condition -- should it go in stop_pipeline? */
-    wait_sigint_received = 0;
-!   if (job_control == 0)
-      {
-        old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler);
---- 2343,2354 ----
-       received, only if one of the jobs run is killed via SIGINT.  If
-       job control is not set, the job will be run in the same pgrp as
-!      the shell, and the shell will see any signals the job gets.  In
-!      fact, we want this set every time the waiting shell and the waited-
-!      for process are in the same process group, including command
-!      substitution. */
-  
-    /* This is possibly a race condition -- should it go in stop_pipeline? */
-    wait_sigint_received = 0;
-!   if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB))
-      {
-        old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler);
-***************
-*** 2452,2464 ****
-            the last process in the pipeline.  If no process exits due to a
-            signal, S is left as the status of the last job in the pipeline. */
-!        p = jobs[job]->pipe;
-!        do
-!          {
-!            s = p->status;
-!            if (WIFSIGNALED(s) || WIFSTOPPED(s))
-!              break;
-!            p = p->next;
-!          }
-!        while (p != jobs[job]->pipe);
-  
-         if (WIFSIGNALED (s) || WIFSTOPPED (s))
---- 2496,2500 ----
-            the last process in the pipeline.  If no process exits due to a
-            signal, S is left as the status of the last job in the pipeline. */
-!        s = job_signal_status (job);
-  
-         if (WIFSIGNALED (s) || WIFSTOPPED (s))
-***************
-*** 2494,2497 ****
---- 2530,2551 ----
-           }
-       }
-+       else if ((subshell_environment & SUBSHELL_COMSUB) && wait_sigint_received)
-+      {
-+        /* If waiting for a job in a subshell started to do command
-+           substitution, simulate getting and being killed by the SIGINT to
-+           pass the status back to our parent. */
-+        s = job_signal_status (job);
-+      
-+        if (WIFSIGNALED (s) && WTERMSIG (s) == SIGINT && signal_is_trapped (SIGINT) == 0)
-+          {
-+            UNBLOCK_CHILD (oset);
-+            restore_sigint_handler ();
-+            old_sigint_handler = set_signal_handler (SIGINT, SIG_DFL);
-+            if (old_sigint_handler == SIG_IGN)
-+              restore_sigint_handler ();
-+            else
-+              kill (getpid (), SIGINT);
-+          }
-+      }
-  
-        /* Moved here from set_job_status_and_cleanup, which is in the SIGCHLD
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 34
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 35
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-036 b/src/patches/bash/bash32-036
deleted file mode 100644 (file)
index ef22e60..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-036
-
-Bug-Reported-by:       Len Lattanzi <llattanzi@apple.com>
-Bug-Reference-ID:      <87493131-7AEC-4301-A684-E6CC6D06E3E1@apple.com>
-Bug-Reference-URL:
-
-Bug-Description:
-
-When initializing a subshell, bash did not reset a sentinel keeping track
-of the number of command substitutions, leading to an infinite loop if
-an error was encountered in the subshell.
-
-Patch:
-
-*** ../bash-3.2-patched/execute_cmd.c  2007-12-13 22:31:14.000000000 -0500
---- execute_cmd.c      2007-12-20 08:52:34.000000000 -0500
-***************
-*** 3881,3884 ****
---- 3916,3921 ----
-  
-    clear_unwind_protect_list (0);
-+   /* XXX -- are there other things we should be resetting here? */
-+   parse_and_execute_level = 0;               /* nothing left to restore it */
-  
-    /* We're no longer inside a shell function. */
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 35
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 36
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-037 b/src/patches/bash/bash32-037
deleted file mode 100644 (file)
index 376bd93..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-037
-
-Bug-Reported-by:       jared r r spiegel <jrrs@iorek.ice-nine.org>
-Bug-Reference-ID:      <200801152201.m0FM1lDp021260@iorek.ice-nine.org>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-01/msg00049.html
-
-Bug-Description:
-
-Bash inappropriately evaluates command substitutions while expanding
-directory names as part of command substitution.
-
-Patch:
-
-*** ../bash-3.2-patched/subst.c        2007-12-13 22:31:21.000000000 -0500
---- subst.c    2008-01-17 22:48:15.000000000 -0500
-***************
-*** 2815,2821 ****
-     to jump_to_top_level here so we don't endlessly loop. */
-  WORD_LIST *
-! expand_prompt_string (string, quoted)
-       char *string;
-       int quoted;
-  {
-    WORD_LIST *value;
---- 2895,2902 ----
-     to jump_to_top_level here so we don't endlessly loop. */
-  WORD_LIST *
-! expand_prompt_string (string, quoted, wflags)
-       char *string;
-       int quoted;
-+      int wflags;
-  {
-    WORD_LIST *value;
-***************
-*** 2825,2829 ****
-      return ((WORD_LIST *)NULL);
-  
-!   td.flags = 0;
-    td.word = savestring (string);
-  
---- 2906,2910 ----
-      return ((WORD_LIST *)NULL);
-  
-!   td.flags = wflags;
-    td.word = savestring (string);
-  
-*** ../bash-3.2-patched/subst.h        2007-03-24 14:51:05.000000000 -0400
---- subst.h    2008-01-17 22:46:08.000000000 -0500
-***************
-*** 136,140 ****
-  
-  /* Expand a prompt string. */
-! extern WORD_LIST *expand_prompt_string __P((char *, int));
-  
-  /* Expand STRING just as if you were expanding a word.  This also returns
---- 137,141 ----
-  
-  /* Expand a prompt string. */
-! extern WORD_LIST *expand_prompt_string __P((char *, int, int));
-  
-  /* Expand STRING just as if you were expanding a word.  This also returns
-*** ../bash-3.2-patched/parse.y        2007-08-25 13:47:06.000000000 -0400
---- parse.y    2008-01-17 22:46:30.000000000 -0500
-***************
-*** 4367,4371 ****
-      {
-        last_exit_value = last_command_exit_value;
-!       list = expand_prompt_string (result, Q_DOUBLE_QUOTES);
-        free (result);
-        result = string_list (list);
---- 4367,4371 ----
-      {
-        last_exit_value = last_command_exit_value;
-!       list = expand_prompt_string (result, Q_DOUBLE_QUOTES, 0);
-        free (result);
-        result = string_list (list);
-*** ../bash-3.2-patched/bashline.c     2006-07-29 16:39:30.000000000 -0400
---- bashline.c 2008-02-17 12:53:42.000000000 -0500
-***************
-*** 2358,2362 ****
-      {
-        new_dirname = savestring (local_dirname);
-!       wl = expand_prompt_string (new_dirname, 0);    /* does the right thing */
-        if (wl)
-       {
---- 2376,2380 ----
-      {
-        new_dirname = savestring (local_dirname);
-!       wl = expand_prompt_string (new_dirname, 0, W_NOCOMSUB);        /* does the right thing */
-        if (wl)
-       {
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 36
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 37
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-038 b/src/patches/bash/bash32-038
deleted file mode 100644 (file)
index 842b1b5..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-038
-
-Bug-Reported-by:       Wojciech Puchar <wojtek@wojtek.tensor.gdynia.pl>
-Bug-Reference-ID:      <200803131141.m2DBf9vo001136@wojtek.tensor.gdynia.pl>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-03/msg00029.html
-
-Bug-Description:
-
-When reading input lines into a single variable using the `read' builtin,
-bash did not free the memory it read after assigining it to the named
-variable, causing a memory leak noticable when reading large amounts of
-data.
-
-
-Patch:
-
-*** ../bash-3.2-patched/builtins/read.def      2007-08-25 13:47:07.000000000 -0400
---- builtins/read.def  2008-03-07 12:55:47.000000000 -0500
-***************
-*** 135,139 ****
-    char c;
-    char *input_string, *orig_input_string, *ifs_chars, *prompt, *arrayname;
-!   char *e, *t, *t1, *ps2;
-    struct stat tsb;
-    SHELL_VAR *var;
---- 152,156 ----
-    char c;
-    char *input_string, *orig_input_string, *ifs_chars, *prompt, *arrayname;
-!   char *e, *t, *t1, *ps2, *tofree;
-    struct stat tsb;
-    SHELL_VAR *var;
-***************
-*** 675,678 ****
---- 728,732 ----
-    /* Check whether or not the number of fields is exactly the same as the
-       number of variables. */
-+   tofree = NULL;
-    if (*input_string)
-      {
-***************
-*** 680,684 ****
-        t = get_word_from_string (&input_string, ifs_chars, &e);
-        if (*input_string == 0)
-!      input_string = t;
-        else
-       input_string = strip_trailing_ifs_whitespace (t1, ifs_chars, saw_escape);
---- 734,738 ----
-        t = get_word_from_string (&input_string, ifs_chars, &e);
-        if (*input_string == 0)
-!      tofree = input_string = t;
-        else
-       input_string = strip_trailing_ifs_whitespace (t1, ifs_chars, saw_escape);
-***************
-*** 695,698 ****
---- 749,754 ----
-      var = bind_read_variable (list->word->word, input_string);
-    stupidly_hack_special_variables (list->word->word);
-+   FREE (tofree);
-+ 
-    if (var)
-      VUNSETATTR (var, att_invisible);
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 37
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 38
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-039 b/src/patches/bash/bash32-039
deleted file mode 100644 (file)
index c225a5a..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-039
-
-Bug-Reported-by:       rew@erebor.com
-Bug-Reference-ID:      <20070119065603.546D011E9C@kansas.erebor.com>
-Bug-Reference-URL:     
-
-Bug-Description:
-
-Bash-3.2 changed the behavior of the [[ command's `=~' operator when the
-right-hand side was quoted:  it matched the quoted portions as strings.
-This patch introduces a new shell option: compat31.  When enabled, it
-restores the bash-3.1 behavior with respect to evaluating quoted arguments
-to the =~ operator.
-
-Patch:
-
-*** ../bash-3.2-patched/execute_cmd.c  2007-12-14 21:12:39.000000000 -0500
---- execute_cmd.c      2008-02-22 21:20:40.000000000 -0500
-***************
-*** 2547,2551 ****
-        if (arg1 == 0)
-       arg1 = nullstr;
-!       arg2 = cond_expand_word (cond->right->op, rmatch ? 2 : (patmatch ? 1 : 0));
-        if (arg2 == 0)
-       arg2 = nullstr;
---- 2552,2557 ----
-        if (arg1 == 0)
-       arg1 = nullstr;
-!       arg2 = cond_expand_word (cond->right->op,
-!                             (rmatch && shell_compatibility_level > 31) ? 2 : (patmatch ? 1 : 0));
-        if (arg2 == 0)
-       arg2 = nullstr;
-*** ../bash-3.2-patched/shell.h        2003-06-01 15:04:36.000000000 -0400
---- shell.h    2008-02-22 21:16:48.000000000 -0500
-***************
-*** 90,93 ****
---- 90,94 ----
-  extern int interactive, interactive_shell;
-  extern int startup_state;
-+ extern int shell_compatibility_level;
-  
-  /* Structure to pass around that holds a bitmap of file descriptors
-*** ../bash-3.2-patched/version.c      2007-12-14 21:12:29.000000000 -0500
---- version.c  2008-04-10 08:22:22.000000000 -0400
-***************
-*** 44,47 ****
---- 44,50 ----
-  const char *sccs_version = SCCSVERSION;
-  
-+ /* If == 31, shell compatible with bash-3.1, == 32 with bash-3.2, and so on */
-+ int shell_compatibility_level = 32;
-+ 
-  /* Functions for getting, setting, and displaying the shell version. */
-  
-*** ../bash-3.2-patched/builtins/shopt.def     2005-02-19 17:25:03.000000000 -0500
---- builtins/shopt.def 2008-04-10 08:13:32.000000000 -0400
-***************
-*** 102,105 ****
---- 102,107 ----
-  static int set_shellopts_after_change __P((int));
-  
-+ static int set_compatibility_level __P((int));
-+ 
-  #if defined (RESTRICTED_SHELL)
-  static int set_restricted_shell __P((int));
-***************
-*** 107,110 ****
---- 109,113 ----
-  
-  static int shopt_login_shell;
-+ static int shopt_compat31;
-  
-  typedef int shopt_set_func_t __P((int));
-***************
-*** 122,125 ****
---- 125,129 ----
-    { "cmdhist", &command_oriented_history, (shopt_set_func_t *)NULL },
-  #endif
-+   { "compat31", &shopt_compat31, set_compatibility_level },
-    { "dotglob", &glob_dot_filenames, (shopt_set_func_t *)NULL },
-    { "execfail", &no_exit_on_failed_exec, (shopt_set_func_t *)NULL },
-***************
-*** 460,463 ****
---- 464,479 ----
-  }
-  
-+ static int
-+ set_compatibility_level (mode)
-+      int mode;
-+ {
-+   /* Need to change logic here as we add more compatibility levels */
-+   if (shopt_compat31)
-+     shell_compatibility_level = 31;
-+   else
-+     shell_compatibility_level = 32;
-+   return 0;
-+ }
-+ 
-  #if defined (RESTRICTED_SHELL)
-  /* Don't allow the value of restricted_shell to be modified. */
-*** ../bash-3.2-patched/doc/bash.1     2006-09-28 10:26:05.000000000 -0400
---- doc/bash.1 2008-04-25 12:32:49.000000000 -0400
-***************
-*** 7978,7981 ****
---- 8200,8209 ----
-  easy re-editing of multi-line commands.
-  .TP 8
-+ .B compat31
-+ If set,
-+ .B bash
-+ changes its behavior to that of version 3.1 with respect to quoted
-+ arguments to the conditional command's =~ operator.
-+ .TP 8
-  .B dotglob
-  If set, 
-*** ../bash-20080214/doc/bashref.texi  2008-02-08 21:28:35.000000000 -0500
---- doc/bashref.texi   2008-02-22 21:44:51.000000000 -0500
-***************
-*** 4053,4056 ****
---- 4061,4069 ----
-  easy re-editing of multi-line commands.
-  
-+ @item compat31
-+ If set, Bash
-+ changes its behavior to that of version 3.1 with respect to quoted
-+ arguments to the conditional command's =~ operator.
-+ 
-  @item dotglob
-  If set, Bash includes filenames beginning with a `.' in
-*** ../bash-3.2-patched/tests/shopt.right      2005-02-19 17:46:09.000000000 -0500
---- tests/shopt.right  2008-04-28 09:13:07.000000000 -0400
-***************
-*** 7,10 ****
---- 7,11 ----
-  shopt -u checkwinsize
-  shopt -s cmdhist
-+ shopt -u compat31
-  shopt -u dotglob
-  shopt -u execfail
-***************
-*** 54,57 ****
---- 55,59 ----
-  shopt -u checkhash
-  shopt -u checkwinsize
-+ shopt -u compat31
-  shopt -u dotglob
-  shopt -u execfail
-***************
-*** 78,81 ****
---- 80,84 ----
-  checkhash            off
-  checkwinsize         off
-+ compat31             off
-  dotglob              off
-  execfail             off
-
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 38
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 39
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-040 b/src/patches/bash/bash32-040
deleted file mode 100644 (file)
index 50b85bb..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-040
-
-Bug-Reported-by:       John McCabe-Dansted
-Bug-Reference-ID:
-Bug-Reference-URL:     https://bugs.launchpad.net/ubuntu/+source/bash/+bug/202885
-
-Bug-Description:
-
-When using the `set' builtin to list all shell variables, the shell uses
-the wrong variable when computing the length of a variable's value.
-
-Patch:
-
-*** ../bash-3.2-patched/array.c        2007-03-24 14:51:03.000000000 -0400
---- array.c    2008-08-17 13:07:04.000000000 -0400
-***************
-*** 684,688 ****
-               valstr = element_value (ae) ? sh_double_quote (element_value(ae))
-                                           : (char *)NULL;
-!              elen = STRLEN (indstr) + 8 + STRLEN (valstr);
-               RESIZE_MALLOCED_BUFFER (result, rlen, (elen + 1), rsize, rsize);
-  
---- 809,813 ----
-               valstr = element_value (ae) ? sh_double_quote (element_value(ae))
-                                           : (char *)NULL;
-!              elen = STRLEN (is) + 8 + STRLEN (valstr);
-               RESIZE_MALLOCED_BUFFER (result, rlen, (elen + 1), rsize, rsize);
-  
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 39
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 40
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-041 b/src/patches/bash/bash32-041
deleted file mode 100644 (file)
index 3c05c04..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-041
-
-Bug-Reported-by:       Dan Jacobson <jidanni@jidanni.org>
-Bug-Reference-ID:      <873arjs11h.fsf@jidanni.org>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-02/msg00049.html
-
-Bug-Description:
-
-Bash saved and restored the value of `set -o history' while sourcing files,
-preventing users from turning off history with `set +o history' in .bashrc.
-
-Patch:
-
-*** ../bash-3.2-patched/bashhist.c     2005-12-26 13:31:16.000000000 -0500
---- bashhist.c 2008-08-17 13:07:40.000000000 -0400
-***************
-*** 81,84 ****
---- 81,85 ----
-     becomes zero when we read lines from a file, for example. */
-  int remember_on_history = 1;
-+ int enable_history_list = 1; /* value for `set -o history' */
-  
-  /* The number of lines that Bash has added to this history session.  The
-***************
-*** 235,239 ****
-    history_expansion_inhibited = 1;
-  #endif
-!   remember_on_history = interact != 0;
-    history_inhibit_expansion_function = bash_history_inhibit_expansion;
-  }
---- 236,240 ----
-    history_expansion_inhibited = 1;
-  #endif
-!   remember_on_history = enable_history_list = interact != 0;
-    history_inhibit_expansion_function = bash_history_inhibit_expansion;
-  }
-*** ../bash-3.2-patched/builtins/set.def       2006-07-27 09:41:43.000000000 -0400
---- builtins/set.def   2008-08-14 16:33:41.000000000 -0400
-***************
-*** 190,194 ****
-  #endif /* BANG_HISTORY */
-  #if defined (HISTORY)
-!   { "history",   '\0', &remember_on_history, bash_set_history, (setopt_get_func_t *)NULL },
-  #endif
-    { "ignoreeof", '\0', &ignoreeof, set_ignoreeof, (setopt_get_func_t *)NULL },
---- 198,202 ----
-  #endif /* BANG_HISTORY */
-  #if defined (HISTORY)
-!   { "history",   '\0', &enable_history_list, bash_set_history, (setopt_get_func_t *)NULL },
-  #endif
-    { "ignoreeof", '\0', &ignoreeof, set_ignoreeof, (setopt_get_func_t *)NULL },
-***************
-*** 382,385 ****
---- 390,394 ----
-    if (on_or_off == FLAG_ON)
-      {
-+       enable_history_list = 1;
-        bash_history_enable ();
-        if (history_lines_this_session == 0)
-***************
-*** 387,392 ****
-      }
-    else
-!     bash_history_disable ();
-!   return (1 - remember_on_history);
-  }
-  #endif
---- 396,404 ----
-      }
-    else
-!     {
-!       enable_history_list = 0;
-!       bash_history_disable ();
-!     }
-!   return (1 - enable_history_list);
-  }
-  #endif
-***************
-*** 566,570 ****
-  {
-  #if defined (HISTORY)
-!   remember_on_history = 1;
-  #endif
-    ignoreeof = 0;
---- 578,582 ----
-  {
-  #if defined (HISTORY)
-!   remember_on_history = enable_history_list = 1;
-  #endif
-    ignoreeof = 0;
-*** ../bash-3.2-patched/builtins/evalstring.c  2006-07-28 15:12:16.000000000 -0400
---- builtins/evalstring.c      2008-11-10 21:17:16.000000000 -0500
-***************
-*** 68,71 ****
---- 68,79 ----
-  static int cat_file __P((REDIRECT *));
-  
-+ #if defined (HISTORY)
-+ static void
-+ set_history_remembering ()
-+ {
-+   remember_on_history = enable_history_list;
-+ }
-+ #endif
-+ 
-  /* How to force parse_and_execute () to clean up after itself. */
-  void
-***************
-*** 116,120 ****
-  
-  #if defined (HISTORY)
-!   unwind_protect_int (remember_on_history);  /* can be used in scripts */
-  #  if defined (BANG_HISTORY)
-    if (interactive_shell)
---- 124,131 ----
-  
-  #if defined (HISTORY)
-!   if (parse_and_execute_level == 0)
-!     add_unwind_protect (set_history_remembering, (char *)NULL);
-!   else
-!     unwind_protect_int (remember_on_history);        /* can be used in scripts */
-  #  if defined (BANG_HISTORY)
-    if (interactive_shell)
-*** ../bash-3.2-patched/bashhist.h     2005-07-01 15:44:41.000000000 -0400
---- bashhist.h 2008-08-17 12:51:07.000000000 -0400
-***************
-*** 32,35 ****
---- 32,38 ----
-  
-  extern int remember_on_history;
-+ extern int enable_history_list;              /* value for `set -o history' */
-+ extern int literal_history;          /* controlled by `shopt lithist' */
-+ extern int force_append_history;
-  extern int history_lines_this_session;
-  extern int history_lines_in_file;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 40
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 41
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-042 b/src/patches/bash/bash32-042
deleted file mode 100644 (file)
index 4c9f4d6..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-042
-
-Bug-Reported-by:       Archimerged Ark Submedes <archimerged@gmail.com>
-Bug-Reference-ID:      <5ba4bef00804182116g65ff71e0qdffcf672f205e708@mail.gmail.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-04/msg00041.html
-
-Bug-Description:
-
-An operator precedence error prevented the bash arithmetic evaluator from
-parsing conditional commands correctly.
-
-Patch:
-
-*** ../bash-3.2-patched/expr.c 2007-12-13 22:30:43.000000000 -0500
---- expr.c     2008-08-17 13:09:59.000000000 -0400
-***************
-*** 521,525 ****
-         noeval++;
-       }
-!       val2 = explor ();
-        if (set_noeval)
-       noeval--;
---- 521,526 ----
-         noeval++;
-       }
-! 
-!       val2 = expcond ();
-        if (set_noeval)
-       noeval--;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 41
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 42
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-043 b/src/patches/bash/bash32-043
deleted file mode 100644 (file)
index 5a51843..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-043
-
-Bug-Reported-by:       Morita Sho <morita-pub-en-debian@inz.sakura.ne.jp>
-Bug-Reference-ID:
-Bug-Reference-URL:     http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=478096
-
-Bug-Description:
-
-Side effects caused by setting function-local versions of variables bash
-handles specially persisted after the function returned.
-
-Patch:
-
-*** ../bash-3.2-patched/variables.c    2007-08-25 13:47:05.000000000 -0400
---- variables.c        2008-11-09 17:47:31.000000000 -0500
-***************
-*** 3459,3465 ****
-       var->attributes &= ~(att_tempvar|att_propagate);
-        else
-!         shell_variables->flags |= VC_HASTMPVAR;
-        v->attributes |= var->attributes;
-      }
-  
-    dispose_variable (var);
---- 3771,3779 ----
-       var->attributes &= ~(att_tempvar|att_propagate);
-        else
-!      shell_variables->flags |= VC_HASTMPVAR;
-        v->attributes |= var->attributes;
-      }
-+   else
-+     stupidly_hack_special_variables (var->name);     /* XXX */
-  
-    dispose_variable (var);
-***************
-*** 3548,3551 ****
---- 3862,3867 ----
-        v->attributes |= var->attributes;
-      }
-+   else
-+     stupidly_hack_special_variables (var->name);     /* XXX */
-  
-    dispose_variable (var);
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 42
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 43
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-044 b/src/patches/bash/bash32-044
deleted file mode 100644 (file)
index 3e7a392..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-044
-
-Bug-Reported-by:       slinkp <stuff@slinkp.com>
-Bug-Reference-ID:      <da52a26a-9f38-4861-a918-14d3482b539d@c65g2000hsa.googlegroups.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-05/msg00085.html
-
-Bug-Description:
-
-The presence of invisible characters in a prompt longer than the screenwidth
-with invisible characters on the first and last prompt lines caused readline
-to place the cursor in the wrong physical location.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/display.c 2007-12-14 21:12:40.000000000 -0500
---- lib/readline/display.c     2008-10-23 09:39:46.000000000 -0400
-***************
-*** 911,914 ****
---- 944,951 ----
-            OFFSET (which has already been calculated above).  */
-  
-+ #define INVIS_FIRST()        (prompt_physical_chars > _rl_screenwidth ? prompt_invis_chars_first_line : wrap_offset)
-+ #define WRAP_OFFSET(line, offset)  ((line == 0) \
-+                                      ? (offset ? INVIS_FIRST() : 0) \
-+                                      : ((line == prompt_last_screen_line) ? wrap_offset-prompt_invis_chars_first_line : 0))
-  #define W_OFFSET(line, offset) ((line) == 0 ? offset : 0)
-  #define VIS_LLEN(l)  ((l) > _rl_vis_botlin ? 0 : (vis_lbreaks[l+1] - vis_lbreaks[l]))
-***************
-*** 945,949 ****
-                 _rl_last_c_pos > wrap_offset &&
-                 o_cpos < prompt_last_invisible)
-!              _rl_last_c_pos -= wrap_offset;
-                 
-             /* If this is the line with the prompt, we might need to
---- 982,992 ----
-                 _rl_last_c_pos > wrap_offset &&
-                 o_cpos < prompt_last_invisible)
-!              _rl_last_c_pos -= prompt_invis_chars_first_line;        /* XXX - was wrap_offset */
-!            else if (linenum == prompt_last_screen_line && prompt_physical_chars > _rl_screenwidth &&
-!                      (MB_CUR_MAX > 1 && rl_byte_oriented == 0) &&
-!                      cpos_adjusted == 0 &&
-!                      _rl_last_c_pos != o_cpos &&
-!                      _rl_last_c_pos > (prompt_last_invisible - _rl_screenwidth - prompt_invis_chars_first_line))
-!              _rl_last_c_pos -= (wrap_offset-prompt_invis_chars_first_line);
-                 
-             /* If this is the line with the prompt, we might need to
-***************
-*** 1205,1209 ****
-  {
-    register char *ofd, *ols, *oe, *nfd, *nls, *ne;
-!   int temp, lendiff, wsatend, od, nd, o_cpos;
-    int current_invis_chars;
-    int col_lendiff, col_temp;
---- 1264,1268 ----
-  {
-    register char *ofd, *ols, *oe, *nfd, *nls, *ne;
-!   int temp, lendiff, wsatend, od, nd, twidth, o_cpos;
-    int current_invis_chars;
-    int col_lendiff, col_temp;
-***************
-*** 1221,1225 ****
-      temp = _rl_last_c_pos;
-    else
-!     temp = _rl_last_c_pos - W_OFFSET(_rl_last_v_pos, visible_wrap_offset);
-    if (temp == _rl_screenwidth && _rl_term_autowrap && !_rl_horizontal_scroll_mode
-       && _rl_last_v_pos == current_line - 1)
---- 1280,1284 ----
-      temp = _rl_last_c_pos;
-    else
-!     temp = _rl_last_c_pos - WRAP_OFFSET (_rl_last_v_pos, visible_wrap_offset);
-    if (temp == _rl_screenwidth && _rl_term_autowrap && !_rl_horizontal_scroll_mode
-       && _rl_last_v_pos == current_line - 1)
-***************
-*** 1587,1599 ****
-           {
-             _rl_output_some_chars (nfd + lendiff, temp - lendiff);
-- #if 1
-            /* XXX -- this bears closer inspection.  Fixes a redisplay bug
-               reported against bash-3.0-alpha by Andreas Schwab involving
-               multibyte characters and prompt strings with invisible
-               characters, but was previously disabled. */
-!            _rl_last_c_pos += _rl_col_width (nfd+lendiff, 0, temp-col_lendiff);
-! #else
-!            _rl_last_c_pos += _rl_col_width (nfd+lendiff, 0, temp-lendiff);
-! #endif
-           }
-       }
---- 1648,1660 ----
-           {
-             _rl_output_some_chars (nfd + lendiff, temp - lendiff);
-            /* XXX -- this bears closer inspection.  Fixes a redisplay bug
-               reported against bash-3.0-alpha by Andreas Schwab involving
-               multibyte characters and prompt strings with invisible
-               characters, but was previously disabled. */
-!            if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
-!              twidth = _rl_col_width (nfd+lendiff, 0, temp-col_lendiff);
-!            else
-!              twidth = temp - lendiff;
-!            _rl_last_c_pos += twidth;
-           }
-       }
-***************
-*** 1789,1793 ****
-    int cpos, dpos;            /* current and desired cursor positions */
-  
-!   woff = W_OFFSET (_rl_last_v_pos, wrap_offset);
-    cpos = _rl_last_c_pos;
-  #if defined (HANDLE_MULTIBYTE)
---- 1850,1854 ----
-    int cpos, dpos;            /* current and desired cursor positions */
-  
-!   woff = WRAP_OFFSET (_rl_last_v_pos, wrap_offset);
-    cpos = _rl_last_c_pos;
-  #if defined (HANDLE_MULTIBYTE)
-***************
-*** 1803,1807 ****
-        prompt string, since they're both buffer indices and DPOS is a
-        desired display position. */
-!       if (new > prompt_last_invisible)               /* XXX - don't use woff here */
-       {
-         dpos -= woff;
---- 1864,1872 ----
-        prompt string, since they're both buffer indices and DPOS is a
-        desired display position. */
-!       if ((new > prompt_last_invisible) ||           /* XXX - don't use woff here */
-!        (prompt_physical_chars > _rl_screenwidth &&
-!         _rl_last_v_pos == prompt_last_screen_line &&
-!         wrap_offset != woff &&
-!         new > (prompt_last_invisible-_rl_screenwidth-wrap_offset)))
-       {
-         dpos -= woff;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 43
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 44
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-045 b/src/patches/bash/bash32-045
deleted file mode 100644 (file)
index 68b91ff..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-045
-
-Bug-Reported-by:       Roman Rakus <rrakus@redhat.com>
-Bug-Reference-ID:      <4864B4A0.1060402@redhat.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-06/msg00098.html
-
-Bug-Description:
-
-When short-circuiting execution due to the `break' or `continue' builtins,
-bash did not preserve the value of $?.
-
-Patch:
-
-*** ../bash-3.2-patched/execute_cmd.c  2008-04-28 22:00:24.000000000 -0400
---- execute_cmd.c      2008-10-18 14:35:03.000000000 -0400
-***************
-*** 502,507 ****
---- 514,526 ----
-    volatile int save_line_number;
-  
-+ #if 0
-    if (command == 0 || breaking || continuing || read_but_dont_execute)
-      return (EXECUTION_SUCCESS);
-+ #else
-+   if (breaking || continuing)
-+     return (last_command_exit_value);
-+   if (command == 0 || read_but_dont_execute)
-+     return (EXECUTION_SUCCESS);
-+ #endif
-  
-    QUIT;
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 44
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 45
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-046 b/src/patches/bash/bash32-046
deleted file mode 100644 (file)
index 78aaf01..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-046
-
-Bug-Reported-by:       Wang Xin <wxinee@gmail.com>
-Bug-Reference-ID:      <9a73e1570807062042ide16698m10e1b18036c95592@mail.gmail.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-07/msg00014.html
-
-Bug-Description:
-
-Bash did not compute the length of multibyte characters correctly when
-performing array element length references (e.g., ${#var[subscript]}).
-
-Patch:
-
-*** /usr/src/local/bash/bash-3.2-patched/subst.c       2008-04-28 22:00:20.000000000 -0400
---- subst.c    2008-11-10 22:02:38.000000000 -0500
-***************
-*** 4813,4817 ****
-      t = (ind == 0) ? value_cell (var) : (char *)NULL;
-  
-!   len = STRLEN (t);
-    return (len);
-  }
---- 4813,4817 ----
-      t = (ind == 0) ? value_cell (var) : (char *)NULL;
-  
-!   len = MB_STRLEN (t);
-    return (len);
-  }
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 45
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 46
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-047 b/src/patches/bash/bash32-047
deleted file mode 100644 (file)
index b8272b1..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-047
-
-Bug-Reported-by:       Roman Rakus <rrakus@redhat.com>
-Bug-Reference-ID:      <48A89EBC.906@redhat.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-08/msg00026.html
-
-Bug-Description:
-
-When using the `.' (source) builtin, under certain circumstances bash was
-too careful in discarding state to preserve internal consistency.  One
-effect was that assignments to readonly variables would cause entire scripts
-to be aborted instead of execution of the offending command.  This behavior
-was introduced by bash-3.2 patch 20.
-
-Patch:
-
-*** /usr/src/local/chet/src/bash/bash-3.2-patched/subst.c      2008-04-29 21:24:55.000000000 -0400
---- subst.c    2008-11-13 17:44:25.000000000 -0500
-***************
-*** 138,142 ****
-  extern int last_command_exit_value, last_command_exit_signal;
-  extern int subshell_environment;
-! extern int subshell_level;
-  extern int eof_encountered;
-  extern int return_catch_flag, return_catch_value;
---- 138,142 ----
-  extern int last_command_exit_value, last_command_exit_signal;
-  extern int subshell_environment;
-! extern int subshell_level, parse_and_execute_level;
-  extern int eof_encountered;
-  extern int return_catch_flag, return_catch_value;
-***************
-*** 7673,7677 ****
-    expanding_redir = 0;
-  
-!   top_level_cleanup ();                      /* from sig.c */
-  
-    jump_to_top_level (v);
---- 7673,7679 ----
-    expanding_redir = 0;
-  
-!   if (parse_and_execute_level == 0)
-!     top_level_cleanup ();                    /* from sig.c */
-! 
-  
-    jump_to_top_level (v);
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 46
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 47
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-048 b/src/patches/bash/bash32-048
deleted file mode 100644 (file)
index 551dade..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-048
-
-Bug-Reported-by:       Steffen Kiess <s-kiess@web.de>
-Bug-Reference-ID:      <1223929957.5383.6.camel@fips>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2008-10/msg00047.html
-
-Bug-Description:
-
-When invoked as `bash -c', bash did not execute an EXIT trap when the last
-command in the executed list was a command run from the file system.
-
-Patch:
-
-*** /Users/chet/src/bash/bash-3.2-patched/builtins/evalstring.c        2006-07-28 15:12:16.000000000 -0400
---- builtins/evalstring.c      2008-11-13 18:38:45.000000000 -0500
-***************
-*** 249,252 ****
---- 249,253 ----
-              *   we're not running a trap AND
-              *   we have parsed the full command (string == '\0') AND
-+             *   we're not going to run the exit trap AND
-              *   we have a simple command without redirections AND
-              *   the command is not being timed AND
-***************
-*** 259,263 ****
-                 *bash_input.location.string == '\0' &&
-                 command->type == cm_simple &&
-!                !command->redirects && !command->value.Simple->redirects &&
-                 ((command->flags & CMD_TIME_PIPELINE) == 0) &&
-                 ((command->flags & CMD_INVERT_RETURN) == 0))
---- 260,265 ----
-                 *bash_input.location.string == '\0' &&
-                 command->type == cm_simple &&
-!                signal_is_trapped (EXIT_TRAP) == 0 &&
-!                command->redirects == 0 && command->value.Simple->redirects == 0 &&
-                 ((command->flags & CMD_TIME_PIPELINE) == 0) &&
-                 ((command->flags & CMD_INVERT_RETURN) == 0))
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 47
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 48
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-049 b/src/patches/bash/bash32-049
deleted file mode 100644 (file)
index 469c4c8..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-049
-
-Bug-Reported-by:       Len Lattanzi <llattanzi@apple.com>
-Bug-Reference-ID:      <52B1297F-6675-45CC-B63E-24745337D006@apple.com>
-Bug-Reference-URL:     
-
-Bug-Description:
-
-On systems where mbrtowc() returns -2 when passed a length argument with
-value 0, when using a multibyte locale, Readline's emacs-mode forward-char
-at the end of a line will leave the point beyond the end of the line.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/mbutil.c  2009-05-29 23:09:26.000000000 -0400
---- lib/readline/mbutil.c      2009-05-29 23:10:12.000000000 -0400
-***************
-*** 78,82 ****
-       int seed, count, find_non_zero;
-  {
-!   size_t tmp;
-    mbstate_t ps;
-    int point;
---- 78,82 ----
-       int seed, count, find_non_zero;
-  {
-!   size_t tmp, len;
-    mbstate_t ps;
-    int point;
-***************
-*** 99,103 ****
-    while (count > 0)  
-      {
-!       tmp = mbrtowc (&wc, string+point, strlen(string + point), &ps);
-        if (MB_INVALIDCH ((size_t)tmp))
-       {
---- 99,106 ----
-    while (count > 0)  
-      {
-!       len = strlen (string + point);
-!       if (len == 0)
-!      break;
-!       tmp = mbrtowc (&wc, string+point, len, &ps);
-        if (MB_INVALIDCH ((size_t)tmp))
-       {
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 48
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 49
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-050 b/src/patches/bash/bash32-050
deleted file mode 100644 (file)
index aef537e..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-050
-
-Bug-Reported-by:       Jan Hnatek <Jan.Hnatek@Sun.COM>
-Bug-Reference-ID:      <4A44991F.8010005@sun.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2009-06/msg00084.html
-
-Bug-Description:
-
-On systems where mbrtowc() returns -2 when passed a length argument with
-value 0, when using a multibyte locale, Readline's emacs-mode forward-char
-at the end of a line will leave the point beyond the end of the line.
-
-Patch:
-
-*** ../bash-3.2-patched/lib/readline/mbutil.c  2009-06-16 11:26:50.000000000 -0400
---- lib/readline/mbutil.c      2009-01-04 14:32:33.000000000 -0500
-***************
-*** 132,141 ****
-      {
-        tmp = mbrtowc (&wc, string + point, strlen (string + point), &ps);
-!       while (tmp > 0 && wcwidth (wc) == 0)
-       {
-         point += tmp;
-         tmp = mbrtowc (&wc, string + point, strlen (string + point), &ps);
--        if (MB_NULLWCH (tmp) || MB_INVALIDCH (tmp))
--          break;
-       }
-      }
---- 130,137 ----
-      {
-        tmp = mbrtowc (&wc, string + point, strlen (string + point), &ps);
-!       while (MB_NULLWCH (tmp) == 0 && MB_INVALIDCH (tmp) == 0 && wcwidth (wc) == 0)
-       {
-         point += tmp;
-         tmp = mbrtowc (&wc, string + point, strlen (string + point), &ps);
-       }
-      }
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 49
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 50
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-051 b/src/patches/bash/bash32-051
deleted file mode 100644 (file)
index 404fbd6..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-                            BASH PATCH REPORT
-                            =================
-
-Bash-Release: 3.2
-Patch-ID: bash32-051
-
-Bug-Reported-by:       werner@suse.de
-Bug-Reference-ID:      <201002251238.o1PCcYcg016893@boole.suse.de>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2010-02/msg00132.html
-
-Bug-Description:
-
-When the `read' builtin times out after the timeout specified with -t is
-exceeded, it does not reset the flags that tell signal handlers to process
-signals immediately instead of deferring their handling.  This can result
-in unsafe functions being called from signal handlers, which can cause bash
-to hang or dump core.
-
-Patch:
-
-*** ../bash-3.2-patched/builtins/read.def      2008-04-29 21:25:00.000000000 -0400
---- builtins/read.def  2010-03-17 09:50:51.000000000 -0400
-***************
-*** 327,330 ****
---- 327,332 ----
-        if (code)
-       {
-+        interrupt_immediately--;
-+        terminate_immediately = 0;
-         run_unwind_frame ("read_builtin");
-         return (EXECUTION_FAILURE);
-*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
---- patchlevel.h       Mon Oct 16 14:22:54 2006
-***************
-*** 26,30 ****
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 50
-  
-  #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
-     looks for to find the patch level (for the sccs version string). */
-  
-! #define PATCHLEVEL 51
-  
-  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-052 b/src/patches/bash/bash32-052
new file mode 100644 (file)
index 0000000..78e7d92
--- /dev/null
@@ -0,0 +1,104 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release: 3.2
+Patch-ID: bash32-052
+
+Bug-Reported-by:       Stephane Chazelas <stephane.chazelas@gmail.com>
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+Under certain circumstances, bash will execute user code while processing the
+environment for exported function definitions.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-3.2.51/builtins/common.h   2006-03-06 09:38:44.000000000 -0500
+--- builtins/common.h  2014-09-16 19:08:02.000000000 -0400
+***************
+*** 34,37 ****
+--- 34,39 ----
+  
+  /* Flags for describe_command, shared between type.def and command.def */
++ #define SEVAL_FUNCDEF        0x080           /* only allow function definitions */
++ #define SEVAL_ONECMD 0x100           /* only allow a single command */
+  #define CDESC_ALL            0x001   /* type -a */
+  #define CDESC_SHORTDESC              0x002   /* command -V */
+*** ../bash-3.2.51/builtins/evalstring.c       2008-11-15 17:47:04.000000000 -0500
+--- builtins/evalstring.c      2014-09-16 19:08:02.000000000 -0400
+***************
+*** 235,238 ****
+--- 235,246 ----
+             struct fd_bitmap *bitmap;
+  
++            if ((flags & SEVAL_FUNCDEF) && command->type != cm_function_def)
++              {
++                internal_warning ("%s: ignoring function definition attempt", from_file);
++                should_jump_to_top_level = 0;
++                last_result = last_command_exit_value = EX_BADUSAGE;
++                break;
++              }
++ 
+             bitmap = new_fd_bitmap (FD_BITMAP_SIZE);
+             begin_unwind_frame ("pe_dispose");
+***************
+*** 292,295 ****
+--- 300,306 ----
+             dispose_fd_bitmap (bitmap);
+             discard_unwind_frame ("pe_dispose");
++ 
++            if (flags & SEVAL_ONECMD)
++              break;
+           }
+       }
+*** ../bash-3.2.51/variables.c 2008-11-15 17:15:06.000000000 -0500
+--- variables.c        2014-09-16 19:10:39.000000000 -0400
+***************
+*** 319,328 ****
+         strcpy (temp_string + char_index + 1, string);
+  
+!        parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST);
+! 
+!        /* Ancient backwards compatibility.  Old versions of bash exported
+!           functions like name()=() {...} */
+!        if (name[char_index - 1] == ')' && name[char_index - 2] == '(')
+!          name[char_index - 2] = '\0';
+  
+         if (temp_var = find_function (name))
+--- 319,326 ----
+         strcpy (temp_string + char_index + 1, string);
+  
+!        /* Don't import function names that are invalid identifiers from the
+!           environment. */
+!        if (legal_identifier (name))
+!          parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD);
+  
+         if (temp_var = find_function (name))
+***************
+*** 333,340 ****
+         else
+           report_error (_("error importing function definition for `%s'"), name);
+- 
+-        /* ( */
+-        if (name[char_index - 1] == ')' && name[char_index - 2] == '\0')
+-          name[char_index - 2] = '(';         /* ) */
+       }
+  #if defined (ARRAY_VARS)
+--- 331,334 ----
+*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
+--- patchlevel.h       Mon Oct 16 14:22:54 2006
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 51
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 52
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash32-053 b/src/patches/bash/bash32-053
new file mode 100644 (file)
index 0000000..e7efce7
--- /dev/null
@@ -0,0 +1,54 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release: 3.2
+Patch-ID: bash32-053
+
+Bug-Reported-by:       Tavis Ormandy <taviso () cmpxchg8b com>
+Bug-Reference-ID:
+Bug-Reference-URL:     http://twitter.com/taviso/statuses/514887394294652929
+
+Bug-Description:
+
+Under certain circumstances, bash can incorrectly save a lookahead character and
+return it on a subsequent call, even when reading a new line.
+
+Patch:
+
+*** ../bash-3.2.52/parse.y     2008-04-29 21:24:55.000000000 -0400
+--- parse.y    2014-09-25 16:18:41.000000000 -0400
+***************
+*** 2504,2507 ****
+--- 2504,2509 ----
+    word_desc_to_read = (WORD_DESC *)NULL;
+  
++   eol_ungetc_lookahead = 0;
++ 
+    last_read_token = '\n';
+    token_to_read = '\n';
+*** ../bash-3.2.52/y.tab.c     2006-09-25 08:15:16.000000000 -0400
+--- y.tab.c    2014-09-25 20:28:17.000000000 -0400
+***************
+*** 3833,3836 ****
+--- 3833,3838 ----
+    word_desc_to_read = (WORD_DESC *)NULL;
+  
++   eol_ungetc_lookahead = 0;
++ 
+    last_read_token = '\n';
+    token_to_read = '\n';
+*** ../bash-3.2/patchlevel.h   Thu Apr 13 08:31:04 2006
+--- patchlevel.h       Mon Oct 16 14:22:54 2006
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 52
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 53
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-001 b/src/patches/bash/bash43-001
new file mode 100644 (file)
index 0000000..ea1c6b2
--- /dev/null
@@ -0,0 +1,58 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-001
+
+Bug-Reported-by:       NBaH <nbah@sfr.fr>
+Bug-Reference-ID:      <ler0b5$iu9$1@speranza.aioe.org>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-02/msg00092.html
+
+Bug-Description:
+
+A missing check for a valid option prevented `test -R' from working.  There
+is another problem that causes bash to look up the wrong variable name when
+processing the argument to `test -R'.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3/test.c 2014-02-04 16:52:58.000000000 -0500
+--- test.c     2014-02-28 21:22:44.000000000 -0500
+***************
+*** 647,652 ****
+  
+      case 'R':
+!       v = find_variable (arg);
+!       return (v && invisible_p (v) == 0 && var_isset (v) && nameref_p (v) ? TRUE : FALSE);
+      }
+  
+--- 647,652 ----
+  
+      case 'R':
+!       v = find_variable_noref (arg);
+!       return ((v && invisible_p (v) == 0 && var_isset (v) && nameref_p (v)) ? TRUE : FALSE);
+      }
+  
+***************
+*** 724,727 ****
+--- 724,728 ----
+      case 'u': case 'v': case 'w': case 'x': case 'z':
+      case 'G': case 'L': case 'O': case 'S': case 'N':
++     case 'R':
+        return (1);
+      }
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 0
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 1
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-002 b/src/patches/bash/bash43-002
new file mode 100644 (file)
index 0000000..735b7b8
--- /dev/null
@@ -0,0 +1,62 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-002
+
+Bug-Reported-by:       Moe Tunes <moetunes42@gmail.com>
+Bug-Reference-ID:      <53103F49.3070100@gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-02/msg00086.html
+
+Bug-Description:
+
+A change to save state while running the DEBUG trap caused pipelines to hang
+on systems which need process group synchronization while building pipelines.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3/trap.c 2014-02-05 10:03:21.000000000 -0500
+--- trap.c     2014-02-28 09:51:43.000000000 -0500
+***************
+*** 921,925 ****
+  
+  #if defined (JOB_CONTROL)
+!       save_pipeline (1);     /* XXX only provides one save level */
+  #endif
+  
+--- 921,926 ----
+  
+  #if defined (JOB_CONTROL)
+!       if (sig != DEBUG_TRAP) /* run_debug_trap does this */
+!      save_pipeline (1);      /* XXX only provides one save level */
+  #endif
+  
+***************
+*** 941,945 ****
+  
+  #if defined (JOB_CONTROL)
+!       restore_pipeline (1);
+  #endif
+  
+--- 942,947 ----
+  
+  #if defined (JOB_CONTROL)
+!       if (sig != DEBUG_TRAP) /* run_debug_trap does this */
+!      restore_pipeline (1);
+  #endif
+  
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 1
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 2
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-003 b/src/patches/bash/bash43-003
new file mode 100644 (file)
index 0000000..0f32f41
--- /dev/null
@@ -0,0 +1,48 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-003
+
+Bug-Reported-by:       Anatol Pomozov <anatol.pomozov@gmail.com>
+Bug-Reference-ID:      <CAOMFOmXy3mT2So5GQ5F-smCVArQuAeBwZ2QKzgCtMeXJoDeYOQ@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00010.html
+
+Bug-Description:
+
+When in callback mode, some readline commands can cause readline to seg
+fault by passing invalid contexts to callback functions.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3/lib/readline/readline.c        2013-10-28 14:58:06.000000000 -0400
+--- lib/readline/readline.c    2014-03-10 14:15:02.000000000 -0400
+***************
+*** 745,749 ****
+  
+    RL_CHECK_SIGNALS ();
+!   if (r == 0)                        /* success! */
+      {
+        _rl_keyseq_chain_dispose ();
+--- 745,750 ----
+  
+    RL_CHECK_SIGNALS ();
+!   /* We only treat values < 0 specially to simulate recursion. */
+!   if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0))        /* success! or failure! */
+      {
+        _rl_keyseq_chain_dispose ();
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 2
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 3
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-004 b/src/patches/bash/bash43-004
new file mode 100644 (file)
index 0000000..010f04a
--- /dev/null
@@ -0,0 +1,47 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-004
+
+Bug-Reported-by:       Daan van Rossum <daan@flash.uchicago.edu>
+Bug-Reference-ID:      <20140307072523.GA14250@flash.uchicago.edu>
+Bug-Reference-URL:     
+
+Bug-Description:
+
+The `.' command in vi mode cannot undo multi-key commands beginning with
+`c', `d', and `y' (command plus motion specifier).
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3/lib/readline/readline.c        2013-10-28 14:58:06.000000000 -0400
+--- lib/readline/readline.c    2014-03-07 15:20:33.000000000 -0500
+***************
+*** 965,969 ****
+    if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
+        key != ANYOTHERKEY &&
+!       rl_key_sequence_length == 1 && /* XXX */
+        _rl_vi_textmod_command (key))
+      _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
+--- 965,969 ----
+    if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
+        key != ANYOTHERKEY &&
+!       _rl_dispatching_keymap == vi_movement_keymap &&
+        _rl_vi_textmod_command (key))
+      _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 3
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 4
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-005 b/src/patches/bash/bash43-005
new file mode 100644 (file)
index 0000000..bcd4069
--- /dev/null
@@ -0,0 +1,63 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-005
+
+Bug-Reported-by:       David Sines <dave.gma@googlemail.com>
+Bug-Reference-ID:      <CAO3BAa_CK_Rgkhdfzs+NJ4KFYdB9qW3pvXQK0xLCi6GMmDU8bw@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00037.html
+
+Bug-Description:
+
+When in Posix mode, bash did not correctly interpret the ANSI-C-style
+$'...' quoting mechanism when performing pattern substitution word
+expansions within double quotes.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3/parse.y        2014-02-11 09:42:10.000000000 -0500
+--- parse.y    2014-03-07 20:57:15.000000000 -0500
+***************
+*** 3399,3403 ****
+           unescaped double-quotes or single-quotes, if any, shall occur." */
+        /* This was changed in Austin Group Interp 221 */
+!       if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'')
+       continue;
+  
+--- 3399,3403 ----
+           unescaped double-quotes or single-quotes, if any, shall occur." */
+        /* This was changed in Austin Group Interp 221 */
+!       if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && dolbrace_state != DOLBRACE_QUOTE2 && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'')
+       continue;
+  
+*** ../bash-4.3/y.tab.c        2014-02-11 10:57:47.000000000 -0500
+--- y.tab.c    2014-03-28 10:41:15.000000000 -0400
+***************
+*** 5711,5715 ****
+           unescaped double-quotes or single-quotes, if any, shall occur." */
+        /* This was changed in Austin Group Interp 221 */
+!       if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'')
+       continue;
+  
+--- 5711,5715 ----
+           unescaped double-quotes or single-quotes, if any, shall occur." */
+        /* This was changed in Austin Group Interp 221 */
+!       if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && dolbrace_state != DOLBRACE_QUOTE2 && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'')
+       continue;
+  
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 4
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 5
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-006 b/src/patches/bash/bash43-006
new file mode 100644 (file)
index 0000000..24ff057
--- /dev/null
@@ -0,0 +1,48 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-006
+
+Bug-Reported-by:       Eduardo A . Bustamante Lopez <dualbus@gmail.com>
+Bug-Reference-ID:      <20140228170013.GA16015@dualbus.me>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-02/msg00091.html
+
+Bug-Description:
+
+A shell that started with job control active but was not interactive left
+the terminal in the wrong process group when exiting, causing its parent
+shell to get a stop signal when it attempted to read from the terminal.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3/jobs.c 2014-01-10 09:05:34.000000000 -0500
+--- jobs.c     2014-03-02 18:05:09.000000000 -0500
+***************
+*** 4375,4379 ****
+  end_job_control ()
+  {
+!   if (interactive_shell)             /* XXX - should it be interactive? */
+      {
+        terminate_stopped_jobs ();
+--- 4375,4379 ----
+  end_job_control ()
+  {
+!   if (interactive_shell || job_control)              /* XXX - should it be just job_control? */
+      {
+        terminate_stopped_jobs ();
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 5
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 6
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-007 b/src/patches/bash/bash43-007
new file mode 100644 (file)
index 0000000..0d62c9e
--- /dev/null
@@ -0,0 +1,50 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-007
+
+Bug-Reported-by:       geir.hauge@gmail.com
+Bug-Reference-ID:      <20140318093650.B181C1C5B0B@gina.itea.ntnu.no>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00095.html
+
+Bug-Description:
+
+Using compound assignments for associative arrays like
+
+assoc=( [x]= [y]=bar )
+
+left the value corresponding to the key `x' NULL.  This caused subsequent
+lookups to interpret it as unset.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3/arrayfunc.c    2013-08-02 16:19:59.000000000 -0400
+--- arrayfunc.c        2014-03-18 11:08:15.000000000 -0400
+***************
+*** 598,601 ****
+--- 598,606 ----
+       {
+         val = expand_assignment_string_to_string (val, 0);
++        if (val == 0)
++          {
++            val = (char *)xmalloc (1);
++            val[0] = '\0';    /* like do_assignment_internal */
++          }
+         free_val = 1;
+       }
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 6
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 7
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-008 b/src/patches/bash/bash43-008
new file mode 100644 (file)
index 0000000..0ae7c95
--- /dev/null
@@ -0,0 +1,188 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-008
+
+Bug-Reported-by:       Stephane Chazelas <stephane.chazelas@gmail.com>
+Bug-Reference-ID:      <20140318135901.GB22158@chaz.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00098.html
+
+Bug-Description:
+
+Some extended glob patterns incorrectly matched filenames with a leading
+dot, regardless of the setting of the `dotglob' option.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3/lib/glob/gmisc.c       2013-10-28 14:45:25.000000000 -0400
+--- lib/glob/gmisc.c   2014-03-19 09:16:08.000000000 -0400
+***************
+*** 211,214 ****
+--- 211,215 ----
+      case '!':
+      case '@':
++     case '?':
+        return (pat[1] == LPAREN);
+      default:
+*** ../bash-4.3/lib/glob/glob.c        2014-01-31 21:43:51.000000000 -0500
+--- lib/glob/glob.c    2014-03-20 09:01:26.000000000 -0400
+***************
+*** 180,202 ****
+       int flags;
+  {
+!   char *pp, *pe, *t;
+!   int n, r;
+  
+    pp = pat + 2;
+!   pe = pp + strlen (pp) - 1; /*(*/
+!   if (*pe != ')')
+!     return 0;
+!   if ((t = strchr (pp, '|')) == 0)   /* easy case first */
+      {
+        *pe = '\0';
+        r = skipname (pp, dname, flags);       /*(*/
+        *pe = ')';
+        return r;
+      }
+    while (t = glob_patscan (pp, pe, '|'))
+      {
+        n = t[-1];
+        t[-1] = '\0';
+        r = skipname (pp, dname, flags);
+        t[-1] = n;
+        if (r == 0)    /* if any pattern says not skip, we don't skip */
+--- 180,215 ----
+       int flags;
+  {
+!   char *pp, *pe, *t, *se;
+!   int n, r, negate;
+  
++   negate = *pat == '!';
+    pp = pat + 2;
+!   se = pp + strlen (pp) - 1;         /* end of string */
+!   pe = glob_patscan (pp, se, 0);     /* end of extglob pattern (( */
+!   /* we should check for invalid extglob pattern here */
+!   /* if pe != se we have more of the pattern at the end of the extglob
+!      pattern. Check the easy case first ( */
+!   if (pe == se && *pe == ')' && (t = strchr (pp, '|')) == 0)
+      {
+        *pe = '\0';
++ #if defined (HANDLE_MULTIBYTE)
++       r = mbskipname (pp, dname, flags);
++ #else
+        r = skipname (pp, dname, flags);       /*(*/
++ #endif
+        *pe = ')';
+        return r;
+      }
++ 
++   /* check every subpattern */
+    while (t = glob_patscan (pp, pe, '|'))
+      {
+        n = t[-1];
+        t[-1] = '\0';
++ #if defined (HANDLE_MULTIBYTE)
++       r = mbskipname (pp, dname, flags);
++ #else
+        r = skipname (pp, dname, flags);
++ #endif
+        t[-1] = n;
+        if (r == 0)    /* if any pattern says not skip, we don't skip */
+***************
+*** 205,219 ****
+      }        /*(*/
+  
+!   if (pp == pe)              /* glob_patscan might find end of pattern */
+      return r;
+  
+!   *pe = '\0';
+! #  if defined (HANDLE_MULTIBYTE)
+!   r = mbskipname (pp, dname, flags); /*(*/
+! #  else
+!   r = skipname (pp, dname, flags);   /*(*/
+! #  endif
+!   *pe = ')';
+!   return r;
+  }
+  #endif
+--- 218,227 ----
+      }        /*(*/
+  
+!   /* glob_patscan might find end of pattern */
+!   if (pp == se)
+      return r;
+  
+!   /* but if it doesn't then we didn't match a leading dot */
+!   return 0;
+  }
+  #endif
+***************
+*** 278,289 ****
+  {
+  #if EXTENDED_GLOB
+!   wchar_t *pp, *pe, *t, n;
+!   int r;
+  
+    pp = pat + 2;
+!   pe = pp + wcslen (pp) - 1; /*(*/
+!   if (*pe != L')')
+!     return 0;
+!   if ((t = wcschr (pp, L'|')) == 0)
+      {
+        *pe = L'\0';
+--- 286,298 ----
+  {
+  #if EXTENDED_GLOB
+!   wchar_t *pp, *pe, *t, n, *se;
+!   int r, negate;
+  
++   negate = *pat == L'!';
+    pp = pat + 2;
+!   se = pp + wcslen (pp) - 1; /*(*/
+!   pe = glob_patscan_wc (pp, se, 0);
+! 
+!   if (pe == se && *pe == ')' && (t = wcschr (pp, L'|')) == 0)
+      {
+        *pe = L'\0';
+***************
+*** 292,295 ****
+--- 301,306 ----
+        return r;
+      }
++ 
++   /* check every subpattern */
+    while (t = glob_patscan_wc (pp, pe, '|'))
+      {
+***************
+*** 306,313 ****
+      return r;
+  
+!   *pe = L'\0';
+!   r = wchkname (pp, dname);  /*(*/
+!   *pe = L')';
+!   return r;
+  #else
+    return (wchkname (pat, dname));
+--- 317,322 ----
+      return r;
+  
+!   /* but if it doesn't then we didn't match a leading dot */
+!   return 0;
+  #else
+    return (wchkname (pat, dname));
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 7
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 8
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-009 b/src/patches/bash/bash43-009
new file mode 100644 (file)
index 0000000..015835c
--- /dev/null
@@ -0,0 +1,64 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-009
+
+Bug-Reported-by:       Matthias Klose <doko@debian.org>
+Bug-Reference-ID:      <53346FC8.6090005@debian.org>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00171.html
+
+Bug-Description:
+
+There is a problem with unsigned sign extension when attempting to reallocate
+the input line when it is fewer than 3 characters long and there has been a
+history expansion.  The sign extension causes the shell to not reallocate the
+line, which results in a segmentation fault when it writes past the end.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/parse.y        2014-02-11 09:42:10.000000000 -0500
+--- parse.y    2014-03-27 16:33:29.000000000 -0400
+***************
+*** 2425,2429 ****
+        if (shell_input_line_terminator != EOF)
+       {
+!        if (shell_input_line_size < SIZE_MAX && shell_input_line_len > shell_input_line_size - 3)
+           shell_input_line = (char *)xrealloc (shell_input_line,
+                                       1 + (shell_input_line_size += 2));
+--- 2425,2429 ----
+        if (shell_input_line_terminator != EOF)
+       {
+!        if (shell_input_line_size < SIZE_MAX-3 && (shell_input_line_len+3 > shell_input_line_size))
+           shell_input_line = (char *)xrealloc (shell_input_line,
+                                       1 + (shell_input_line_size += 2));
+*** ../bash-4.3-patched/y.tab.c        2014-03-28 11:17:06.000000000 -0400
+--- y.tab.c    2014-04-07 11:48:31.000000000 -0400
+***************
+*** 4737,4741 ****
+        if (shell_input_line_terminator != EOF)
+       {
+!        if (shell_input_line_size < SIZE_MAX && shell_input_line_len > shell_input_line_size - 3)
+           shell_input_line = (char *)xrealloc (shell_input_line,
+                                       1 + (shell_input_line_size += 2));
+--- 4737,4741 ----
+        if (shell_input_line_terminator != EOF)
+       {
+!        if (shell_input_line_size < SIZE_MAX-3 && (shell_input_line_len+3 > shell_input_line_size))
+           shell_input_line = (char *)xrealloc (shell_input_line,
+                                       1 + (shell_input_line_size += 2));
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 8
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 9
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-010 b/src/patches/bash/bash43-010
new file mode 100644 (file)
index 0000000..835a96e
--- /dev/null
@@ -0,0 +1,157 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-010
+
+Bug-Reported-by:       Albert Shih <Albert.Shih@obspm.fr>
+Bug-Reference-ID:      Wed, 5 Mar 2014 23:01:40 +0100
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00028.html
+
+Bug-Description:
+
+Patch (apply with `patch -p0'):
+
+This patch changes the behavior of programmable completion to compensate
+for two assumptions made by the bash-completion package.  Bash-4.3 changed
+to dequote the argument to programmable completion only under certain
+circumstances, to make the behavior of compgen more consistent when run
+from the command line -- closer to the behavior when run by a shell function
+run as part of programmable completion.  Bash-completion can pass quoted
+arguments to compgen when the original word to be completed was not quoted,
+expecting programmable completion to dequote the word before attempting
+completion.
+
+This patch fixes two cases:
+
+1.  An empty string that bash-completion passes to compgen as a quoted null
+    string ('').
+
+2.  An unquoted word that bash-completion quotes using single quotes or
+    backslashes before passing it to compgen.
+
+In these cases, since readline did not detect a quote character in the original
+word to be completed, bash-4.3 
+
+*** ../bash-4.3/externs.h      2014-01-02 14:58:20.000000000 -0500
+--- externs.h  2014-03-13 14:42:57.000000000 -0400
+***************
+*** 325,328 ****
+--- 325,329 ----
+  extern char *sh_backslash_quote_for_double_quotes __P((char *));
+  extern int sh_contains_shell_metas __P((char *));
++ extern int sh_contains_quotes __P((char *));
+  
+  /* declarations for functions defined in lib/sh/spell.c */
+*** ../bash-4.3/lib/sh/shquote.c       2013-03-31 21:53:32.000000000 -0400
+--- lib/sh/shquote.c   2014-03-13 14:42:57.000000000 -0400
+***************
+*** 312,313 ****
+--- 312,327 ----
+    return (0);
+  }
++ 
++ int
++ sh_contains_quotes (string)
++      char *string;
++ {
++   char *s;
++ 
++   for (s = string; s && *s; s++)
++     {
++       if (*s == '\'' || *s == '"' || *s == '\\')
++      return 1;
++     }
++   return 0;
++ }
+*** ../bash-4.3/pcomplete.c    2013-08-26 15:23:45.000000000 -0400
+--- pcomplete.c        2014-03-25 17:23:23.000000000 -0400
+***************
+*** 184,187 ****
+--- 184,188 ----
+  COMPSPEC *pcomp_curcs;
+  const char *pcomp_curcmd;
++ const char *pcomp_curtxt;
+  
+  #ifdef DEBUG
+***************
+*** 754,757 ****
+--- 755,784 ----
+         dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character);
+       }
++       /* Intended to solve a mismatched assumption by bash-completion.  If
++       the text to be completed is empty, but bash-completion turns it into
++       a quoted string ('') assuming that this code will dequote it before
++       calling readline, do the dequoting. */
++       else if (iscompgen && iscompleting &&
++             pcomp_curtxt && *pcomp_curtxt == 0 &&
++             text && (*text == '\'' || *text == '"') && text[1] == text[0] && text[2] == 0 && 
++             rl_filename_dequoting_function)
++      dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character);
++       /* Another mismatched assumption by bash-completion.  If compgen is being
++               run as part of bash-completion, and the argument to compgen is not
++               the same as the word originally passed to the programmable completion
++               code, dequote the argument if it has quote characters.  It's an
++               attempt to detect when bash-completion is quoting its filename
++               argument before calling compgen. */
++       /* We could check whether gen_shell_function_matches is in the call
++       stack by checking whether the gen-shell-function-matches tag is in
++       the unwind-protect stack, but there's no function to do that yet.
++       We could simply check whether we're executing in a function by
++       checking variable_context, and may end up doing that. */
++       else if (iscompgen && iscompleting && rl_filename_dequoting_function &&
++             pcomp_curtxt && text &&
++             STREQ (pcomp_curtxt, text) == 0 &&
++             variable_context &&
++             sh_contains_quotes (text))       /* guess */
++      dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character);
+        else
+       dfn = savestring (text);
+***************
+*** 1523,1527 ****
+  {
+    COMPSPEC *cs, *oldcs;
+!   const char *oldcmd;
+    STRINGLIST *ret;
+  
+--- 1550,1554 ----
+  {
+    COMPSPEC *cs, *oldcs;
+!   const char *oldcmd, *oldtxt;
+    STRINGLIST *ret;
+  
+***************
+*** 1546,1552 ****
+--- 1573,1581 ----
+    oldcs = pcomp_curcs;
+    oldcmd = pcomp_curcmd;
++   oldtxt = pcomp_curtxt;
+  
+    pcomp_curcs = cs;
+    pcomp_curcmd = cmd;
++   pcomp_curtxt = word;
+  
+    ret = gen_compspec_completions (cs, cmd, word, start, end, foundp);
+***************
+*** 1554,1557 ****
+--- 1583,1587 ----
+    pcomp_curcs = oldcs;
+    pcomp_curcmd = oldcmd;
++   pcomp_curtxt = oldtxt;
+  
+    /* We need to conditionally handle setting *retryp here */
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 9
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 10
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-011 b/src/patches/bash/bash43-011
new file mode 100644 (file)
index 0000000..cdc1572
--- /dev/null
@@ -0,0 +1,49 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-011
+
+Bug-Reported-by:       Egmont Koblinger <egmont@gmail.com>
+Bug-Reference-ID:      <CAGWcZk+bU5Jo1M+tutGvL-250UBE9DXjpeJVofYJSFcqFEVfMg@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00153.html
+
+Bug-Description:
+
+The signal handling changes to bash and readline (to avoid running any code
+in a signal handler context) cause the cursor to be placed on the wrong
+line of a multi-line command after a ^C interrupts editing.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/lib/readline/display.c 2013-12-27 13:10:56.000000000 -0500
+--- lib/readline/display.c     2014-03-27 11:52:45.000000000 -0400
+***************
+*** 2678,2682 ****
+    if (_rl_echoing_p)
+      {
+!       _rl_move_vert (_rl_vis_botlin);
+        _rl_vis_botlin = 0;
+        fflush (rl_outstream);
+--- 2678,2683 ----
+    if (_rl_echoing_p)
+      {
+!       if (_rl_vis_botlin > 0)        /* minor optimization plus bug fix */
+!      _rl_move_vert (_rl_vis_botlin);
+        _rl_vis_botlin = 0;
+        fflush (rl_outstream);
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 10
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 11
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-012 b/src/patches/bash/bash43-012
new file mode 100644 (file)
index 0000000..176fa15
--- /dev/null
@@ -0,0 +1,43 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-012
+
+Bug-Reported-by:       Eduardo A. Bustamante López<dualbus@gmail.com>
+Bug-Reference-ID:      <5346B54C.4070205@case.edu>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00051.html
+
+Bug-Description:
+
+When a SIGCHLD trap runs a command containing a shell builtin while
+a script is running `wait' to wait for all running children to complete,
+the SIGCHLD trap will not be run once for each child that terminates.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/jobs.c 2014-03-28 10:54:19.000000000 -0400
+--- jobs.c     2014-04-15 08:47:03.000000000 -0400
+***************
+*** 3598,3601 ****
+--- 3598,3602 ----
+    unwind_protect_pointer (the_pipeline);
+    unwind_protect_pointer (subst_assign_varlist);
++   unwind_protect_pointer (this_shell_builtin);
+  
+    /* We have to add the commands this way because they will be run
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 11
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 12
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-013 b/src/patches/bash/bash43-013
new file mode 100644 (file)
index 0000000..8f4006b
--- /dev/null
@@ -0,0 +1,66 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-013
+
+Bug-Reported-by:       <Trond.Endrestol@ximalas.info>
+Bug-Reference-ID:      <alpine.BSF.2.03.1404192114310.1973@enterprise.ximalas.info>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00069.html
+
+Bug-Description:
+
+Using reverse-i-search when horizontal scrolling is enabled does not redisplay
+the entire line containing the successful search results.
+
+Patch (apply with `patch -p0'):
+*** ../bash-4.3-patched/lib/readline/display.c 2014-04-08 18:19:36.000000000 -0400
+--- lib/readline/display.c     2014-04-20 18:32:52.000000000 -0400
+***************
+*** 1638,1642 ****
+       the spot of first difference is before the end of the invisible chars,
+       lendiff needs to be adjusted. */
+!   if (current_line == 0 && !_rl_horizontal_scroll_mode &&
+        current_invis_chars != visible_wrap_offset)
+      {
+--- 1638,1642 ----
+       the spot of first difference is before the end of the invisible chars,
+       lendiff needs to be adjusted. */
+!   if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */
+        current_invis_chars != visible_wrap_offset)
+      {
+***************
+*** 1826,1831 ****
+               _rl_last_c_pos += bytes_to_insert;
+  
+             if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
+!              goto clear_rest_of_line;
+           }
+       }
+--- 1826,1836 ----
+               _rl_last_c_pos += bytes_to_insert;
+  
++            /* XXX - we only want to do this if we are at the end of the line
++               so we move there with _rl_move_cursor_relative */
+             if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
+!              {
+!                _rl_move_cursor_relative (ne-new, new);
+!                goto clear_rest_of_line;
+!              }
+           }
+       }
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 12
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 13
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-014 b/src/patches/bash/bash43-014
new file mode 100644 (file)
index 0000000..f837196
--- /dev/null
@@ -0,0 +1,102 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-014
+
+Bug-Reported-by:       Greg Wooledge <wooledg@eeg.ccf.org>
+Bug-Reference-ID:      <20140418202123.GB7660@eeg.ccf.org>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/help-bash/2014-04/msg00004.html
+
+Bug-Description:
+
+Under certain circumstances, $@ is expanded incorrectly in contexts where
+word splitting is not performed.
+
+Patch (apply with `patch -p0'):
+*** ../bash-4.3-patched/subst.c        2014-01-23 16:26:37.000000000 -0500
+--- subst.c    2014-04-19 15:41:26.000000000 -0400
+***************
+*** 3249,3254 ****
+--- 3249,3256 ----
+      return ((char *)NULL);
+  
++   expand_no_split_dollar_star = 1;
+    w->flags |= W_NOSPLIT2;
+    l = call_expand_word_internal (w, 0, 0, (int *)0, (int *)0);
++   expand_no_split_dollar_star = 0;
+    if (l)
+      {
+***************
+*** 7848,7851 ****
+--- 7850,7857 ----
+        according to POSIX.2, this expands to a list of the positional
+        parameters no matter what IFS is set to. */
++       /* XXX - what to do when in a context where word splitting is not
++       performed? Even when IFS is not the default, posix seems to imply
++       that we behave like unquoted $* ?  Maybe we should use PF_NOSPLIT2
++       here. */
+        temp = string_list_dollar_at (list, (pflags & PF_ASSIGNRHS) ? (quoted|Q_DOUBLE_QUOTES) : quoted);
+  
+***************
+*** 8817,8820 ****
+--- 8823,8827 ----
+      {
+        char *ifs_chars;
++       char *tstring;
+  
+        ifs_chars = (quoted_dollar_at || has_dollar_at) ? ifs_value : (char *)NULL;
+***************
+*** 8831,8834 ****
+--- 8838,8865 ----
+        if (split_on_spaces)
+       list = list_string (istring, " ", 1);   /* XXX quoted == 1? */
++       /* If we have $@ (has_dollar_at != 0) and we are in a context where we
++       don't want to split the result (W_NOSPLIT2), and we are not quoted,
++       we have already separated the arguments with the first character of
++       $IFS.  In this case, we want to return a list with a single word
++       with the separator possibly replaced with a space (it's what other
++       shells seem to do).
++       quoted_dollar_at is internal to this function and is set if we are
++       passed an argument that is unquoted (quoted == 0) but we encounter a
++       double-quoted $@ while expanding it. */
++       else if (has_dollar_at && quoted_dollar_at == 0 && ifs_chars && quoted == 0 && (word->flags & W_NOSPLIT2))
++      {
++        /* Only split and rejoin if we have to */
++        if (*ifs_chars && *ifs_chars != ' ')
++          {
++            list = list_string (istring, *ifs_chars ? ifs_chars : " ", 1);
++            tstring = string_list (list);
++          }
++        else
++          tstring = istring;
++        tword = make_bare_word (tstring);
++        if (tstring != istring)
++          free (tstring);
++        goto set_word_flags;
++      }
+        else if (has_dollar_at && ifs_chars)
+       list = list_string (istring, *ifs_chars ? ifs_chars : " ", 1);
+***************
+*** 8836,8839 ****
+--- 8867,8871 ----
+       {
+         tword = make_bare_word (istring);
++ set_word_flags:
+         if ((quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)) || (quoted_state == WHOLLY_QUOTED))
+           tword->flags |= W_QUOTED;
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 13
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 14
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-015 b/src/patches/bash/bash43-015
new file mode 100644 (file)
index 0000000..9c4e5ea
--- /dev/null
@@ -0,0 +1,58 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-015
+
+Bug-Reported-by:       Clark Wang <dearvoid@gmail.com>
+Bug-Reference-ID:      <CADv8-og2TOSoabXeNVXVGaXN3tEMHnYVq1rwOLe5meaRPSGRig@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00095.html
+
+Bug-Description:
+
+When completing directory names, the directory name is dequoted twice.
+This causes problems for directories with single and double quotes in
+their names.
+
+Patch (apply with `patch -p0'):
+*** ../bash-4.3-patched/bashline.c     2014-02-09 19:56:58.000000000 -0500
+--- bashline.c 2014-04-25 14:57:52.000000000 -0400
+***************
+*** 4168,4174 ****
+  
+    qc = rl_dispatching ? rl_completion_quote_character : 0;  
+!   dfn = bash_dequote_filename ((char *)text, qc);
+    m1 = rl_completion_matches (dfn, rl_filename_completion_function);
+!   free (dfn);
+  
+    if (m1 == 0 || m1[0] == 0)
+--- 4209,4222 ----
+  
+    qc = rl_dispatching ? rl_completion_quote_character : 0;  
+!   /* If rl_completion_found_quote != 0, rl_completion_matches will call the
+!      filename dequoting function, causing the directory name to be dequoted
+!      twice. */
+!   if (rl_dispatching && rl_completion_found_quote == 0)
+!     dfn = bash_dequote_filename ((char *)text, qc);
+!   else
+!     dfn = (char *)text;
+    m1 = rl_completion_matches (dfn, rl_filename_completion_function);
+!   if (dfn != text)
+!     free (dfn);
+  
+    if (m1 == 0 || m1[0] == 0)
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 14
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 15
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-016 b/src/patches/bash/bash43-016
new file mode 100644 (file)
index 0000000..882d593
--- /dev/null
@@ -0,0 +1,132 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-016
+
+Bug-Reported-by:       Pierre Gaston <pierre.gaston@gmail.com>
+Bug-Reference-ID:      <CAPSX3sTCD61k1VQLJ5r-LWzEt+e7Xc-fxXmwn2u8EA5gJJej8Q@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00100.html
+
+Bug-Description:
+
+An extended glob pattern containing a slash (`/') causes the globbing code
+to misinterpret it as a directory separator.
+
+Patch (apply with `patch -p0'):
+*** ../bash-4.3-patched/lib/glob/glob.c        2014-03-28 10:54:23.000000000 -0400
+--- lib/glob/glob.c    2014-05-02 10:24:28.000000000 -0400
+***************
+*** 124,127 ****
+--- 124,129 ----
+  extern wchar_t *glob_patscan_wc __P((wchar_t *, wchar_t *, int));
+  
++ extern char *glob_dirscan __P((char *, int));
++ 
+  /* Compile `glob_loop.c' for single-byte characters. */
+  #define CHAR unsigned char
+***************
+*** 188,191 ****
+--- 190,196 ----
+    pe = glob_patscan (pp, se, 0);     /* end of extglob pattern (( */
+    /* we should check for invalid extglob pattern here */
++   if (pe == 0)
++     return 0;
++ 
+    /* if pe != se we have more of the pattern at the end of the extglob
+       pattern. Check the easy case first ( */
+***************
+*** 1016,1020 ****
+    char **result;
+    unsigned int result_size;
+!   char *directory_name, *filename, *dname;
+    unsigned int directory_len;
+    int free_dirname;                  /* flag */
+--- 1021,1025 ----
+    char **result;
+    unsigned int result_size;
+!   char *directory_name, *filename, *dname, *fn;
+    unsigned int directory_len;
+    int free_dirname;                  /* flag */
+***************
+*** 1032,1035 ****
+--- 1037,1052 ----
+    /* Find the filename.  */
+    filename = strrchr (pathname, '/');
++ #if defined (EXTENDED_GLOB)
++   if (filename && extended_glob)
++     {
++       fn = glob_dirscan (pathname, '/');
++ #if DEBUG_MATCHING
++       if (fn != filename)
++      fprintf (stderr, "glob_filename: glob_dirscan: fn (%s) != filename (%s)\n", fn ? fn : "(null)", filename);
++ #endif
++       filename = fn;
++     }
++ #endif
++ 
+    if (filename == NULL)
+      {
+*** ../bash-4.3-patched/lib/glob/gmisc.c       2014-03-28 10:54:23.000000000 -0400
+--- lib/glob/gmisc.c   2014-05-02 09:35:57.000000000 -0400
+***************
+*** 43,46 ****
+--- 43,48 ----
+  #define WRPAREN         L')'
+  
++ extern char *glob_patscan __P((char *, char *, int));
++ 
+  /* Return 1 of the first character of WSTRING could match the first
+     character of pattern WPAT.  Wide character version. */
+***************
+*** 376,377 ****
+--- 378,410 ----
+    return matlen;
+  }
++ 
++ /* Skip characters in PAT and return the final occurrence of DIRSEP.  This
++    is only called when extended_glob is set, so we have to skip over extglob
++    patterns x(...) */
++ char *
++ glob_dirscan (pat, dirsep)
++      char *pat;
++      int dirsep;
++ {
++   char *p, *d, *pe, *se;
++ 
++   d = pe = se = 0;
++   for (p = pat; p && *p; p++)
++     {
++       if (extglob_pattern_p (p))
++      {
++        if (se == 0)
++          se = p + strlen (p) - 1;
++        pe = glob_patscan (p + 2, se, 0);
++        if (pe == 0)
++          continue;
++        else if (*pe == 0)
++          break;
++        p = pe - 1;   /* will do increment above */
++        continue;
++      }
++       if (*p ==  dirsep)
++      d = p;
++     }
++   return d;
++ }
+
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 15
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 16
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-017 b/src/patches/bash/bash43-017
new file mode 100644 (file)
index 0000000..4016fb9
--- /dev/null
@@ -0,0 +1,51 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-017
+
+Bug-Reported-by:       Dan Douglas <ormaaj@gmail.com>
+Bug-Reference-ID:      <7781746.RhfoTROLxF@smorgbox>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-05/msg00026.html
+
+Bug-Description:
+
+The code that creates local variables should not clear the `invisible'
+attribute when returning an existing local variable.  Let the code that
+actually assigns a value clear it.
+
+Patch (apply with `patch -p0'):
+*** ../bash-4.3-patched/variables.c    2014-02-14 11:55:12.000000000 -0500
+--- variables.c        2014-05-07 10:53:57.000000000 -0400
+***************
+*** 2198,2205 ****
+    old_var = find_variable (name);
+    if (old_var && local_p (old_var) && old_var->context == variable_context)
+!     {
+!       VUNSETATTR (old_var, att_invisible);   /* XXX */
+!       return (old_var);
+!     }
+  
+    was_tmpvar = old_var && tempvar_p (old_var);
+--- 2260,2264 ----
+    old_var = find_variable (name);
+    if (old_var && local_p (old_var) && old_var->context == variable_context)
+!     return (old_var);
+  
+    was_tmpvar = old_var && tempvar_p (old_var);
+
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 16
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 17
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-018 b/src/patches/bash/bash43-018
new file mode 100644 (file)
index 0000000..39499f6
--- /dev/null
@@ -0,0 +1,44 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-018
+
+Bug-Reported-by:       Geir Hauge <geir.hauge@gmail.com>
+Bug-Reference-ID:      <CAO-BiTLOvfPXDypg61jcBausADrxUKJejakV2WTWP26cW0=rgA@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-05/msg00040.html
+
+Bug-Description:
+
+When assigning an array variable using the compound assignment syntax,
+but using `declare' with the rhs of the compound assignment quoted, the
+shell did not mark the variable as visible after successfully performing
+the assignment.
+
+Patch (apply with `patch -p0'):
+*** ../bash-4.3-patched/arrayfunc.c    2014-03-28 10:54:21.000000000 -0400
+--- arrayfunc.c        2014-05-12 11:19:00.000000000 -0400
+***************
+*** 180,183 ****
+--- 180,184 ----
+    FREE (newval);
+  
++   VUNSETATTR (entry, att_invisible); /* no longer invisible */
+    return (entry);
+  }
+
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 17
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 18
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-019 b/src/patches/bash/bash43-019
new file mode 100644 (file)
index 0000000..a93714b
--- /dev/null
@@ -0,0 +1,84 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-019
+
+Bug-Reported-by:       John Lenton
+Bug-Reference-ID:
+Bug-Reference-URL:     https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1317476
+
+Bug-Description:
+
+The -t timeout option to `read' does not work when the -e option is used.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/lib/readline/input.c   2014-01-10 15:07:08.000000000 -0500
+--- lib/readline/input.c       2014-05-22 18:40:59.000000000 -0400
+***************
+*** 535,540 ****
+--- 538,551 ----
+        else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM)
+       return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
++       /* keyboard-generated signals of interest */
+        else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT)
+          RL_CHECK_SIGNALS ();
++       /* non-keyboard-generated signals of interest */
++       else if (_rl_caught_signal == SIGALRM
++ #if defined (SIGVTALRM)
++              || _rl_caught_signal == SIGVTALRM
++ #endif
++            )
++         RL_CHECK_SIGNALS ();
+  
+        if (rl_signal_event_hook)
+*** ../bash-4.3-patched/builtins/read.def      2013-09-02 11:54:00.000000000 -0400
+--- builtins/read.def  2014-05-08 11:43:35.000000000 -0400
+***************
+*** 443,447 ****
+  #if defined (READLINE)
+        if (edit)
+!      add_unwind_protect (reset_attempted_completion_function, (char *)NULL);
+  #endif
+        falarm (tmsec, tmusec);
+--- 443,450 ----
+  #if defined (READLINE)
+        if (edit)
+!      {
+!        add_unwind_protect (reset_attempted_completion_function, (char *)NULL);
+!        add_unwind_protect (bashline_reset_event_hook, (char *)NULL);
+!      }
+  #endif
+        falarm (tmsec, tmusec);
+***************
+*** 1022,1025 ****
+--- 1025,1029 ----
+    old_attempted_completion_function = rl_attempted_completion_function;
+    rl_attempted_completion_function = (rl_completion_func_t *)NULL;
++   bashline_set_event_hook ();
+    if (itext)
+      {
+***************
+*** 1033,1036 ****
+--- 1037,1041 ----
+    rl_attempted_completion_function = old_attempted_completion_function;
+    old_attempted_completion_function = (rl_completion_func_t *)NULL;
++   bashline_reset_event_hook ();
+  
+    if (ret == 0)
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 18
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 19
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-020 b/src/patches/bash/bash43-020
new file mode 100644 (file)
index 0000000..5f533ef
--- /dev/null
@@ -0,0 +1,110 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-020
+
+Bug-Reported-by:       Jared Yanovich <slovichon@gmail.com>
+Bug-Reference-ID:      <20140417073654.GB26875@nightderanger.psc.edu>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00065.html
+
+Bug-Description:
+
+When PS2 contains a command substitution, here-documents entered in an
+interactive shell can sometimes cause a segmentation fault.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/shell.h        2012-12-25 21:11:01.000000000 -0500
+--- shell.h    2014-06-03 09:24:28.000000000 -0400
+***************
+*** 169,173 ****
+    int expand_aliases;
+    int echo_input_at_read;
+!   
+  } sh_parser_state_t;
+  
+--- 169,174 ----
+    int expand_aliases;
+    int echo_input_at_read;
+!   int need_here_doc;
+! 
+  } sh_parser_state_t;
+  
+*** ../bash-4.3-patched/parse.y        2014-05-14 09:16:40.000000000 -0400
+--- parse.y    2014-04-30 09:27:59.000000000 -0400
+***************
+*** 2643,2647 ****
+  
+    r = 0;
+!   while (need_here_doc)
+      {
+        parser_state |= PST_HEREDOC;
+--- 2643,2647 ----
+  
+    r = 0;
+!   while (need_here_doc > 0)
+      {
+        parser_state |= PST_HEREDOC;
+***************
+*** 6076,6079 ****
+--- 6076,6080 ----
+    ps->expand_aliases = expand_aliases;
+    ps->echo_input_at_read = echo_input_at_read;
++   ps->need_here_doc = need_here_doc;
+  
+    ps->token = token;
+***************
+*** 6124,6127 ****
+--- 6125,6129 ----
+    expand_aliases = ps->expand_aliases;
+    echo_input_at_read = ps->echo_input_at_read;
++   need_here_doc = ps->need_here_doc;
+  
+    FREE (token);
+*** ../bash-4.3-patched/y.tab.c        2014-04-07 11:56:12.000000000 -0400
+--- y.tab.c    2014-07-30 09:55:57.000000000 -0400
+***************
+*** 4955,4959 ****
+  
+    r = 0;
+!   while (need_here_doc)
+      {
+        parser_state |= PST_HEREDOC;
+--- 5151,5155 ----
+  
+    r = 0;
+!   while (need_here_doc > 0)
+      {
+        parser_state |= PST_HEREDOC;
+***************
+*** 8388,8391 ****
+--- 8584,8588 ----
+    ps->expand_aliases = expand_aliases;
+    ps->echo_input_at_read = echo_input_at_read;
++   ps->need_here_doc = need_here_doc;
+  
+    ps->token = token;
+***************
+*** 8436,8439 ****
+--- 8633,8637 ----
+    expand_aliases = ps->expand_aliases;
+    echo_input_at_read = ps->echo_input_at_read;
++   need_here_doc = ps->need_here_doc;
+  
+    FREE (token);
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 19
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 20
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-021 b/src/patches/bash/bash43-021
new file mode 100644 (file)
index 0000000..fd1c945
--- /dev/null
@@ -0,0 +1,52 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-021
+
+Bug-Reported-by:       Jared Yanovich <slovichon@gmail.com>
+Bug-Reference-ID:      <20140625225019.GJ17044@nightderanger.psc.edu>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00070.html
+
+Bug-Description:
+
+When the readline `revert-all-at-newline' option is set, pressing newline
+when the current line is one retrieved from history results in a double free
+and a segmentation fault.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/lib/readline/misc.c    2012-09-01 18:03:11.000000000 -0400
+--- lib/readline/misc.c        2014-06-30 13:41:19.000000000 -0400
+***************
+*** 462,465 ****
+--- 462,466 ----
+         /* Set up rl_line_buffer and other variables from history entry */
+         rl_replace_from_history (entry, 0);   /* entry->line is now current */
++        entry->data = 0;                      /* entry->data is now current undo list */
+         /* Undo all changes to this history entry */
+         while (rl_undo_list)
+***************
+*** 469,473 ****
+         FREE (entry->line);
+         entry->line = savestring (rl_line_buffer);
+-        entry->data = 0;
+       }
+        entry = previous_history ();
+--- 470,473 ----
+
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 20
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 21
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-022 b/src/patches/bash/bash43-022
new file mode 100644 (file)
index 0000000..7ce39ec
--- /dev/null
@@ -0,0 +1,56 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-022
+
+Bug-Reported-by:       scorp.dev.null@gmail.com
+Bug-Reference-ID:      <E1WxXw8-0007iE-Bi@pcm14>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00061.html
+
+Bug-Description:
+
+Using nested pipelines within loops with the `lastpipe' option set can result
+in a segmentation fault.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/execute_cmd.c  2014-01-31 10:54:52.000000000 -0500
+--- execute_cmd.c      2014-06-19 08:05:49.000000000 -0400
+***************
+*** 2410,2414 ****
+        lstdin = wait_for (lastpid);
+  #if defined (JOB_CONTROL)
+!       exec_result = job_exit_status (lastpipe_jid);
+  #endif
+        unfreeze_jobs_list ();
+--- 2425,2438 ----
+        lstdin = wait_for (lastpid);
+  #if defined (JOB_CONTROL)
+!       /* If wait_for removes the job from the jobs table, use result of last
+!       command as pipeline's exit status as usual.  The jobs list can get
+!       frozen and unfrozen at inconvenient times if there are multiple pipelines
+!       running simultaneously. */
+!       if (INVALID_JOB (lastpipe_jid) == 0)
+!      exec_result = job_exit_status (lastpipe_jid);
+!       else if (pipefail_opt)
+!      exec_result = exec_result | lstdin;     /* XXX */
+!       /* otherwise we use exec_result */
+!         
+  #endif
+        unfreeze_jobs_list ();
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 21
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 22
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-023 b/src/patches/bash/bash43-023
new file mode 100644 (file)
index 0000000..d1e4e9d
--- /dev/null
@@ -0,0 +1,104 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-023
+
+Bug-Reported-by:       Tim Friske <me@timfriske.com>
+Bug-Reference-ID:      <CAM1RzOcOR9zzC2i+aeES6LtbHNHoOV+0pZEYPrqxv_QAii-RXA@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00056.html
+
+Bug-Description:
+
+Bash does not correctly parse process substitution constructs that contain
+unbalanced parentheses as part of the contained command.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/subst.h        2014-01-11 21:02:27.000000000 -0500
+--- subst.h    2014-07-20 17:25:01.000000000 -0400
+***************
+*** 83,87 ****
+     Start extracting at (SINDEX) as if we had just seen "<(".
+     Make (SINDEX) get the position just after the matching ")". */
+! extern char *extract_process_subst __P((char *, char *, int *));
+  #endif /* PROCESS_SUBSTITUTION */
+  
+--- 83,87 ----
+     Start extracting at (SINDEX) as if we had just seen "<(".
+     Make (SINDEX) get the position just after the matching ")". */
+! extern char *extract_process_subst __P((char *, char *, int *, int));
+  #endif /* PROCESS_SUBSTITUTION */
+  
+*** ../bash-4.3-patched/subst.c        2014-05-15 08:26:45.000000000 -0400
+--- subst.c    2014-07-20 17:26:44.000000000 -0400
+***************
+*** 1193,1202 ****
+     Make (SINDEX) get the position of the matching ")". */ /*))*/
+  char *
+! extract_process_subst (string, starter, sindex)
+       char *string;
+       char *starter;
+       int *sindex;
+  {
+    return (extract_delimited_string (string, sindex, starter, "(", ")", SX_COMMAND));
+  }
+  #endif /* PROCESS_SUBSTITUTION */
+--- 1193,1208 ----
+     Make (SINDEX) get the position of the matching ")". */ /*))*/
+  char *
+! extract_process_subst (string, starter, sindex, xflags)
+       char *string;
+       char *starter;
+       int *sindex;
++      int xflags;
+  {
++ #if 0
+    return (extract_delimited_string (string, sindex, starter, "(", ")", SX_COMMAND));
++ #else
++   xflags |= (no_longjmp_on_fatal_error ? SX_NOLONGJMP : 0);
++   return (xparse_dolparen (string, string+*sindex, sindex, xflags));
++ #endif
+  }
+  #endif /* PROCESS_SUBSTITUTION */
+***************
+*** 1786,1790 ****
+         if (string[si] == '\0')
+           CQ_RETURN(si);
+!        temp = extract_process_subst (string, (c == '<') ? "<(" : ">(", &si);
+         free (temp);          /* no SX_ALLOC here */
+         i = si;
+--- 1792,1796 ----
+         if (string[si] == '\0')
+           CQ_RETURN(si);
+!        temp = extract_process_subst (string, (c == '<') ? "<(" : ">(", &si, 0);
+         free (temp);          /* no SX_ALLOC here */
+         i = si;
+***************
+*** 8250,8254 ****
+             t_index = sindex + 1; /* skip past both '<' and LPAREN */
+  
+!          temp1 = extract_process_subst (string, (c == '<') ? "<(" : ">(", &t_index); /*))*/
+           sindex = t_index;
+  
+--- 8256,8260 ----
+             t_index = sindex + 1; /* skip past both '<' and LPAREN */
+  
+!          temp1 = extract_process_subst (string, (c == '<') ? "<(" : ">(", &t_index, 0); /*))*/
+           sindex = t_index;
+  
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 22
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 23
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-024 b/src/patches/bash/bash43-024
new file mode 100644 (file)
index 0000000..a24b8fb
--- /dev/null
@@ -0,0 +1,54 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-024
+
+Bug-Reported-by:       Corentin Peuvrel <cpeuvrel@pom-monitoring.com>
+Bug-Reference-ID:      <53CE9E5D.6050203@pom-monitoring.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-07/msg00021.html
+
+Bug-Description:
+
+Indirect variable references do not work correctly if the reference
+variable expands to an array reference using a subscript other than 0
+(e.g., foo='bar[1]' ; echo ${!foo}).
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/subst.c        2014-06-03 09:32:44.000000000 -0400
+--- subst.c    2014-07-23 09:58:19.000000000 -0400
+***************
+*** 7375,7379 ****
+  
+    if (want_indir)
+!     tdesc = parameter_brace_expand_indir (name + 1, var_is_special, quoted, quoted_dollar_atp, contains_dollar_at);
+    else
+      tdesc = parameter_brace_expand_word (name, var_is_special, quoted, PF_IGNUNBOUND|(pflags&(PF_NOSPLIT2|PF_ASSIGNRHS)), &ind);
+--- 7445,7455 ----
+  
+    if (want_indir)
+!     {
+!       tdesc = parameter_brace_expand_indir (name + 1, var_is_special, quoted, quoted_dollar_atp, contains_dollar_at);
+!       /* Turn off the W_ARRAYIND flag because there is no way for this function
+!       to return the index we're supposed to be using. */
+!       if (tdesc && tdesc->flags)
+!      tdesc->flags &= ~W_ARRAYIND;
+!     }
+    else
+      tdesc = parameter_brace_expand_word (name, var_is_special, quoted, PF_IGNUNBOUND|(pflags&(PF_NOSPLIT2|PF_ASSIGNRHS)), &ind);
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 23
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 24
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-025 b/src/patches/bash/bash43-025
new file mode 100644 (file)
index 0000000..721aca0
--- /dev/null
@@ -0,0 +1,123 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-025
+
+Bug-Reported-by:       Stephane Chazelas <stephane.chazelas@gmail.com>
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+Under certain circumstances, bash will execute user code while processing the
+environment for exported function definitions.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/builtins/common.h      2013-07-08 16:54:47.000000000 -0400
+--- builtins/common.h  2014-09-12 14:25:47.000000000 -0400
+***************
+*** 34,37 ****
+--- 49,54 ----
+  #define SEVAL_PARSEONLY      0x020
+  #define SEVAL_NOLONGJMP 0x040
++ #define SEVAL_FUNCDEF        0x080           /* only allow function definitions */
++ #define SEVAL_ONECMD 0x100           /* only allow a single command */
+  
+  /* Flags for describe_command, shared between type.def and command.def */
+*** ../bash-4.3-patched/builtins/evalstring.c  2014-02-11 09:42:10.000000000 -0500
+--- builtins/evalstring.c      2014-09-14 14:15:13.000000000 -0400
+***************
+*** 309,312 ****
+--- 313,324 ----
+             struct fd_bitmap *bitmap;
+  
++            if ((flags & SEVAL_FUNCDEF) && command->type != cm_function_def)
++              {
++                internal_warning ("%s: ignoring function definition attempt", from_file);
++                should_jump_to_top_level = 0;
++                last_result = last_command_exit_value = EX_BADUSAGE;
++                break;
++              }
++ 
+             bitmap = new_fd_bitmap (FD_BITMAP_SIZE);
+             begin_unwind_frame ("pe_dispose");
+***************
+*** 369,372 ****
+--- 381,387 ----
+             dispose_fd_bitmap (bitmap);
+             discard_unwind_frame ("pe_dispose");
++ 
++            if (flags & SEVAL_ONECMD)
++              break;
+           }
+       }
+*** ../bash-4.3-patched/variables.c    2014-05-15 08:26:50.000000000 -0400
+--- variables.c        2014-09-14 14:23:35.000000000 -0400
+***************
+*** 359,369 ****
+         strcpy (temp_string + char_index + 1, string);
+  
+!        if (posixly_correct == 0 || legal_identifier (name))
+!          parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST);
+! 
+!        /* Ancient backwards compatibility.  Old versions of bash exported
+!           functions like name()=() {...} */
+!        if (name[char_index - 1] == ')' && name[char_index - 2] == '(')
+!          name[char_index - 2] = '\0';
+  
+         if (temp_var = find_function (name))
+--- 364,372 ----
+         strcpy (temp_string + char_index + 1, string);
+  
+!        /* Don't import function names that are invalid identifiers from the
+!           environment, though we still allow them to be defined as shell
+!           variables. */
+!        if (legal_identifier (name))
+!          parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD);
+  
+         if (temp_var = find_function (name))
+***************
+*** 382,389 ****
+             report_error (_("error importing function definition for `%s'"), name);
+           }
+- 
+-        /* ( */
+-        if (name[char_index - 1] == ')' && name[char_index - 2] == '\0')
+-          name[char_index - 2] = '(';         /* ) */
+       }
+  #if defined (ARRAY_VARS)
+--- 385,388 ----
+*** ../bash-4.3-patched/subst.c        2014-08-11 11:16:35.000000000 -0400
+--- subst.c    2014-09-12 15:31:04.000000000 -0400
+***************
+*** 8048,8052 ****
+         goto return0;
+       }
+!       else if (var = find_variable_last_nameref (temp1))
+       {
+         temp = nameref_cell (var);
+--- 8118,8124 ----
+         goto return0;
+       }
+!       else if (var && (invisible_p (var) || var_isset (var) == 0))
+!      temp = (char *)NULL;
+!       else if ((var = find_variable_last_nameref (temp1)) && var_isset (var) && invisible_p (var) == 0)
+       {
+         temp = nameref_cell (var);
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 24
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 25
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-026 b/src/patches/bash/bash43-026
new file mode 100644 (file)
index 0000000..e48141b
--- /dev/null
@@ -0,0 +1,60 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-026
+
+Bug-Reported-by:       Tavis Ormandy <taviso () cmpxchg8b com>
+Bug-Reference-ID:
+Bug-Reference-URL:     http://twitter.com/taviso/statuses/514887394294652929
+
+Bug-Description:
+
+Under certain circumstances, bash can incorrectly save a lookahead character and
+return it on a subsequent call, even when reading a new line.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3.25/parse.y     2014-07-30 10:14:31.000000000 -0400
+--- parse.y    2014-09-25 20:20:21.000000000 -0400
+***************
+*** 2954,2957 ****
+--- 2954,2959 ----
+    word_desc_to_read = (WORD_DESC *)NULL;
+  
++   eol_ungetc_lookahead = 0;
++ 
+    current_token = '\n';              /* XXX */
+    last_read_token = '\n';
+*** ../bash-4.3.25/y.tab.c     2014-07-30 10:14:32.000000000 -0400
+--- y.tab.c    2014-09-25 20:21:48.000000000 -0400
+***************
+*** 5266,5269 ****
+--- 5266,5271 ----
+    word_desc_to_read = (WORD_DESC *)NULL;
+  
++   eol_ungetc_lookahead = 0;
++ 
+    current_token = '\n';              /* XXX */
+    last_read_token = '\n';
+***************
+*** 8540,8542 ****
+  }
+  #endif /* HANDLE_MULTIBYTE */
+- 
+--- 8542,8543 ----
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 25
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 26
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-027 b/src/patches/bash/bash43-027
new file mode 100644 (file)
index 0000000..ef48bd8
--- /dev/null
@@ -0,0 +1,221 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-027
+
+Bug-Reported-by:       Florian Weimer <fweimer@redhat.com>
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+This patch changes the encoding bash uses for exported functions to avoid
+clashes with shell variables and to avoid depending only on an environment
+variable's contents to determine whether or not to interpret it as a shell
+function.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3.26/variables.c 2014-09-25 23:02:18.000000000 -0400
+--- variables.c        2014-09-27 20:52:04.000000000 -0400
+***************
+*** 84,87 ****
+--- 84,92 ----
+  #define ifsname(s)   ((s)[0] == 'I' && (s)[1] == 'F' && (s)[2] == 'S' && (s)[3] == '\0')
+  
++ #define BASHFUNC_PREFIX              "BASH_FUNC_"
++ #define BASHFUNC_PREFLEN     10      /* == strlen(BASHFUNC_PREFIX */
++ #define BASHFUNC_SUFFIX              "%%"
++ #define BASHFUNC_SUFFLEN     2       /* == strlen(BASHFUNC_SUFFIX) */
++ 
+  extern char **environ;
+  
+***************
+*** 280,284 ****
+  static void dispose_temporary_env __P((sh_free_func_t *));     
+  
+! static inline char *mk_env_string __P((const char *, const char *));
+  static char **make_env_array_from_var_list __P((SHELL_VAR **));
+  static char **make_var_export_array __P((VAR_CONTEXT *));
+--- 285,289 ----
+  static void dispose_temporary_env __P((sh_free_func_t *));     
+  
+! static inline char *mk_env_string __P((const char *, const char *, int));
+  static char **make_env_array_from_var_list __P((SHELL_VAR **));
+  static char **make_var_export_array __P((VAR_CONTEXT *));
+***************
+*** 350,369 ****
+        /* If exported function, define it now.  Don't import functions from
+        the environment in privileged mode. */
+!       if (privmode == 0 && read_but_dont_execute == 0 && STREQN ("() {", string, 4))
+       {
+         string_length = strlen (string);
+!        temp_string = (char *)xmalloc (3 + string_length + char_index);
+  
+!        strcpy (temp_string, name);
+!        temp_string[char_index] = ' ';
+!        strcpy (temp_string + char_index + 1, string);
+  
+         /* Don't import function names that are invalid identifiers from the
+            environment, though we still allow them to be defined as shell
+            variables. */
+!        if (legal_identifier (name))
+!          parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD);
+  
+!        if (temp_var = find_function (name))
+           {
+             VSETATTR (temp_var, (att_exported|att_imported));
+--- 355,385 ----
+        /* If exported function, define it now.  Don't import functions from
+        the environment in privileged mode. */
+!       if (privmode == 0 && read_but_dont_execute == 0 && 
+!           STREQN (BASHFUNC_PREFIX, name, BASHFUNC_PREFLEN) &&
+!           STREQ (BASHFUNC_SUFFIX, name + char_index - BASHFUNC_SUFFLEN) &&
+!        STREQN ("() {", string, 4))
+       {
++        size_t namelen;
++        char *tname;          /* desired imported function name */
++ 
++        namelen = char_index - BASHFUNC_PREFLEN - BASHFUNC_SUFFLEN;
++ 
++        tname = name + BASHFUNC_PREFLEN;      /* start of func name */
++        tname[namelen] = '\0';                /* now tname == func name */
++ 
+         string_length = strlen (string);
+!        temp_string = (char *)xmalloc (namelen + string_length + 2);
+  
+!        memcpy (temp_string, tname, namelen);
+!        temp_string[namelen] = ' ';
+!        memcpy (temp_string + namelen + 1, string, string_length + 1);
+  
+         /* Don't import function names that are invalid identifiers from the
+            environment, though we still allow them to be defined as shell
+            variables. */
+!        if (absolute_program (tname) == 0 && (posixly_correct == 0 || legal_identifier (tname)))
+!          parse_and_execute (temp_string, tname, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD);
+  
+!        if (temp_var = find_function (tname))
+           {
+             VSETATTR (temp_var, (att_exported|att_imported));
+***************
+*** 378,383 ****
+               }
+             last_command_exit_value = 1;
+!            report_error (_("error importing function definition for `%s'"), name);
+           }
+       }
+  #if defined (ARRAY_VARS)
+--- 394,402 ----
+               }
+             last_command_exit_value = 1;
+!            report_error (_("error importing function definition for `%s'"), tname);
+           }
++ 
++        /* Restore original suffix */
++        tname[namelen] = BASHFUNC_SUFFIX[0];
+       }
+  #if defined (ARRAY_VARS)
+***************
+*** 2955,2959 ****
+  
+    INVALIDATE_EXPORTSTR (var);
+!   var->exportstr = mk_env_string (name, value);
+  
+    array_needs_making = 1;
+--- 2974,2978 ----
+  
+    INVALIDATE_EXPORTSTR (var);
+!   var->exportstr = mk_env_string (name, value, 0);
+  
+    array_needs_making = 1;
+***************
+*** 3853,3871 ****
+  
+  static inline char *
+! mk_env_string (name, value)
+       const char *name, *value;
+  {
+!   int name_len, value_len;
+!   char       *p;
+  
+    name_len = strlen (name);
+    value_len = STRLEN (value);
+!   p = (char *)xmalloc (2 + name_len + value_len);
+!   strcpy (p, name);
+!   p[name_len] = '=';
+    if (value && *value)
+!     strcpy (p + name_len + 1, value);
+    else
+!     p[name_len + 1] = '\0';
+    return (p);
+  }
+--- 3872,3911 ----
+  
+  static inline char *
+! mk_env_string (name, value, isfunc)
+       const char *name, *value;
++      int isfunc;
+  {
+!   size_t name_len, value_len;
+!   char       *p, *q;
+  
+    name_len = strlen (name);
+    value_len = STRLEN (value);
+! 
+!   /* If we are exporting a shell function, construct the encoded function
+!      name. */
+!   if (isfunc && value)
+!     {
+!       p = (char *)xmalloc (BASHFUNC_PREFLEN + name_len + BASHFUNC_SUFFLEN + value_len + 2);
+!       q = p;
+!       memcpy (q, BASHFUNC_PREFIX, BASHFUNC_PREFLEN);
+!       q += BASHFUNC_PREFLEN;
+!       memcpy (q, name, name_len);
+!       q += name_len;
+!       memcpy (q, BASHFUNC_SUFFIX, BASHFUNC_SUFFLEN);
+!       q += BASHFUNC_SUFFLEN;
+!     }
+!   else
+!     {
+!       p = (char *)xmalloc (2 + name_len + value_len);
+!       memcpy (p, name, name_len);
+!       q = p + name_len;
+!     }
+! 
+!   q[0] = '=';
+    if (value && *value)
+!     memcpy (q + 1, value, value_len + 1);
+    else
+!     q[1] = '\0';
+! 
+    return (p);
+  }
+***************
+*** 3953,3957 ****
+            using the cached exportstr... */
+         list[list_index] = USE_EXPORTSTR ? savestring (value)
+!                                         : mk_env_string (var->name, value);
+  
+         if (USE_EXPORTSTR == 0)
+--- 3993,3997 ----
+            using the cached exportstr... */
+         list[list_index] = USE_EXPORTSTR ? savestring (value)
+!                                         : mk_env_string (var->name, value, function_p (var));
+  
+         if (USE_EXPORTSTR == 0)
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 26
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 27
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-028 b/src/patches/bash/bash43-028
new file mode 100644 (file)
index 0000000..7448cf8
--- /dev/null
@@ -0,0 +1,2265 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-028
+
+Bug-Reported-by:       Florian Weimer <fweimer@redhat.com>
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+There are two local buffer overflows in parse.y that can cause the shell
+to dump core when given many here-documents attached to a single command
+or many nested loops.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3-patched/parse.y        2014-09-25 23:02:35.000000000 -0400
+--- parse.y    2014-09-29 16:47:03.000000000 -0400
+***************
+*** 169,172 ****
+--- 169,175 ----
+  static int reserved_word_acceptable __P((int));
+  static int yylex __P((void));
++ 
++ static void push_heredoc __P((REDIRECT *));
++ static char *mk_alexpansion __P((char *));
+  static int alias_expand_token __P((char *));
+  static int time_command_acceptable __P((void));
+***************
+*** 266,270 ****
+  /* Variables to manage the task of reading here documents, because we need to
+     defer the reading until after a complete command has been collected. */
+! static REDIRECT *redir_stack[10];
+  int need_here_doc;
+  
+--- 269,275 ----
+  /* Variables to manage the task of reading here documents, because we need to
+     defer the reading until after a complete command has been collected. */
+! #define HEREDOC_MAX 16
+! 
+! static REDIRECT *redir_stack[HEREDOC_MAX];
+  int need_here_doc;
+  
+***************
+*** 308,312 ****
+     index is decremented after a case, select, or for command is parsed. */
+  #define MAX_CASE_NEST        128
+! static int word_lineno[MAX_CASE_NEST];
+  static int word_top = -1;
+  
+--- 313,317 ----
+     index is decremented after a case, select, or for command is parsed. */
+  #define MAX_CASE_NEST        128
+! static int word_lineno[MAX_CASE_NEST+1];
+  static int word_top = -1;
+  
+***************
+*** 521,525 ****
+                         redir.filename = $2;
+                         $$ = make_redirection (source, r_reading_until, redir, 0);
+!                        redir_stack[need_here_doc++] = $$;
+                       }
+       |       NUMBER LESS_LESS WORD
+--- 526,530 ----
+                         redir.filename = $2;
+                         $$ = make_redirection (source, r_reading_until, redir, 0);
+!                        push_heredoc ($$);
+                       }
+       |       NUMBER LESS_LESS WORD
+***************
+*** 528,532 ****
+                         redir.filename = $3;
+                         $$ = make_redirection (source, r_reading_until, redir, 0);
+!                        redir_stack[need_here_doc++] = $$;
+                       }
+       |       REDIR_WORD LESS_LESS WORD
+--- 533,537 ----
+                         redir.filename = $3;
+                         $$ = make_redirection (source, r_reading_until, redir, 0);
+!                        push_heredoc ($$);
+                       }
+       |       REDIR_WORD LESS_LESS WORD
+***************
+*** 535,539 ****
+                         redir.filename = $3;
+                         $$ = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
+!                        redir_stack[need_here_doc++] = $$;
+                       }
+       |       LESS_LESS_MINUS WORD
+--- 540,544 ----
+                         redir.filename = $3;
+                         $$ = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
+!                        push_heredoc ($$);
+                       }
+       |       LESS_LESS_MINUS WORD
+***************
+*** 542,546 ****
+                         redir.filename = $2;
+                         $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
+!                        redir_stack[need_here_doc++] = $$;
+                       }
+       |       NUMBER LESS_LESS_MINUS WORD
+--- 547,551 ----
+                         redir.filename = $2;
+                         $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
+!                        push_heredoc ($$);
+                       }
+       |       NUMBER LESS_LESS_MINUS WORD
+***************
+*** 549,553 ****
+                         redir.filename = $3;
+                         $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
+!                        redir_stack[need_here_doc++] = $$;
+                       }
+       |       REDIR_WORD  LESS_LESS_MINUS WORD
+--- 554,558 ----
+                         redir.filename = $3;
+                         $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
+!                        push_heredoc ($$);
+                       }
+       |       REDIR_WORD  LESS_LESS_MINUS WORD
+***************
+*** 556,560 ****
+                         redir.filename = $3;
+                         $$ = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
+!                        redir_stack[need_here_doc++] = $$;
+                       }
+       |       LESS_LESS_LESS WORD
+--- 561,565 ----
+                         redir.filename = $3;
+                         $$ = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
+!                        push_heredoc ($$);
+                       }
+       |       LESS_LESS_LESS WORD
+***************
+*** 2637,2640 ****
+--- 2642,2660 ----
+  static int esacs_needed_count;
+  
++ static void
++ push_heredoc (r)
++      REDIRECT *r;
++ {
++   if (need_here_doc >= HEREDOC_MAX)
++     {
++       last_command_exit_value = EX_BADUSAGE;
++       need_here_doc = 0;
++       report_syntax_error (_("maximum here-document count exceeded"));
++       reset_parser ();
++       exit_shell (last_command_exit_value);
++     }
++   redir_stack[need_here_doc++] = r;
++ }
++ 
+  void
+  gather_here_documents ()
+*** ../bash-4.3.27/y.tab.c     2014-10-01 11:38:24.000000000 -0400
+--- y.tab.c    2014-10-01 12:46:11.000000000 -0400
+***************
+*** 169,173 ****
+  
+  /* Copy the first part of user declarations.  */
+! #line 21 "/usr/homes/chet/src/bash/src/parse.y"
+  
+  #include "config.h"
+--- 169,173 ----
+  
+  /* Copy the first part of user declarations.  */
+! #line 21 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+  
+  #include "config.h"
+***************
+*** 320,323 ****
+--- 320,326 ----
+  static int reserved_word_acceptable __P((int));
+  static int yylex __P((void));
++ 
++ static void push_heredoc __P((REDIRECT *));
++ static char *mk_alexpansion __P((char *));
+  static int alias_expand_token __P((char *));
+  static int time_command_acceptable __P((void));
+***************
+*** 417,421 ****
+  /* Variables to manage the task of reading here documents, because we need to
+     defer the reading until after a complete command has been collected. */
+! static REDIRECT *redir_stack[10];
+  int need_here_doc;
+  
+--- 420,426 ----
+  /* Variables to manage the task of reading here documents, because we need to
+     defer the reading until after a complete command has been collected. */
+! #define HEREDOC_MAX 16
+! 
+! static REDIRECT *redir_stack[HEREDOC_MAX];
+  int need_here_doc;
+  
+***************
+*** 459,463 ****
+     index is decremented after a case, select, or for command is parsed. */
+  #define MAX_CASE_NEST        128
+! static int word_lineno[MAX_CASE_NEST];
+  static int word_top = -1;
+  
+--- 464,468 ----
+     index is decremented after a case, select, or for command is parsed. */
+  #define MAX_CASE_NEST        128
+! static int word_lineno[MAX_CASE_NEST+1];
+  static int word_top = -1;
+  
+***************
+*** 493,497 ****
+  #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+  typedef union YYSTYPE
+! #line 324 "/usr/homes/chet/src/bash/src/parse.y"
+  {
+    WORD_DESC *word;           /* the word that we read. */
+--- 498,502 ----
+  #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+  typedef union YYSTYPE
+! #line 329 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+  {
+    WORD_DESC *word;           /* the word that we read. */
+***************
+*** 504,508 ****
+  }
+  /* Line 193 of yacc.c.  */
+! #line 507 "y.tab.c"
+       YYSTYPE;
+  # define yystype YYSTYPE /* obsolescent; will be withdrawn */
+--- 509,513 ----
+  }
+  /* Line 193 of yacc.c.  */
+! #line 512 "y.tab.c"
+       YYSTYPE;
+  # define yystype YYSTYPE /* obsolescent; will be withdrawn */
+***************
+*** 517,521 ****
+  
+  /* Line 216 of yacc.c.  */
+! #line 520 "y.tab.c"
+  
+  #ifdef short
+--- 522,526 ----
+  
+  /* Line 216 of yacc.c.  */
+! #line 525 "y.tab.c"
+  
+  #ifdef short
+***************
+*** 887,907 ****
+  static const yytype_uint16 yyrline[] =
+  {
+!        0,   377,   377,   388,   397,   412,   422,   424,   428,   434,
+!      440,   446,   452,   458,   464,   470,   476,   482,   488,   494,
+!      500,   506,   512,   518,   525,   532,   539,   546,   553,   560,
+!      566,   572,   578,   584,   590,   596,   602,   608,   614,   620,
+!      626,   632,   638,   644,   650,   656,   662,   668,   674,   680,
+!      686,   692,   700,   702,   704,   708,   712,   723,   725,   729,
+!      731,   733,   749,   751,   755,   757,   759,   761,   763,   765,
+!      767,   769,   771,   773,   775,   779,   784,   789,   794,   799,
+!      804,   809,   814,   821,   826,   831,   836,   843,   848,   853,
+!      858,   863,   868,   875,   880,   885,   892,   895,   898,   902,
+!      904,   935,   942,   947,   964,   969,   986,   993,   995,   997,
+!     1002,  1006,  1010,  1014,  1016,  1018,  1022,  1023,  1027,  1029,
+!     1031,  1033,  1037,  1039,  1041,  1043,  1045,  1047,  1051,  1053,
+!     1062,  1070,  1071,  1077,  1078,  1085,  1089,  1091,  1093,  1100,
+!     1102,  1104,  1108,  1109,  1112,  1114,  1116,  1120,  1121,  1130,
+!     1143,  1159,  1174,  1176,  1178,  1185,  1188,  1192,  1194,  1200,
+!     1206,  1223,  1243,  1245,  1268,  1272,  1274,  1276
+  };
+  #endif
+--- 892,912 ----
+  static const yytype_uint16 yyrline[] =
+  {
+!        0,   382,   382,   393,   402,   417,   427,   429,   433,   439,
+!      445,   451,   457,   463,   469,   475,   481,   487,   493,   499,
+!      505,   511,   517,   523,   530,   537,   544,   551,   558,   565,
+!      571,   577,   583,   589,   595,   601,   607,   613,   619,   625,
+!      631,   637,   643,   649,   655,   661,   667,   673,   679,   685,
+!      691,   697,   705,   707,   709,   713,   717,   728,   730,   734,
+!      736,   738,   754,   756,   760,   762,   764,   766,   768,   770,
+!      772,   774,   776,   778,   780,   784,   789,   794,   799,   804,
+!      809,   814,   819,   826,   831,   836,   841,   848,   853,   858,
+!      863,   868,   873,   880,   885,   890,   897,   900,   903,   907,
+!      909,   940,   947,   952,   969,   974,   991,   998,  1000,  1002,
+!     1007,  1011,  1015,  1019,  1021,  1023,  1027,  1028,  1032,  1034,
+!     1036,  1038,  1042,  1044,  1046,  1048,  1050,  1052,  1056,  1058,
+!     1067,  1075,  1076,  1082,  1083,  1090,  1094,  1096,  1098,  1105,
+!     1107,  1109,  1113,  1114,  1117,  1119,  1121,  1125,  1126,  1135,
+!     1148,  1164,  1179,  1181,  1183,  1190,  1193,  1197,  1199,  1205,
+!     1211,  1228,  1248,  1250,  1273,  1277,  1279,  1281
+  };
+  #endif
+***************
+*** 2094,2098 ****
+      {
+          case 2:
+! #line 378 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         /* Case of regular command.  Discard the error
+--- 2099,2103 ----
+      {
+          case 2:
+! #line 383 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Case of regular command.  Discard the error
+***************
+*** 2108,2112 ****
+  
+    case 3:
+! #line 389 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         /* Case of regular command, but not a very
+--- 2113,2117 ----
+  
+    case 3:
+! #line 394 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Case of regular command, but not a very
+***************
+*** 2120,2124 ****
+  
+    case 4:
+! #line 398 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         /* Error during parsing.  Return NULL command. */
+--- 2125,2129 ----
+  
+    case 4:
+! #line 403 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Error during parsing.  Return NULL command. */
+***************
+*** 2138,2142 ****
+  
+    case 5:
+! #line 413 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         /* Case of EOF seen by itself.  Do ignoreeof or
+--- 2143,2147 ----
+  
+    case 5:
+! #line 418 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Case of EOF seen by itself.  Do ignoreeof or
+***************
+*** 2149,2163 ****
+  
+    case 6:
+! #line 423 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
+      break;
+  
+    case 7:
+! #line 425 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(2) - (2)].word), (yyvsp[(1) - (2)].word_list)); }
+      break;
+  
+    case 8:
+! #line 429 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 1;
+--- 2154,2168 ----
+  
+    case 6:
+! #line 428 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
+      break;
+  
+    case 7:
+! #line 430 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(2) - (2)].word), (yyvsp[(1) - (2)].word_list)); }
+      break;
+  
+    case 8:
+! #line 434 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2168,2172 ****
+  
+    case 9:
+! #line 435 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 0;
+--- 2173,2177 ----
+  
+    case 9:
+! #line 440 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2177,2181 ****
+  
+    case 10:
+! #line 441 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2182,2186 ----
+  
+    case 10:
+! #line 446 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2186,2190 ****
+  
+    case 11:
+! #line 447 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2191,2195 ----
+  
+    case 11:
+! #line 452 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2195,2199 ****
+  
+    case 12:
+! #line 453 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2200,2204 ----
+  
+    case 12:
+! #line 458 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2204,2208 ****
+  
+    case 13:
+! #line 459 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2209,2213 ----
+  
+    case 13:
+! #line 464 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2213,2217 ****
+  
+    case 14:
+! #line 465 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 1;
+--- 2218,2222 ----
+  
+    case 14:
+! #line 470 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2222,2226 ****
+  
+    case 15:
+! #line 471 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2227,2231 ----
+  
+    case 15:
+! #line 476 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2231,2235 ****
+  
+    case 16:
+! #line 477 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2236,2240 ----
+  
+    case 16:
+! #line 482 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2240,2244 ****
+  
+    case 17:
+! #line 483 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 1;
+--- 2245,2249 ----
+  
+    case 17:
+! #line 488 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2249,2253 ****
+  
+    case 18:
+! #line 489 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2254,2258 ----
+  
+    case 18:
+! #line 494 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2258,2262 ****
+  
+    case 19:
+! #line 495 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2263,2267 ----
+  
+    case 19:
+! #line 500 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2267,2271 ****
+  
+    case 20:
+! #line 501 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 0;
+--- 2272,2276 ----
+  
+    case 20:
+! #line 506 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2276,2280 ****
+  
+    case 21:
+! #line 507 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2281,2285 ----
+  
+    case 21:
+! #line 512 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2285,2289 ****
+  
+    case 22:
+! #line 513 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2290,2294 ----
+  
+    case 22:
+! #line 518 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2294,2358 ****
+  
+    case 23:
+! #line 519 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 0;
+                         redir.filename = (yyvsp[(2) - (2)].word);
+                         (yyval.redirect) = make_redirection (source, r_reading_until, redir, 0);
+!                        redir_stack[need_here_doc++] = (yyval.redirect);
+                       }
+      break;
+  
+    case 24:
+! #line 526 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+                         redir.filename = (yyvsp[(3) - (3)].word);
+                         (yyval.redirect) = make_redirection (source, r_reading_until, redir, 0);
+!                        redir_stack[need_here_doc++] = (yyval.redirect);
+                       }
+      break;
+  
+    case 25:
+! #line 533 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+                         redir.filename = (yyvsp[(3) - (3)].word);
+                         (yyval.redirect) = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
+!                        redir_stack[need_here_doc++] = (yyval.redirect);
+                       }
+      break;
+  
+    case 26:
+! #line 540 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 0;
+                         redir.filename = (yyvsp[(2) - (2)].word);
+                         (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, 0);
+!                        redir_stack[need_here_doc++] = (yyval.redirect);
+                       }
+      break;
+  
+    case 27:
+! #line 547 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+                         redir.filename = (yyvsp[(3) - (3)].word);
+                         (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, 0);
+!                        redir_stack[need_here_doc++] = (yyval.redirect);
+                       }
+      break;
+  
+    case 28:
+! #line 554 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+                         redir.filename = (yyvsp[(3) - (3)].word);
+                         (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
+!                        redir_stack[need_here_doc++] = (yyval.redirect);
+                       }
+      break;
+  
+    case 29:
+! #line 561 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 0;
+--- 2299,2363 ----
+  
+    case 23:
+! #line 524 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+                         redir.filename = (yyvsp[(2) - (2)].word);
+                         (yyval.redirect) = make_redirection (source, r_reading_until, redir, 0);
+!                        push_heredoc ((yyval.redirect));
+                       }
+      break;
+  
+    case 24:
+! #line 531 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+                         redir.filename = (yyvsp[(3) - (3)].word);
+                         (yyval.redirect) = make_redirection (source, r_reading_until, redir, 0);
+!                        push_heredoc ((yyval.redirect));
+                       }
+      break;
+  
+    case 25:
+! #line 538 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+                         redir.filename = (yyvsp[(3) - (3)].word);
+                         (yyval.redirect) = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
+!                        push_heredoc ((yyval.redirect));
+                       }
+      break;
+  
+    case 26:
+! #line 545 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+                         redir.filename = (yyvsp[(2) - (2)].word);
+                         (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, 0);
+!                        push_heredoc ((yyval.redirect));
+                       }
+      break;
+  
+    case 27:
+! #line 552 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+                         redir.filename = (yyvsp[(3) - (3)].word);
+                         (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, 0);
+!                        push_heredoc ((yyval.redirect));
+                       }
+      break;
+  
+    case 28:
+! #line 559 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+                         redir.filename = (yyvsp[(3) - (3)].word);
+                         (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
+!                        push_heredoc ((yyval.redirect));
+                       }
+      break;
+  
+    case 29:
+! #line 566 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2363,2367 ****
+  
+    case 30:
+! #line 567 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2368,2372 ----
+  
+    case 30:
+! #line 572 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2372,2376 ****
+  
+    case 31:
+! #line 573 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2377,2381 ----
+  
+    case 31:
+! #line 578 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2381,2385 ****
+  
+    case 32:
+! #line 579 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 0;
+--- 2386,2390 ----
+  
+    case 32:
+! #line 584 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2390,2394 ****
+  
+    case 33:
+! #line 585 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2395,2399 ----
+  
+    case 33:
+! #line 590 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2399,2403 ****
+  
+    case 34:
+! #line 591 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2404,2408 ----
+  
+    case 34:
+! #line 596 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2408,2412 ****
+  
+    case 35:
+! #line 597 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 1;
+--- 2413,2417 ----
+  
+    case 35:
+! #line 602 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2417,2421 ****
+  
+    case 36:
+! #line 603 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2422,2426 ----
+  
+    case 36:
+! #line 608 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2426,2430 ****
+  
+    case 37:
+! #line 609 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2431,2435 ----
+  
+    case 37:
+! #line 614 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2435,2439 ****
+  
+    case 38:
+! #line 615 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 0;
+--- 2440,2444 ----
+  
+    case 38:
+! #line 620 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2444,2448 ****
+  
+    case 39:
+! #line 621 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2449,2453 ----
+  
+    case 39:
+! #line 626 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2453,2457 ****
+  
+    case 40:
+! #line 627 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2458,2462 ----
+  
+    case 40:
+! #line 632 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2462,2466 ****
+  
+    case 41:
+! #line 633 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 1;
+--- 2467,2471 ----
+  
+    case 41:
+! #line 638 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2471,2475 ****
+  
+    case 42:
+! #line 639 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2476,2480 ----
+  
+    case 42:
+! #line 644 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2480,2484 ****
+  
+    case 43:
+! #line 645 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2485,2489 ----
+  
+    case 43:
+! #line 650 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2489,2493 ****
+  
+    case 44:
+! #line 651 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 1;
+--- 2494,2498 ----
+  
+    case 44:
+! #line 656 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2498,2502 ****
+  
+    case 45:
+! #line 657 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2503,2507 ----
+  
+    case 45:
+! #line 662 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2507,2511 ****
+  
+    case 46:
+! #line 663 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2512,2516 ----
+  
+    case 46:
+! #line 668 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2516,2520 ****
+  
+    case 47:
+! #line 669 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 0;
+--- 2521,2525 ----
+  
+    case 47:
+! #line 674 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2525,2529 ****
+  
+    case 48:
+! #line 675 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2530,2534 ----
+  
+    case 48:
+! #line 680 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2534,2538 ****
+  
+    case 49:
+! #line 681 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2539,2543 ----
+  
+    case 49:
+! #line 686 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2543,2547 ****
+  
+    case 50:
+! #line 687 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 1;
+--- 2548,2552 ----
+  
+    case 50:
+! #line 692 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2552,2556 ****
+  
+    case 51:
+! #line 693 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         source.dest = 1;
+--- 2557,2561 ----
+  
+    case 51:
+! #line 698 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2561,2580 ****
+  
+    case 52:
+! #line 701 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
+      break;
+  
+    case 53:
+! #line 703 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
+      break;
+  
+    case 54:
+! #line 705 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.element).redirect = (yyvsp[(1) - (1)].redirect); (yyval.element).word = 0; }
+      break;
+  
+    case 55:
+! #line 709 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.redirect) = (yyvsp[(1) - (1)].redirect);
+--- 2566,2585 ----
+  
+    case 52:
+! #line 706 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
+      break;
+  
+    case 53:
+! #line 708 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
+      break;
+  
+    case 54:
+! #line 710 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.element).redirect = (yyvsp[(1) - (1)].redirect); (yyval.element).word = 0; }
+      break;
+  
+    case 55:
+! #line 714 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.redirect) = (yyvsp[(1) - (1)].redirect);
+***************
+*** 2583,2587 ****
+  
+    case 56:
+! #line 713 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         register REDIRECT *t;
+--- 2588,2592 ----
+  
+    case 56:
+! #line 718 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         register REDIRECT *t;
+***************
+*** 2595,2619 ****
+  
+    case 57:
+! #line 724 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_simple_command ((yyvsp[(1) - (1)].element), (COMMAND *)NULL); }
+      break;
+  
+    case 58:
+! #line 726 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_simple_command ((yyvsp[(2) - (2)].element), (yyvsp[(1) - (2)].command)); }
+      break;
+  
+    case 59:
+! #line 730 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = clean_simple_command ((yyvsp[(1) - (1)].command)); }
+      break;
+  
+    case 60:
+! #line 732 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 61:
+! #line 734 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         COMMAND *tc;
+--- 2600,2624 ----
+  
+    case 57:
+! #line 729 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_simple_command ((yyvsp[(1) - (1)].element), (COMMAND *)NULL); }
+      break;
+  
+    case 58:
+! #line 731 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_simple_command ((yyvsp[(2) - (2)].element), (yyvsp[(1) - (2)].command)); }
+      break;
+  
+    case 59:
+! #line 735 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = clean_simple_command ((yyvsp[(1) - (1)].command)); }
+      break;
+  
+    case 60:
+! #line 737 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 61:
+! #line 739 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         COMMAND *tc;
+***************
+*** 2634,2703 ****
+  
+    case 62:
+! #line 750 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 63:
+! #line 752 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 64:
+! #line 756 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 65:
+! #line 758 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 66:
+! #line 760 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_while_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
+      break;
+  
+    case 67:
+! #line 762 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_until_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
+      break;
+  
+    case 68:
+! #line 764 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 69:
+! #line 766 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 70:
+! #line 768 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 71:
+! #line 770 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 72:
+! #line 772 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 73:
+! #line 774 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 74:
+! #line 776 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 75:
+! #line 780 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+--- 2639,2708 ----
+  
+    case 62:
+! #line 755 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 63:
+! #line 757 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 64:
+! #line 761 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 65:
+! #line 763 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 66:
+! #line 765 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_while_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
+      break;
+  
+    case 67:
+! #line 767 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_until_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
+      break;
+  
+    case 68:
+! #line 769 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 69:
+! #line 771 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 70:
+! #line 773 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 71:
+! #line 775 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 72:
+! #line 777 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 73:
+! #line 779 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 74:
+! #line 781 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 75:
+! #line 785 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+***************
+*** 2707,2711 ****
+  
+    case 76:
+! #line 785 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+--- 2712,2716 ----
+  
+    case 76:
+! #line 790 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+***************
+*** 2715,2719 ****
+  
+    case 77:
+! #line 790 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+--- 2720,2724 ----
+  
+    case 77:
+! #line 795 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+***************
+*** 2723,2727 ****
+  
+    case 78:
+! #line 795 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+--- 2728,2732 ----
+  
+    case 78:
+! #line 800 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+***************
+*** 2731,2735 ****
+  
+    case 79:
+! #line 800 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+--- 2736,2740 ----
+  
+    case 79:
+! #line 805 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+***************
+*** 2739,2743 ****
+  
+    case 80:
+! #line 805 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+--- 2744,2748 ----
+  
+    case 80:
+! #line 810 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+***************
+*** 2747,2751 ****
+  
+    case 81:
+! #line 810 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
+--- 2752,2756 ----
+  
+    case 81:
+! #line 815 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
+***************
+*** 2755,2759 ****
+  
+    case 82:
+! #line 815 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
+--- 2760,2764 ----
+  
+    case 82:
+! #line 820 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
+***************
+*** 2763,2767 ****
+  
+    case 83:
+! #line 822 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
+--- 2768,2772 ----
+  
+    case 83:
+! #line 827 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
+***************
+*** 2771,2775 ****
+  
+    case 84:
+! #line 827 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
+--- 2776,2780 ----
+  
+    case 84:
+! #line 832 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
+***************
+*** 2779,2783 ****
+  
+    case 85:
+! #line 832 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
+--- 2784,2788 ----
+  
+    case 85:
+! #line 837 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
+***************
+*** 2787,2791 ****
+  
+    case 86:
+! #line 837 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
+--- 2792,2796 ----
+  
+    case 86:
+! #line 842 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
+***************
+*** 2795,2799 ****
+  
+    case 87:
+! #line 844 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+--- 2800,2804 ----
+  
+    case 87:
+! #line 849 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+***************
+*** 2803,2807 ****
+  
+    case 88:
+! #line 849 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+--- 2808,2812 ----
+  
+    case 88:
+! #line 854 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+***************
+*** 2811,2815 ****
+  
+    case 89:
+! #line 854 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+--- 2816,2820 ----
+  
+    case 89:
+! #line 859 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+***************
+*** 2819,2823 ****
+  
+    case 90:
+! #line 859 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+--- 2824,2828 ----
+  
+    case 90:
+! #line 864 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+***************
+*** 2827,2831 ****
+  
+    case 91:
+! #line 864 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+--- 2832,2836 ----
+  
+    case 91:
+! #line 869 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+***************
+*** 2835,2839 ****
+  
+    case 92:
+! #line 869 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+--- 2840,2844 ----
+  
+    case 92:
+! #line 874 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+***************
+*** 2843,2847 ****
+  
+    case 93:
+! #line 876 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (PATTERN_LIST *)NULL, word_lineno[word_top]);
+--- 2848,2852 ----
+  
+    case 93:
+! #line 881 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (PATTERN_LIST *)NULL, word_lineno[word_top]);
+***************
+*** 2851,2855 ****
+  
+    case 94:
+! #line 881 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (7)].word), (yyvsp[(5) - (7)].pattern), word_lineno[word_top]);
+--- 2856,2860 ----
+  
+    case 94:
+! #line 886 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (7)].word), (yyvsp[(5) - (7)].pattern), word_lineno[word_top]);
+***************
+*** 2859,2863 ****
+  
+    case 95:
+! #line 886 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (yyvsp[(5) - (6)].pattern), word_lineno[word_top]);
+--- 2864,2868 ----
+  
+    case 95:
+! #line 891 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (yyvsp[(5) - (6)].pattern), word_lineno[word_top]);
+***************
+*** 2867,2891 ****
+  
+    case 96:
+! #line 893 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(1) - (5)].word), (yyvsp[(5) - (5)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 97:
+! #line 896 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(2) - (6)].word), (yyvsp[(6) - (6)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 98:
+! #line 899 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(2) - (4)].word), (yyvsp[(4) - (4)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 99:
+! #line 903 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 100:
+! #line 905 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         COMMAND *tc;
+--- 2872,2896 ----
+  
+    case 96:
+! #line 898 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(1) - (5)].word), (yyvsp[(5) - (5)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 97:
+! #line 901 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(2) - (6)].word), (yyvsp[(6) - (6)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 98:
+! #line 904 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(2) - (4)].word), (yyvsp[(4) - (4)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 99:
+! #line 908 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 100:
+! #line 910 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         COMMAND *tc;
+***************
+*** 2919,2923 ****
+  
+    case 101:
+! #line 936 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_subshell_command ((yyvsp[(2) - (3)].command));
+--- 2924,2928 ----
+  
+    case 101:
+! #line 941 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_subshell_command ((yyvsp[(2) - (3)].command));
+***************
+*** 2927,2931 ****
+  
+    case 102:
+! #line 943 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ("COPROC", (yyvsp[(2) - (2)].command));
+--- 2932,2936 ----
+  
+    case 102:
+! #line 948 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ("COPROC", (yyvsp[(2) - (2)].command));
+***************
+*** 2935,2939 ****
+  
+    case 103:
+! #line 948 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         COMMAND *tc;
+--- 2940,2944 ----
+  
+    case 103:
+! #line 953 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         COMMAND *tc;
+***************
+*** 2955,2959 ****
+  
+    case 104:
+! #line 965 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ((yyvsp[(2) - (3)].word)->word, (yyvsp[(3) - (3)].command));
+--- 2960,2964 ----
+  
+    case 104:
+! #line 970 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ((yyvsp[(2) - (3)].word)->word, (yyvsp[(3) - (3)].command));
+***************
+*** 2963,2967 ****
+  
+    case 105:
+! #line 970 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         COMMAND *tc;
+--- 2968,2972 ----
+  
+    case 105:
+! #line 975 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         COMMAND *tc;
+***************
+*** 2983,2987 ****
+  
+    case 106:
+! #line 987 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ("COPROC", clean_simple_command ((yyvsp[(2) - (2)].command)));
+--- 2988,2992 ----
+  
+    case 106:
+! #line 992 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ("COPROC", clean_simple_command ((yyvsp[(2) - (2)].command)));
+***************
+*** 2991,3105 ****
+  
+    case 107:
+! #line 994 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (COMMAND *)NULL); }
+      break;
+  
+    case 108:
+! #line 996 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (7)].command), (yyvsp[(4) - (7)].command), (yyvsp[(6) - (7)].command)); }
+      break;
+  
+    case 109:
+! #line 998 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(5) - (6)].command)); }
+      break;
+  
+    case 110:
+! #line 1003 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_group_command ((yyvsp[(2) - (3)].command)); }
+      break;
+  
+    case 111:
+! #line 1007 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_arith_command ((yyvsp[(1) - (1)].word_list)); }
+      break;
+  
+    case 112:
+! #line 1011 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(2) - (3)].command); }
+      break;
+  
+    case 113:
+! #line 1015 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (4)].command), (yyvsp[(4) - (4)].command), (COMMAND *)NULL); }
+      break;
+  
+    case 114:
+! #line 1017 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(6) - (6)].command)); }
+      break;
+  
+    case 115:
+! #line 1019 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (yyvsp[(5) - (5)].command)); }
+      break;
+  
+    case 117:
+! #line 1024 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyvsp[(2) - (2)].pattern)->next = (yyvsp[(1) - (2)].pattern); (yyval.pattern) = (yyvsp[(2) - (2)].pattern); }
+      break;
+  
+    case 118:
+! #line 1028 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (yyvsp[(4) - (4)].command)); }
+      break;
+  
+    case 119:
+! #line 1030 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (COMMAND *)NULL); }
+      break;
+  
+    case 120:
+! #line 1032 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (yyvsp[(5) - (5)].command)); }
+      break;
+  
+    case 121:
+! #line 1034 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (COMMAND *)NULL); }
+      break;
+  
+    case 122:
+! #line 1038 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 123:
+! #line 1040 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 124:
+! #line 1042 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 125:
+! #line 1044 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 126:
+! #line 1046 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_TESTNEXT; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 127:
+! #line 1048 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_TESTNEXT; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 128:
+! #line 1052 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
+      break;
+  
+    case 129:
+! #line 1054 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(3) - (3)].word), (yyvsp[(1) - (3)].word_list)); }
+      break;
+  
+    case 130:
+! #line 1063 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(2) - (2)].command);
+--- 2996,3110 ----
+  
+    case 107:
+! #line 999 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (COMMAND *)NULL); }
+      break;
+  
+    case 108:
+! #line 1001 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (7)].command), (yyvsp[(4) - (7)].command), (yyvsp[(6) - (7)].command)); }
+      break;
+  
+    case 109:
+! #line 1003 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(5) - (6)].command)); }
+      break;
+  
+    case 110:
+! #line 1008 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_group_command ((yyvsp[(2) - (3)].command)); }
+      break;
+  
+    case 111:
+! #line 1012 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_arith_command ((yyvsp[(1) - (1)].word_list)); }
+      break;
+  
+    case 112:
+! #line 1016 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(2) - (3)].command); }
+      break;
+  
+    case 113:
+! #line 1020 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (4)].command), (yyvsp[(4) - (4)].command), (COMMAND *)NULL); }
+      break;
+  
+    case 114:
+! #line 1022 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(6) - (6)].command)); }
+      break;
+  
+    case 115:
+! #line 1024 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (yyvsp[(5) - (5)].command)); }
+      break;
+  
+    case 117:
+! #line 1029 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(2) - (2)].pattern)->next = (yyvsp[(1) - (2)].pattern); (yyval.pattern) = (yyvsp[(2) - (2)].pattern); }
+      break;
+  
+    case 118:
+! #line 1033 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (yyvsp[(4) - (4)].command)); }
+      break;
+  
+    case 119:
+! #line 1035 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (COMMAND *)NULL); }
+      break;
+  
+    case 120:
+! #line 1037 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (yyvsp[(5) - (5)].command)); }
+      break;
+  
+    case 121:
+! #line 1039 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (COMMAND *)NULL); }
+      break;
+  
+    case 122:
+! #line 1043 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 123:
+! #line 1045 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 124:
+! #line 1047 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 125:
+! #line 1049 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 126:
+! #line 1051 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_TESTNEXT; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 127:
+! #line 1053 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_TESTNEXT; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 128:
+! #line 1057 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
+      break;
+  
+    case 129:
+! #line 1059 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(3) - (3)].word), (yyvsp[(1) - (3)].word_list)); }
+      break;
+  
+    case 130:
+! #line 1068 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(2) - (2)].command);
+***************
+*** 3110,3114 ****
+  
+    case 132:
+! #line 1072 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(2) - (2)].command);
+--- 3115,3119 ----
+  
+    case 132:
+! #line 1077 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(2) - (2)].command);
+***************
+*** 3117,3121 ****
+  
+    case 134:
+! #line 1079 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         if ((yyvsp[(1) - (3)].command)->type == cm_connection)
+--- 3122,3126 ----
+  
+    case 134:
+! #line 1084 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(1) - (3)].command)->type == cm_connection)
+***************
+*** 3127,3141 ****
+  
+    case 136:
+! #line 1090 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
+      break;
+  
+    case 137:
+! #line 1092 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
+      break;
+  
+    case 138:
+! #line 1094 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         if ((yyvsp[(1) - (4)].command)->type == cm_connection)
+--- 3132,3146 ----
+  
+    case 136:
+! #line 1095 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
+      break;
+  
+    case 137:
+! #line 1097 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
+      break;
+  
+    case 138:
+! #line 1099 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(1) - (4)].command)->type == cm_connection)
+***************
+*** 3147,3181 ****
+  
+    case 139:
+! #line 1101 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
+      break;
+  
+    case 140:
+! #line 1103 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
+      break;
+  
+    case 141:
+! #line 1105 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 144:
+! #line 1113 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.number) = '\n'; }
+      break;
+  
+    case 145:
+! #line 1115 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.number) = ';'; }
+      break;
+  
+    case 146:
+! #line 1117 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.number) = yacc_EOF; }
+      break;
+  
+    case 149:
+! #line 1131 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(1) - (1)].command);
+--- 3152,3186 ----
+  
+    case 139:
+! #line 1106 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
+      break;
+  
+    case 140:
+! #line 1108 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
+      break;
+  
+    case 141:
+! #line 1110 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 144:
+! #line 1118 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = '\n'; }
+      break;
+  
+    case 145:
+! #line 1120 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = ';'; }
+      break;
+  
+    case 146:
+! #line 1122 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = yacc_EOF; }
+      break;
+  
+    case 149:
+! #line 1136 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(1) - (1)].command);
+***************
+*** 3193,3197 ****
+  
+    case 150:
+! #line 1144 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         if ((yyvsp[(1) - (2)].command)->type == cm_connection)
+--- 3198,3202 ----
+  
+    case 150:
+! #line 1149 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(1) - (2)].command)->type == cm_connection)
+***************
+*** 3212,3216 ****
+  
+    case 151:
+! #line 1160 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(1) - (2)].command);
+--- 3217,3221 ----
+  
+    case 151:
+! #line 1165 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(1) - (2)].command);
+***************
+*** 3228,3242 ****
+  
+    case 152:
+! #line 1175 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
+      break;
+  
+    case 153:
+! #line 1177 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
+      break;
+  
+    case 154:
+! #line 1179 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         if ((yyvsp[(1) - (3)].command)->type == cm_connection)
+--- 3233,3247 ----
+  
+    case 152:
+! #line 1180 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
+      break;
+  
+    case 153:
+! #line 1182 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
+      break;
+  
+    case 154:
+! #line 1184 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(1) - (3)].command)->type == cm_connection)
+***************
+*** 3248,3267 ****
+  
+    case 155:
+! #line 1186 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (3)].command), (yyvsp[(3) - (3)].command), ';'); }
+      break;
+  
+    case 156:
+! #line 1189 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 157:
+! #line 1193 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 158:
+! #line 1195 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         if ((yyvsp[(2) - (2)].command))
+--- 3253,3272 ----
+  
+    case 155:
+! #line 1191 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (3)].command), (yyvsp[(3) - (3)].command), ';'); }
+      break;
+  
+    case 156:
+! #line 1194 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 157:
+! #line 1198 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 158:
+! #line 1200 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(2) - (2)].command))
+***************
+*** 3272,3276 ****
+  
+    case 159:
+! #line 1201 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         if ((yyvsp[(2) - (2)].command))
+--- 3277,3281 ----
+  
+    case 159:
+! #line 1206 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(2) - (2)].command))
+***************
+*** 3281,3285 ****
+  
+    case 160:
+! #line 1207 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         ELEMENT x;
+--- 3286,3290 ----
+  
+    case 160:
+! #line 1212 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         ELEMENT x;
+***************
+*** 3301,3305 ****
+  
+    case 161:
+! #line 1224 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         ELEMENT x;
+--- 3306,3310 ----
+  
+    case 161:
+! #line 1229 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         ELEMENT x;
+***************
+*** 3322,3331 ****
+  
+    case 162:
+! #line 1244 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), '|'); }
+      break;
+  
+    case 163:
+! #line 1246 "/usr/homes/chet/src/bash/src/parse.y"
+      {
+                         /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */
+--- 3327,3336 ----
+  
+    case 162:
+! #line 1249 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), '|'); }
+      break;
+  
+    case 163:
+! #line 1251 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */
+***************
+*** 3353,3372 ****
+  
+    case 164:
+! #line 1269 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 165:
+! #line 1273 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE; }
+      break;
+  
+    case 166:
+! #line 1275 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
+      break;
+  
+    case 167:
+! #line 1277 "/usr/homes/chet/src/bash/src/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
+      break;
+--- 3358,3377 ----
+  
+    case 164:
+! #line 1274 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 165:
+! #line 1278 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE; }
+      break;
+  
+    case 166:
+! #line 1280 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
+      break;
+  
+    case 167:
+! #line 1282 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
+      break;
+***************
+*** 3374,3378 ****
+  
+  /* Line 1267 of yacc.c.  */
+! #line 3377 "y.tab.c"
+        default: break;
+      }
+--- 3379,3383 ----
+  
+  /* Line 1267 of yacc.c.  */
+! #line 3382 "y.tab.c"
+        default: break;
+      }
+***************
+*** 3588,3592 ****
+  
+  
+! #line 1279 "/usr/homes/chet/src/bash/src/parse.y"
+  
+  
+--- 3593,3597 ----
+  
+  
+! #line 1284 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+  
+  
+***************
+*** 4949,4952 ****
+--- 4954,4972 ----
+  static int esacs_needed_count;
+  
++ static void
++ push_heredoc (r)
++      REDIRECT *r;
++ {
++   if (need_here_doc >= HEREDOC_MAX)
++     {
++       last_command_exit_value = EX_BADUSAGE;
++       need_here_doc = 0;
++       report_syntax_error (_("maximum here-document count exceeded"));
++       reset_parser ();
++       exit_shell (last_command_exit_value);
++     }
++   redir_stack[need_here_doc++] = r;
++ }
++ 
+  void
+  gather_here_documents ()
+***************
+*** 8542,8543 ****
+--- 8562,8564 ----
+  }
+  #endif /* HANDLE_MULTIBYTE */
++ 
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 27
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 28
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-029 b/src/patches/bash/bash43-029
new file mode 100644 (file)
index 0000000..93bd390
--- /dev/null
@@ -0,0 +1,59 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-029
+
+Bug-Reported-by:       Michal Zalewski <lcamtuf@coredump.cx>
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+When bash is parsing a function definition that contains a here-document
+delimited by end-of-file (or end-of-string), it leaves the closing delimiter
+uninitialized.  This can result in an invalid memory access when the parsed
+function is later copied.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3.28/make_cmd.c  2011-12-16 08:08:01.000000000 -0500
+--- make_cmd.c 2014-10-02 11:24:23.000000000 -0400
+***************
+*** 693,696 ****
+--- 693,697 ----
+    temp->redirector = source;
+    temp->redirectee = dest_and_filename;
++   temp->here_doc_eof = 0;
+    temp->instruction = instruction;
+    temp->flags = 0;
+*** ../bash-4.3.28/copy_cmd.c  2009-09-11 16:28:02.000000000 -0400
+--- copy_cmd.c 2014-10-02 11:24:23.000000000 -0400
+***************
+*** 127,131 ****
+      case r_reading_until:
+      case r_deblank_reading_until:
+!       new_redirect->here_doc_eof = savestring (redirect->here_doc_eof);
+        /*FALLTHROUGH*/
+      case r_reading_string:
+--- 127,131 ----
+      case r_reading_until:
+      case r_deblank_reading_until:
+!       new_redirect->here_doc_eof = redirect->here_doc_eof ? savestring (redirect->here_doc_eof) : 0;
+        /*FALLTHROUGH*/
+      case r_reading_string:
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 28
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 29
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/bash/bash43-030 b/src/patches/bash/bash43-030
new file mode 100644 (file)
index 0000000..78984da
--- /dev/null
@@ -0,0 +1,2064 @@
+                            BASH PATCH REPORT
+                            =================
+
+Bash-Release:  4.3
+Patch-ID:      bash43-030
+
+Bug-Reported-by:       Michal Zalewski <lcamtuf@coredump.cx>
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+A combination of nested command substitutions and function importing from
+the environment can cause bash to execute code appearing in the environment
+variable value following the function definition.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-4.3.29/builtins/evalstring.c       2014-10-01 12:57:47.000000000 -0400
+--- builtins/evalstring.c      2014-10-03 11:57:04.000000000 -0400
+***************
+*** 309,318 ****
+             struct fd_bitmap *bitmap;
+  
+!            if ((flags & SEVAL_FUNCDEF) && command->type != cm_function_def)
+               {
+!                internal_warning ("%s: ignoring function definition attempt", from_file);
+!                should_jump_to_top_level = 0;
+!                last_result = last_command_exit_value = EX_BADUSAGE;
+!                break;
+               }
+  
+--- 313,335 ----
+             struct fd_bitmap *bitmap;
+  
+!            if (flags & SEVAL_FUNCDEF)
+               {
+!                char *x;
+! 
+!                /* If the command parses to something other than a straight
+!                   function definition, or if we have not consumed the entire
+!                   string, or if the parser has transformed the function
+!                   name (as parsing will if it begins or ends with shell
+!                   whitespace, for example), reject the attempt */
+!                if (command->type != cm_function_def ||
+!                    ((x = parser_remaining_input ()) && *x) ||
+!                    (STREQ (from_file, command->value.Function_def->name->word) == 0))
+!                  {
+!                    internal_warning (_("%s: ignoring function definition attempt"), from_file);
+!                    should_jump_to_top_level = 0;
+!                    last_result = last_command_exit_value = EX_BADUSAGE;
+!                    reset_parser ();
+!                    break;
+!                  }
+               }
+  
+***************
+*** 379,383 ****
+  
+             if (flags & SEVAL_ONECMD)
+!              break;
+           }
+       }
+--- 396,403 ----
+  
+             if (flags & SEVAL_ONECMD)
+!              {
+!                reset_parser ();
+!                break;
+!              }
+           }
+       }
+*** ../bash-4.3.29/parse.y     2014-10-01 12:58:43.000000000 -0400
+--- parse.y    2014-10-03 14:48:59.000000000 -0400
+***************
+*** 2539,2542 ****
+--- 2539,2552 ----
+  }
+  
++ char *
++ parser_remaining_input ()
++ {
++   if (shell_input_line == 0)
++     return 0;
++   if (shell_input_line_index < 0 || shell_input_line_index >= shell_input_line_len)
++     return '\0';     /* XXX */
++   return (shell_input_line + shell_input_line_index);
++ }
++ 
+  #ifdef INCLUDE_UNUSED
+  /* Back the input pointer up by one, effectively `ungetting' a character. */
+***************
+*** 4028,4033 ****
+    /* reset_parser clears shell_input_line and associated variables */
+    restore_input_line_state (&ls);
+!   if (interactive)
+!     token_to_read = 0;
+  
+    /* Need to find how many characters parse_and_execute consumed, update
+--- 4053,4058 ----
+    /* reset_parser clears shell_input_line and associated variables */
+    restore_input_line_state (&ls);
+! 
+!   token_to_read = 0;
+  
+    /* Need to find how many characters parse_and_execute consumed, update
+*** ../bash-4.3.29/shell.h     2014-10-01 12:57:39.000000000 -0400
+--- shell.h    2014-10-03 14:49:12.000000000 -0400
+***************
+*** 181,184 ****
+--- 181,186 ----
+  
+  /* Let's try declaring these here. */
++ extern char *parser_remaining_input __P((void));
++ 
+  extern sh_parser_state_t *save_parser_state __P((sh_parser_state_t *));
+  extern void restore_parser_state __P((sh_parser_state_t *));
+*** ../bash-4.3.28/y.tab.c     2014-10-01 13:09:46.000000000 -0400
+--- y.tab.c    2014-10-04 19:26:22.000000000 -0400
+***************
+*** 169,173 ****
+  
+  /* Copy the first part of user declarations.  */
+! #line 21 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+  
+  #include "config.h"
+--- 169,173 ----
+  
+  /* Copy the first part of user declarations.  */
+! #line 21 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+  
+  #include "config.h"
+***************
+*** 498,502 ****
+  #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+  typedef union YYSTYPE
+! #line 329 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+  {
+    WORD_DESC *word;           /* the word that we read. */
+--- 498,502 ----
+  #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+  typedef union YYSTYPE
+! #line 329 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+  {
+    WORD_DESC *word;           /* the word that we read. */
+***************
+*** 2099,2103 ****
+      {
+          case 2:
+! #line 383 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Case of regular command.  Discard the error
+--- 2099,2103 ----
+      {
+          case 2:
+! #line 383 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         /* Case of regular command.  Discard the error
+***************
+*** 2113,2117 ****
+  
+    case 3:
+! #line 394 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Case of regular command, but not a very
+--- 2113,2117 ----
+  
+    case 3:
+! #line 394 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         /* Case of regular command, but not a very
+***************
+*** 2125,2129 ****
+  
+    case 4:
+! #line 403 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Error during parsing.  Return NULL command. */
+--- 2125,2129 ----
+  
+    case 4:
+! #line 403 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         /* Error during parsing.  Return NULL command. */
+***************
+*** 2143,2147 ****
+  
+    case 5:
+! #line 418 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Case of EOF seen by itself.  Do ignoreeof or
+--- 2143,2147 ----
+  
+    case 5:
+! #line 418 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         /* Case of EOF seen by itself.  Do ignoreeof or
+***************
+*** 2154,2168 ****
+  
+    case 6:
+! #line 428 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
+      break;
+  
+    case 7:
+! #line 430 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(2) - (2)].word), (yyvsp[(1) - (2)].word_list)); }
+      break;
+  
+    case 8:
+! #line 434 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+--- 2154,2168 ----
+  
+    case 6:
+! #line 428 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
+      break;
+  
+    case 7:
+! #line 430 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(2) - (2)].word), (yyvsp[(1) - (2)].word_list)); }
+      break;
+  
+    case 8:
+! #line 434 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2173,2177 ****
+  
+    case 9:
+! #line 440 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+--- 2173,2177 ----
+  
+    case 9:
+! #line 440 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2182,2186 ****
+  
+    case 10:
+! #line 446 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2182,2186 ----
+  
+    case 10:
+! #line 446 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2191,2195 ****
+  
+    case 11:
+! #line 452 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2191,2195 ----
+  
+    case 11:
+! #line 452 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2200,2204 ****
+  
+    case 12:
+! #line 458 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2200,2204 ----
+  
+    case 12:
+! #line 458 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2209,2213 ****
+  
+    case 13:
+! #line 464 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2209,2213 ----
+  
+    case 13:
+! #line 464 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2218,2222 ****
+  
+    case 14:
+! #line 470 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+--- 2218,2222 ----
+  
+    case 14:
+! #line 470 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2227,2231 ****
+  
+    case 15:
+! #line 476 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2227,2231 ----
+  
+    case 15:
+! #line 476 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2236,2240 ****
+  
+    case 16:
+! #line 482 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2236,2240 ----
+  
+    case 16:
+! #line 482 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2245,2249 ****
+  
+    case 17:
+! #line 488 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+--- 2245,2249 ----
+  
+    case 17:
+! #line 488 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2254,2258 ****
+  
+    case 18:
+! #line 494 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2254,2258 ----
+  
+    case 18:
+! #line 494 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2263,2267 ****
+  
+    case 19:
+! #line 500 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2263,2267 ----
+  
+    case 19:
+! #line 500 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2272,2276 ****
+  
+    case 20:
+! #line 506 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+--- 2272,2276 ----
+  
+    case 20:
+! #line 506 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2281,2285 ****
+  
+    case 21:
+! #line 512 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2281,2285 ----
+  
+    case 21:
+! #line 512 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2290,2294 ****
+  
+    case 22:
+! #line 518 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2290,2294 ----
+  
+    case 22:
+! #line 518 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2299,2303 ****
+  
+    case 23:
+! #line 524 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+--- 2299,2303 ----
+  
+    case 23:
+! #line 524 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2309,2313 ****
+  
+    case 24:
+! #line 531 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2309,2313 ----
+  
+    case 24:
+! #line 531 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2319,2323 ****
+  
+    case 25:
+! #line 538 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2319,2323 ----
+  
+    case 25:
+! #line 538 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2329,2333 ****
+  
+    case 26:
+! #line 545 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+--- 2329,2333 ----
+  
+    case 26:
+! #line 545 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2339,2343 ****
+  
+    case 27:
+! #line 552 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2339,2343 ----
+  
+    case 27:
+! #line 552 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2349,2353 ****
+  
+    case 28:
+! #line 559 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2349,2353 ----
+  
+    case 28:
+! #line 559 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2359,2363 ****
+  
+    case 29:
+! #line 566 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+--- 2359,2363 ----
+  
+    case 29:
+! #line 566 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2368,2372 ****
+  
+    case 30:
+! #line 572 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2368,2372 ----
+  
+    case 30:
+! #line 572 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2377,2381 ****
+  
+    case 31:
+! #line 578 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2377,2381 ----
+  
+    case 31:
+! #line 578 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2386,2390 ****
+  
+    case 32:
+! #line 584 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+--- 2386,2390 ----
+  
+    case 32:
+! #line 584 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2395,2399 ****
+  
+    case 33:
+! #line 590 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2395,2399 ----
+  
+    case 33:
+! #line 590 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2404,2408 ****
+  
+    case 34:
+! #line 596 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2404,2408 ----
+  
+    case 34:
+! #line 596 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2413,2417 ****
+  
+    case 35:
+! #line 602 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+--- 2413,2417 ----
+  
+    case 35:
+! #line 602 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2422,2426 ****
+  
+    case 36:
+! #line 608 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2422,2426 ----
+  
+    case 36:
+! #line 608 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2431,2435 ****
+  
+    case 37:
+! #line 614 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2431,2435 ----
+  
+    case 37:
+! #line 614 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2440,2444 ****
+  
+    case 38:
+! #line 620 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+--- 2440,2444 ----
+  
+    case 38:
+! #line 620 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2449,2453 ****
+  
+    case 39:
+! #line 626 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2449,2453 ----
+  
+    case 39:
+! #line 626 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2458,2462 ****
+  
+    case 40:
+! #line 632 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2458,2462 ----
+  
+    case 40:
+! #line 632 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2467,2471 ****
+  
+    case 41:
+! #line 638 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+--- 2467,2471 ----
+  
+    case 41:
+! #line 638 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2476,2480 ****
+  
+    case 42:
+! #line 644 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2476,2480 ----
+  
+    case 42:
+! #line 644 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2485,2489 ****
+  
+    case 43:
+! #line 650 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2485,2489 ----
+  
+    case 43:
+! #line 650 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2494,2498 ****
+  
+    case 44:
+! #line 656 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+--- 2494,2498 ----
+  
+    case 44:
+! #line 656 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2503,2507 ****
+  
+    case 45:
+! #line 662 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2503,2507 ----
+  
+    case 45:
+! #line 662 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2512,2516 ****
+  
+    case 46:
+! #line 668 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2512,2516 ----
+  
+    case 46:
+! #line 668 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2521,2525 ****
+  
+    case 47:
+! #line 674 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 0;
+--- 2521,2525 ----
+  
+    case 47:
+! #line 674 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 0;
+***************
+*** 2530,2534 ****
+  
+    case 48:
+! #line 680 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+--- 2530,2534 ----
+  
+    case 48:
+! #line 680 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = (yyvsp[(1) - (3)].number);
+***************
+*** 2539,2543 ****
+  
+    case 49:
+! #line 686 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+--- 2539,2543 ----
+  
+    case 49:
+! #line 686 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.filename = (yyvsp[(1) - (3)].word);
+***************
+*** 2548,2552 ****
+  
+    case 50:
+! #line 692 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+--- 2548,2552 ----
+  
+    case 50:
+! #line 692 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2557,2561 ****
+  
+    case 51:
+! #line 698 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         source.dest = 1;
+--- 2557,2561 ----
+  
+    case 51:
+! #line 698 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         source.dest = 1;
+***************
+*** 2566,2585 ****
+  
+    case 52:
+! #line 706 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
+      break;
+  
+    case 53:
+! #line 708 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
+      break;
+  
+    case 54:
+! #line 710 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.element).redirect = (yyvsp[(1) - (1)].redirect); (yyval.element).word = 0; }
+      break;
+  
+    case 55:
+! #line 714 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.redirect) = (yyvsp[(1) - (1)].redirect);
+--- 2566,2585 ----
+  
+    case 52:
+! #line 706 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
+      break;
+  
+    case 53:
+! #line 708 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
+      break;
+  
+    case 54:
+! #line 710 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.element).redirect = (yyvsp[(1) - (1)].redirect); (yyval.element).word = 0; }
+      break;
+  
+    case 55:
+! #line 714 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.redirect) = (yyvsp[(1) - (1)].redirect);
+***************
+*** 2588,2592 ****
+  
+    case 56:
+! #line 718 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         register REDIRECT *t;
+--- 2588,2592 ----
+  
+    case 56:
+! #line 718 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         register REDIRECT *t;
+***************
+*** 2600,2624 ****
+  
+    case 57:
+! #line 729 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_simple_command ((yyvsp[(1) - (1)].element), (COMMAND *)NULL); }
+      break;
+  
+    case 58:
+! #line 731 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_simple_command ((yyvsp[(2) - (2)].element), (yyvsp[(1) - (2)].command)); }
+      break;
+  
+    case 59:
+! #line 735 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = clean_simple_command ((yyvsp[(1) - (1)].command)); }
+      break;
+  
+    case 60:
+! #line 737 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 61:
+! #line 739 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         COMMAND *tc;
+--- 2600,2624 ----
+  
+    case 57:
+! #line 729 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_simple_command ((yyvsp[(1) - (1)].element), (COMMAND *)NULL); }
+      break;
+  
+    case 58:
+! #line 731 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_simple_command ((yyvsp[(2) - (2)].element), (yyvsp[(1) - (2)].command)); }
+      break;
+  
+    case 59:
+! #line 735 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = clean_simple_command ((yyvsp[(1) - (1)].command)); }
+      break;
+  
+    case 60:
+! #line 737 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 61:
+! #line 739 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         COMMAND *tc;
+***************
+*** 2639,2708 ****
+  
+    case 62:
+! #line 755 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 63:
+! #line 757 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 64:
+! #line 761 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 65:
+! #line 763 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 66:
+! #line 765 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_while_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
+      break;
+  
+    case 67:
+! #line 767 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_until_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
+      break;
+  
+    case 68:
+! #line 769 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 69:
+! #line 771 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 70:
+! #line 773 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 71:
+! #line 775 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 72:
+! #line 777 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 73:
+! #line 779 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 74:
+! #line 781 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 75:
+! #line 785 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+--- 2639,2708 ----
+  
+    case 62:
+! #line 755 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 63:
+! #line 757 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 64:
+! #line 761 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 65:
+! #line 763 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 66:
+! #line 765 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_while_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
+      break;
+  
+    case 67:
+! #line 767 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_until_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
+      break;
+  
+    case 68:
+! #line 769 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 69:
+! #line 771 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 70:
+! #line 773 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 71:
+! #line 775 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 72:
+! #line 777 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 73:
+! #line 779 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 74:
+! #line 781 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 75:
+! #line 785 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+***************
+*** 2712,2716 ****
+  
+    case 76:
+! #line 790 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+--- 2712,2716 ----
+  
+    case 76:
+! #line 790 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+***************
+*** 2720,2724 ****
+  
+    case 77:
+! #line 795 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+--- 2720,2724 ----
+  
+    case 77:
+! #line 795 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+***************
+*** 2728,2732 ****
+  
+    case 78:
+! #line 800 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+--- 2728,2732 ----
+  
+    case 78:
+! #line 800 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+***************
+*** 2736,2740 ****
+  
+    case 79:
+! #line 805 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+--- 2736,2740 ----
+  
+    case 79:
+! #line 805 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+***************
+*** 2744,2748 ****
+  
+    case 80:
+! #line 810 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+--- 2744,2748 ----
+  
+    case 80:
+! #line 810 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+***************
+*** 2752,2756 ****
+  
+    case 81:
+! #line 815 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
+--- 2752,2756 ----
+  
+    case 81:
+! #line 815 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
+***************
+*** 2760,2764 ****
+  
+    case 82:
+! #line 820 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
+--- 2760,2764 ----
+  
+    case 82:
+! #line 820 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
+***************
+*** 2768,2772 ****
+  
+    case 83:
+! #line 827 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
+--- 2768,2772 ----
+  
+    case 83:
+! #line 827 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
+***************
+*** 2776,2780 ****
+  
+    case 84:
+! #line 832 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
+--- 2776,2780 ----
+  
+    case 84:
+! #line 832 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
+***************
+*** 2784,2788 ****
+  
+    case 85:
+! #line 837 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
+--- 2784,2788 ----
+  
+    case 85:
+! #line 837 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
+***************
+*** 2792,2796 ****
+  
+    case 86:
+! #line 842 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
+--- 2792,2796 ----
+  
+    case 86:
+! #line 842 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                                 (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
+***************
+*** 2800,2804 ****
+  
+    case 87:
+! #line 849 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+--- 2800,2804 ----
+  
+    case 87:
+! #line 849 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+***************
+*** 2808,2812 ****
+  
+    case 88:
+! #line 854 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+--- 2808,2812 ----
+  
+    case 88:
+! #line 854 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
+***************
+*** 2816,2820 ****
+  
+    case 89:
+! #line 859 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+--- 2816,2820 ----
+  
+    case 89:
+! #line 859 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+***************
+*** 2824,2828 ****
+  
+    case 90:
+! #line 864 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+--- 2824,2828 ----
+  
+    case 90:
+! #line 864 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
+***************
+*** 2832,2836 ****
+  
+    case 91:
+! #line 869 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+--- 2832,2836 ----
+  
+    case 91:
+! #line 869 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+***************
+*** 2840,2844 ****
+  
+    case 92:
+! #line 874 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+--- 2840,2844 ----
+  
+    case 92:
+! #line 874 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
+***************
+*** 2848,2852 ****
+  
+    case 93:
+! #line 881 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (PATTERN_LIST *)NULL, word_lineno[word_top]);
+--- 2848,2852 ----
+  
+    case 93:
+! #line 881 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (PATTERN_LIST *)NULL, word_lineno[word_top]);
+***************
+*** 2856,2860 ****
+  
+    case 94:
+! #line 886 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (7)].word), (yyvsp[(5) - (7)].pattern), word_lineno[word_top]);
+--- 2856,2860 ----
+  
+    case 94:
+! #line 886 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (7)].word), (yyvsp[(5) - (7)].pattern), word_lineno[word_top]);
+***************
+*** 2864,2868 ****
+  
+    case 95:
+! #line 891 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (yyvsp[(5) - (6)].pattern), word_lineno[word_top]);
+--- 2864,2868 ----
+  
+    case 95:
+! #line 891 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (yyvsp[(5) - (6)].pattern), word_lineno[word_top]);
+***************
+*** 2872,2896 ****
+  
+    case 96:
+! #line 898 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(1) - (5)].word), (yyvsp[(5) - (5)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 97:
+! #line 901 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(2) - (6)].word), (yyvsp[(6) - (6)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 98:
+! #line 904 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(2) - (4)].word), (yyvsp[(4) - (4)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 99:
+! #line 908 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 100:
+! #line 910 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         COMMAND *tc;
+--- 2872,2896 ----
+  
+    case 96:
+! #line 898 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(1) - (5)].word), (yyvsp[(5) - (5)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 97:
+! #line 901 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(2) - (6)].word), (yyvsp[(6) - (6)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 98:
+! #line 904 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_function_def ((yyvsp[(2) - (4)].word), (yyvsp[(4) - (4)].command), function_dstart, function_bstart); }
+      break;
+  
+    case 99:
+! #line 908 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 100:
+! #line 910 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         COMMAND *tc;
+***************
+*** 2924,2928 ****
+  
+    case 101:
+! #line 941 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_subshell_command ((yyvsp[(2) - (3)].command));
+--- 2924,2928 ----
+  
+    case 101:
+! #line 941 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_subshell_command ((yyvsp[(2) - (3)].command));
+***************
+*** 2932,2936 ****
+  
+    case 102:
+! #line 948 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ("COPROC", (yyvsp[(2) - (2)].command));
+--- 2932,2936 ----
+  
+    case 102:
+! #line 948 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ("COPROC", (yyvsp[(2) - (2)].command));
+***************
+*** 2940,2944 ****
+  
+    case 103:
+! #line 953 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         COMMAND *tc;
+--- 2940,2944 ----
+  
+    case 103:
+! #line 953 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         COMMAND *tc;
+***************
+*** 2960,2964 ****
+  
+    case 104:
+! #line 970 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ((yyvsp[(2) - (3)].word)->word, (yyvsp[(3) - (3)].command));
+--- 2960,2964 ----
+  
+    case 104:
+! #line 970 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ((yyvsp[(2) - (3)].word)->word, (yyvsp[(3) - (3)].command));
+***************
+*** 2968,2972 ****
+  
+    case 105:
+! #line 975 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         COMMAND *tc;
+--- 2968,2972 ----
+  
+    case 105:
+! #line 975 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         COMMAND *tc;
+***************
+*** 2988,2992 ****
+  
+    case 106:
+! #line 992 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ("COPROC", clean_simple_command ((yyvsp[(2) - (2)].command)));
+--- 2988,2992 ----
+  
+    case 106:
+! #line 992 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = make_coproc_command ("COPROC", clean_simple_command ((yyvsp[(2) - (2)].command)));
+***************
+*** 2996,3110 ****
+  
+    case 107:
+! #line 999 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (COMMAND *)NULL); }
+      break;
+  
+    case 108:
+! #line 1001 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (7)].command), (yyvsp[(4) - (7)].command), (yyvsp[(6) - (7)].command)); }
+      break;
+  
+    case 109:
+! #line 1003 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(5) - (6)].command)); }
+      break;
+  
+    case 110:
+! #line 1008 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_group_command ((yyvsp[(2) - (3)].command)); }
+      break;
+  
+    case 111:
+! #line 1012 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_arith_command ((yyvsp[(1) - (1)].word_list)); }
+      break;
+  
+    case 112:
+! #line 1016 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(2) - (3)].command); }
+      break;
+  
+    case 113:
+! #line 1020 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (4)].command), (yyvsp[(4) - (4)].command), (COMMAND *)NULL); }
+      break;
+  
+    case 114:
+! #line 1022 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(6) - (6)].command)); }
+      break;
+  
+    case 115:
+! #line 1024 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (yyvsp[(5) - (5)].command)); }
+      break;
+  
+    case 117:
+! #line 1029 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(2) - (2)].pattern)->next = (yyvsp[(1) - (2)].pattern); (yyval.pattern) = (yyvsp[(2) - (2)].pattern); }
+      break;
+  
+    case 118:
+! #line 1033 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (yyvsp[(4) - (4)].command)); }
+      break;
+  
+    case 119:
+! #line 1035 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (COMMAND *)NULL); }
+      break;
+  
+    case 120:
+! #line 1037 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (yyvsp[(5) - (5)].command)); }
+      break;
+  
+    case 121:
+! #line 1039 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (COMMAND *)NULL); }
+      break;
+  
+    case 122:
+! #line 1043 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 123:
+! #line 1045 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 124:
+! #line 1047 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 125:
+! #line 1049 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 126:
+! #line 1051 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_TESTNEXT; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 127:
+! #line 1053 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_TESTNEXT; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 128:
+! #line 1057 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
+      break;
+  
+    case 129:
+! #line 1059 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(3) - (3)].word), (yyvsp[(1) - (3)].word_list)); }
+      break;
+  
+    case 130:
+! #line 1068 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(2) - (2)].command);
+--- 2996,3110 ----
+  
+    case 107:
+! #line 999 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (COMMAND *)NULL); }
+      break;
+  
+    case 108:
+! #line 1001 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (7)].command), (yyvsp[(4) - (7)].command), (yyvsp[(6) - (7)].command)); }
+      break;
+  
+    case 109:
+! #line 1003 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(5) - (6)].command)); }
+      break;
+  
+    case 110:
+! #line 1008 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_group_command ((yyvsp[(2) - (3)].command)); }
+      break;
+  
+    case 111:
+! #line 1012 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_arith_command ((yyvsp[(1) - (1)].word_list)); }
+      break;
+  
+    case 112:
+! #line 1016 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(2) - (3)].command); }
+      break;
+  
+    case 113:
+! #line 1020 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (4)].command), (yyvsp[(4) - (4)].command), (COMMAND *)NULL); }
+      break;
+  
+    case 114:
+! #line 1022 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(6) - (6)].command)); }
+      break;
+  
+    case 115:
+! #line 1024 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (yyvsp[(5) - (5)].command)); }
+      break;
+  
+    case 117:
+! #line 1029 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyvsp[(2) - (2)].pattern)->next = (yyvsp[(1) - (2)].pattern); (yyval.pattern) = (yyvsp[(2) - (2)].pattern); }
+      break;
+  
+    case 118:
+! #line 1033 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (yyvsp[(4) - (4)].command)); }
+      break;
+  
+    case 119:
+! #line 1035 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (COMMAND *)NULL); }
+      break;
+  
+    case 120:
+! #line 1037 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (yyvsp[(5) - (5)].command)); }
+      break;
+  
+    case 121:
+! #line 1039 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (COMMAND *)NULL); }
+      break;
+  
+    case 122:
+! #line 1043 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 123:
+! #line 1045 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 124:
+! #line 1047 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 125:
+! #line 1049 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 126:
+! #line 1051 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_TESTNEXT; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
+      break;
+  
+    case 127:
+! #line 1053 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_TESTNEXT; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
+      break;
+  
+    case 128:
+! #line 1057 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
+      break;
+  
+    case 129:
+! #line 1059 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.word_list) = make_word_list ((yyvsp[(3) - (3)].word), (yyvsp[(1) - (3)].word_list)); }
+      break;
+  
+    case 130:
+! #line 1068 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(2) - (2)].command);
+***************
+*** 3115,3119 ****
+  
+    case 132:
+! #line 1077 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(2) - (2)].command);
+--- 3115,3119 ----
+  
+    case 132:
+! #line 1077 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(2) - (2)].command);
+***************
+*** 3122,3126 ****
+  
+    case 134:
+! #line 1084 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(1) - (3)].command)->type == cm_connection)
+--- 3122,3126 ----
+  
+    case 134:
+! #line 1084 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         if ((yyvsp[(1) - (3)].command)->type == cm_connection)
+***************
+*** 3132,3146 ****
+  
+    case 136:
+! #line 1095 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
+      break;
+  
+    case 137:
+! #line 1097 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
+      break;
+  
+    case 138:
+! #line 1099 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(1) - (4)].command)->type == cm_connection)
+--- 3132,3146 ----
+  
+    case 136:
+! #line 1095 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
+      break;
+  
+    case 137:
+! #line 1097 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
+      break;
+  
+    case 138:
+! #line 1099 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         if ((yyvsp[(1) - (4)].command)->type == cm_connection)
+***************
+*** 3152,3186 ****
+  
+    case 139:
+! #line 1106 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
+      break;
+  
+    case 140:
+! #line 1108 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
+      break;
+  
+    case 141:
+! #line 1110 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 144:
+! #line 1118 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = '\n'; }
+      break;
+  
+    case 145:
+! #line 1120 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = ';'; }
+      break;
+  
+    case 146:
+! #line 1122 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = yacc_EOF; }
+      break;
+  
+    case 149:
+! #line 1136 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(1) - (1)].command);
+--- 3152,3186 ----
+  
+    case 139:
+! #line 1106 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
+      break;
+  
+    case 140:
+! #line 1108 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
+      break;
+  
+    case 141:
+! #line 1110 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 144:
+! #line 1118 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.number) = '\n'; }
+      break;
+  
+    case 145:
+! #line 1120 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.number) = ';'; }
+      break;
+  
+    case 146:
+! #line 1122 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.number) = yacc_EOF; }
+      break;
+  
+    case 149:
+! #line 1136 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(1) - (1)].command);
+***************
+*** 3198,3202 ****
+  
+    case 150:
+! #line 1149 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(1) - (2)].command)->type == cm_connection)
+--- 3198,3202 ----
+  
+    case 150:
+! #line 1149 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         if ((yyvsp[(1) - (2)].command)->type == cm_connection)
+***************
+*** 3217,3221 ****
+  
+    case 151:
+! #line 1165 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(1) - (2)].command);
+--- 3217,3221 ----
+  
+    case 151:
+! #line 1165 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         (yyval.command) = (yyvsp[(1) - (2)].command);
+***************
+*** 3233,3247 ****
+  
+    case 152:
+! #line 1180 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
+      break;
+  
+    case 153:
+! #line 1182 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
+      break;
+  
+    case 154:
+! #line 1184 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(1) - (3)].command)->type == cm_connection)
+--- 3233,3247 ----
+  
+    case 152:
+! #line 1180 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
+      break;
+  
+    case 153:
+! #line 1182 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
+      break;
+  
+    case 154:
+! #line 1184 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         if ((yyvsp[(1) - (3)].command)->type == cm_connection)
+***************
+*** 3253,3272 ****
+  
+    case 155:
+! #line 1191 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (3)].command), (yyvsp[(3) - (3)].command), ';'); }
+      break;
+  
+    case 156:
+! #line 1194 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 157:
+! #line 1198 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 158:
+! #line 1200 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(2) - (2)].command))
+--- 3253,3272 ----
+  
+    case 155:
+! #line 1191 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (3)].command), (yyvsp[(3) - (3)].command), ';'); }
+      break;
+  
+    case 156:
+! #line 1194 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 157:
+! #line 1198 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 158:
+! #line 1200 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         if ((yyvsp[(2) - (2)].command))
+***************
+*** 3277,3281 ****
+  
+    case 159:
+! #line 1206 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         if ((yyvsp[(2) - (2)].command))
+--- 3277,3281 ----
+  
+    case 159:
+! #line 1206 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         if ((yyvsp[(2) - (2)].command))
+***************
+*** 3286,3290 ****
+  
+    case 160:
+! #line 1212 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         ELEMENT x;
+--- 3286,3290 ----
+  
+    case 160:
+! #line 1212 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         ELEMENT x;
+***************
+*** 3306,3310 ****
+  
+    case 161:
+! #line 1229 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         ELEMENT x;
+--- 3306,3310 ----
+  
+    case 161:
+! #line 1229 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         ELEMENT x;
+***************
+*** 3327,3336 ****
+  
+    case 162:
+! #line 1249 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), '|'); }
+      break;
+  
+    case 163:
+! #line 1251 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      {
+                         /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */
+--- 3327,3336 ----
+  
+    case 162:
+! #line 1249 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), '|'); }
+      break;
+  
+    case 163:
+! #line 1251 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      {
+                         /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */
+***************
+*** 3358,3377 ****
+  
+    case 164:
+! #line 1274 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 165:
+! #line 1278 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE; }
+      break;
+  
+    case 166:
+! #line 1280 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
+      break;
+  
+    case 167:
+! #line 1282 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
+      break;
+--- 3358,3377 ----
+  
+    case 164:
+! #line 1274 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.command) = (yyvsp[(1) - (1)].command); }
+      break;
+  
+    case 165:
+! #line 1278 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE; }
+      break;
+  
+    case 166:
+! #line 1280 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
+      break;
+  
+    case 167:
+! #line 1282 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+      { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
+      break;
+***************
+*** 3593,3597 ****
+  
+  
+! #line 1284 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
+  
+  
+--- 3593,3597 ----
+  
+  
+! #line 1284 "/usr/src/local/bash/bash-4.3-patched/parse.y"
+  
+  
+***************
+*** 4851,4854 ****
+--- 4851,4864 ----
+  }
+  
++ char *
++ parser_remaining_input ()
++ {
++   if (shell_input_line == 0)
++     return 0;
++   if (shell_input_line_index < 0 || shell_input_line_index >= shell_input_line_len)
++     return '\0';     /* XXX */
++   return (shell_input_line + shell_input_line_index);
++ }
++ 
+  #ifdef INCLUDE_UNUSED
+  /* Back the input pointer up by one, effectively `ungetting' a character. */
+***************
+*** 6340,6345 ****
+    /* reset_parser clears shell_input_line and associated variables */
+    restore_input_line_state (&ls);
+!   if (interactive)
+!     token_to_read = 0;
+  
+    /* Need to find how many characters parse_and_execute consumed, update
+--- 6350,6355 ----
+    /* reset_parser clears shell_input_line and associated variables */
+    restore_input_line_state (&ls);
+! 
+!   token_to_read = 0;
+  
+    /* Need to find how many characters parse_and_execute consumed, update
+*** ../bash-4.3/patchlevel.h   2012-12-29 10:47:57.000000000 -0500
+--- patchlevel.h       2014-03-20 20:01:28.000000000 -0400
+***************
+*** 26,30 ****
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 29
+  
+  #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+     looks for to find the patch level (for the sccs version string). */
+  
+! #define PATCHLEVEL 30
+  
+  #endif /* _PATCHLEVEL_H_ */
diff --git a/src/patches/dnsmasq-2.71-support-nettle-3.0.patch b/src/patches/dnsmasq-2.71-support-nettle-3.0.patch
deleted file mode 100644 (file)
index 593a7cd..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-From cdb755c5f16a6768c3e8b1f345fe15fc9244228d Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Wed, 18 Jun 2014 20:52:53 +0100
-Subject: [PATCH] Fix FTBFS with Nettle-3.0.
-
----
- CHANGELOG    |    3 +++
- src/dnssec.c |   18 ++++++++++++------
- 2 files changed, 15 insertions(+), 6 deletions(-)
-
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 2ffb75d..69bfc29 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -28,6 +28,12 @@
- #include <nettle/nettle-meta.h>
- #include <nettle/bignum.h>
-+/* Nettle-3.0 moved to a new API for DSA. We use a name that's defined in the new API
-+   to detect Nettle-3, and invoke the backwards compatibility mode. */
-+#ifdef dsa_params_init
-+#include <nettle/dsa-compat.h>
-+#endif
-+
- #define SERIAL_UNDEF  -100
- #define SERIAL_EQ        0
-@@ -121,8 +127,8 @@ static int hash_init(const struct nettle_hash *hash, void **ctxp, unsigned char
-   return 1;
- }
-   
--static int rsa_verify(struct blockdata *key_data, unsigned int key_len, unsigned char *sig, size_t sig_len,
--                    unsigned char *digest, int algo)
-+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 *p;
-   size_t exp_len;
-@@ -173,8 +179,8 @@ static int rsa_verify(struct blockdata *key_data, unsigned int key_len, unsigned
-   return 0;
- }  
--static int dsa_verify(struct blockdata *key_data, unsigned int key_len, unsigned char *sig, size_t sig_len,
--                    unsigned char *digest, int algo)
-+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 *p;
-   unsigned int t;
-@@ -293,10 +299,10 @@ static int verify(struct blockdata *key_data, unsigned int key_len, unsigned cha
-   switch (algo)
-     {
-     case 1: case 5: case 7: case 8: case 10:
--      return rsa_verify(key_data, key_len, sig, sig_len, digest, algo);
-+      return dnsmasq_rsa_verify(key_data, key_len, sig, sig_len, digest, algo);
-       
-     case 3: case 6: 
--      return dsa_verify(key_data, key_len, sig, sig_len, digest, algo);
-+      return dnsmasq_dsa_verify(key_data, key_len, sig, sig_len, digest, algo);
-  
- #ifndef NO_NETTLE_ECC   
-     case 13: case 14:
--- 
-1.7.10.4
-
diff --git a/src/patches/dnsmasq-2.71-use-nettle-with-minigmp.patch b/src/patches/dnsmasq-2.71-use-nettle-with-minigmp.patch
deleted file mode 100644 (file)
index 374c9ec..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-From 063efb330a3f341c2548e2cf1f67f83e49cd6395 Mon Sep 17 00:00:00 2001
-From: Simon Kelley <simon@thekelleys.org.uk>
-Date: Tue, 17 Jun 2014 19:49:31 +0100
-Subject: [PATCH] Build config: add -DNO_GMP for use with nettle/mini-gmp
-
----
- Makefile        |    2 +-
- bld/pkg-wrapper |    9 +++++++--
- src/config.h    |    7 +++++++
- src/dnssec.c    |    3 ++-
- 4 files changed, 17 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index c58b50b..17eeb27 100644
---- a/Makefile
-+++ b/Makefile
-@@ -61,7 +61,7 @@ lua_cflags =    `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_LUASCRIPT $(PKG_CON
- lua_libs =      `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_LUASCRIPT $(PKG_CONFIG) --libs lua5.1` 
- nettle_cflags = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC $(PKG_CONFIG) --cflags nettle hogweed`
- nettle_libs =   `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC $(PKG_CONFIG) --libs nettle hogweed`
--gmp_libs =      `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC $(PKG_CONFIG) --copy -lgmp`
-+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)`\"'
-diff --git a/bld/pkg-wrapper b/bld/pkg-wrapper
-index 9f9332d..0ddb678 100755
---- a/bld/pkg-wrapper
-+++ b/bld/pkg-wrapper
-@@ -11,9 +11,14 @@ in=`cat`
- if grep "^\#[[:space:]]*define[[:space:]]*$search" config.h >/dev/null 2>&1 || \
-     echo $in | grep $search >/dev/null 2>&1; then
--
-+# Nasty, nasty, in --copy, arg 2 is another config to search for, use with NO_GMP
-     if [ $op = "--copy" ]; then
--      pkg="$*"
-+      if grep "^\#[[:space:]]*define[[:space:]]*$pkg" config.h >/dev/null 2>&1 || \
-+            echo $in | grep $pkg >/dev/null 2>&1; then
-+          pkg=""
-+      else 
-+          pkg="$*"
-+      fi
-     elif grep "^\#[[:space:]]*define[[:space:]]*${search}_STATIC" config.h >/dev/null 2>&1 || \
-             echo $in | grep ${search}_STATIC >/dev/null 2>&1; then
-       pkg=`$pkg  --static $op $*`
-diff --git a/src/config.h b/src/config.h
-index 2155544..ee6d218 100644
---- a/src/config.h
-+++ b/src/config.h
-@@ -105,6 +105,8 @@ HAVE_AUTH
-    define this to include the facility to act as an authoritative DNS
-    server for one or more zones.
-+HAVE_DNSSEC
-+   include DNSSEC validator.
- NO_IPV6
- NO_TFTP
-@@ -118,6 +120,11 @@ NO_AUTH
-    which are enabled  by default in the distributed source tree. Building dnsmasq
-    with something like "make COPTS=-DNO_SCRIPT" will do the trick.
-+NO_NETTLE_ECC
-+   Don't include the ECDSA cypher in DNSSEC validation. Needed for older Nettle versions.
-+NO_GMP
-+   Don't use and link against libgmp, Useful if nettle is built with --enable-mini-gmp.
-+
- LEASEFILE
- CONFFILE
- RESOLVFILE
-diff --git a/src/dnssec.c b/src/dnssec.c
-index 44d626b..2ffb75d 100644
---- a/src/dnssec.c
-+++ b/src/dnssec.c
-@@ -26,7 +26,8 @@
- #  include <nettle/ecc-curve.h>
- #endif
- #include <nettle/nettle-meta.h>
--#include <gmp.h>
-+#include <nettle/bignum.h>
-+
- #define SERIAL_UNDEF  -100
- #define SERIAL_EQ        0
--- 
-1.7.10.4
-
similarity index 94%
rename from src/patches/dnsmasq-2.70-Add-support-to-read-ISC-DHCP-lease-file.patch
rename to src/patches/dnsmasq-2.72rc2-Add-support-to-read-ISC-DHCP-lease-file.patch
index 3194e1f2298cc8d467c3c8d2c6592784cae8f111..9912c7ca93161bc83cfced0e435480adf48fc472 100644 (file)
@@ -1,18 +1,18 @@
 diff --git a/Makefile b/Makefile
-index 292c8bd..5e0cdbe 100644
+index 58a7975..616c6b7 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
-+       domain.o dnssec.o blockdata.o isc.o
+-       domain.o dnssec.o blockdata.o tables.o loop.o
++       domain.o dnssec.o blockdata.o tables.o loop.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 5cec918..1f5657f 100644
+index 2c3a498..77a7046 100644
 --- a/src/cache.c
 +++ b/src/cache.c
 @@ -17,7 +17,7 @@
@@ -65,10 +65,10 @@ index 5cec918..1f5657f 100644
        cache_hash(crec);
  
 diff --git a/src/dnsmasq.c b/src/dnsmasq.c
-index 1c96a0e..156ac9a 100644
+index f4a89fc..a448ec4 100644
 --- a/src/dnsmasq.c
 +++ b/src/dnsmasq.c
-@@ -934,6 +934,11 @@ int main (int argc, char **argv)
+@@ -940,6 +940,11 @@ int main (int argc, char **argv)
  
          poll_resolv(0, daemon->last_resolv != 0, now);          
          daemon->last_resolv = now;
@@ -81,18 +81,24 @@ index 1c96a0e..156ac9a 100644
        
        if (FD_ISSET(piperead, &rset))
 diff --git a/src/dnsmasq.h b/src/dnsmasq.h
-index 3032546..a40b2a9 100644
+index e74b15a..4a35168 100644
 --- a/src/dnsmasq.h
 +++ b/src/dnsmasq.h
-@@ -1447,3 +1447,8 @@ void slaac_add_addrs(struct dhcp_lease *lease, time_t now, int force);
- time_t periodic_slaac(time_t now, struct dhcp_lease *leases);
+@@ -1463,9 +1463,13 @@ time_t periodic_slaac(time_t now, struct dhcp_lease *leases);
  void slaac_ping_reply(struct in6_addr *sender, unsigned char *packet, char *interface, struct dhcp_lease *leases);
  #endif
-+
 +/* isc.c */
 +#ifdef HAVE_ISC_READER
 +void load_dhcp(time_t now);
 +#endif
++
+ /* loop.c */
+ #ifdef HAVE_LOOP
+ void loop_send_probes();
+ int detect_loop(char *query, int type);
+ #endif
+-
 diff --git a/src/isc.c b/src/isc.c
 new file mode 100644
 index 0000000..5106442
@@ -351,10 +357,10 @@ index 0000000..5106442
 +
 +#endif
 diff --git a/src/option.c b/src/option.c
-index daa728f..d16c982 100644
+index 45d8875..29c9ee5 100644
 --- a/src/option.c
 +++ b/src/option.c
-@@ -1642,7 +1642,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
+@@ -1669,7 +1669,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
        ret_err(_("bad MX target"));
        break;
  
diff --git a/src/patches/glibc/glibc-rh1008310.patch b/src/patches/glibc/glibc-rh1008310.patch
new file mode 100644 (file)
index 0000000..3658a9f
--- /dev/null
@@ -0,0 +1,45 @@
+diff -Nrup a/malloc/malloc.c b/malloc/malloc.c
+--- a/malloc/malloc.c  2013-09-23 17:08:33.698331221 -0400
++++ b/malloc/malloc.c  2013-09-23 21:04:25.901270645 -0400
+@@ -3879,6 +3879,13 @@ public_mEMALIGn(size_t alignment, size_t
+   /* Otherwise, ensure that it is at least a minimum chunk size */
+   if (alignment <  MINSIZE) alignment = MINSIZE;
++  /* Check for overflow.  */
++  if (bytes > SIZE_MAX - alignment - MINSIZE)
++    {
++      __set_errno (ENOMEM);
++      return 0;
++    }
++
+   arena_get(ar_ptr, bytes + alignment + MINSIZE);
+   if(!ar_ptr)
+     return 0;
+@@ -3924,6 +3931,13 @@ public_vALLOc(size_t bytes)
+   size_t pagesz = mp_.pagesize;
++  /* Check for overflow.  */
++  if (bytes > SIZE_MAX - pagesz - MINSIZE)
++    {
++      __set_errno (ENOMEM);
++      return 0;
++    }
++
+   __malloc_ptr_t (*hook) __MALLOC_PMT ((size_t, size_t,
+                                       __const __malloc_ptr_t)) =
+     force_reg (__memalign_hook);
+@@ -3975,6 +3989,13 @@ public_pVALLOc(size_t bytes)
+   size_t page_mask = mp_.pagesize - 1;
+   size_t rounded_bytes = (bytes + page_mask) & ~(page_mask);
++  /* Check for overflow.  */
++  if (bytes > SIZE_MAX - 2*pagesz - MINSIZE)
++    {
++      __set_errno (ENOMEM);
++      return 0;
++    }
++
+   __malloc_ptr_t (*hook) __MALLOC_PMT ((size_t, size_t,
+                                       __const __malloc_ptr_t)) =
+     force_reg (__memalign_hook);
diff --git a/src/patches/glibc/glibc-rh1022022.patch b/src/patches/glibc/glibc-rh1022022.patch
new file mode 100644 (file)
index 0000000..6d23bb1
--- /dev/null
@@ -0,0 +1,20 @@
+diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c
+index 81e928a..05883bd 100644
+--- a/sysdeps/posix/getaddrinfo.c
++++ b/sysdeps/posix/getaddrinfo.c
+@@ -832,8 +832,13 @@ gaih_inet (const char *name, const struct gaih_service *service,
+         while (!no_more)
+           {
+             no_data = 0;
+-            nss_gethostbyname4_r fct4
+-              = __nss_lookup_function (nip, "gethostbyname4_r");
++            nss_gethostbyname4_r fct4 = NULL;
++
++            /* gethostbyname4_r sends out parallel A and AAAA queries and
++               is thus only suitable for PF_UNSPEC.  */
++            if (req->ai_family == PF_UNSPEC)
++              fct4 = __nss_lookup_function (nip, "gethostbyname4_r");
++
+             if (fct4 != NULL)
+               {
+                 int herrno;
diff --git a/src/patches/glibc/glibc-rh1091162.patch b/src/patches/glibc/glibc-rh1091162.patch
new file mode 100644 (file)
index 0000000..7825682
--- /dev/null
@@ -0,0 +1,58 @@
+commit 362b47fe09ca9a928d444c7e2f7992f7f61bfc3e
+Author: Maxim Kuvyrkov <maxim@kugelworks.com>
+Date:   Tue Dec 24 09:44:50 2013 +1300
+
+    Fix race in free() of fastbin chunk: BZ #15073
+    
+    Perform sanity check only if we have_lock.  Due to lockless nature of fastbins
+    we need to be careful derefencing pointers to fastbin entries (chunksize(old)
+    in this case) in multithreaded environments.
+    
+    The fix is to add have_lock to the if-condition checks.  The rest of the patch
+    only makes code more readable.
+    
+       * malloc/malloc.c (_int_free): Perform sanity check only if we
+       have_lock.
+
+diff --git a/malloc/malloc.c b/malloc/malloc.c
+index b1668b5..5e419ad 100644
+--- a/malloc/malloc.c
++++ b/malloc/malloc.c
+@@ -3783,25 +3783,29 @@ _int_free(mstate av, mchunkptr p, int have_lock)
+     fb = &fastbin (av, idx);
+ #ifdef ATOMIC_FASTBINS
+-    mchunkptr fd;
+-    mchunkptr old = *fb;
++    /* Atomically link P to its fastbin: P->FD = *FB; *FB = P;  */
++    mchunkptr old = *fb, old2;
+     unsigned int old_idx = ~0u;
+     do
+       {
+-      /* Another simple check: make sure the top of the bin is not the
+-         record we are going to add (i.e., double free).  */
++      /* Check that the top of the bin is not the record we are going to add
++         (i.e., double free).  */
+       if (__builtin_expect (old == p, 0))
+         {
+           errstr = "double free or corruption (fasttop)";
+           goto errout;
+         }
+-      if (old != NULL)
++      /* Check that size of fastbin chunk at the top is the same as
++         size of the chunk that we are adding.  We can dereference OLD
++         only if we have the lock, otherwise it might have already been
++         deallocated.  See use of OLD_IDX below for the actual check.  */
++      if (have_lock && old != NULL)
+         old_idx = fastbin_index(chunksize(old));
+-      p->fd = fd = old;
++      p->fd = old2 = old;
+       }
+-    while ((old = catomic_compare_and_exchange_val_rel (fb, p, fd)) != fd);
++    while ((old = catomic_compare_and_exchange_val_rel (fb, p, old2)) != old2);
+-    if (fd != NULL && __builtin_expect (old_idx != idx, 0))
++    if (have_lock && old != NULL && __builtin_expect (old_idx != idx, 0))
+       {
+       errstr = "invalid fastbin entry (free)";
+       goto errout;
diff --git a/src/patches/glibc/glibc-rh1098050.patch b/src/patches/glibc/glibc-rh1098050.patch
new file mode 100644 (file)
index 0000000..e5ff3ca
--- /dev/null
@@ -0,0 +1,28 @@
+commit cf26a0cb6a0bbaca46a01ddad6662e5e5159a32a
+Author: Siddhesh Poyarekar <siddhesh@redhat.com>
+Date:   Thu May 15 12:33:11 2014 +0530
+
+    Return EAI_AGAIN for AF_UNSPEC when herrno is TRY_AGAIN (BZ #16849)
+    
+    getaddrinfo correctly returns EAI_AGAIN for AF_INET and AF_INET6
+    queries.  For AF_UNSPEC however, an older change
+    (a682a1bf553b1efe4dbb03207fece5b719cec482) broke the check and due to
+    that the returned error was EAI_NONAME.
+    
+    This patch fixes the check so that a non-authoritative not-found is
+    returned as EAI_AGAIN to the user instead of EAI_NONAME.
+
+diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c
+index 6258330..8f392b9 100644
+--- a/sysdeps/posix/getaddrinfo.c
++++ b/sysdeps/posix/getaddrinfo.c
+@@ -867,8 +867,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
+                     if (status != NSS_STATUS_TRYAGAIN
+                         || rc != ERANGE || herrno != NETDB_INTERNAL)
+                       {
+-                        if (status == NSS_STATUS_TRYAGAIN
+-                            && herrno == TRY_AGAIN)
++                        if (herrno == TRY_AGAIN)
+                           no_data = EAI_AGAIN;
+                         else
+                           no_data = herrno == NO_DATA;
diff --git a/src/patches/glibc/glibc-rh1133809-1.patch b/src/patches/glibc/glibc-rh1133809-1.patch
new file mode 100644 (file)
index 0000000..12b9949
--- /dev/null
@@ -0,0 +1,199 @@
+2014-08-21  Florian Weimer  <fweimer@redhat.com>
+
+       [BZ #17187]
+       * iconv/gconv_trans.c (struct known_trans, search_tree, lock,
+       trans_compare, open_translit, __gconv_translit_find):
+       Remove module loading code.
+
+diff --git a/iconv/gconv_trans.c b/iconv/gconv_trans.c
+index 1e25854..d71c029 100644
+--- a/iconv/gconv_trans.c
++++ b/iconv/gconv_trans.c
+@@ -238,181 +238,11 @@ __gconv_transliterate (struct __gconv_step *step,
+   return __GCONV_ILLEGAL_INPUT;
+ }
+-
+-/* Structure to represent results of found (or not) transliteration
+-   modules.  */
+-struct known_trans
+-{
+-  /* This structure must remain the first member.  */
+-  struct trans_struct info;
+-
+-  char *fname;
+-  void *handle;
+-  int open_count;
+-};
+-
+-
+-/* Tree with results of previous calls to __gconv_translit_find.  */
+-static void *search_tree;
+-
+-/* We modify global data.   */
+-__libc_lock_define_initialized (static, lock);
+-
+-
+-/* Compare two transliteration entries.  */
+-static int
+-trans_compare (const void *p1, const void *p2)
+-{
+-  const struct known_trans *s1 = (const struct known_trans *) p1;
+-  const struct known_trans *s2 = (const struct known_trans *) p2;
+-
+-  return strcmp (s1->info.name, s2->info.name);
+-}
+-
+-
+-/* Open (maybe reopen) the module named in the struct.  Get the function
+-   and data structure pointers we need.  */
+-static int
+-open_translit (struct known_trans *trans)
+-{
+-  __gconv_trans_query_fct queryfct;
+-
+-  trans->handle = __libc_dlopen (trans->fname);
+-  if (trans->handle == NULL)
+-    /* Not available.  */
+-    return 1;
+-
+-  /* Find the required symbol.  */
+-  queryfct = __libc_dlsym (trans->handle, "gconv_trans_context");
+-  if (queryfct == NULL)
+-    {
+-      /* We cannot live with that.  */
+-    close_and_out:
+-      __libc_dlclose (trans->handle);
+-      trans->handle = NULL;
+-      return 1;
+-    }
+-
+-  /* Get the context.  */
+-  if (queryfct (trans->info.name, &trans->info.csnames, &trans->info.ncsnames)
+-      != 0)
+-    goto close_and_out;
+-
+-  /* Of course we also have to have the actual function.  */
+-  trans->info.trans_fct = __libc_dlsym (trans->handle, "gconv_trans");
+-  if (trans->info.trans_fct == NULL)
+-    goto close_and_out;
+-
+-  /* Now the optional functions.  */
+-  trans->info.trans_init_fct =
+-    __libc_dlsym (trans->handle, "gconv_trans_init");
+-  trans->info.trans_context_fct =
+-    __libc_dlsym (trans->handle, "gconv_trans_context");
+-  trans->info.trans_end_fct =
+-    __libc_dlsym (trans->handle, "gconv_trans_end");
+-
+-  trans->open_count = 1;
+-
+-  return 0;
+-}
+-
+-
+ int
+ internal_function
+ __gconv_translit_find (struct trans_struct *trans)
+ {
+-  struct known_trans **found;
+-  const struct path_elem *runp;
+-  int res = 1;
+-
+-  /* We have to have a name.  */
+-  assert (trans->name != NULL);
+-
+-  /* Acquire the lock.  */
+-  __libc_lock_lock (lock);
+-
+-  /* See whether we know this module already.  */
+-  found = __tfind (trans, &search_tree, trans_compare);
+-  if (found != NULL)
+-    {
+-      /* Is this module available?  */
+-      if ((*found)->handle != NULL)
+-      {
+-        /* Maybe we have to reopen the file.  */
+-        if ((*found)->handle != (void *) -1)
+-          /* The object is not unloaded.  */
+-          res = 0;
+-        else if (open_translit (*found) == 0)
+-          {
+-            /* Copy the data.  */
+-            *trans = (*found)->info;
+-            (*found)->open_count++;
+-            res = 0;
+-          }
+-      }
+-    }
+-  else
+-    {
+-      size_t name_len = strlen (trans->name) + 1;
+-      int need_so = 0;
+-      struct known_trans *newp;
+-
+-      /* We have to continue looking for the module.  */
+-      if (__gconv_path_elem == NULL)
+-      __gconv_get_path ();
+-
+-      /* See whether we have to append .so.  */
+-      if (name_len <= 4 || memcmp (&trans->name[name_len - 4], ".so", 3) != 0)
+-      need_so = 1;
+-
+-      /* Create a new entry.  */
+-      newp = (struct known_trans *) malloc (sizeof (struct known_trans)
+-                                          + (__gconv_max_path_elem_len
+-                                             + name_len + 3)
+-                                          + name_len);
+-      if (newp != NULL)
+-      {
+-        char *cp;
+-
+-        /* Clear the struct.  */
+-        memset (newp, '\0', sizeof (struct known_trans));
+-
+-        /* Store a copy of the module name.  */
+-        newp->info.name = cp = (char *) (newp + 1);
+-        cp = __mempcpy (cp, trans->name, name_len);
+-
+-        newp->fname = cp;
+-
+-        /* Search in all the directories.  */
+-        for (runp = __gconv_path_elem; runp->name != NULL; ++runp)
+-          {
+-            cp = __mempcpy (__stpcpy ((char *) newp->fname, runp->name),
+-                            trans->name, name_len);
+-            if (need_so)
+-              memcpy (cp, ".so", sizeof (".so"));
+-
+-            if (open_translit (newp) == 0)
+-              {
+-                /* We found a module.  */
+-                res = 0;
+-                break;
+-              }
+-          }
+-
+-        if (res)
+-          newp->fname = NULL;
+-
+-        /* In any case we'll add the entry to our search tree.  */
+-        if (__tsearch (newp, &search_tree, trans_compare) == NULL)
+-          {
+-            /* Yickes, this should not happen.  Unload the object.  */
+-            res = 1;
+-            /* XXX unload here.  */
+-          }
+-      }
+-    }
+-
+-  __libc_lock_unlock (lock);
+-
+-  return res;
++  /* This function always fails.  Transliteration module loading is
++     not implemented.  */
++  return 1;
+ }
+-- 
+1.9.3
+
diff --git a/src/patches/glibc/glibc-rh1133809-2.patch b/src/patches/glibc/glibc-rh1133809-2.patch
new file mode 100644 (file)
index 0000000..8148abb
--- /dev/null
@@ -0,0 +1,625 @@
+commit 585367266923156ac6fb789939a923641ba5aaf4
+Author: Florian Weimer <fweimer@redhat.com>
+Date:   Wed May 28 14:05:03 2014 +0200
+
+    manual: Update the locale documentation
+
+commit 4e8f95a0df7c2300b830ec12c0ae1e161bc8a8a3
+Author: Florian Weimer <fweimer@redhat.com>
+Date:   Mon May 12 15:24:12 2014 +0200
+
+    _nl_find_locale: Improve handling of crafted locale names [BZ #17137]
+    
+    Prevent directory traversal in locale-related environment variables
+    (CVE-2014-0475).
+
+commit d183645616b0533b3acee28f1a95570bffbdf50f
+Author: Florian Weimer <fweimer@redhat.com>
+Date:   Wed May 28 14:41:52 2014 +0200
+
+    setlocale: Use the heap for the copy of the locale argument
+    
+    This avoids alloca calls with potentially large arguments.
+
+diff -pruN glibc-2.18/locale/findlocale.c glibc-2.18.patched/locale/findlocale.c
+--- glibc-2.18/locale/findlocale.c     2013-08-11 04:22:55.000000000 +0530
++++ glibc-2.18.patched/locale/findlocale.c     2014-08-26 16:14:50.403253778 +0530
+@@ -17,6 +17,7 @@
+    02111-1307 USA.  */
+ #include <assert.h>
++#include <errno.h>
+ #include <locale.h>
+ #include <stdlib.h>
+ #include <string.h>
+@@ -57,6 +58,45 @@ struct loaded_l10nfile *_nl_locale_file_
+ const char _nl_default_locale_path[] attribute_hidden = LOCALEDIR;
++/* Checks if the name is actually present, that is, not NULL and not
++   empty.  */
++static inline int
++name_present (const char *name)
++{
++  return name != NULL && name[0] != '\0';
++}
++
++/* Checks that the locale name neither extremely long, nor contains a
++   ".." path component (to prevent directory traversal).  */
++static inline int
++valid_locale_name (const char *name)
++{
++  /* Not set.  */
++  size_t namelen = strlen (name);
++  /* Name too long.  The limit is arbitrary and prevents stack overflow
++     issues later.  */
++  if (__builtin_expect (namelen > 255, 0))
++    return 0;
++  /* Directory traversal attempt.  */
++  static const char slashdot[4] = {'/', '.', '.', '/'};
++  if (__builtin_expect (memmem (name, namelen,
++                              slashdot, sizeof (slashdot)) != NULL, 0))
++    return 0;
++  if (namelen == 2 && __builtin_expect (name[0] == '.' && name [1] == '.', 0))
++    return 0;
++  if (namelen >= 3
++      && __builtin_expect (((name[0] == '.'
++                           && name[1] == '.'
++                           && name[2] == '/')
++                          || (name[namelen - 3] == '/'
++                              && name[namelen - 2] == '.'
++                              && name[namelen - 1] == '.')), 0))
++    return 0;
++  /* If there is a slash in the name, it must start with one.  */
++  if (__builtin_expect (memchr (name, '/', namelen) != NULL, 0) && name[0] != '/')
++    return 0;
++  return 1;
++}
+ struct __locale_data *
+ internal_function
+@@ -65,7 +105,7 @@ _nl_find_locale (const char *locale_path
+ {
+   int mask;
+   /* Name of the locale for this category.  */
+-  char *loc_name;
++  char *loc_name = (char *) *name;
+   const char *language;
+   const char *modifier;
+   const char *territory;
+@@ -73,31 +113,39 @@ _nl_find_locale (const char *locale_path
+   const char *normalized_codeset;
+   struct loaded_l10nfile *locale_file;
+-  if ((*name)[0] == '\0')
++  if (loc_name[0] == '\0')
+     {
+       /* The user decides which locale to use by setting environment
+        variables.  */
+-      *name = getenv ("LC_ALL");
+-      if (*name == NULL || (*name)[0] == '\0')
+-      *name = getenv (_nl_category_names.str
++      loc_name = getenv ("LC_ALL");
++      if (!name_present (loc_name))
++      loc_name = getenv (_nl_category_names.str
+                       + _nl_category_name_idxs[category]);
+-      if (*name == NULL || (*name)[0] == '\0')
+-      *name = getenv ("LANG");
++      if (!name_present (loc_name))
++      loc_name = getenv ("LANG");
++      if (!name_present (loc_name))
++      loc_name = (char *) _nl_C_name;
+     }
+-  if (*name == NULL || (*name)[0] == '\0'
+-      || (__builtin_expect (__libc_enable_secure, 0)
+-        && strchr (*name, '/') != NULL))
+-    *name = (char *) _nl_C_name;
++  /* We used to fall back to the C locale if the name contains a slash
++     character '/', but we now check for directory traversal in
++     valid_locale_name, so this is no longer necessary.  */
+-  if (__builtin_expect (strcmp (*name, _nl_C_name), 1) == 0
+-      || __builtin_expect (strcmp (*name, _nl_POSIX_name), 1) == 0)
++  if (__builtin_expect (strcmp (loc_name, _nl_C_name), 1) == 0
++      || __builtin_expect (strcmp (loc_name, _nl_POSIX_name), 1) == 0)
+     {
+       /* We need not load anything.  The needed data is contained in
+        the library itself.  */
+       *name = (char *) _nl_C_name;
+       return _nl_C[category];
+     }
++  else if (!valid_locale_name (loc_name))
++    {
++      __set_errno (EINVAL);
++      return NULL;
++    }
++
++  *name = loc_name;
+   /* We really have to load some data.  First we try the archive,
+      but only if there was no LOCPATH environment variable specified.  */
+diff -pruN glibc-2.18/locale/setlocale.c glibc-2.18.patched/locale/setlocale.c
+--- glibc-2.18/locale/setlocale.c      2013-08-11 04:22:55.000000000 +0530
++++ glibc-2.18.patched/locale/setlocale.c      2014-08-26 16:14:50.401253764 +0530
+@@ -272,6 +272,8 @@ setlocale (int category, const char *loc
+        of entries of the form `CATEGORY=VALUE'.  */
+       const char *newnames[__LC_LAST];
+       struct __locale_data *newdata[__LC_LAST];
++      /* Copy of the locale argument, for in-place splitting.  */
++      char *locale_copy = NULL;
+       /* Set all name pointers to the argument name.  */
+       for (category = 0; category < __LC_LAST; ++category)
+@@ -281,7 +283,13 @@ setlocale (int category, const char *loc
+       if (__builtin_expect (strchr (locale, ';') != NULL, 0))
+       {
+         /* This is a composite name.  Make a copy and split it up.  */
+-        char *np = strdupa (locale);
++        locale_copy = strdup (locale);
++        if (__builtin_expect (locale_copy == NULL, 0))
++          {
++            __libc_rwlock_unlock (__libc_setlocale_lock);
++            return NULL;
++          }
++        char *np = locale_copy;
+         char *cp;
+         int cnt;
+@@ -299,6 +307,7 @@ setlocale (int category, const char *loc
+               {
+               error_return:
+                 __libc_rwlock_unlock (__libc_setlocale_lock);
++                free (locale_copy);
+                 /* Bogus category name.  */
+                 ERROR_RETURN;
+@@ -391,8 +400,9 @@ setlocale (int category, const char *loc
+       /* Critical section left.  */
+       __libc_rwlock_unlock (__libc_setlocale_lock);
+-      /* Free the resources (the locale path variable).  */
++      /* Free the resources.  */
+       free (locale_path);
++      free (locale_copy);
+       return composite;
+     }
+diff -pruN glibc-2.18/localedata/Makefile glibc-2.18.patched/localedata/Makefile
+--- glibc-2.18/localedata/Makefile     2014-08-26 16:15:22.656474571 +0530
++++ glibc-2.18.patched/localedata/Makefile     2014-08-26 16:14:50.403253778 +0530
+@@ -77,7 +77,7 @@ locale_test_suite := tst_iswalnum tst_is
+ tests = $(locale_test_suite) tst-digits tst-setlocale bug-iconv-trans \
+       tst-leaks tst-mbswcs6 tst-xlocale1 tst-xlocale2 bug-usesetlocale \
+-      tst-strfmon1 tst-sscanf tst-strptime
++      tst-strfmon1 tst-sscanf tst-strptime tst-setlocale3
+ ifeq (yes,$(build-shared))
+ ifneq (no,$(PERL))
+ tests: $(objpfx)mtrace-tst-leaks
+@@ -288,6 +288,7 @@ tst-strfmon1-ENV = $(TEST_MBWC_ENV)
+ tst-strptime-ENV = $(TEST_MBWC_ENV)
+ tst-setlocale-ENV = LOCPATH=$(common-objpfx)localedata LC_ALL=ja_JP.EUC-JP
++tst-setlocale3-ENV = LOCPATH=$(common-objpfx)localedata
+ bug-iconv-trans-ENV = LOCPATH=$(common-objpfx)localedata
+diff -pruN glibc-2.18/localedata/tst-setlocale3.c glibc-2.18.patched/localedata/tst-setlocale3.c
+--- glibc-2.18/localedata/tst-setlocale3.c     1970-01-01 05:30:00.000000000 +0530
++++ glibc-2.18.patched/localedata/tst-setlocale3.c     2014-08-26 16:14:50.403253778 +0530
+@@ -0,0 +1,203 @@
++/* Regression test for setlocale invalid environment variable handling.
++   Copyright (C) 2014 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
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library 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
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <http://www.gnu.org/licenses/>.  */
++
++#include <locale.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++
++/* The result of setlocale may be overwritten by subsequent calls, so
++   this wrapper makes a copy.  */
++static char *
++setlocale_copy (int category, const char *locale)
++{
++  const char *result = setlocale (category, locale);
++  if (result == NULL)
++    return NULL;
++  return strdup (result);
++}
++
++static char *de_locale;
++
++static void
++setlocale_fail (const char *envstring)
++{
++  setenv ("LC_CTYPE", envstring, 1);
++  if (setlocale (LC_CTYPE, "") != NULL)
++    {
++      printf ("unexpected setlocale success for \"%s\" locale\n", envstring);
++      exit (1);
++    }
++  const char *newloc = setlocale (LC_CTYPE, NULL);
++  if (strcmp (newloc, de_locale) != 0)
++    {
++      printf ("failed setlocale call \"%s\" changed locale to \"%s\"\n",
++            envstring, newloc);
++      exit (1);
++    }
++}
++
++static void
++setlocale_success (const char *envstring)
++{
++  setenv ("LC_CTYPE", envstring, 1);
++  char *newloc = setlocale_copy (LC_CTYPE, "");
++  if (newloc == NULL)
++    {
++      printf ("setlocale for \"%s\": %m\n", envstring);
++      exit (1);
++    }
++  if (strcmp (newloc, de_locale) == 0)
++    {
++      printf ("setlocale with LC_CTYPE=\"%s\" left locale at \"%s\"\n",
++            envstring, de_locale);
++      exit (1);
++    }
++  if (setlocale (LC_CTYPE, de_locale) == NULL)
++    {
++      printf ("restoring locale \"%s\" with LC_CTYPE=\"%s\": %m\n",
++            de_locale, envstring);
++      exit (1);
++    }
++  char *newloc2 = setlocale_copy (LC_CTYPE, newloc);
++  if (newloc2 == NULL)
++    {
++      printf ("restoring locale \"%s\" following \"%s\": %m\n",
++            newloc, envstring);
++      exit (1);
++    }
++  if (strcmp (newloc, newloc2) != 0)
++    {
++      printf ("representation of locale \"%s\" changed from \"%s\" to \"%s\"",
++            envstring, newloc, newloc2);
++      exit (1);
++    }
++  free (newloc);
++  free (newloc2);
++
++  if (setlocale (LC_CTYPE, de_locale) == NULL)
++    {
++      printf ("restoring locale \"%s\" with LC_CTYPE=\"%s\": %m\n",
++            de_locale, envstring);
++      exit (1);
++    }
++}
++
++/* Checks that a known-good locale still works if LC_ALL contains a
++   value which should be ignored.  */
++static void
++setlocale_ignore (const char *to_ignore)
++{
++  const char *fr_locale = "fr_FR.UTF-8";
++  setenv ("LC_CTYPE", fr_locale, 1);
++  char *expected_locale = setlocale_copy (LC_CTYPE, "");
++  if (expected_locale == NULL)
++    {
++      printf ("setlocale with LC_CTYPE=\"%s\" failed: %m\n", fr_locale);
++      exit (1);
++    }
++  if (setlocale (LC_CTYPE, de_locale) == NULL)
++    {
++      printf ("failed to restore locale: %m\n");
++      exit (1);
++    }
++  unsetenv ("LC_CTYPE");
++
++  setenv ("LC_ALL", to_ignore, 1);
++  setenv ("LC_CTYPE", fr_locale, 1);
++  const char *actual_locale = setlocale (LC_CTYPE, "");
++  if (actual_locale == NULL)
++    {
++      printf ("setlocale with LC_ALL, LC_CTYPE=\"%s\" failed: %m\n",
++            fr_locale);
++      exit (1);
++    }
++  if (strcmp (actual_locale, expected_locale) != 0)
++    {
++      printf ("setlocale under LC_ALL failed: got \"%s\", expected \"%s\"\n",
++            actual_locale, expected_locale);
++      exit (1);
++    }
++  unsetenv ("LC_CTYPE");
++  setlocale_success (fr_locale);
++  unsetenv ("LC_ALL");
++  free (expected_locale);
++}
++
++static int
++do_test (void)
++{
++  /* The glibc test harness sets this environment variable
++     uncondionally.  */
++  unsetenv ("LC_ALL");
++
++  de_locale = setlocale_copy (LC_CTYPE, "de_DE.UTF-8");
++  if (de_locale == NULL)
++    {
++      printf ("setlocale (LC_CTYPE, \"de_DE.UTF-8\"): %m\n");
++      return 1;
++    }
++  setlocale_success ("C");
++  setlocale_success ("en_US.UTF-8");
++  setlocale_success ("/en_US.UTF-8");
++  setlocale_success ("//en_US.UTF-8");
++  setlocale_ignore ("");
++
++  setlocale_fail ("does-not-exist");
++  setlocale_fail ("/");
++  setlocale_fail ("/../localedata/en_US.UTF-8");
++  setlocale_fail ("en_US.UTF-8/");
++  setlocale_fail ("en_US.UTF-8/..");
++  setlocale_fail ("en_US.UTF-8/../en_US.UTF-8");
++  setlocale_fail ("../localedata/en_US.UTF-8");
++  {
++    size_t large_length = 1024;
++    char *large_name = malloc (large_length + 1);
++    if (large_name == NULL)
++      {
++      puts ("malloc failure");
++      return 1;
++      }
++    memset (large_name, '/', large_length);
++    const char *suffix = "en_US.UTF-8";
++    strcpy (large_name + large_length - strlen (suffix), suffix);
++    setlocale_fail (large_name);
++    free (large_name);
++  }
++  {
++    size_t huge_length = 64 * 1024 * 1024;
++    char *huge_name = malloc (huge_length + 1);
++    if (huge_name == NULL)
++      {
++      puts ("malloc failure");
++      return 1;
++      }
++    memset (huge_name, 'X', huge_length);
++    huge_name[huge_length] = '\0';
++    /* Construct a composite locale specification. */
++    const char *prefix = "LC_CTYPE=de_DE.UTF-8;LC_TIME=";
++    memcpy (huge_name, prefix, strlen (prefix));
++    setlocale_fail (huge_name);
++    free (huge_name);
++  }
++
++  return 0;
++}
++
++#define TEST_FUNCTION do_test ()
++#include "../test-skeleton.c"
+diff -pruN glibc-2.18/manual/locale.texi glibc-2.18.patched/manual/locale.texi
+--- glibc-2.18/manual/locale.texi      2013-08-11 04:22:55.000000000 +0530
++++ glibc-2.18.patched/manual/locale.texi      2014-08-26 16:14:50.404253785 +0530
+@@ -29,6 +29,7 @@ will follow the conventions preferred by
+ * Setting the Locale::          How a program specifies the locale
+                                  with library functions.
+ * Standard Locales::            Locale names available on all systems.
++* Locale Names::                Format of system-specific locale names.
+ * Locale Information::          How to access the information for the locale.
+ * Formatting Numbers::          A dedicated function to format numbers.
+ * Yes-or-No Questions::         Check a Response against the locale.
+@@ -99,14 +100,16 @@ locale named @samp{espana-castellano} to
+ most of Spain.
+ The set of locales supported depends on the operating system you are
+-using, and so do their names.  We can't make any promises about what
+-locales will exist, except for one standard locale called @samp{C} or
+-@samp{POSIX}.  Later we will describe how to construct locales.
+-@comment (@pxref{Building Locale Files}).
++using, and so do their names, except that the standard locale called
++@samp{C} or @samp{POSIX} always exist.  @xref{Locale Names}.
++
++In order to force the system to always use the default locale, the
++user can set the @code{LC_ALL} environment variable to @samp{C}.
+ @cindex combining locales
+-A user also has the option of specifying different locales for different
+-purposes---in effect, choosing a mixture of multiple locales.
++A user also has the option of specifying different locales for
++different purposes---in effect, choosing a mixture of multiple
++locales.  @xref{Locale Categories}.
+ For example, the user might specify the locale @samp{espana-castellano}
+ for most purposes, but specify the locale @samp{usa-english} for
+@@ -120,7 +123,7 @@ which locales apply.  However, the user
+ for a particular subset of those purposes.
+ @node Locale Categories, Setting the Locale, Choosing Locale, Locales
+-@section Categories of Activities that Locales Affect
++@section Locale Categories
+ @cindex categories for locales
+ @cindex locale categories
+@@ -128,7 +131,11 @@ The purposes that locales serve are grou
+ that a user or a program can choose the locale for each category
+ independently.  Here is a table of categories; each name is both an
+ environment variable that a user can set, and a macro name that you can
+-use as an argument to @code{setlocale}.
++use as the first argument to @code{setlocale}.
++
++The contents of the environment variable (or the string in the second
++argument to @code{setlocale}) has to be a valid locale name.
++@xref{Locale Names}.
+ @vtable @code
+ @comment locale.h
+@@ -172,7 +179,7 @@ for affirmative and negative responses.
+ @comment locale.h
+ @comment ISO
+ @item LC_ALL
+-This is not an environment variable; it is only a macro that you can use
++This is not a category; it is only a macro that you can use
+ with @code{setlocale} to set a single locale for all purposes.  Setting
+ this environment variable overwrites all selections by the other
+ @code{LC_*} variables or @code{LANG}.
+@@ -225,13 +232,7 @@ The symbols in this section are defined
+ @comment ISO
+ @deftypefun {char *} setlocale (int @var{category}, const char *@var{locale})
+ The function @code{setlocale} sets the current locale for category
+-@var{category} to @var{locale}.  A list of all the locales the system
+-provides can be created by running
+-
+-@pindex locale
+-@smallexample
+-  locale -a
+-@end smallexample
++@var{category} to @var{locale}.
+ If @var{category} is @code{LC_ALL}, this specifies the locale for all
+ purposes.  The other possible values of @var{category} specify an
+@@ -256,10 +257,9 @@ is passed in as @var{locale} parameter.
+ When you read the current locale for category @code{LC_ALL}, the value
+ encodes the entire combination of selected locales for all categories.
+-In this case, the value is not just a single locale name.  In fact, we
+-don't make any promises about what it looks like.  But if you specify
+-the same ``locale name'' with @code{LC_ALL} in a subsequent call to
+-@code{setlocale}, it restores the same combination of locale selections.
++If you specify the same ``locale name'' with @code{LC_ALL} in a
++subsequent call to @code{setlocale}, it restores the same combination
++of locale selections.
+ To be sure you can use the returned string encoding the currently selected
+ locale at a later time, you must make a copy of the string.  It is not
+@@ -275,6 +275,11 @@ for @var{category}.
+ If a nonempty string is given for @var{locale}, then the locale of that
+ name is used if possible.
++The effective locale name (either the second argument to
++@code{setlocale}, or if the argument is an empty string, the name
++obtained from the process environment) must be valid locale name.
++@xref{Locale Names}.
++
+ If you specify an invalid locale name, @code{setlocale} returns a null
+ pointer and leaves the current locale unchanged.
+ @end deftypefun
+@@ -328,7 +323,7 @@ locale categories, and future versions o
+ portability, assume that any symbol beginning with @samp{LC_} might be
+ defined in @file{locale.h}.
+-@node Standard Locales, Locale Information, Setting the Locale, Locales
++@node Standard Locales, Locale Names, Setting the Locale, Locales
+ @section Standard Locales
+ The only locale names you can count on finding on all operating systems
+@@ -362,7 +357,94 @@ with the environment, rather than trying
+ locale explicitly by name.  Remember, different machines might have
+ different sets of locales installed.
+-@node Locale Information, Formatting Numbers, Standard Locales, Locales
++@node Locale Names, Locale Information, Standard Locales, Locales
++@section Locale Names
++
++The following command prints a list of locales supported by the
++system:
++
++@pindex locale
++@smallexample
++  locale -a
++@end smallexample
++
++@strong{Portability Note:} With the notable exception of the standard
++locale names @samp{C} and @samp{POSIX}, locale names are
++system-specific.
++
++Most locale names follow XPG syntax and consist of up to four parts:
++
++@smallexample
++@var{language}[_@var{territory}[.@var{codeset}]][@@@var{modifier}]
++@end smallexample
++
++Beside the first part, all of them are allowed to be missing.  If the
++full specified locale is not found, less specific ones are looked for.
++The various parts will be stripped off, in the following order:
++
++@enumerate
++@item
++codeset
++@item
++normalized codeset
++@item
++territory
++@item
++modifier
++@end enumerate
++
++For example, the locale name @samp{de_AT.iso885915@@euro} denotes a
++German-language locale for use in Austria, using the ISO-8859-15
++(Latin-9) character set, and with the Euro as the currency symbol.
++
++In addition to locale names which follow XPG syntax, systems may
++provide aliases such as @samp{german}.  Both categories of names must
++not contain the slash character @samp{/}.
++
++If the locale name starts with a slash @samp{/}, it is treated as a
++path relative to the configured locale directories; see @code{LOCPATH}
++below.  The specified path must not contain a component @samp{..}, or
++the name is invalid, and @code{setlocale} will fail.
++
++@strong{Portability Note:} POSIX suggests that if a locale name starts
++with a slash @samp{/}, it is resolved as an absolute path.  However,
++the GNU C Library treats it as a relative path under the directories listed
++in @code{LOCPATH} (or the default locale directory if @code{LOCPATH}
++is unset).
++
++Locale names which are longer than an implementation-defined limit are
++invalid and cause @code{setlocale} to fail.
++
++As a special case, locale names used with @code{LC_ALL} can combine
++several locales, reflecting different locale settings for different
++categories.  For example, you might want to use a U.S. locale with ISO
++A4 paper format, so you set @code{LANG} to @samp{en_US.UTF-8}, and
++@code{LC_PAPER} to @samp{de_DE.UTF-8}.  In this case, the
++@code{LC_ALL}-style combined locale name is
++
++@smallexample
++LC_CTYPE=en_US.UTF-8;LC_TIME=en_US.UTF-8;LC_PAPER=de_DE.UTF-8;@dots{}
++@end smallexample
++
++followed by other category settings not shown here.
++
++@vindex LOCPATH
++The path used for finding locale data can be set using the
++@code{LOCPATH} environment variable.  This variable lists the
++directories in which to search for locale definitions, separated by a
++colon @samp{:}.
++
++The default path for finding locale data is system specific.  A typical
++value for the @code{LOCPATH} default is:
++
++@smallexample
++/usr/share/locale
++@end smallexample
++
++The value of @code{LOCPATH} is ignored by privileged programs for
++security reasons, and only the default directory is used.
++
++@node Locale Information, Formatting Numbers, Locale Names, Locales
+ @section Accessing Locale Information
+ There are several ways to access locale information.  The simplest
diff --git a/src/patches/lzo-2.06-CVE-2014-4607.patch b/src/patches/lzo-2.06-CVE-2014-4607.patch
new file mode 100755 (executable)
index 0000000..d22c406
--- /dev/null
@@ -0,0 +1,245 @@
+diff --git a/minilzo/minilzo.c b/minilzo/minilzo.c
+index 34ce0f0..ecfdf66 100644
+--- a/minilzo/minilzo.c
++++ b/minilzo/minilzo.c
+@@ -3547,6 +3547,8 @@ DO_COMPRESS      ( const lzo_bytep in , lzo_uint  in_len,
+ #undef TEST_LBO
+ #undef NEED_IP
+ #undef NEED_OP
++#undef TEST_IV
++#undef TEST_OV
+ #undef HAVE_TEST_IP
+ #undef HAVE_TEST_OP
+ #undef HAVE_NEED_IP
+@@ -3561,6 +3563,7 @@ DO_COMPRESS      ( const lzo_bytep in , lzo_uint  in_len,
+ #  if (LZO_TEST_OVERRUN_INPUT >= 2)
+ #    define NEED_IP(x) \
+             if ((lzo_uint)(ip_end - ip) < (lzo_uint)(x))  goto input_overrun
++#    define TEST_IV(x)          if ((x) > (lzo_uint)0 - (511)) goto input_overrun
+ #  endif
+ #endif
+@@ -3572,6 +3575,7 @@ DO_COMPRESS      ( const lzo_bytep in , lzo_uint  in_len,
+ #    undef TEST_OP
+ #    define NEED_OP(x) \
+             if ((lzo_uint)(op_end - op) < (lzo_uint)(x))  goto output_overrun
++#    define TEST_OV(x)          if ((x) > (lzo_uint)0 - (511)) goto output_overrun
+ #  endif
+ #endif
+@@ -3602,11 +3606,13 @@ DO_COMPRESS      ( const lzo_bytep in , lzo_uint  in_len,
+ #  define HAVE_NEED_IP 1
+ #else
+ #  define NEED_IP(x)            ((void) 0)
++#  define TEST_IV(x)            ((void) 0)
+ #endif
+ #if defined(NEED_OP)
+ #  define HAVE_NEED_OP 1
+ #else
+ #  define NEED_OP(x)            ((void) 0)
++#  define TEST_OV(x)            ((void) 0)
+ #endif
+ #if defined(HAVE_TEST_IP) || defined(HAVE_NEED_IP)
+@@ -3687,6 +3693,7 @@ DO_DECOMPRESS  ( const lzo_bytep in , lzo_uint  in_len,
+             {
+                 t += 255;
+                 ip++;
++                TEST_IV(t);
+                 NEED_IP(1);
+             }
+             t += 15 + *ip++;
+@@ -3835,6 +3842,7 @@ match:
+                     {
+                         t += 255;
+                         ip++;
++                        TEST_OV(t);
+                         NEED_IP(1);
+                     }
+                     t += 31 + *ip++;
+@@ -3879,6 +3887,7 @@ match:
+                     {
+                         t += 255;
+                         ip++;
++                        TEST_OV(t);
+                         NEED_IP(1);
+                     }
+                     t += 7 + *ip++;
+@@ -4073,6 +4082,8 @@ lookbehind_overrun:
+ #undef TEST_LBO
+ #undef NEED_IP
+ #undef NEED_OP
++#undef TEST_IV
++#undef TEST_OV
+ #undef HAVE_TEST_IP
+ #undef HAVE_TEST_OP
+ #undef HAVE_NEED_IP
+@@ -4087,6 +4098,7 @@ lookbehind_overrun:
+ #  if (LZO_TEST_OVERRUN_INPUT >= 2)
+ #    define NEED_IP(x) \
+             if ((lzo_uint)(ip_end - ip) < (lzo_uint)(x))  goto input_overrun
++#    define TEST_IV(x)          if ((x) > (lzo_uint)0 - (511)) goto input_overrun
+ #  endif
+ #endif
+@@ -4098,6 +4110,7 @@ lookbehind_overrun:
+ #    undef TEST_OP
+ #    define NEED_OP(x) \
+             if ((lzo_uint)(op_end - op) < (lzo_uint)(x))  goto output_overrun
++#    define TEST_OV(x)          if ((x) > (lzo_uint)0 - (511)) goto output_overrun
+ #  endif
+ #endif
+@@ -4128,11 +4141,13 @@ lookbehind_overrun:
+ #  define HAVE_NEED_IP 1
+ #else
+ #  define NEED_IP(x)            ((void) 0)
++#  define TEST_IV(x)            ((void) 0)
+ #endif
+ #if defined(NEED_OP)
+ #  define HAVE_NEED_OP 1
+ #else
+ #  define NEED_OP(x)            ((void) 0)
++#  define TEST_OV(x)            ((void) 0)
+ #endif
+ #if defined(HAVE_TEST_IP) || defined(HAVE_NEED_IP)
+@@ -4213,6 +4228,7 @@ DO_DECOMPRESS  ( const lzo_bytep in , lzo_uint  in_len,
+             {
+                 t += 255;
+                 ip++;
++                TEST_IV(t);
+                 NEED_IP(1);
+             }
+             t += 15 + *ip++;
+@@ -4361,6 +4377,7 @@ match:
+                     {
+                         t += 255;
+                         ip++;
++                        TEST_OV(t);
+                         NEED_IP(1);
+                     }
+                     t += 31 + *ip++;
+@@ -4405,6 +4422,7 @@ match:
+                     {
+                         t += 255;
+                         ip++;
++                        TEST_OV(t);
+                         NEED_IP(1);
+                     }
+                     t += 7 + *ip++;
+diff --git a/src/lzo1_d.ch b/src/lzo1_d.ch
+index 40a5bfd..c442d9c 100644
+--- a/src/lzo1_d.ch
++++ b/src/lzo1_d.ch
+@@ -76,6 +76,8 @@
+ #undef TEST_LBO
+ #undef NEED_IP
+ #undef NEED_OP
++#undef TEST_IV
++#undef TEST_OV
+ #undef HAVE_TEST_IP
+ #undef HAVE_TEST_OP
+ #undef HAVE_NEED_IP
+@@ -91,6 +93,7 @@
+ #  if (LZO_TEST_OVERRUN_INPUT >= 2)
+ #    define NEED_IP(x) \
+             if ((lzo_uint)(ip_end - ip) < (lzo_uint)(x))  goto input_overrun
++#    define TEST_IV(x)          if ((x) > (lzo_uint)0 - (511)) goto input_overrun
+ #  endif
+ #endif
+@@ -102,6 +105,7 @@
+ #    undef TEST_OP              /* don't need both of the tests here */
+ #    define NEED_OP(x) \
+             if ((lzo_uint)(op_end - op) < (lzo_uint)(x))  goto output_overrun
++#    define TEST_OV(x)          if ((x) > (lzo_uint)0 - (511)) goto output_overrun
+ #  endif
+ #endif
+@@ -135,11 +139,13 @@
+ #  define HAVE_NEED_IP 1
+ #else
+ #  define NEED_IP(x)            ((void) 0)
++#  define TEST_IV(x)            ((void) 0)
+ #endif
+ #if defined(NEED_OP)
+ #  define HAVE_NEED_OP 1
+ #else
+ #  define NEED_OP(x)            ((void) 0)
++#  define TEST_OV(x)            ((void) 0)
+ #endif
+diff --git a/src/lzo1b_d.ch b/src/lzo1b_d.ch
+index fe5f361..36b4b6b 100644
+--- a/src/lzo1b_d.ch
++++ b/src/lzo1b_d.ch
+@@ -187,6 +187,7 @@ match:
+                 {
+                     t += 255;
+                     ip++;
++                    TEST_OV(t);
+                     NEED_IP(1);
+                 }
+                 t += (M4_MIN_LEN - M3_MIN_LEN) + *ip++;
+diff --git a/src/lzo1f_d.ch b/src/lzo1f_d.ch
+index 9e942f5..0c2199e 100644
+--- a/src/lzo1f_d.ch
++++ b/src/lzo1f_d.ch
+@@ -84,6 +84,7 @@ DO_DECOMPRESS  ( const lzo_bytep in , lzo_uint  in_len,
+             {
+                 t += 255;
+                 ip++;
++                TEST_IV(t);
+                 NEED_IP(1);
+             }
+             t += 31 + *ip++;
+@@ -138,6 +139,7 @@ match:
+                         {
+                             t += 255;
+                             ip++;
++                            TEST_OV(t);
+                             NEED_IP(1);
+                         }
+                         t += 31 + *ip++;
+diff --git a/src/lzo1x_d.ch b/src/lzo1x_d.ch
+index 49cf326..c804cc7 100644
+--- a/src/lzo1x_d.ch
++++ b/src/lzo1x_d.ch
+@@ -120,6 +120,7 @@ DO_DECOMPRESS  ( const lzo_bytep in , lzo_uint  in_len,
+             {
+                 t += 255;
+                 ip++;
++                TEST_IV(t);
+                 NEED_IP(1);
+             }
+             t += 15 + *ip++;
+@@ -273,6 +274,7 @@ match:
+                     {
+                         t += 255;
+                         ip++;
++                        TEST_OV(t);
+                         NEED_IP(1);
+                     }
+                     t += 31 + *ip++;
+@@ -317,6 +319,7 @@ match:
+                     {
+                         t += 255;
+                         ip++;
++                        TEST_OV(t);
+                         NEED_IP(1);
+                     }
+                     t += 7 + *ip++;
+diff --git a/src/lzo2a_d.ch b/src/lzo2a_d.ch
+index 48e51ca..954f07e 100644
+--- a/src/lzo2a_d.ch
++++ b/src/lzo2a_d.ch
+@@ -131,6 +131,7 @@ DO_DECOMPRESS    ( const lzo_bytep in , lzo_uint  in_len,
+             {
+                 t += 255;
+                 ip++;
++                TEST_OV(t);
+                 NEED_IP(1);
+             }
+             t += *ip++;
diff --git a/src/patches/mitkrb-1.12.1-db2_fix-1.patch b/src/patches/mitkrb-1.12.1-db2_fix-1.patch
new file mode 100644 (file)
index 0000000..f27304c
--- /dev/null
@@ -0,0 +1,175 @@
+Submitted By:            Pierre Labastie <pierre dot labastie at eamil dot fr>
+Date:                    2014-03-04
+Initial Package Version: 1.12.1
+Upstream Status:         In upstream GIT
+Origin:                  Upstream
+Description:             Fixes http://krbdev.mit.edu/rt/Ticket/Display.html?id=7860
+
+--- a/src/plugins/kdb/db2/libdb2/mpool/mpool.c
++++ b/src/plugins/kdb/db2/libdb2/mpool/mpool.c
+@@ -81,9 +81,9 @@ mpool_open(key, fd, pagesize, maxcache)
+       /* Allocate and initialize the MPOOL cookie. */
+       if ((mp = (MPOOL *)calloc(1, sizeof(MPOOL))) == NULL)
+               return (NULL);
+-      CIRCLEQ_INIT(&mp->lqh);
++      TAILQ_INIT(&mp->lqh);
+       for (entry = 0; entry < HASHSIZE; ++entry)
+-              CIRCLEQ_INIT(&mp->hqh[entry]);
++              TAILQ_INIT(&mp->hqh[entry]);
+       mp->maxcache = maxcache;
+       mp->npages = sb.st_size / pagesize;
+       mp->pagesize = pagesize;
+@@ -143,8 +143,8 @@ mpool_new(mp, pgnoaddr, flags)
+       bp->flags = MPOOL_PINNED | MPOOL_INUSE;
+       head = &mp->hqh[HASHKEY(bp->pgno)];
+-      CIRCLEQ_INSERT_HEAD(head, bp, hq);
+-      CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q);
++      TAILQ_INSERT_HEAD(head, bp, hq);
++      TAILQ_INSERT_TAIL(&mp->lqh, bp, q);
+       return (bp->page);
+ }
+@@ -168,8 +168,8 @@ mpool_delete(mp, page)
+       /* Remove from the hash and lru queues. */
+       head = &mp->hqh[HASHKEY(bp->pgno)];
+-      CIRCLEQ_REMOVE(head, bp, hq);
+-      CIRCLEQ_REMOVE(&mp->lqh, bp, q);
++      TAILQ_REMOVE(head, bp, hq);
++      TAILQ_REMOVE(&mp->lqh, bp, q);
+       free(bp);
+       return (RET_SUCCESS);
+@@ -208,10 +208,10 @@ mpool_get(mp, pgno, flags)
+                * of the lru chain.
+                */
+               head = &mp->hqh[HASHKEY(bp->pgno)];
+-              CIRCLEQ_REMOVE(head, bp, hq);
+-              CIRCLEQ_INSERT_HEAD(head, bp, hq);
+-              CIRCLEQ_REMOVE(&mp->lqh, bp, q);
+-              CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q);
++              TAILQ_REMOVE(head, bp, hq);
++              TAILQ_INSERT_HEAD(head, bp, hq);
++              TAILQ_REMOVE(&mp->lqh, bp, q);
++              TAILQ_INSERT_TAIL(&mp->lqh, bp, q);
+               /* Return a pinned page. */
+               bp->flags |= MPOOL_PINNED;
+@@ -261,8 +261,8 @@ mpool_get(mp, pgno, flags)
+        * of the lru chain.
+        */
+       head = &mp->hqh[HASHKEY(bp->pgno)];
+-      CIRCLEQ_INSERT_HEAD(head, bp, hq);
+-      CIRCLEQ_INSERT_TAIL(&mp->lqh, bp, q);
++      TAILQ_INSERT_HEAD(head, bp, hq);
++      TAILQ_INSERT_TAIL(&mp->lqh, bp, q);
+       /* Run through the user's filter. */
+       if (mp->pgin != NULL)
+@@ -311,8 +311,8 @@ mpool_close(mp)
+       BKT *bp;
+       /* Free up any space allocated to the lru pages. */
+-      while ((bp = mp->lqh.cqh_first) != (void *)&mp->lqh) {
+-              CIRCLEQ_REMOVE(&mp->lqh, mp->lqh.cqh_first, q);
++      while ((bp = mp->lqh.tqh_first) != NULL) {
++              TAILQ_REMOVE(&mp->lqh, mp->lqh.tqh_first, q);
+               free(bp);
+       }
+@@ -332,8 +332,7 @@ mpool_sync(mp)
+       BKT *bp;
+       /* Walk the lru chain, flushing any dirty pages to disk. */
+-      for (bp = mp->lqh.cqh_first;
+-          bp != (void *)&mp->lqh; bp = bp->q.cqe_next)
++      for (bp = mp->lqh.tqh_first; bp != NULL; bp = bp->q.tqe_next)
+               if (bp->flags & MPOOL_DIRTY &&
+                   mpool_write(mp, bp) == RET_ERROR)
+                       return (RET_ERROR);
+@@ -363,8 +362,7 @@ mpool_bkt(mp)
+        * off any lists.  If we don't find anything we grow the cache anyway.
+        * The cache never shrinks.
+        */
+-      for (bp = mp->lqh.cqh_first;
+-          bp != (void *)&mp->lqh; bp = bp->q.cqe_next)
++      for (bp = mp->lqh.tqh_first; bp != NULL; bp = bp->q.tqe_next)
+               if (!(bp->flags & MPOOL_PINNED)) {
+                       /* Flush if dirty. */
+                       if (bp->flags & MPOOL_DIRTY &&
+@@ -375,8 +373,8 @@ mpool_bkt(mp)
+ #endif
+                       /* Remove from the hash and lru queues. */
+                       head = &mp->hqh[HASHKEY(bp->pgno)];
+-                      CIRCLEQ_REMOVE(head, bp, hq);
+-                      CIRCLEQ_REMOVE(&mp->lqh, bp, q);
++                      TAILQ_REMOVE(head, bp, hq);
++                      TAILQ_REMOVE(&mp->lqh, bp, q);
+ #if defined(DEBUG) && !defined(DEBUG_IDX0SPLIT)
+                       { void *spage;
+                               spage = bp->page;
+@@ -450,7 +448,7 @@ mpool_look(mp, pgno)
+       BKT *bp;
+       head = &mp->hqh[HASHKEY(pgno)];
+-      for (bp = head->cqh_first; bp != (void *)head; bp = bp->hq.cqe_next)
++      for (bp = head->tqh_first; bp != NULL; bp = bp->hq.tqe_next)
+               if ((bp->pgno == pgno) && (bp->flags & MPOOL_INUSE)) {
+ #ifdef STATISTICS
+                       ++mp->cachehit;
+@@ -494,8 +492,7 @@ mpool_stat(mp)
+       sep = "";
+       cnt = 0;
+-      for (bp = mp->lqh.cqh_first;
+-          bp != (void *)&mp->lqh; bp = bp->q.cqe_next) {
++      for (bp = mp->lqh.tqh_first; bp != NULL; bp = bp->q.tqe_next) {
+               (void)fprintf(stderr, "%s%d", sep, bp->pgno);
+               if (bp->flags & MPOOL_DIRTY)
+                       (void)fprintf(stderr, "d");
+
+--- a/src/plugins/kdb/db2/libdb2/mpool/mpool.h
++++ b/src/plugins/kdb/db2/libdb2/mpool/mpool.h
+@@ -47,8 +47,8 @@
+ /* The BKT structures are the elements of the queues. */
+ typedef struct _bkt {
+-      CIRCLEQ_ENTRY(_bkt) hq;         /* hash queue */
+-      CIRCLEQ_ENTRY(_bkt) q;          /* lru queue */
++      TAILQ_ENTRY(_bkt) hq;           /* hash queue */
++      TAILQ_ENTRY(_bkt) q;            /* lru queue */
+       void    *page;                  /* page */
+       db_pgno_t   pgno;                       /* page number */
+@@ -59,9 +59,9 @@ typedef struct _bkt {
+ } BKT;
+ typedef struct MPOOL {
+-      CIRCLEQ_HEAD(_lqh, _bkt) lqh;   /* lru queue head */
++      TAILQ_HEAD(_lqh, _bkt) lqh;     /* lru queue head */
+                                       /* hash queue array */
+-      CIRCLEQ_HEAD(_hqh, _bkt) hqh[HASHSIZE];
++      TAILQ_HEAD(_hqh, _bkt) hqh[HASHSIZE];
+       db_pgno_t       curcache;               /* current number of cached pages */
+       db_pgno_t       maxcache;               /* max number of cached pages */
+       db_pgno_t       npages;                 /* number of pages in the file */
+
+--- a/src/plugins/kdb/db2/libdb2/test/run.test
++++ b/src/plugins/kdb/db2/libdb2/test/run.test
+@@ -71,10 +71,11 @@ main()
+ }
+ getnwords() {
+-      # Delete blank lines because the db code appears not to
+-      # like empty keys.  On Debian Linux, $DICT appears to contain
+-      # some non-ASCII characters, and "rev" chokes on them.
+-      sed -e '/^$/d' < $DICT | cat -v | sed -e ${1}q
++      # Delete blank lines because the db code appears not to like
++      # empty keys.  Omit lines with non-alphanumeric characters to
++      # avoid shell metacharacters and non-ASCII characters which
++      # could cause 'rev' to choke.
++      LC_ALL=C sed -e '/^$/d' -e '/[^A-Za-z]/d' < $DICT | sed -e ${1}q
+ }
+ # Take the first hundred entries in the dictionary, and make them
diff --git a/src/patches/readline/readline62-001 b/src/patches/readline/readline62-001
deleted file mode 100644 (file)
index d4563c3..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-                          READLINE PATCH REPORT
-                          =====================
-
-Readline-Release: 6.2
-Patch-ID: readline62-001
-
-Bug-Reported-by:       Clark J. Wang <dearvoid@gmail.com>
-Bug-Reference-ID:      <AANLkTimGbW7aC4E5infXP6ku5WPci4t=xVc+L1SyHqrD@mail.gmail.com>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2011-02/msg00157.html
-
-Bug-Description:
-
-The readline vi-mode `cc', `dd', and `yy' commands failed to modify the
-entire line.
-
-[This patch intentionally does not modify patchlevel]
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.2-patched/vi_mode.c  2010-11-20 19:51:39.000000000 -0500
---- vi_mode.c  2011-02-17 20:24:25.000000000 -0500
-***************
-*** 1115,1119 ****
-        _rl_vi_last_motion = c;
-        RL_UNSETSTATE (RL_STATE_VIMOTION);
-!       return (0);
-      }
-  #if defined (READLINE_CALLBACKS)
---- 1115,1119 ----
-        _rl_vi_last_motion = c;
-        RL_UNSETSTATE (RL_STATE_VIMOTION);
-!       return (vidomove_dispatch (m));
-      }
-  #if defined (READLINE_CALLBACKS)
-*** ../readline-6.2-patched/callback.c 2010-06-06 12:18:58.000000000 -0400
---- callback.c 2011-02-17 20:43:28.000000000 -0500
-***************
-*** 149,152 ****
---- 149,155 ----
-         /* Should handle everything, including cleanup, numeric arguments,
-            and turning off RL_STATE_VIMOTION */
-+        if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0)
-+          _rl_internal_char_cleanup ();
-+ 
-         return;
-       }
diff --git a/src/patches/readline/readline62-002 b/src/patches/readline/readline62-002
deleted file mode 100644 (file)
index 3dc2604..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-                          READLINE PATCH REPORT
-                          =====================
-
-Readline-Release: 6.2
-Patch-ID: readline62-002
-
-Bug-Reported-by:       Vincent Sheffer <vince.sheffer@apisphere.com>
-Bug-Reference-ID:      <F13C1C4F-C44C-4071-BFED-4BB6D13CF92F@apisphere.com>
-Bug-Reference-URL:     https://lists.gnu.org/archive/html/bug-readline/2011-08/msg00000.html
-
-Bug-Description:
-
-The readline shared library helper script needs to be updated for Mac OS X
-10.7 (Lion, darwin11).
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.2-patched/support/shobj-conf 2009-10-28 09:20:21.000000000 -0400
---- support/shobj-conf 2011-08-27 13:25:23.000000000 -0400
-***************
-*** 158,162 ****
-  
-  # Darwin/MacOS X
-! darwin[89]*|darwin10*)
-       SHOBJ_STATUS=supported
-       SHLIB_STATUS=supported
---- 172,176 ----
-  
-  # Darwin/MacOS X
-! darwin[89]*|darwin1[012]*)
-       SHOBJ_STATUS=supported
-       SHLIB_STATUS=supported
-***************
-*** 187,191 ****
-  
-       case "${host_os}" in
-!      darwin[789]*|darwin10*) SHOBJ_LDFLAGS=''
-                       SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
-                       ;;
---- 201,205 ----
-  
-       case "${host_os}" in
-!      darwin[789]*|darwin1[012]*)     SHOBJ_LDFLAGS=''
-                       SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
-                       ;;
-
-*** ../readline-6.2-patched/patchlevel 2010-01-14 10:15:52.000000000 -0500
---- patchlevel 2011-11-17 11:09:35.000000000 -0500
-***************
-*** 1,3 ****
-  # Do not edit -- exists only for use by patch
-  
-! 1
---- 1,3 ----
-  # Do not edit -- exists only for use by patch
-  
-! 2
diff --git a/src/patches/readline/readline62-003 b/src/patches/readline/readline62-003
deleted file mode 100644 (file)
index 0462242..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-                          READLINE PATCH REPORT
-                          =====================
-
-Readline-Release: 6.2
-Patch-ID: readline62-003
-
-Bug-Reported-by:       Max Horn <max@quendi.de>
-Bug-Reference-ID:      <20CC5C60-07C3-4E41-9817-741E48D407C5@quendi.de>
-Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-readline/2012-06/msg00005.html
-
-Bug-Description:
-
-A change between readline-6.1 and readline-6.2 to prevent the readline input
-hook from being called too frequently had the side effect of causing delays
-when reading pasted input on systems such as Mac OS X.  This patch fixes
-those delays while retaining the readline-6.2 behavior.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.2-patched/input.c    2010-05-30 18:33:01.000000000 -0400
---- input.c    2012-06-25 21:08:42.000000000 -0400
-***************
-*** 410,414 ****
-  rl_read_key ()
-  {
-!   int c;
-  
-    rl_key_sequence_length++;
---- 412,416 ----
-  rl_read_key ()
-  {
-!   int c, r;
-  
-    rl_key_sequence_length++;
-***************
-*** 430,441 ****
-         while (rl_event_hook)
-           {
-!            if (rl_gather_tyi () < 0) /* XXX - EIO */
-               {
-                 rl_done = 1;
-                 return ('\n');
-               }
-             RL_CHECK_SIGNALS ();
--            if (rl_get_char (&c) != 0)
--              break;
-             if (rl_done)              /* XXX - experimental */
-               return ('\n');
---- 432,447 ----
-         while (rl_event_hook)
-           {
-!            if (rl_get_char (&c) != 0)
-!              break;
-!              
-!            if ((r = rl_gather_tyi ()) < 0)   /* XXX - EIO */
-               {
-                 rl_done = 1;
-                 return ('\n');
-               }
-+            else if (r == 1)                  /* read something */
-+              continue;
-+ 
-             RL_CHECK_SIGNALS ();
-             if (rl_done)              /* XXX - experimental */
-               return ('\n');
-*** ../readline-6.2-patched/patchlevel 2010-01-14 10:15:52.000000000 -0500
---- patchlevel 2011-11-17 11:09:35.000000000 -0500
-***************
-*** 1,3 ****
-  # Do not edit -- exists only for use by patch
-  
-! 2
---- 1,3 ----
-  # Do not edit -- exists only for use by patch
-  
-! 3
diff --git a/src/patches/readline/readline62-004 b/src/patches/readline/readline62-004
deleted file mode 100644 (file)
index 5f3ba9b..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-                          READLINE PATCH REPORT
-                          =====================
-
-Readline-Release: 6.2
-Patch-ID: readline62-004
-
-Bug-Reported-by:       Jakub Filak
-Bug-Reference-ID:
-Bug-Reference-URL:     https://bugzilla.redhat.com/show_bug.cgi?id=813289
-
-Bug-Description:
-
-Attempting to redo (using `.') the vi editing mode `cc', `dd', or `yy'
-commands leads to an infinite loop.
-
-Patch (apply with `patch -p0'):
-
-*** ../readline-6.2-patched/vi_mode.c  2011-02-25 11:17:02.000000000 -0500
---- vi_mode.c  2012-06-02 12:24:47.000000000 -0400
-***************
-*** 1235,1243 ****
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-!   else if (vi_redoing)
-      {
-        _rl_vimvcxt->motion = _rl_vi_last_motion;
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-  #if defined (READLINE_CALLBACKS)
-    else if (RL_ISSTATE (RL_STATE_CALLBACK))
---- 1297,1313 ----
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-!   else if (vi_redoing && _rl_vi_last_motion != 'd')  /* `dd' is special */
-      {
-        _rl_vimvcxt->motion = _rl_vi_last_motion;
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-+   else if (vi_redoing)               /* handle redoing `dd' here */
-+     {
-+       _rl_vimvcxt->motion = _rl_vi_last_motion;
-+       rl_mark = rl_end;
-+       rl_beg_of_line (1, key);
-+       RL_UNSETSTATE (RL_STATE_VIMOTION);
-+       r = vidomove_dispatch (_rl_vimvcxt);
-+     }
-  #if defined (READLINE_CALLBACKS)
-    else if (RL_ISSTATE (RL_STATE_CALLBACK))
-***************
-*** 1317,1325 ****
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-!   else if (vi_redoing)
-      {
-        _rl_vimvcxt->motion = _rl_vi_last_motion;
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-  #if defined (READLINE_CALLBACKS)
-    else if (RL_ISSTATE (RL_STATE_CALLBACK))
---- 1387,1403 ----
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-!   else if (vi_redoing && _rl_vi_last_motion != 'c')  /* `cc' is special */
-      {
-        _rl_vimvcxt->motion = _rl_vi_last_motion;
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-+   else if (vi_redoing)               /* handle redoing `cc' here */
-+     {
-+       _rl_vimvcxt->motion = _rl_vi_last_motion;
-+       rl_mark = rl_end;
-+       rl_beg_of_line (1, key);
-+       RL_UNSETSTATE (RL_STATE_VIMOTION);
-+       r = vidomove_dispatch (_rl_vimvcxt);
-+     }
-  #if defined (READLINE_CALLBACKS)
-    else if (RL_ISSTATE (RL_STATE_CALLBACK))
-***************
-*** 1378,1381 ****
---- 1456,1472 ----
-        r = rl_domove_motion_callback (_rl_vimvcxt);
-      }
-+   else if (vi_redoing && _rl_vi_last_motion != 'y')  /* `yy' is special */
-+     {
-+       _rl_vimvcxt->motion = _rl_vi_last_motion;
-+       r = rl_domove_motion_callback (_rl_vimvcxt);
-+     }
-+   else if (vi_redoing)                       /* handle redoing `yy' here */
-+     {
-+       _rl_vimvcxt->motion = _rl_vi_last_motion;
-+       rl_mark = rl_end;
-+       rl_beg_of_line (1, key);
-+       RL_UNSETSTATE (RL_STATE_VIMOTION);
-+       r = vidomove_dispatch (_rl_vimvcxt);
-+     }
-  #if defined (READLINE_CALLBACKS)
-    else if (RL_ISSTATE (RL_STATE_CALLBACK))
-*** ../readline-6.2-patched/patchlevel 2010-01-14 10:15:52.000000000 -0500
---- patchlevel 2011-11-17 11:09:35.000000000 -0500
-***************
-*** 1,3 ****
-  # Do not edit -- exists only for use by patch
-  
-! 3
---- 1,3 ----
-  # Do not edit -- exists only for use by patch
-  
-! 4
diff --git a/src/patches/readline/readline63-001 b/src/patches/readline/readline63-001
new file mode 100644 (file)
index 0000000..bae6a2f
--- /dev/null
@@ -0,0 +1,43 @@
+                          READLINE PATCH REPORT
+                          =====================
+
+Readline-Release: 6.3
+Patch-ID: readline63-001
+
+Bug-Reported-by:       Daan van Rossum <daan@flash.uchicago.edu>
+Bug-Reference-ID:      <20140307072523.GA14250@flash.uchicago.edu>
+Bug-Reference-URL:     
+
+Bug-Description:
+
+The `.' command in vi mode cannot undo multi-key commands beginning with
+`c', `d', and `y' (command plus motion specifier).
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400
+--- readline.c 2014-03-07 15:20:33.000000000 -0500
+***************
+*** 965,969 ****
+    if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
+        key != ANYOTHERKEY &&
+!       rl_key_sequence_length == 1 && /* XXX */
+        _rl_vi_textmod_command (key))
+      _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
+--- 965,969 ----
+    if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
+        key != ANYOTHERKEY &&
+!       _rl_dispatching_keymap == vi_movement_keymap &&
+        _rl_vi_textmod_command (key))
+      _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
+*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+  # Do not edit -- exists only for use by patch
+  
+! 5
+--- 1,3 ----
+  # Do not edit -- exists only for use by patch
+  
+! 1
diff --git a/src/patches/readline/readline63-002 b/src/patches/readline/readline63-002
new file mode 100644 (file)
index 0000000..0e79f13
--- /dev/null
@@ -0,0 +1,44 @@
+                          READLINE PATCH REPORT
+                          =====================
+
+Readline-Release: 6.3
+Patch-ID: readline63-002
+
+Bug-Reported-by:       Anatol Pomozov <anatol.pomozov@gmail.com>
+Bug-Reference-ID:      <CAOMFOmXy3mT2So5GQ5F-smCVArQuAeBwZ2QKzgCtMeXJoDeYOQ@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00010.html
+
+Bug-Description:
+
+When in callback mode, some readline commands can cause readline to seg
+fault by passing invalid contexts to callback functions.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400
+--- readline.c 2014-03-10 14:15:02.000000000 -0400
+***************
+*** 745,749 ****
+  
+    RL_CHECK_SIGNALS ();
+!   if (r == 0)                        /* success! */
+      {
+        _rl_keyseq_chain_dispose ();
+--- 745,750 ----
+  
+    RL_CHECK_SIGNALS ();
+!   /* We only treat values < 0 specially to simulate recursion. */
+!   if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0))        /* success! or failure! */
+      {
+        _rl_keyseq_chain_dispose ();
+*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+  # Do not edit -- exists only for use by patch
+  
+! 1
+--- 1,3 ----
+  # Do not edit -- exists only for use by patch
+  
+! 2
diff --git a/src/patches/readline/readline63-003 b/src/patches/readline/readline63-003
new file mode 100644 (file)
index 0000000..d2cad94
--- /dev/null
@@ -0,0 +1,47 @@
+                          READLINE PATCH REPORT
+                          =====================
+
+Readline-Release: 6.3
+Patch-ID: readline63-003
+
+Bug-Reported-by:
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+There are debugging functions in the readline release that are theoretically
+exploitable as security problems.  They are not public functions, but have
+global linkage.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-6.3/util.c     2013-09-02 13:36:12.000000000 -0400
+--- util.c     2014-03-20 10:25:53.000000000 -0400
+***************
+*** 477,480 ****
+--- 479,483 ----
+  }
+  
++ #if defined (DEBUG)
+  #if defined (USE_VARARGS)
+  static FILE *_rl_tracefp;
+***************
+*** 539,542 ****
+--- 542,546 ----
+  }
+  #endif
++ #endif /* DEBUG */
+  
+  
+*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+  # Do not edit -- exists only for use by patch
+  
+! 2
+--- 1,3 ----
+  # Do not edit -- exists only for use by patch
+  
+! 3
diff --git a/src/patches/readline/readline63-004 b/src/patches/readline/readline63-004
new file mode 100644 (file)
index 0000000..3cd89e3
--- /dev/null
@@ -0,0 +1,45 @@
+                          READLINE PATCH REPORT
+                          =====================
+
+Readline-Release: 6.3
+Patch-ID: readline63-004
+
+Bug-Reported-by:       Egmont Koblinger <egmont@gmail.com>
+Bug-Reference-ID:      <CAGWcZk+bU5Jo1M+tutGvL-250UBE9DXjpeJVofYJSFcqFEVfMg@mail.gmail.com>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00153.html
+
+Bug-Description:
+
+The signal handling changes to bash and readline (to avoid running any code
+in a signal handler context) cause the cursor to be placed on the wrong
+line of a multi-line command after a ^C interrupts editing.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-6.3-patched/display.c  2013-12-27 13:10:56.000000000 -0500
+--- display.c  2014-03-27 11:52:45.000000000 -0400
+***************
+*** 2678,2682 ****
+    if (_rl_echoing_p)
+      {
+!       _rl_move_vert (_rl_vis_botlin);
+        _rl_vis_botlin = 0;
+        fflush (rl_outstream);
+--- 2678,2683 ----
+    if (_rl_echoing_p)
+      {
+!       if (_rl_vis_botlin > 0)        /* minor optimization plus bug fix */
+!      _rl_move_vert (_rl_vis_botlin);
+        _rl_vis_botlin = 0;
+        fflush (rl_outstream);
+*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+  # Do not edit -- exists only for use by patch
+  
+! 3
+--- 1,3 ----
+  # Do not edit -- exists only for use by patch
+  
+! 4
diff --git a/src/patches/readline/readline63-005 b/src/patches/readline/readline63-005
new file mode 100644 (file)
index 0000000..8a63738
--- /dev/null
@@ -0,0 +1,58 @@
+                          READLINE PATCH REPORT
+                          =====================
+
+Readline-Release: 6.3
+Patch-ID: readline63-005
+
+Bug-Reported-by:       Juergen Daubert <jue@jue.li>
+Bug-Reference-ID:      <20140303180430.GA7346@jue.netz>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00002.html
+
+Bug-Description:
+
+There are still applications using the deprecated Function/VFunction/etc.
+typedefs in rltypedefs.h.  This patch restores the typedefs, but attempts
+to mark them as deprecated using gcc/clang attributes.  Thanks to Max Horn
+for the suggestion.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-6.3-patched/rltypedefs.h       2011-03-26 14:53:31.000000000 -0400
+--- rltypedefs.h       2014-04-10 11:30:45.000000000 -0400
+***************
+*** 27,30 ****
+--- 27,49 ----
+  #endif
+  
++ /* Old-style, attempt to mark as deprecated in some way people will notice. */
++ 
++ #if !defined (_FUNCTION_DEF)
++ #  define _FUNCTION_DEF
++ 
++ #if defined(__GNUC__) || defined(__clang__)
++ typedef int Function () __attribute__ ((deprecated));
++ typedef void VFunction () __attribute__ ((deprecated));
++ typedef char *CPFunction () __attribute__ ((deprecated));
++ typedef char **CPPFunction () __attribute__ ((deprecated));
++ #else
++ typedef int Function ();
++ typedef void VFunction ();
++ typedef char *CPFunction ();
++ typedef char **CPPFunction ();
++ #endif
++ 
++ #endif /* _FUNCTION_DEF */
++ 
+  /* New style. */
+  
+*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+  # Do not edit -- exists only for use by patch
+  
+! 4
+--- 1,3 ----
+  # Do not edit -- exists only for use by patch
+  
+! 5
diff --git a/src/patches/readline/readline63-006 b/src/patches/readline/readline63-006
new file mode 100644 (file)
index 0000000..a3f0930
--- /dev/null
@@ -0,0 +1,63 @@
+                          READLINE PATCH REPORT
+                          =====================
+
+Readline-Release: 6.3
+Patch-ID: readline63-006
+
+Bug-Reported-by:       <Trond.Endrestol@ximalas.info>
+Bug-Reference-ID:      <alpine.BSF.2.03.1404192114310.1973@enterprise.ximalas.info>
+Bug-Reference-URL:     http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00069.html
+
+Bug-Description:
+
+Using reverse-i-search when horizontal scrolling is enabled does not redisplay
+the entire line containing the successful search results.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-6.3-patched/display.c  2014-04-08 18:19:36.000000000 -0400
+--- display.c  2014-04-20 18:32:52.000000000 -0400
+***************
+*** 1638,1642 ****
+       the spot of first difference is before the end of the invisible chars,
+       lendiff needs to be adjusted. */
+!   if (current_line == 0 && !_rl_horizontal_scroll_mode &&
+        current_invis_chars != visible_wrap_offset)
+      {
+--- 1638,1642 ----
+       the spot of first difference is before the end of the invisible chars,
+       lendiff needs to be adjusted. */
+!   if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */
+        current_invis_chars != visible_wrap_offset)
+      {
+***************
+*** 1826,1831 ****
+               _rl_last_c_pos += bytes_to_insert;
+  
+             if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
+!              goto clear_rest_of_line;
+           }
+       }
+--- 1826,1836 ----
+               _rl_last_c_pos += bytes_to_insert;
+  
++            /* XXX - we only want to do this if we are at the end of the line
++               so we move there with _rl_move_cursor_relative */
+             if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
+!              {
+!                _rl_move_cursor_relative (ne-new, new);
+!                goto clear_rest_of_line;
+!              }
+           }
+       }
+*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+  # Do not edit -- exists only for use by patch
+  
+! 5
+--- 1,3 ----
+  # Do not edit -- exists only for use by patch
+  
+! 6
diff --git a/src/squid-accounting/EX-squid-accounting.menu b/src/squid-accounting/EX-squid-accounting.menu
new file mode 100755 (executable)
index 0000000..8779398
--- /dev/null
@@ -0,0 +1,5 @@
+    $sublogs->{'32.proxy'} = {'caption' => $Lang::tr{'acct menu'},
+                               'uri' => '/cgi-bin/accounting.cgi',
+                               'title' => $Lang::tr{'acct menu'},
+                               'enabled' => 1,
+                               };
diff --git a/src/squid-accounting/accounting.cgi b/src/squid-accounting/accounting.cgi
new file mode 100755 (executable)
index 0000000..eabb0c2
--- /dev/null
@@ -0,0 +1,2194 @@
+#!/usr/bin/perl
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2014  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 Time::Local;
+use File::Find;
+use File::Path;
+use GD::Graph::area;
+use GD::Graph::bars;
+use LWP::UserAgent;
+use POSIX;
+use locale;
+
+# enable only the following on debugging purpose
+#use warnings;
+#use CGI::Carp 'fatalsToBrowser';
+
+require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/lang.pl";
+require "${General::swroot}/header.pl";
+require "${General::swroot}/accounting/acct-lib.pl";
+
+unless (-e "${General::swroot}/accounting/settings.conf")      { system("touch ${General::swroot}/accounting/settings.conf"); }
+
+my $settingsfile="${General::swroot}/accounting/settings.conf";
+my $proxyenabled="${General::swroot}/proxy/enable";
+my $logopath="/srv/web/ipfire/html/accounting/logo";
+my %settings=();
+my %mainsettings;
+my %color;
+my %cgiparams=();
+my ($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat,$isdst)=localtime();
+my $dbh;
+my %checked=();
+my $errormessage='';
+my @ips;
+my $count=0;
+my $col;
+my $proxlog=$Lang::tr{'stopped'};
+my $proxsrv=$Lang::tr{'stopped'};
+
+&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);
+
+#Find out which lang is set (used later to set decimal separator correctly)
+my $uplang=uc($mainsettings{'LANGUAGE'});
+setlocale LC_NUMERIC,"$mainsettings{'LANGUAGE'}_$uplang";
+
+if ($cgiparams{'BILLVIEW'} eq "show"){
+       my $file=$cgiparams{'file'};
+       my $name=$cgiparams{'name'};
+       open(DLFILE, "<$file") or die "Unable to open $file: $!";
+       my @fileholder = <DLFILE>;
+       print "Content-Type:application/pdf\n";
+       my @fileinfo = stat("$file");
+       print "Content-Length:$fileinfo[7]\n";
+       print "Content-Disposition:attachment;filename='$name';\n\n";
+       print @fileholder;
+       exit (0);
+}
+if ($cgiparams{'BILLACTION'} eq "open_preview"){ 
+       #Generate preview Bill
+       my $rggrp=$cgiparams{'txt_billgroup'};
+       my $address_cust = &ACCT::getTaAddress($rggrp,'CUST');
+       my $address_host = &ACCT::getTaAddress($rggrp,'HOST');
+       my $billpos             = &ACCT::getextrabillpos($rggrp);
+       my $mwst=$settings{'MWST'};
+       my $cur = $settings{'CURRENCY'};
+       my @now = localtime(time);
+       $now[5] = $now[5] + 1900;
+       my $actmonth = $now[4]+1;
+       my $actyear  = $now[5];
+       my ($from,$till)=&ACCT::getmonth($actmonth,$actyear);
+       my @billar = &ACCT::GetTaValues($from,$till,$rggrp);
+       my $tempfile=&ACCT::pdf2(\@billar,$actmonth,$actyear,$mwst,$address_cust,$address_host,$billpos,$rggrp,$cur,"on");
+       #Show PDF preview
+       open(DLFILE, "<$tempfile") or die "Unable to open tmp.pdf: $!";
+       my @fileholder = <DLFILE>;
+       print "Content-Type:application/pdf\n";
+       my @fileinfo = stat($tempfile);
+       print "Content-Length:$fileinfo[7]\n";
+       print "Content-Disposition:attachment;filename='tmp.pdf';\n\n";
+       print @fileholder;
+       unlink ($tempfile);
+       exit (0);
+}
+
+&Header::showhttpheaders();
+
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'acct config'}"){ #ConfigButton from Menu
+       &configsite;
+}
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'acct addresses'}"){ #AddressmgmntButton from Menu
+       &addressmgmnt;
+}
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'acct billgroup'}"){ #BillgroupButton from Menu
+       &billgroupsite;
+}
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'acct maintenance'}"){ #MaintenanceButton from Menu
+       &expertsite;
+}
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){ #SaveButton on configsite
+       my @val=split('\r\n',$cgiparams{'txt_skipurls'});
+       my $skipurls;
+       foreach my $line (@val){
+               $skipurls.="|".$line;
+       }
+       $skipurls=$skipurls."|";
+       $skipurls=~ s/\|\|/\|/g;
+       my @txt=split('\r\n',$cgiparams{'txt_mailtxt'});
+       my $mailtxt;
+       foreach my $txt (@txt){
+               $mailtxt.="|".$txt;
+       }
+       #Check fields
+       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='';
+       }
+       if(!$errormessage){
+               open (TXT, ">$settingsfile") or die("Die Datei konnte nicht geöffnet werden: $!\n");
+               close TXT;
+               $settings{'LOG'}                = $cgiparams{'logging'};
+               $settings{'EXPERT'}             = $cgiparams{'expert'};
+               $settings{'MULTIUSER'}  = $cgiparams{'multiuser'};
+               $settings{'MWST'}               = $cgiparams{'txt_mwst'};
+               $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;
+               &General::writehash("$settingsfile", \%settings);
+       }else{
+               $cgiparams{'update'}='on';
+               &configsite;
+       }
+}
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'acct view'}"){ #If special month and year is given on mainsite
+       &mainsite($cgiparams{'month'},$cgiparams{'year'});
+       exit 0;
+}
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'acct commit'}"){ #Maintenance function 
+       &ACCT::logger($settings{'LOG'},"Clear DB (all data) committed).\n");
+       &ACCT::cleardbtraf;
+       &expertsite;
+}
+if ($cgiparams{'ACTION2'} eq "$Lang::tr{'acct commit'}"){ #Maintenance function 
+       &ACCT::logger($settings{'LOG'},"Clear DB (only traffic data) committed).\n");
+       &ACCT::cleardb;
+       &expertsite;
+}
+if ($cgiparams{'ACTION1'} eq "$Lang::tr{'acct commit'}"){ #Maintenance Function
+       #Get Timestamp
+       my ($a,$b)=&ACCT::getmonth($cgiparams{'expmonth'},$cgiparams{'expyear'});
+       &ACCT::delbefore(($a-1));
+       &expertsite;
+}
+if ($cgiparams{'ACTION'} eq "viewgraph"){ #Graph icon on hosttable (viewhosttable)
+       &graphsite($cgiparams{'month'},$cgiparams{'year'},$cgiparams{'host'});
+}
+if ($cgiparams{'ACTION1'} eq "$Lang::tr{'save'}"){ #SaveButton when adding Address
+       $errormessage=&checkaddress;
+       
+       if ($errormessage){
+               &addressmgmnt($errormessage);
+       }else{
+               &ACCT::writeaddr(
+                                       $cgiparams{'txt_company'},
+                                       $cgiparams{'rdo_companytype'},
+                                       $cgiparams{'txt_name1'},
+                                       $cgiparams{'txt_str'},
+                                       $cgiparams{'txt_str_nr'},
+                                       $cgiparams{'txt_plz'},
+                                       $cgiparams{'txt_city'},
+                                       $cgiparams{'txt_bank'},
+                                       $cgiparams{'txt_iban'},
+                                       $cgiparams{'txt_bic'},
+                                       $cgiparams{'txt_blz'},
+                                       $cgiparams{'txt_kto'},
+                                       $cgiparams{'txt_email'},
+                                       $cgiparams{'txt_inet'},
+                                       $cgiparams{'txt_hrb'},
+                                       $cgiparams{'txt_ustid'},
+                                       $cgiparams{'txt_tel'},
+                                       $cgiparams{'txt_fax'},
+                                       );
+               &ACCT::logger($settings{'LOG'},"Created new address $cgiparams{'txt_company'} as $cgiparams{'rdo_companytype'}.\n");
+               %cgiparams=();
+       }
+       &addressmgmnt;
+}
+if ($cgiparams{'ACTION'} eq "edit_addr"){ #Pencil icon in Address overwiev on Addressmgmnt site
+       $cgiparams{'update'} = 'on';
+       $cgiparams{'oldcompname'}=$cgiparams{'txt_company'};
+       &addressmgmnt;
+}
+if ($cgiparams{'ACTION'} eq "$Lang::tr{'update'}"){ #UpdateButton when editing Address
+       $cgiparams{'update'} = 'on';
+       $errormessage=&checkaddress;
+       if ($errormessage){
+               &addressmgmnt($errormessage);
+       }else{
+               &ACCT::updateaddr(
+                                       $cgiparams{'rdo_companytype'},
+                                       $cgiparams{'txt_company'},
+                                       $cgiparams{'txt_name1'},
+                                       $cgiparams{'txt_str'},
+                                       $cgiparams{'txt_str_nr'},
+                                       $cgiparams{'txt_plz'},
+                                       $cgiparams{'txt_city'},
+                                       $cgiparams{'txt_bank'},
+                                       $cgiparams{'txt_iban'},
+                                       $cgiparams{'txt_bic'},
+                                       $cgiparams{'txt_blz'},
+                                       $cgiparams{'txt_kto'},
+                                       $cgiparams{'txt_email'},
+                                       $cgiparams{'txt_inet'},
+                                       $cgiparams{'txt_hrb'},
+                                       $cgiparams{'txt_ustid'},
+                                       $cgiparams{'txt_tel'},
+                                       $cgiparams{'txt_fax'},
+                                       $cgiparams{'oldcompname'}
+                                       );
+               my $res=&ACCT::getbillgroups;
+               foreach my $line (@$res){
+                       my($name,$host,$cust)=@$line;
+                       if($host eq $cgiparams{'oldcompname'}){
+                               &ACCT::updatebillgrouphost($cgiparams{'oldcompname'},$cgiparams{'txt_company'});
+                       }elsif ($cust eq $cgiparams{'oldcompname'}){
+                               &ACCT::updatebillgroupcust($cgiparams{'oldcompname'},$cgiparams{'txt_company'});
+                       }
+               }
+               
+               &ACCT::logger($settings{'LOG'},"Edited address $cgiparams{'oldcompname'}.\n");
+               %cgiparams=();
+       }
+       &addressmgmnt;
+}
+if ($cgiparams{'ACTION'} eq "del_addr"){ #Trash icon in Address overview on Addressmgmnt site
+       my $res=&ACCT::checkbillgrp;
+       foreach my $line (@$res){
+               my ($grp,$host,$cust) = @$line;
+               if ($cgiparams{'txt_company'} eq $host){
+                       $errormessage="$Lang::tr{'acct err hostdel'} $grp";
+               }
+               if ($cgiparams{'txt_company'} eq $cust){
+                       $errormessage="$Lang::tr{'acct err custdel'} $grp";
+               }
+       }
+       if (! $errormessage){
+               &ACCT::deladdr($cgiparams{'txt_company'});
+               &ACCT::logger($settings{'LOG'},"Deleted address $cgiparams{'txt_company'}.\n");
+       }
+       $cgiparams{'txt_company'}='';
+       &addressmgmnt;
+}
+if ($cgiparams{'BILLACTION'} eq "$Lang::tr{'save'}"){ #SaveButton when adding BillingGroups
+       #check if a group with the same name already exists in DB
+       my $res=&ACCT::getbillgroups;
+       foreach my $row (@$res) {
+               my ($group)=@$row;
+               if ($group eq $cgiparams{'txt_billgroup'}){
+                       $errormessage.=$Lang::tr{'acct billgroupexists'};
+               }
+       }
+       #Check if a selected user is in another group already
+       if ($settings{'MULTIUSER'} ne 'on'){
+               #split hosts into array
+               my @user=split(/\|/,$cgiparams{'sel_hosts'});
+               my $res=&ACCT::checkusergrp;
+               foreach my $val (@$res){
+                       my ($grp,$usr)=@$val;
+                       foreach my $wanted (@user){
+                               if($usr eq $wanted){
+                                       $errormessage.="$usr $Lang::tr{'acct usermulti'} $grp<br>";
+                               }
+                       }
+               }
+       }
+       #validate namefield
+       if(!&validtextfield($cgiparams{'txt_billgroup'})){
+               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'name'}<br>";
+       }
+       #FIXME: Validate CENT amount (num with .)
+       #if used colon, replace with .
+       $cgiparams{'txt_cent'} =~ tr/,/./;
+       if(!&validnumfield($cgiparams{'txt_cent'})){
+               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct cent'}<br>";
+       }
+       #fill array
+       my @ips=split (/\|/,$cgiparams{'sel_hosts'});
+
+       #Check if we use extra bill positions
+       if($cgiparams{'txt_amount'} || $cgiparams{'txt_name'}|| $cgiparams{'txt_price'}){
+               if (!$cgiparams{'txt_amount'} || !$cgiparams{'txt_name'} || !$cgiparams{'txt_price'}){
+                       $errormessage.="$Lang::tr{'acct invalid billpos'}<br>";
+               }
+               #check all fields
+               if (!$errormessage){
+                       if(! &validnumfield($cgiparams{'txt_amount'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct amount'}<br>";
+                       }elsif(! &validtextfield($cgiparams{'txt_name'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct name'}<br>";
+                       }elsif(! &validnumfield($cgiparams{'txt_price'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct price pp'}<br>";
+                       }
+               }
+       }
+
+       if ($errormessage){
+               &billgroupsite($errormessage);
+       }else{
+               #check if we use extra positions
+               if ($cgiparams{'txt_amount'}){
+                       &ACCT::savebillpos(
+                                               $cgiparams{'txt_posbillgroup'},
+                                               $cgiparams{'txt_amount'},
+                                               $cgiparams{'txt_name'},
+                                               $cgiparams{'txt_price'});
+                       &ACCT::logger($settings{'LOG'},"Saved new fixed billposition $cgiparams{'txt_name'} into billgroup $cgiparams{'txt_posbillgroup'} .\n");
+               }
+               
+               #save new group
+               &ACCT::savebillgroup(
+                                       $cgiparams{'txt_billgroup'},
+                                       $cgiparams{'txt_billtext1'},
+                                       $cgiparams{'dd_host'},
+                                       $cgiparams{'dd_cust'},
+                                       $cgiparams{'txt_cent'},
+                                       \@ips);
+               &ACCT::logger($settings{'LOG'},"Saved new billgroup $cgiparams{'txt_billgroup'}.\n");
+               %cgiparams=();
+       }
+       &billgroupsite;
+}
+if ($cgiparams{'BILLACTION'} eq "$Lang::tr{'update'}"){ #UpdateButton when editing BillingGroups
+
+
+       my $filename=$cgiparams{'uploaded_file'};
+       if($filename){
+               #First check if logo dir exists
+               if (! -d "$logopath/$cgiparams{'logo_grp'}"){
+                       mkpath("$logopath/$cgiparams{'logo_grp'}",0,01777);
+               }
+               #Save File
+               my ($filehandle) = CGI::upload('uploaded_file');
+               open (UPLOADFILE, ">$logopath/$cgiparams{'logo_grp'}/logo.png");
+               binmode $filehandle;
+               while ( <$filehandle> ) {
+                       print UPLOADFILE;
+               }
+               close (UPLOADFILE);
+
+               #Check dimensions of uploaded file
+               open (PNG , "<$logopath/$cgiparams{'logo_grp'}/logo.png") ;
+               local $/;
+               my $PNG1=<PNG> ;
+               close(PNG) ;
+               my ($width,$height)=&ACCT::pngsize($PNG1) ;
+
+               if (! &validnumfield($width)){
+                       $errormessage.="$Lang::tr{'acct invalid png'}<br>";
+                       unlink("$logopath/$cgiparams{'logo_grp'}/logo.png");
+               }elsif($width > 400 || $height > 150){
+                       $errormessage.="$Lang::tr{'acct invalid pngsize'} width: $width   height: $height<br>";
+                       unlink("$logopath/$cgiparams{'logo_grp'}/logo.png");
+               }
+
+       }
+       #Check if a group with the same name already exists in DB
+       my $res=&ACCT::getbillgroups;
+       foreach my $row (@$res) {
+               my ($group)=@$row;
+               if (($group eq $cgiparams{'txt_billgroup'}) && ($cgiparams{'oldname'} ne $cgiparams{'txt_billgroup'})){
+                       $errormessage.=$Lang::tr{'acct billgroupexists'};
+               }
+       }
+       #Check if a selected user is in another group already
+       if ($settings{'MULTIUSER'} ne 'on'){
+               #split hosts into array
+               my @user=split(/\|/,$cgiparams{'sel_hosts'});
+               my $res=&ACCT::checkusergrp;
+               foreach my $val (@$res){
+                       my ($grp,$usr)=@$val;
+                       foreach my $wanted (@user){
+                               if($usr eq $wanted && $grp ne $cgiparams{'txt_billgroup'}){
+                                       $errormessage.="$usr $Lang::tr{'acct usermulti'} $grp<br>";
+                               }
+                       }
+               }
+       }
+       #Validate namefield
+       if(!&validtextfield($cgiparams{'txt_billgroup'})){
+               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'name'}";
+       }
+       #Validate CENT amount (num with .)
+       #if used colon, replace with .
+       $cgiparams{'txt_cent'} =~ tr/,/./;
+       if(!&validnumfield($cgiparams{'txt_cent'})){
+               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct cent'}<br>";
+       }
+
+       #Fill array
+       my @ips=split ( /\|/,$cgiparams{'sel_hosts'});
+
+       #Check if we use extra bill positions
+       if($cgiparams{'txt_amount'} || $cgiparams{'txt_name'}|| $cgiparams{'txt_price'}){
+               if (!$cgiparams{'txt_amount'} || !$cgiparams{'txt_name'} || !$cgiparams{'txt_price'}){
+                       $errormessage.="$Lang::tr{'acct invalid billpos'}<br>";
+               }
+               #Check all fields
+               if (!$errormessage){
+                       if(! &validnumfield($cgiparams{'txt_amount'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct amount'}<br>";
+                       }elsif(! &validtextfield($cgiparams{'txt_name'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct name'}<br>";
+                       }elsif(! &validnumfield($cgiparams{'txt_price'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct price pp'}<br>";
+                       }
+               }
+       }
+       #Check if we added some CC mail recipients
+       if($cgiparams{'txt_ccmail'}){
+               $cgiparams{'txt_ccmail'}=~ s/ //g;
+               #Split line into single addresses and check each one
+               my @ccaddr = split(",",$cgiparams{'txt_ccmail'});
+               foreach my $cc (@ccaddr){
+                       if (! &General::validemail($cc)){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct ccmail'} $cc<br>";
+                       }
+               }
+       }
+       if ($errormessage){
+               $cgiparams{'update'} = 'on';
+               &billgroupsite();
+       }else{
+               #update fixedbillpositions if defined
+               if ($cgiparams{'oldname'} ne $cgiparams{'txt_billgroup'}){
+                       &ACCT::updatebillpos($cgiparams{'oldname'},$cgiparams{'txt_billgroup'});
+               }
+               #Check if we use extra positions
+               if ($cgiparams{'txt_amount'}){
+                       &ACCT::savebillpos(
+                                               $cgiparams{'txt_billgroup'},
+                                               $cgiparams{'txt_amount'},
+                                               $cgiparams{'txt_name'},
+                                               $cgiparams{'txt_price'});
+               }
+               #Check if we have NEW cc Mails
+               if($cgiparams{'txt_ccmail'} ne $cgiparams{'oldccmail'}){
+                       &ACCT::updateccaddr($cgiparams{'txt_ccmail'},$cgiparams{'dd_cust'});
+               }
+               &ACCT::deletebillgroup($cgiparams{'oldname'}); 
+               &ACCT::savebillgroup(
+                                       $cgiparams{'txt_billgroup'},
+                                       $cgiparams{'txt_billtext1'},
+                                       $cgiparams{'dd_host'},
+                                       $cgiparams{'dd_cust'},
+                                       $cgiparams{'txt_cent'},
+                                       \@ips);
+               %cgiparams=();
+       }
+       &billgroupsite;
+}
+if ($cgiparams{'BILLACTION'} eq "edit_billgroup"){ #Pencil icon in Billgroup table
+       $cgiparams{'update'} = 'on';
+       &billgroupsite;
+}
+if ($cgiparams{'BILLACTION'} eq "delete_billgroup"){ #Trash icon in Billgroup table
+       &deletefiles($cgiparams{'txt_billgroup'});
+       &ACCT::delbillpos($cgiparams{'txt_billgroup'});
+       &ACCT::deletebillgroup($cgiparams{'txt_billgroup'});
+       &ACCT::logger($settings{'LOG'},"Deleted billgroup $cgiparams{'txt_billgroup'}.\n");
+       &billgroupsite;
+}
+if ($cgiparams{'BILLACTION'} eq "open_billgroup"){ #Folder icon on billgrouptable (viewtablebillgroup)
+       &billoverview($cgiparams{'txt_billgroup'});
+}
+if ($cgiparams{'BILLPOS'} eq "delpos"){ #Trash icon in Billpos table
+       $cgiparams{'update'} = 'on';
+       &ACCT::delbillpos_single($cgiparams{'txt_billpos'},$cgiparams{'txt_billgroup'});
+       &ACCT::logger($settings{'LOG'},"Deleted fixed billposition  $cgiparams{'txt_billpos'} from billgroup $cgiparams{'txt_billgroup'}.\n");
+       &billgroupsite;
+}
+if ($cgiparams{'BILLPOS'} eq "$Lang::tr{'save'}"){ #Savebutton in Billpos table
+       $cgiparams{'update'}='on';
+       #Check if we use extra bill positions
+       if($cgiparams{'txt_amount'} || $cgiparams{'txt_name'}|| $cgiparams{'txt_price'}){
+               if (!$cgiparams{'txt_amount'} || !$cgiparams{'txt_name'} || !$cgiparams{'txt_price'}){
+                       $errormessage.="$Lang::tr{'acct invalid billpos'}<br>";
+               }
+               #check all fields
+               if (!$errormessage){
+                       #if used colon, replace with .
+                       $cgiparams{'txt_price'} =~ tr/,/./;
+                       if(! &validnumfield($cgiparams{'txt_amount'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct amount'}<br>";
+                       }elsif(! &validtextfield($cgiparams{'txt_name'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct name'}<br>";
+                       }elsif(! &validnumfield($cgiparams{'txt_price'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct price pp'}<br>";
+                       }
+               }
+       }
+       if ($errormessage){
+               &billgroupsite($errormessage);
+       }else{
+               #check if we use extra positions
+               if ($cgiparams{'txt_amount'}){
+                       &ACCT::savebillpos(
+                                               $cgiparams{'txt_billgroup'},
+                                               $cgiparams{'txt_amount'},
+                                               $cgiparams{'txt_name'},
+                                               $cgiparams{'txt_price'});
+               }
+               &ACCT::logger($settings{'LOG'},"Added fixed billposition  $cgiparams{'txt_amount'} $cgiparams{'txt_name'} with price $cgiparams{'txt_price'} to billgroup $cgiparams{'txt_billgroup'}.\n");
+       }
+       %cgiparams=();
+       &billgroupsite;
+}
+
+
+#Check if we already have settings
+if ( -z $settingsfile){
+       &configsite;
+}else{
+       &mainsite(($mon+1),($year+1900));
+       exit 0;
+}
+
+sub configsite{
+       my $proxymessage='';
+       my $blockactivation='';
+       #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'};
+       }
+       #find preselections
+       $checked{'expert'}{$settings{'EXPERT'}}                                 = 'CHECKED';
+       $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>
+       \$(document).ready(function() {
+               // Show/Hide elements when NAT checkbox is checked.
+               if (\$("#MAIL").attr("checked")) {
+                       
+               } else {
+                       \$(".MAILSRV").hide();
+               }
+
+               // Show NAT area when "use nat" checkbox is clicked
+               \$("#MAIL").change(function() {
+                       \$(".MAILSRV").toggle();
+                       
+               });
+       });
+</script>
+END
+#######################        
+       $settings{'SKIPURLS'} =~ tr/|/\r\n/;
+       $settings{'MAILTXT'} =~ tr/|/\r\n/;
+       my $col="style='background-color:$color{'color22'}'";
+       print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width:100%'>
+       <tr>
+               <th colspan='3'></th>
+       </tr>
+       <tr>
+               <td style='width:24em'>$Lang::tr{'acct logging'}</td>
+               <td><input type='checkbox' name='logging' $checked{'logging'}{'on'}></td>
+               <td></td>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct expert'}</td>
+               <td><input type='checkbox' name='expert' $checked{'expert'}{'on'}></td>
+               <td></td>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct multiuser'}</td>
+               <td><input type='checkbox' name='multiuser' $checked{'multiuser'}{'on'}></td>
+               <td></td>
+       <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>
+               <td>$Lang::tr{'acct currency'}</td>
+               <td><input type='text' name='txt_currency' value='$settings{'CURRENCY'}' style='width:22em;'></td>
+               <td></td>
+       
+       <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>
+       <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>
+
+       <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><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>
+               </tr>
+               <tr>
+               <td valign='top' >$Lang::tr{'acct mailtxt'}</td>
+               <td style='padding-left:0.2em;'><textarea name="txt_mailtxt" cols="34" rows="6" style='width: 22em;'>$settings{'MAILTXT'}</textarea></td>
+               
+               </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();
+#BackButton
+       print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width:100%;'>
+       <tr>
+               <td></td>
+               <td align='right'><input type='submit' name='ACTION' value='$Lang::tr{'back'}'></td>
+       </tr>
+       </table>
+       </form>
+END
+       &Header::closebigbox();
+       &Header::closepage();
+       exit 0;
+}
+
+sub deletefiles{
+       my $grp=shift;
+       rmtree ("$logopath/$grp");
+       rmtree ("${General::swroot}/accounting/bill/$grp");
+}
+
+sub mainsite{
+       my $mon=$_[0];
+       my $year=$_[1];
+       if ($_[0]){$mon=$_[0];}
+       &Header::openpage($Lang::tr{'acct title'}, 1, '');
+       &Header::openbigbox('100%', 'center');
+       &checkproxy;
+       &statusbox;
+       &menu;
+       &viewtablehosts(($mon),$year);
+       &Header::closebigbox();
+       &Header::closepage();
+}
+
+sub expertsite{
+       &Header::openpage($Lang::tr{'acct maintenance'}, 1, '');
+       &Header::openbigbox('100%', 'center');
+
+       #Get size of Databasefile
+       my $sizedb= -s "/var/ipfire/accounting/acct.db";
+       $sizedb = sprintf"%.2f", $sizedb/(1024*1024);
+       #Get size of Directory, where all bills are stored
+       my $sizerrd = 0;
+       find(sub { $sizerrd += -s if -f $_ }, "${General::swroot}/accounting/bill");
+       $sizerrd = sprintf"%.2f", $sizerrd/(1024*1024);
+
+       &ACCT::connectdb;
+       #Get latest and earliest entry of DB
+       my  ($min,$max) = &ACCT::getminmax;
+       $min=&getdate($min);
+       $max=&getdate($max);
+       #Print status table
+       &Header::openbox('100%', 'left', $Lang::tr{'acct status'});
+       print<<END;
+       <table style='width:100%;' cellspacong='0' class='tbl'>
+       <tr>
+               <th align='left' width='30%'>$Lang::tr{'name'}</th>
+               <th align='left'>$Lang::tr{'acct value'}</th>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct dbsize'}</td>
+               <td>$sizedb MB</td>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct rrdsize'}</td>
+               <td>$sizerrd MB</td>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct oldestdb'}</td>
+               <td>$min</td>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct latestdb'}</td>
+               <td>$max</td>
+       </tr>
+       </table>
+       <br>
+END
+       &Header::closebox();
+       #print Database maintenance table
+       &Header::openbox('100%', 'left', $Lang::tr{'acct dbmaintenance'});
+       print<<END;
+       <br>
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width:100%;' cellspacing='0' class='tbl'>
+       <tr>
+               <th>$Lang::tr{'acct task'}</th>
+               <th>$Lang::tr{'acct parameter'}</th>
+               <th>$Lang::tr{'acct action'}</th>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct emptydb'}</td>
+               <td></td>
+               <td><input type='submit' name='ACTION2' value='$Lang::tr{'acct commit'}' style='width:10em'></td>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct emptydbtraf'}</td>
+               <td></td>
+               <td><input type='submit' name='ACTION' value='$Lang::tr{'acct commit'}' style='width:10em'></td>
+       </tr>
+       <tr>
+               <td>$Lang::tr{'acct delbefore'} (ACCT,ACCT_HIST)</td>
+               <td><select name='expmonth'>
+END
+       for(my $i=1;$i<13;$i++){
+               print"<option>$i</option>";
+       }
+       print"</select><select name='expyear'>";
+       for(my $i=2014;$i<=($year+1900);$i++){
+               print"<option>$i</option>";
+       }
+       print<<END;
+               </select></td>
+               <td><input type='submit' name='ACTION1' value='$Lang::tr{'acct commit'}' style='width:10em'></td>
+       </tr>
+       </table>
+       </form>
+END
+       &Header::closebox();
+#BackButton
+       print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width:100%;'>
+       <tr>
+               <td></td>
+               <td align='right'><input type='submit' name='ACTION' value='$Lang::tr{'back'}'></td>
+       </tr>
+       </table>
+       </form>
+END
+
+
+       &Header::closebigbox();
+       &Header::closepage();
+       &ACCT::closedb;
+       exit 0;
+}
+
+sub getdate{
+       #GET  : Timestamp in seconds since 1.1.1970
+       #GIVES: Date in Format dd.mm.yyyy HH:MM:SS 
+       my $val = $_[0];
+       my $y=sprintf("%02d",(localtime($val))[5]-100);
+       my $Y=sprintf("%04d",(localtime($val))[5]+1900);
+       my $m=sprintf("%02d",(localtime($val))[4]+1);
+       my $d=sprintf("%02d",(localtime($val))[3]);
+       my $H=sprintf("%02d",(localtime($val))[2]);
+       my $M=sprintf("%02d",(localtime($val))[1]);
+       my $S=sprintf("%02d",(localtime($val))[0]);
+       
+       return "$d.$m.$Y $H:$M:$S";
+}
+
+sub menu{
+       &Header::openbox('100%', 'left', $Lang::tr{'menu'});
+       print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width: 100%;'>
+       <tr>
+               <td style='display:inline;'>
+                       <input type='submit' name='ACTION' value='$Lang::tr{'acct config'}'>
+                       <input type='submit' name='ACTION' value='$Lang::tr{'acct addresses'}'>
+                       <input type='submit' name='ACTION' value='$Lang::tr{'acct billgroup'}'>
+END
+       if ($settings{'EXPERT'} eq 'on'){
+               print "<input type='submit' name='ACTION' value='$Lang::tr{'acct maintenance'}'>";
+       }
+       print<<END;
+               </td>
+       </tr>
+       </table>
+       </form>
+END
+       &Header::closebox();
+}
+
+sub graphsite{
+       my $grmon=$_[0];
+       my $gryear=$_[1];
+       my $grhost=$_[2];
+
+       &Header::openpage("$Lang::tr{'acct host detail'} $grhost", 1, '');
+       &Header::openbigbox('100%', 'center');
+       &Header::openbox('100%', 'left', );
+
+       &generatemonthgraph($grmon,$gryear,$grhost);
+
+       &Header::closebox();
+       &Header::closebigbox();
+       &Header::closepage();
+       exit 0;
+}
+
+sub generatemonthgraph{
+       my $grmon=$_[0];
+       my $gryear=$_[1];
+       my $grhost=$_[2];
+       my ($from,$till) = &ACCT::getmonth($grmon,$gryear);
+       my @values=();
+       my $sth;
+       my $cnt=0;
+       #If we want to show Data from within last 2 months, get DATA from ACCT
+       if ( ! $grmon < ($mon+1) && $gryear == ($year+1900)){
+               $sth=&ACCT::getmonthgraphdata("ACCT",$from,$till,$grhost);
+       }else{
+               #If we want to show data from a date older than last two months, use ACCT_HIST
+               $sth=&ACCT::getmonthgraphdata("ACCT_HIST",$from,$till,$grhost);
+       }
+       foreach( @$sth ) {
+               $cnt++;
+               foreach my $i (0..$#$_) {
+                               push (@{$values[$i]},($_->[$i]));
+               }
+       }
+
+       for my $graph (GD::Graph::area->new(600,200))
+       {
+               my $name = $cgiparams{'host'};
+               $graph->set(
+                       bgclr => 'white',
+                       fgclr => 'black',
+                       boxclr => '#eeeeee',
+                       accentclr => 'dblue',
+                       valuesclr => '#ffff77',
+                       labelclr => 'black',
+                       axislabelcl =>'black',
+                       legendclr =>'black',
+                       valuesclr =>'black',
+                       textclr =>'black',
+                       dclrs => [qw(lgreen lred)],
+                       x_label => $Lang::tr{'date'},
+                       y_label => $Lang::tr{'acct mb'},
+                       title => $name,
+                       y_long_ticks => 1,
+                       #x_label_skip => 3, #skip every 3 x-axis title 
+                       x_label_position => 0,
+                       transparent => 0,
+               );
+
+               $graph->set_legend("$Lang::tr{'acct traffic'}");
+               $graph->set(x_labels_vertical => 1, values_vertical => 1);
+               my $gd=$graph->plot(\@values);
+               open(IMG, '>/srv/web/ipfire/html/accounting/tmpgraph.png') or die $!;
+               binmode IMG;
+               print IMG $gd->png;
+       }
+       #Show Box with monthly graph for this host
+       &Header::openbox('100%', 'left', $Lang::tr{'acct traffic monthly'});
+       print "<center><img src='/accounting/tmpgraph.png' alt='$grhost'></center>";
+       print "<b>$cgiparams{'traffic'}</b>";
+       &Header::closebox();
+       print<<END;
+       <table style='width:100%;'>
+               <tr>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <td align='right'><input type='submit' name='ACTION' value='$Lang::tr{'back'}'></td>
+                       </form>
+               </tr>
+       </table>
+END
+}
+
+sub generatehourgraph{
+       my $grmon=$_[0];
+       my $gryear=$_[1];
+       my $grhost=$_[2];
+       my ($from,$till) = &ACCT::getmonth($grmon,$gryear);
+       my @values=();
+       my $sth;
+       my $cnt=0;
+       #If we want to show Data from within last 2 months, get DATA from ACCT
+       if ( ! $grmon < ($mon+1) && $gryear == ($year+1900)){
+               $sth=&ACCT::getgraphdata("ACCT",$from,$till,$grhost);
+       }else{
+               #If we want to show data from a date older than last two months, use ACCT_HIST
+               $sth=&ACCT::getgraphdata("ACCT_HIST",$from,$till,$grhost);
+       }
+       foreach( @$sth ) {
+               $cnt++;
+               foreach my $i (0..$#$_) {
+                       #print "$_->[$i] "
+                       if ($i == 1){
+                               push (@{$values[$i]},($_->[$i]/1024/1024));
+                       }else{
+                               push (@{$values[$i]},$_->[$i]);
+                       }
+               }
+       }
+
+       print"<br><br><br>";
+       
+       for my $graph (GD::Graph::area->new(600,200))
+       {
+               my $name = $cgiparams{'host'};
+               print STDERR "Processing $name mit sosse\n";
+       
+               $graph->set(
+                                               x_label => 'X Label',
+                                               y_label => 'Y label',
+                                               title => 'An Area Graph',
+                                               #y_max_value => 40,
+                                               #y_tick_number => 8,
+                                               #y_label_skip => 2,
+                                               #accent_treshold => 41,
+                                               transparent => 0,
+               );
+       
+               $graph->set_legend( 'one', 'two' );
+               my $gd=$graph->plot(\@values);
+               open(IMG, '>/srv/web/ipfire/html/test/file.png') or die $!;
+               binmode IMG;
+               print IMG $gd->png;
+       } 
+       sleep 1;
+       print "<img src='/test/file.png' alt='Tanzmaus'>";
+}
+
+sub statusbox{
+       my $bgcolor1='';
+       my $bgcolor2='';
+       my $message;
+       if ($proxsrv eq $Lang::tr{'stopped'}){
+               $bgcolor1="bgcolor='${Header::colourred}' align='center'";
+               $message="<br>$Lang::tr{'acct proxy_enable'}";
+       }else{
+               $bgcolor1="bgcolor='${Header::colourgreen}' align='center'";
+       }
+       if ($proxlog eq $Lang::tr{'stopped'}){
+               $bgcolor2="bgcolor='${Header::colourred}' align='center'";
+               $message=$message."<br>$Lang::tr{'acct proxylog_enable'}";
+       }else{
+               $bgcolor2="bgcolor='${Header::colourgreen}' align='center'";
+       }
+       &Header::openbox('100%', 'left', );
+       print<<EOF;
+       <center><table width='50%' class='tbl'>
+       <tr>
+               <th>$Lang::tr{'service'}</th>
+               <th>$Lang::tr{'status'}</th>
+       </tr>
+       <tr>
+               <td bgcolor='$color{'color22'}'>$Lang::tr{'proxy'}</td>
+               <td $bgcolor1><font color='white'>$proxsrv</td>
+       <tr>
+       <tr>
+               <td bgcolor='$color{'color20'}'>$Lang::tr{'logging'}</td>
+               <td $bgcolor2><font color='white'>$proxlog</td>
+       </tr>
+EOF
+       if ($message){
+               print"<tr><td colspan='2'><font color='red'>$message<br>$Lang::tr{'acct nodata'}</td></tr>";
+       }
+       print"</table>";
+       &Header::closebox();
+}
+
+sub calcbytes{
+       #GET:   Value (bytes)
+       #GIVES: Value (in MB,GB,TB) With Type ("MB","GB","TB")
+       my $val=$_[0];
+       my $type;
+       if (($val/1024) < 1024){
+               #Calc KB
+               $val=sprintf "%.2f",$val/1024;
+               $type=$Lang::tr{'acct kb'};
+       }elsif (($val/(1024*1024)) < 1024){ 
+               #Calc MB
+               $val=sprintf "%.2f",$val/(1024*1024);
+               $type=$Lang::tr{'acct mb'};
+       }elsif(($val/(1024*1024*1024)) < 1024){
+               #Calc GB 
+               $val=sprintf "%.2f",$val/(1024*1024*1024);
+               $type=$Lang::tr{'acct gb'};
+       }elsif(($val/(1024*1024*1024*1024)) < 1024){
+               #Calc TB
+               $val=sprintf "%.2f",$val/(1024*1024*1024*1024);
+               $type=$Lang::tr{'acct tb'};
+       }
+       return ($val,$type);
+}
+
+sub addressmgmnt{
+       #This function shows the site "address management"
+       &Header::openpage("$Lang::tr{'acct addresses'}", 1, '');
+       &Header::openbigbox('100%', 'center');
+       &error;
+       my $col1;
+       my $host=0;
+       my $cust=0;
+       #Get all Addresses from DB
+       my $res = &ACCT::getaddresses;
+
+&Header::openbox('100%', 'left',$Lang::tr{'acct edit_addr'} );
+
+#When no address preselected, set COMPANYTYPE to "CUST"
+if ($cgiparams{'rdo_companytype'} eq ''){
+       $cgiparams{'rdo_companytype'} = 'CUST';
+}
+$checked{'rdo_companytype'}{$cgiparams{'rdo_companytype'}}                             = 'CHECKED';
+
+#NEW AddressBox
+print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+               <table style=width:100%;'>
+                       <tr>
+                               <td style='width:8em;'></td>
+                               <td></td>
+                               <td colspan='2'><font size="1">$Lang::tr{'acct hint_hoster'}:</font></td>
+                       </tr>
+                       <tr>
+                               <td>$Lang::tr{'acct companytype'}</td>
+                               <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>
+                                       <input type='text' name='txt_bank' value='$cgiparams{'txt_bank'}' style='width:25em;'></td>
+                       </tr>
+                       <tr>
+                               <td>$Lang::tr{'acct company'}</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>
+                                       <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>
+                                       <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>
+                                       <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 align='left'>
+                                       <input type='text' name='txt_str' value='$cgiparams{'txt_str'}' style='width:25em;'></td>
+                               <td>$Lang::tr{'acct blz'}</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><input type='text' name='txt_str_nr' value='$cgiparams{'txt_str_nr'}' style='width:25em;'></td>
+                               <td>$Lang::tr{'acct kto'}</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>
+                                       <input type='text' name='txt_plz' value='$cgiparams{'txt_plz'}' style='width:25em;'></td>
+                               <td>$Lang::tr{'acct email'}</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><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>
+                                       <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>
+                                       <input type='text' name='txt_hrb' value='$cgiparams{'txt_hrb'}' style='width:25em;'></td>
+                       </tr>
+                       <tr>
+                               <td></td>
+                               <td></td>
+                               <td>$Lang::tr{'acct ustid'}</td>
+                               <td><input type='text' name='txt_ustid' value='$cgiparams{'txt_ustid'}' style='width:25em;'></td>
+                       </tr>
+                       <tr>
+                               <td></td>
+                               <td></td>
+                               <td>$Lang::tr{'acct tel'}<img src='/blob.gif' alt='*' /></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>
+                                       <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>
+                       </tr>
+                       <tr>
+END
+       if($cgiparams{'update'} eq 'on'){
+               print"<input type='hidden' name='oldcompname' value='$cgiparams{'oldcompname'}'>";
+               print "<td colspan='6' align='right' display:inline><input type='submit' name='ACTION' value='$Lang::tr{'update'}'></td>";
+       }else{
+               print "<td colspan='6' align='right' display:inline><input type='submit' name='ACTION1' value='$Lang::tr{'save'}'></td>";
+       }
+       print"</tr></table></form>";
+&Header::closebox();
+#Upper BackButton
+print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width:100%;'>
+               <tr>
+                       <td align='right'><input type='submit' name='ACTION' value='$Lang::tr{'back'}'></td>
+               </tr>
+       </table>
+       </form>
+END
+#Check if we need to show HOSTBOX and/or CUSTBOX
+foreach my $row (@$res) {
+       my ($gr,$comp,$type,$name1,$str,$nr,$plz,$city,$bank,$iban,$bic,$blz,$kto,$email,$inet,$hrb,$ustid,$tel,$fax) = @$row;
+       if ($type eq 'HOST'){
+               $host=1;
+       }
+       if ($type eq 'CUST'){
+               $cust=1;
+       }
+}
+#Show HOSTER Addresses if any
+       if ($host){
+               $count=0;
+               #EXISTING HOST BOX
+               &Header::openbox('100%', 'left',$Lang::tr{'acct exst_host_addr'} );
+               my $float;
+               print "<table style='width:100%'>";
+               foreach my $row (@$res) {
+                       #SET colors for tablerows
+                       $col="style='background-color:$color{'color22'}'";
+                       $col1="style='background-color:#e2d8d8'";
+                       my ($gr,$comp,$type,$name1,$str,$nr,$plz,$city,$bank,$iban,$bic,$blz,$kto,$email,$inet,$hrb,$ustid,$tel,$fax) = @$row;
+                       if ($cgiparams{'oldcompname'} eq $comp){
+                               $col="style='background-color:yellow'";
+                               $col1="style='background-color:yellow'";
+                       }
+                       if ($type eq 'HOST'){
+                               $count++;
+                               if($count % 2){
+                                       print"<tr><td width='50%' valign='top' align='center'>";
+                               }else{
+                                       print"</td><td width='50%' valign='top' align='center'>";
+                               }
+                               print<<END;
+                               <table style='width:90%;' cellspacing='0' class='tbl'>
+                               <tr>
+                                       <th align='left' width='50%'>$Lang::tr{'acct company'}</th>
+                                       <th align='left' width='10%' >$Lang::tr{'acct bank'}</th>
+                                       <th width='38%' ></th>
+                                       <th align='right' width='1%' style="PADDING: 0px">
+                                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                                       <input type='image' src='/images/edit.gif' alt=$Lang::tr{'acct edit'} title='$Lang::tr{'acct edit'}' />
+                                       <input type='hidden' name='ACTION' value='edit_addr'>
+                                       <input type='hidden' name='rdo_companytype' value='$type'>
+                                       <input type='hidden' name='txt_company' value='$comp'>
+                                       <input type='hidden' name='txt_name1' value='$name1'>
+                                       <input type='hidden' name='txt_str' value='$str'>
+                                       <input type='hidden' name='txt_str_nr' value='$nr'>
+                                       <input type='hidden' name='txt_plz' value='$plz'>
+                                       <input type='hidden' name='txt_city' value='$city'>
+                                       <input type='hidden' name='txt_bank' value='$bank'>
+                                       <input type='hidden' name='txt_iban' value='$iban'>
+                                       <input type='hidden' name='txt_bic' value='$bic'>
+                                       <input type='hidden' name='txt_blz' value='$blz'>
+                                       <input type='hidden' name='txt_kto' value='$kto'>
+                                       <input type='hidden' name='txt_email' value='$email'>
+                                       <input type='hidden' name='txt_inet' value='$inet'>
+                                       <input type='hidden' name='txt_hrb' value='$hrb'>
+                                       <input type='hidden' name='txt_ustid' value='$ustid'>
+                                       <input type='hidden' name='txt_tel' value='$tel'>
+                                       <input type='hidden' name='txt_fax' value='$fax'>
+                                       </form></th>
+                                       <th width='1%' style="PADDING: 0px">
+                                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                                       <input type='image' src='/images/delete.gif' alt=$Lang::tr{'acct deladr'} title=$Lang::tr{'acct deladr'} />
+                                       <input type='hidden' name='txt_company' value='$comp'>
+                                       <input type='hidden' name='ACTION' value='del_addr'>
+                                       </form>
+                                       </th>
+                               </tr>
+                               <tr>
+                                       <td $col><b>$comp</b></td>
+                                       <td $col1></td>
+                                       <td colspan='3' $col1></td>
+                               </tr>
+                               <tr>
+                                       <td $col>$name1</td>
+                                       <td $col1 width='35%'>$Lang::tr{'acct bank'}</td>
+                                       <td colspan='3' $col1>$bank</td>
+                               </tr>
+                               <tr>
+                                       <td $col></td>
+                                       <td $col1>$Lang::tr{'acct iban'}</td>
+                                       <td colspan='3' $col1>$iban</td>
+                               </tr>
+                               <tr>
+                                       <td $col>$str $nr</td>
+                                       <td $col1>$Lang::tr{'acct bic'}</td>
+                                       <td colspan='3' $col1>$bic</td>
+                               </tr>
+                               <tr>
+                                       <td $col>$plz $city</td>
+                                       <td $col1>$Lang::tr{'acct blz'}</td>
+                                       <td colspan='3' $col1>$blz</td>
+                               </tr>
+                               <tr>
+                                       <td $col></td>
+                                       <td $col1>$Lang::tr{'acct kto'}</td>
+                                       <td colspan='3' $col1>$kto</td>
+                               </tr>
+                               </table>
+                               <br>
+                       </td>
+END
+                               if (! $count % 2){
+                                       print"</tr>";
+                               }
+                       }
+               }
+               if ( ($count % 2)){
+                       print"<td width='50%' valign='top' align='center'></td></tr>";
+               }
+               print "</table>";
+               &Header::closebox();
+       }else{
+               &Header::openbox('100%', 'left',$Lang::tr{'acct exst_host_addr'} );
+               print $Lang::tr{'acct host empty'};
+               &Header::closebox();
+       }
+#Show CUSTOMER Addresses if any
+       if($cust){
+               $count=0;
+               #EXISTING CUSTOMER BOX
+               &Header::openbox('100%', 'left',$Lang::tr{'acct exst_cust_addr'} );
+               print "<table style='width:100%;'><tr>";
+               foreach my $row (@$res) {
+                       #SET colors for tablerows
+                       $col="style='background-color:$color{'color22'}'";
+                       my ($gr,$comp,$type,$name1,$str,$nr,$plz,$city,$bank,$iban,$bic,$blz,$kto,$email,$inet,$hrb,$ustid,$tel,$fax) = @$row;
+                       if ($cgiparams{'oldcompname'} eq $comp){
+                               $col="style='background-color:yellow'";
+                       }
+                       if ($type eq 'CUST'){
+                               $count++;
+                               print"<td width='15%' valign='top' align='center'>";
+                               
+                               print<<END;
+                               <table style='width:90%;' cellspacing='0' class='tbl'>
+                               <tr>
+                                       <th align='left'>
+                                               $Lang::tr{'acct company'}
+                                       </th>
+                                       <th width='1%' style="PADDING: 0px">
+                                               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                                               <input type='image' src='/images/edit.gif' alt='$Lang::tr{'acct edit'}' title='$Lang::tr{'acct edit'}' />
+                                               <input type='hidden' name='ACTION' value='edit_addr'>
+                                               <input type='hidden' name='rdo_companytype' value='$type'>
+                                               <input type='hidden' name='txt_company' value='$comp'>
+                                               <input type='hidden' name='txt_name1' value='$name1'>
+                                               <input type='hidden' name='txt_str' value='$str'>
+                                               <input type='hidden' name='txt_str_nr' value='$nr'>
+                                               <input type='hidden' name='txt_plz' value='$plz'>
+                                               <input type='hidden' name='txt_city' value='$city'>
+                                               <input type='hidden' name='txt_bank' value='$bank'>
+                                               <input type='hidden' name='txt_iban' value='$iban'>
+                                               <input type='hidden' name='txt_bic' value='$bic'>
+                                               <input type='hidden' name='txt_blz' value='$blz'>
+                                               <input type='hidden' name='txt_kto' value='$kto'>
+                                               <input type='hidden' name='txt_email' value='$email'>
+                                               <input type='hidden' name='txt_inet' value='$inet'>
+                                               <input type='hidden' name='txt_hrb' value='$hrb'>
+                                               <input type='hidden' name='txt_ustid' value='$ustid'>
+                                               <input type='hidden' name='txt_tel' value='$tel'>
+                                               <input type='hidden' name='txt_fax' value='$fax'>
+                                               </form>
+                                       </th>
+                                       <th width='1%' style="padding: 0px">
+                                               <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                                               <input type='image' src='/images/delete.gif' alt=$Lang::tr{'acct deladr'} title=$Lang::tr{'acct deladr'} />
+                                               <input type='hidden' name='ACTION' value='del_addr' />
+                                               <input type='hidden' name='txt_company' value='$comp' />
+                                               </form>
+                                       </th>
+                               </tr>
+                               <tr>
+                                       <td colspan='3' $col><b>$comp</b></td>
+                               </tr>
+                               <tr>
+                                       <td colspan='3' $col>$name1</td>
+                               </tr>
+                               <tr>
+                                       <td colspan='3' $col>$str $nr</td>
+                               </tr>
+                               <tr>
+                                       <td colspan='3' $col>$plz $city</td>
+                               </tr>
+                               </table><br>
+                               </td>
+       
+END
+                               if(! ($count % 3)) {
+                                       print"</tr><tr>";
+                               }
+                       }
+                       
+               }
+               if ($count %2){
+                       print"<td width='15%' valign='top' align='center'></td></tr>";
+               }
+               print"</table>";
+               &Header::closebox();
+       }else{
+               &Header::openbox('100%', 'left',$Lang::tr{'acct exst_cust_addr'} );
+               print $Lang::tr{'acct cust empty'};
+               &Header::closebox();
+       }
+       &Header::closebigbox();
+       &Header::closepage();
+       exit 0;
+}
+
+sub checkfield{
+       my $field=$_[0];
+       my $fieldvalue=$_[1];
+       my $errormessage=$_[2];
+       
+       if (!&validtextfield($fieldvalue)){
+               if(!$fieldvalue){
+                       $errormessage.="$Lang::tr{'acct empty field'} $field<br>";
+               }else{
+                       $errormessage.="$Lang::tr{'acct invalid'} $field<br>";
+               }
+       }
+       return $errormessage;
+}
+
+sub checkaddress{
+       #Check if an address with the same name alread exists
+       if ($cgiparams{'update'} ne 'on'){
+               my $res=&ACCT::getaddresses;
+               foreach my $row (@$res) {
+                       my ($anz,$name)=@$row;
+                       if ($name eq $cgiparams{'txt_company'}){
+                               $errormessage.=$Lang::tr{'acct companyexists'};
+                       }
+               }
+       }
+       #Check Companyfield
+       $errormessage=&checkfield($Lang::tr{'acct company'},$cgiparams{'txt_company'},$errormessage);
+
+       #Check Name1
+       if($cgiparams{'txt_name1'}){
+               $errormessage=&checkfield($Lang::tr{'acct name1'},$cgiparams{'txt_name1'},$errormessage);
+       }
+
+       #Check Name2
+       if($cgiparams{'txt_name2'}){
+               $errormessage=&checkfield($Lang::tr{'acct name2'},$cgiparams{'txt_name2'},$errormessage);
+       }
+
+       #Check STREET
+       $errormessage=&checkfield($Lang::tr{'acct str'},$cgiparams{'txt_str'},$errormessage);
+
+       #Check STREET-NR
+       if (! $cgiparams{'txt_str_nr'}){
+               $errormessage.="$Lang::tr{'acct empty field'} $Lang::tr{'acct str_nr'}<br>";
+       }else{
+               if(! &validalphanumfield($cgiparams{'txt_str_nr'})){
+                       $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct str_nr'}<br>";
+               }
+       }
+
+       #Check POSTAL-CODE
+       if (! $cgiparams{'txt_plz'}){
+               $errormessage.="$Lang::tr{'acct empty field'} $Lang::tr{'acct plz'}<br>";
+       }else{
+               if(! &validnumfield($cgiparams{'txt_plz'})){
+                       $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct plz'}<br>";
+               }
+       }
+
+       #Check CITY
+       $errormessage=&checkfield($Lang::tr{'acct city'},$cgiparams{'txt_city'},$errormessage);
+
+       #Check E-MAIL
+       if(! $cgiparams{'txt_email'}){
+               $errormessage.="$Lang::tr{'acct empty field'} $Lang::tr{'acct email'}<br>";
+       }else{
+               if (! &General::validemail($cgiparams{'txt_email'})){
+                       $errormessage.="<br>$Lang::tr{'acct invalid'} $Lang::tr{'acct email'}";
+               }
+       }
+
+       #Check all fields required for companytype "HOST"
+       if ($cgiparams{'rdo_companytype'} eq 'HOST'){
+               #Check BANK
+               $errormessage=&checkfield($Lang::tr{'acct bank'},$cgiparams{'txt_bank'},$errormessage);
+               
+               #Check IBAN - optional
+               if($cgiparams{'txt_iban'}){
+                       if(!&validalphanumfield($cgiparams{'txt_iban'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct iban'}<br>";
+                       }
+               }
+               if($cgiparams{'txt_bic'}){
+                       if(!&validalphanumfield($cgiparams{'txt_bic'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct bic'}<br>";
+                       }
+               }
+               if(($cgiparams{'txt_iban'} && $cgiparams{'txt_blz'})||(!$cgiparams{'txt_iban'} && $cgiparams{'txt_blz'})){
+                       #Check BLZ
+                       if(! &validnumfield($cgiparams{'txt_blz'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct blz'}<br>";
+                       }
+                       #Check BANKACCOUNT
+                       if($cgiparams{'txt_kto'}){
+                               if(! &validnumfield($cgiparams{'txt_kto'})){
+                                       $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct kto'}<br>";
+                               }
+                       }elsif(!$cgiparams{'txt_kto'}){
+                               $errormessage.="$Lang::tr{'acct empty field'} $Lang::tr{'acct kto'}<br>";
+                       }
+               }elsif(!$cgiparams{'txt_iban'} && !$cgiparams{'txt_blz'}){
+                       $errormessage.="$Lang::tr{'acct empty field'} $Lang::tr{'acct blz'}<br>";
+                       #Check BANKACCOUNT
+                       if($cgiparams{'txt_kto'}){
+                               if(! &validnumfield($cgiparams{'txt_kto'})){
+                                       $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct kto'}<br>";
+                               }
+                       }elsif(!$cgiparams{'txt_kto'}){
+                               $errormessage.="$Lang::tr{'acct empty field'} $Lang::tr{'acct kto'}<br>";
+                       }
+               }
+
+               #Check Internet
+               if($cgiparams{'txt_inet'}){
+                       if ($cgiparams{'txt_inet'} =~ m/([a-z]+:\/\/)??([a-z0-9\-]+\.){1}(([a-z0-9\-]+\.){0,})([a-z0-9\-]+){1}/o) {
+                                       $cgiparams{'txt_inet'}=$2.$3.$5;
+                               } else {
+                                       $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct inet'}<br>";
+                               }
+               }
+               #Check Hrb
+               if($cgiparams{'txt_hrb'}){
+                       $errormessage=&checkfield($Lang::tr{'acct hrb'},$cgiparams{'txt_hrb'},$errormessage);
+               }
+               
+       }
+
+       #Check Phone
+       if($cgiparams{'txt_tel'}){
+                       if (!&validphonefield($cgiparams{'txt_tel'})){
+                               $errormessage.="$Lang::tr{'acct invalid'} $Lang::tr{'acct tel'}<br>";
+                       }
+       }
+
+       return $errormessage;
+}
+
+sub checkproxy{
+       if(-f "${General::swroot}/proxy/enable"){
+               $proxsrv=$Lang::tr{'running'};
+       }else{
+               $proxsrv=$Lang::tr{'stopped'};
+       }
+       my $srce = "${General::swroot}/proxy/squid.conf";
+       my $string1 = 'access\.log';
+       open(FH, $srce);
+       while(my $line = <FH>) {
+               if($line =~ m/$string1/) {
+                       $proxlog=$Lang::tr{'running'};
+               }
+       }
+       close FH;
+       return;
+}
+
+sub validtextfield{
+       #GET: Input from a Textfield
+       #GIVES: True if valid, false if not valid
+       my $remark = $_[0];
+
+       # Each part should be at least two characters in length
+       # but no more than 63 characters
+       if (length ($remark) < 1 || length ($remark) > 255) {
+               return 0;}
+       # Only valid characters are a-z, A-Z, 0-9 and -
+       if ($remark !~ /^[a-zäöüA-ZÖÄÜ0-9-.:;\&\|\ß_()\/\s]*$/) {
+               return 0;}
+       # First character can only be a letter or a digit
+       if (substr ($remark, 0, 1) !~ /^[a-zäöüA-ZÖÄÜ0-9(]*$/) {
+               return 0;}
+       # Last character can only be a letter or a digit
+       if (substr ($remark, -1, 1) !~ /^[a-zöäüA-ZÖÄÜ0-9.:;_)]*$/) {
+               return 0;}
+       return 1;
+}
+
+sub validnumfield{
+       #GET: Input from a numeric field
+       #GIVES: True if valid, false if not valid
+       my $num = $_[0];
+
+       # Each part should be at least two characters in length
+       # but no more than 63 characters
+       if (length ($num) < 1 || length ($num) > 255) {
+               return 0;}
+       # Only valid characters are a-z, A-Z, 0-9 and -
+       if ($num !~ /^[0-9.]*$/) {
+               return 0;}
+       # First character can only be a letter or a digit
+       if (substr ($num, 0, 1) !~ /^[0-9]*$/) {
+               return 0;}
+       # Last character can only be a letter or a digit
+       if (substr ($num, -1, 1) !~ /^[0-9]*$/) {
+               return 0;}
+       return 1;
+}
+
+sub validphonefield{
+       #GET: Input from a numeric field
+       #GIVES: True if valid, false if not valid
+       my $num = $_[0];
+
+       # Each part should be at least two characters in length
+       # but no more than 63 characters
+       if (length ($num) < 1 || length ($num) > 255) {
+               return 0;}
+       # Only valid characters are a-z, A-Z, 0-9 and -
+       if ($num !~ /^[0-9-()\+ ]*$/) {
+               return 0;}
+       # First character can only be a letter or a digit
+       if (substr ($num, 0, 1) !~ /^[0-9(\+]*$/) {
+               return 0;}
+       # Last character can only be a digit
+       if (substr ($num, -1, 1) !~ /^[0-9]*$/) {
+               return 0;}
+       return 1;
+}
+
+sub validalphanumfield{
+       #GET: Input from a numeric field
+       #GIVES: True if valid, false if not valid
+       my $remark = $_[0];
+
+       # Each part should be at least two characters in length
+       # but no more than 63 characters
+       if (length ($remark) < 1 || length ($remark) > 255) {
+               return 0;}
+       # Only valid characters are a-z, A-Z, 0-9 and -
+       if ($remark !~ /^[0-9a-zA-Z]*$/) {
+               return 0;}
+       # First character can only be a letter or a digit
+       if (substr ($remark, 0, 1) !~ /^[0-9A-Za-z]*$/) {
+               return 0;}
+       # Last character can only be a letter or a digit
+       if (substr ($remark, -1, 1) !~ /^[0-9a-zA-Z]*$/) {
+               return 0;}
+       return 1;
+}
+
+sub error{
+       if ($errormessage) {
+               &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
+               print "<class name='base'>$errormessage\n";
+               print "&nbsp;</class>\n";
+               &Header::closebox();
+       }
+}
+
+sub billgroupsite{
+       &Header::openpage("$Lang::tr{'acct billgroup'}", 1, '');
+       &Header::openbigbox('100%', 'center');
+       &error;
+       my $host;
+       my $cust;
+       my @oldhosts;
+       my $grp;
+       my $mailrcpt;
+       my $ccmailrcpt;
+       #Get addresses from DB
+       my $res = &ACCT::getaddresses;
+       #Check if we need to show NEW-BillGROUP-BOX or Hint
+       foreach my $row (@$res) {
+               my ($gr,$comp,$type,$name1,$str,$nr,$plz,$city,$bank,$iban,$bic,$blz,$kto,$email,$inet,$hrb,$ust,$tel,$fax,$ccmail) = @$row;
+               $grp=$gr;
+               $mailrcpt=$email;
+               $ccmailrcpt=$ccmail;
+               if ($type eq 'HOST'){
+                       $host=1;
+               }
+               if ($type eq 'CUST'){
+                       $cust=1;
+               }
+       }
+if ($host && $cust){
+       #Fill CCMAIL
+       if (!$cgiparams{'txt_ccmail'}){
+               $cgiparams{'txt_ccmail'}=$ccmailrcpt;
+       }
+       &Header::openbox('100%', 'left',"$Lang::tr{'acct edit_addr'}" );
+       print<<END;
+       <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><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><textarea name='txt_billtext1' cols='40' rows='5'  style='width: 24em;' maxlength='300'>$cgiparams{'txt_billtext1'}</textarea></td>
+                       </tr>
+                       <tr><td><br></td></tr>
+END
+       #Print Dropdown Menu for HOSTER and CUSTOMER
+       print "<tr><td>$Lang::tr{'acct hoster'}</td><td><select name='dd_host' style='width: 24.3em;'>";
+       foreach my $row (@$res) {
+               my ($gr,$comp,$type) = @$row;
+               if ($type eq 'HOST'){
+                       if($cgiparams{'dd_host'} eq $comp){
+                               print"<option selected>$comp</option>";
+                       }else{
+                               print"<option>$comp</option>";
+                       }
+               }
+       }
+       print "</select></td></tr><tr><td><br></td></tr>";
+       print "<tr><td>$Lang::tr{'acct customer'}</td><td><select name='dd_cust' style='width: 24.3em;'>";
+       foreach my $row (@$res) {
+               my ($gr,$comp,$type) = @$row;
+               if ($type eq 'CUST'){
+                       if($cgiparams{'dd_cust'} eq $comp){
+                               print"<option selected>$comp</option>";
+                       }else{
+                               print"<option>$comp</option>";
+                       }
+               }
+       }
+       print "</select></td></tr>";
+       print "<tr><td><br></td></tr>";
+       #Print multiselectbox for hosts/users which should be part of this group
+       my $hosts=&ACCT::gethosts;
+       print"<tr><td valign='top'>$Lang::tr{'acct members'}</td><td><select name='sel_hosts' multiple size='8' style='width: 24em;' >";
+       #If update, split $cgiparams{'sel_hosts'} and preselect values from selectbox
+       if($cgiparams{'update'} eq 'on'){
+               $cgiparams{'oldname'}=$cgiparams{'txt_billgroup'};
+               @oldhosts=split(/\|/,$cgiparams{'sel_hosts'});
+       }
+       foreach my $row (@$hosts) {
+               my ($val)=@$row;
+               my $sel=0;
+               foreach my $old (@oldhosts){
+                       if ($old eq $val){
+                               $sel=1;
+                       }
+               }
+               if ($sel){
+                       print"<option selected>$val</option>";
+               }else{
+                       print"<option>$val</option>";
+               }
+       }
+       print"</select></td></tr>";
+       print "<tr><td><br></td></tr>";
+       #set right decimal seperator for cent value
+       setlocale(LC_NUMERIC,"$mainsettings{'LANGUAGE'}_$uplang");
+       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='right'><br><br>";
+       print"</td></tr></table>";
+
+       #LOGO Upload if update eq 'on'
+       if ($cgiparams{'update'} eq 'on'){
+               print<<END;
+               <table style='width:100%;'>
+               <tr>
+                       <td style='width: 22em;'>$Lang::tr{'acct logo upload'}</td>
+                       <td><INPUT TYPE="file" NAME="uploaded_file" SIZE=30 MAXLENGTH=80></td>
+                       <input type='hidden' name='logo_grp' value='$cgiparams{'txt_billgroup'}' />
+               </tr>
+               <tr>
+                       <td><br>$Lang::tr{'acct logo'}</td>
+END
+               #Show Logo in webinterface with 1/2 size if set
+               if (-f "$logopath/$cgiparams{'txt_billgroup'}/logo.png"){
+                       print"<td><img src='/accounting/logo/$cgiparams{'txt_billgroup'}/logo.png' alt='$logopath/$cgiparams{'txt_billgroup'}/logo.png' width='25%' height='25%' /></td></tr>";
+               }else{
+                       print"<td><br>$Lang::tr{'no'}</td></tr>";
+               }
+               #Show optional CC Mailadresses
+               print<<END;
+               <tr>
+                       <td><br>$Lang::tr{'acct mailrcpt'}</td>
+                       <td><br>$mailrcpt</td>
+               </tr>
+               <tr>
+                       <td><br>$Lang::tr{'acct ccmail'}</td>
+                       <td><br><input type='text' name='txt_ccmail' value='$cgiparams{'txt_ccmail'}' style='width: 24.3em;'></td>
+               </tr>
+               
+               
+               
+END
+               print"</table>";
+       }
+       print"<table style='width:100%;'><tr><td align='right'>";
+       #Print SAVE or EDIT Button
+       if($cgiparams{'update'} eq 'on'){
+               print "<input type='submit' name='BILLACTION' value='$Lang::tr{'update'}'>";
+               print "<input type='hidden' name='oldname' value='$cgiparams{'oldname'}'>";
+               print "<input type='hidden' name='oldccmail' value='$ccmailrcpt'>";
+       }else{
+               print "<input type='submit' name='BILLACTION' value='$Lang::tr{'save'}'>";
+       }
+       print"</td></tr></table><br></form><br>";
+       &Header::closebox();
+#BackButton
+       print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width:100%;'>
+               <tr>
+                       <td align='right'>
+                               <input type='submit' name='ACTION' value='$Lang::tr{'back'}'>
+                       </td>
+               </tr>
+       </table>
+       </form>
+END
+       #Show Box for fixed positions if update
+       if ($cgiparams{'update'} eq 'on'){
+               &viewtablebillpos($cgiparams{'txt_billgroup'});
+       }
+       if($grp >0){
+               &viewtablebillgroups;
+       }
+
+}else{
+       &Header::openbox('100%', 'left',"$Lang::tr{'hint'}" );
+       print "$Lang::tr{'acct hint billgrp'}";
+       &Header::closebox();
+       #BackButton
+print<<END;
+       <table style='width:100%;'>
+               <tr>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <td align='right'><input type='submit' name='ACTION' value='$Lang::tr{'back'}'></td>
+                       </form>
+               </tr>
+       </table>
+END
+}
+       &Header::closebigbox();
+       &Header::closepage();
+       exit 0;
+}
+
+sub viewtablebillgroups{
+       $count=0;
+       &Header::openbox('100%', 'left',"$Lang::tr{'acct billgroup'}" );
+       #Get DATA from table BILLINGGRP
+       my $res = &ACCT::getbillgroups;
+
+       #Print table billinggroup
+       print<<END;
+               <table style='width:100%;' cellspacing='0' class='tbl'>
+               <tr>
+                       <th align='left'>$Lang::tr{'name'}</th>
+                       <th align='left'>$Lang::tr{'acct hoster'}</th>
+                       <th align='left'>$Lang::tr{'acct customer'}</th>
+                       <th align='left'>$Lang::tr{'acct members'}</th>
+                       <th align='left' colspan='5'></th>
+               </tr>
+END
+       foreach my $line (@$res){
+               $count++;
+               if($count % 2){
+                       $col="style='background-color:$color{'color22'}'";
+               }else{
+                       $col="style='background-color:$color{'color20'}'";
+               }
+               my ($name,$host,$cust,$txt,$amount,$cent) = @$line;
+               print<<END;
+               <tr>
+                       <td $col>$name</td>
+                       <td $col>$host</td>
+                       <td $col>$cust</td>
+                       <td $col>$amount</td>
+                       <td width='1%'  $col>
+END
+                       my $members=&ACCT::listhosts($name);
+                       my @mem=split(/\|/,$members);
+                       my $msg;
+                       foreach my $m (@mem){
+                               $msg.=$m."\n";
+                       }
+               print"<img src='/images/computer.png' alt=$Lang::tr{'acct members'} title='".$msg."' /></td>";
+               print<<END;
+               
+               <td width='1%' $col>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='image' src='/images/edit.gif' alt='$Lang::tr{'edit'}' title='$Lang::tr{'edit'}' />
+                       <input type='hidden' name='BILLACTION' value='edit_billgroup'>
+                       <input type='hidden' name='txt_billgroup' value='$name'>
+                       <input type='hidden' name='txt_billtext1' value='$txt'>
+                       <input type='hidden' name='dd_host' value='$host'>
+                       <input type='hidden' name='dd_cust' value='$cust'>
+                       <input type='hidden' name='sel_hosts' value='$members'>
+                       <input type='hidden' name='txt_cent' value='$cent'>
+                       </form>
+               </td>
+               
+               <td width='1%' $col>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='image' src='/images/folder-open.png' alt='$Lang::tr{'edit'}' title='$Lang::tr{'acct billarchive'}' />
+                       <input type='hidden' name='BILLACTION' value='open_billgroup'>
+                       <input type='hidden' name='txt_billgroup' value='$name'>
+                       </form>
+               </td>
+               
+               <td width='1%' $col>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='image' src='/images/document-new.png' alt='$Lang::tr{'acct preview'}' title='$Lang::tr{'acct preview'}' />
+                       <input type='hidden' name='BILLACTION' value='open_preview'>
+                       <input type='hidden' name='txt_billgroup' value='$name'>
+                       </form>
+               </td>
+               <td width='1%' $col>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <input type='image' src='/images/delete.gif' alt=$Lang::tr{'delete'} title="$Lang::tr{'delete'}" />
+                       <input type='hidden' name='BILLACTION' value='delete_billgroup'>
+                       <input type='hidden' name='txt_billgroup' value='$name'>
+                       </form>
+               </td>
+               </tr>
+END
+       }
+       print "</table>";
+       &ACCT::closedb;
+       &Header::closebox();
+}
+
+sub viewtablehosts{
+       $dbh=&ACCT::connectdb;
+       &Header::openbox('100%', 'left', $Lang::tr{'acct hosts'});
+       my $mon=$_[0];
+       my $year=$_[1];
+       my ($from,$till)=&ACCT::getmonth($mon,$year);
+       $count=0;
+       #Menu to display another month
+       print<<END;
+       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+       <table style='width:100%;'>
+       <tr>
+               <td style='width:5%; text-align:center;'>$Lang::tr{'acct month'}</td>
+               <td style='width:10%; text-align: center;'>$Lang::tr{'acct year'}</td>
+               <td></td>
+       </tr>
+       <tr>
+               <td><select name='month'>
+END
+       for (my $i=1;$i<13;$i++){
+               if(($_[0]) eq $i){
+                       print"<option selected>$i</option>";
+               }else{
+                       print"<option>$i</option>";
+               }
+       }
+       print<<END;
+               </select></td>
+               <td style='text-align: center;'><select name='year'>
+END
+       for (my $j=2014;$j<=($year);$j++){
+               if(($_[1]) eq $j){
+                       print"<option selected>$j</option>";
+               }else{
+                       print"<option>$j</option>";
+               }
+       }
+       print<<END;
+               </select></td>
+               <td><input type='submit' name='ACTION' value='$Lang::tr{'acct view'}'></td>
+       </tr>
+       </table></form>
+       <br>
+END
+       #View table with all hosts
+       print<<END;
+       <table style='width:100%;' class='tbl'>
+       <tr>
+               <th>$Lang::tr{'name'}</th>
+               <th>$Lang::tr{'acct traffic'}</th>
+               <th>$Lang::tr{'from'}</th>
+               <th>$Lang::tr{'to'}</th>
+               <th></th>
+       </tr>
+END
+       my $res = $dbh->selectall_arrayref("SELECT SUM(BYTES),min(TIME_RUN),max(TIME_RUN),NAME from ACCT where TIME_RUN between ".$from." and ".$till." group by NAME;");
+       my $sumbytes;
+       my $type;
+       my $lineval;
+       if (@$res){
+               foreach my $row (@$res) {
+                       $count++;
+                       $lineval='';
+                       $type='';
+                       if($count % 2){
+                               $col="background-color:$color{'color22'};";
+                       }else{
+                               $col="background-color:$color{'color20'};";
+                       }
+                       my ($bytes, $mintime, $maxtime, $name) = @$row;
+                       $sumbytes +=$bytes;
+                       ($lineval,$type) = &calcbytes($bytes);
+                       #Print Line
+                       print"<tr><td style='$col'>$name</td><td style='$col text-align: right;'>$lineval $type</td><td style='$col text-align: center;'>".&getdate($mintime)."</td><td style='$col text-align: center;'>".&getdate($maxtime)."</td>";
+                       print<<END;
+                               <td style='$col'>
+                                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                                       <input type='image' src='/images/utilities-system-monitor.png' alt="$Lang::tr{'status'}" title="$Lang::tr{'status'}" />
+                                       <input type='hidden' name='ACTION' value='viewgraph'>
+                                       <input type='hidden' name='host' value='$name'>
+                                       <input type='hidden' name='month' value='$mon'>
+                                       <input type='hidden' name='year' value='$year'>
+                                       <input type='hidden' name='traffic' value="$Lang::tr{'acct sum'} $Lang::tr{'acct traffic'} $lineval $type">
+                                       </form>
+                                       
+                               </td>
+                       </tr>
+END
+               }
+       }else{
+       print "<tr><td colspan='5'><center>$Lang::tr{'acct no data'}</td></tr>";
+       }
+       print "</table>";
+       &Header::closebox();
+       &ACCT::closedb;
+}
+
+sub viewtablebillpos{
+       my $grp=$_[0];
+       #BOX for extra billpositions
+       &Header::openbox('100%', 'left',"$Lang::tr{'acct fix billpos'} $grp" );
+       #Table for optional billpositions
+       print<<END;
+       <center><table style='width:65%' cellspacing='0' class='tbl' border='0'>
+       <tr>
+               <th align='left'>$Lang::tr{'acct amount'}</th>
+               <th align='left' style='padding-left:1.2em'>$Lang::tr{'acct name'}</th>
+               <th align='left'>$Lang::tr{'acct price pp'}</th>
+               <th></th>
+       </tr>
+END
+       #Fill Table for extra billpositions if any
+       if ($cgiparams{'update'} eq 'on'){
+               my $res = &ACCT::getextrabillpos($cgiparams{'txt_billgroup'});
+               $count=0;
+               foreach my $line (@$res){
+                       $count++;
+                       if($count % 2){
+                               $col="style='background-color:$color{'color22'}'";
+                       }else{
+                               $col="style='background-color:$color{'color20'}'";
+                       }
+                       my ($grp,$amnt,$pos,$price) = @$line;
+                       setlocale(LC_NUMERIC,"$mainsettings{'LANGUAGE'}_$uplang");
+                       my $locale_price=sprintf"%.2f",$price;
+                       print "<tr><form method='post' action='$ENV{'SCRIPT_NAME'}'><td $col style='padding-right:1.2em' align='right'>$amnt</td><td $col style='padding-left:1.2em'>$pos</td><td $col style='padding-right:1.2em' align='right'>$locale_price $settings{'CURRENCY'}</td>";
+                       print "<td $col><input type='image' src='/images/delete.gif' alt=$Lang::tr{'delete'} title=$Lang::tr{'delete'} >";
+                       print "<input type='hidden' name='BILLPOS' value='delpos'>";
+                       print "<input type='hidden' name='txt_billgroup' value='$grp'>";
+                       print "<input type='hidden' name='txt_billpos' value='$pos'></form></tr>";
+               }
+       }
+       print<<END;
+               <tr>
+                       
+                       <td ><form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='text' name='txt_amount' value='$cgiparams{'txt_amount'}' size='3'></td>
+                       <td><input type='text' name='txt_name' value='$cgiparams{'txt_name'}' size='40'></td>
+                       <td ><input type='text' name='txt_price' value='$cgiparams{'txt_price'}' size='6'></td>
+                       <td></td>
+               </tr>
+               </table><br>
+               <table style='width:100%'>
+               <tr>
+                       <td align='right'><input type='submit' name='BILLPOS' value='$Lang::tr{'save'}'></td>
+                       <input type='hidden' name='txt_billgroup' value='$grp'>
+                       </form>
+               </tr>
+               </table></form>
+END
+
+       &Header::closebox();
+}
+
+sub billoverview{
+       my $grp=shift;
+       my $col;
+       my $count=0;
+       #Open site
+       &Header::openpage($Lang::tr{'acct billoverview'}, 1, '');
+       &Header::openbigbox('100%', 'center');
+       &Header::openbox('100%', 'left', $grp);
+       my $res=&ACCT::getbills($grp);
+
+       if (@$res > 0){
+               print<<END;
+               <table style='width:100%' cellspacing='0' class='tbl' border='0'>
+               <tr>
+                       <th>$Lang::tr{'acct nr'}</th>
+                       <th>$Lang::tr{'acct path'}</th>
+                       <th>$Lang::tr{'name'}</th>
+                       <th>$Lang::tr{'acct generated'}</th>
+                       <th></th>
+               </tr>
+       
+END
+               foreach my $row (@$res){
+                       $count++;
+                       if($count % 2){
+                               $col="style='background-color:$color{'color22'}'";
+                       }else{
+                               $col="style='background-color:$color{'color20'}'";
+                       }
+                       my ($no,$path,$name,$date,$dbgrp) = @$row;
+                       
+                       print "<tr><td $col>$no</td><td $col>$path</td><td $col>$name</td><td $col>$date</td><td $col>";
+                       print "<form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='image' src='/images/updbooster/updxl-src-adobe.gif' alt='$Lang::tr{'edit'}' title='$Lang::tr{'edit'}' />";
+                       print "<input type='hidden' name='BILLVIEW' value='show'>";
+                       my $file="$path/$name";
+                       print "<input type='hidden' name='file' value='$file'>";
+                       print "<input type='hidden' name='name' value='$name'>";
+                       print"</form></td></tr>";
+               }
+               print "</table><br>";
+       }else{
+               print "<center>$Lang::tr{'acct no data'}";
+       }
+       &Header::closebox();
+
+       #BackButton
+print<<END;
+       <table style='width:100%'>
+               <tr>
+                       <form method='post' action='$ENV{'SCRIPT_NAME'}'>
+                       <td align='right'><input type='submit' name='ACTION' value='$Lang::tr{'back'}'></td>
+                       </form>
+               </tr>
+       </table>
+END
+       &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{'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>";
+       }else{
+               if (! &General::validemail($cgiparams{'txt_mailsender'})){
+                       $errormessage.="<br>$Lang::tr{'acct invalid'} $Lang::tr{'acct mailsender'}<br>";
+               }
+       }
+       return $errormessage;
+}
diff --git a/src/squid-accounting/acct-lib.pl b/src/squid-accounting/acct-lib.pl
new file mode 100644 (file)
index 0000000..a19140d
--- /dev/null
@@ -0,0 +1,922 @@
+#!/usr/bin/perl
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2014  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/>.       #
+#                                                                             #
+###############################################################################
+package ACCT;
+
+use DBI;
+use POSIX;
+use Time::Local;
+use PDF::API2;
+use utf8;
+use Encode;
+use File::Copy;
+use File::Temp qw/ tempfile tempdir /;
+
+###############################################################################
+my $dbh;
+my $dsn="dbi:SQLite:dbname=/var/ipfire/accounting/acct.db";
+my ($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat,$isdst)=localtime();
+my %mainsettings;
+###############################################################################
+
+&General::readhash("/var/ipfire/main/settings", \%mainsettings);
+my $uplang=uc($mainsettings{'LANGUAGE'});
+
+#############
+# Functions #
+#############
+
+sub connectdb {
+       $dbh = DBI->connect($dsn, "", "",{RaiseError => 1, AutoCommit => 1})or die "ERROR $!";
+       return $dbh;
+}
+
+sub closedb {
+       $dbh->disconnect();
+       return $dbh;
+}
+
+sub getminmax {
+       my $min;
+       my $max;
+       $dbh=&connectdb;
+       my $sth = $dbh->prepare('Select min(TIME_RUN),max(TIME_RUN) from ACCT;');
+       $sth->execute;
+       while ( my @row = $sth->fetchrow_array ) {
+               $min=$row[0];
+               $max=$row[1];
+       }
+       $dbh->disconnect();
+       return ($min,$max);
+}
+
+sub cleardbtraf {
+       &connectdb;
+       $dbh->do("DELETE FROM ACCT;");
+       $dbh->do("DELETE FROM ACCT_HIST;");
+       &closedb;
+}
+
+sub cleardb {
+       &connectdb;
+       $dbh->do("DELETE FROM ACCT;");
+       $dbh->do("DELETE FROM ACCT_HIST;");
+       $dbh->do("DELETE FROM ACCT_ADDR ");
+       $dbh->do("DELETE FROM BILLINGGRP");
+       $dbh->do("DELETE FROM BILLINGHOST");
+       &closedb;
+}
+
+sub delbefore {
+       my $till=$_[0];
+       &connectdb;
+       $dbh->do("DELETE FROM ACCT WHERE TIME_RUN < ".$till.";");
+       $dbh->do("DELETE FROM ACCT_HIST WHERE TIME_RUN < date('".$till."','unixepoch');");
+       &closedb;
+}
+
+sub movedbdata {
+       $dbh->do("insert into ACCT_HIST select datetime(TIME_RUN,'unixepoch'),NAME,SUM(BYTES) from ACCT where  date(TIME_RUN,'unixepoch') < date('now','-2 months') group by NAME,date(TIME_RUN,'unixepoch');");
+       $dbh->do("DELETE FROM ACCT WHERE datetime(TIME_RUN,'unixepoch') < date('now','-2 months');");
+}
+
+sub gethourgraphdata {
+       my $table=$_[0];
+       my $from=$_[1];
+       my $till=$_[2];
+       my $name=$_[3];
+       my $res;
+       $dbh=connectdb;
+       if ($table eq 'ACCT'){
+               $res = $dbh->selectall_arrayref( "SELECT TIME_RUN,BYTES FROM ACCT WHERE TIME_RUN BETWEEN ".$from." AND ".$till." AND NAME = '".$name."';");
+       }else{
+               $res = $dbh->selectall_arrayref( "SELECT TIME_RUN,BYTES FROM ACCT_HIST WHERE TIME_RUN BETWEEN date(".$from.",'unixepoch') AND date(".$till.",'unixepoch') AND NAME = '".$name."';");
+       }
+       return $res;
+}
+
+sub getmonthgraphdata {
+       my $table=$_[0];
+       my $from=$_[1];
+       my $till=$_[2];
+       my $name=$_[3];
+       my $res;
+       $dbh=connectdb;
+       if ($table eq 'ACCT'){
+               $res = $dbh->selectall_arrayref( "SELECT  strftime('%d.%m.%Y',xx.tag),(SELECT SUM(BYTES)/1024/1024 FROM ACCT WHERE date(TIME_RUN,'unixepoch') <= xx.tag and NAME = '".$name."') kum_bytes FROM (SELECT date(TIME_RUN,'unixepoch') tag,SUM(BYTES)/1024/1024 sbytes FROM ACCT WHERE NAME='".$name."' and TIME_RUN between ".$from." and ".$till." GROUP by date(TIME_RUN,'unixepoch')) xx;");
+       }else{
+               $res = $dbh->selectall_arrayref( "SELECT TIME_RUN, (SELECT SUM(BYTES)/1024/1024 FROM ACCT_HIST WHERE TIME_RUN <= ah.TIME_RUN and NAME = '".$name."') kum_bytes FROM ACCT_HIST ah WHERE TIME_RUN BETWEEN date(".$from.",'unixepoch') AND date(".$till.",'unixepoch') AND NAME = '".$name."' group by TIME_RUN;");
+       }
+       $dbh=closedb;
+       return $res;
+}
+
+sub writeaddr {
+       my $comp  = $_[0];
+       my $type  = $_[1];
+       my $name1 = $_[2];
+       my $str   = $_[3];
+       my $nr    = $_[4];
+       my $post  = $_[5];
+       my $city  = $_[6];
+       my $bank  = $_[7];
+       my $iban  = $_[8];
+       my $bic   = $_[9];
+       my $blz   = $_[10];
+       my $kto   = $_[11];
+       my $mail  = $_[12];
+       my $inet  = $_[13];
+       my $hrb   = $_[14];
+       my $ustid = $_[15];
+       my $tel   = $_[16];
+       my $fax   = $_[17];
+       $dbh=&connectdb;
+       #COMPANY,TYPE,NAME1,STR,NR,POSTCODE,CITY,BANK,IBAN,BLZ,ACCOUNT,EMAIL,INTERNET,HRB,USTID,TEL,FAX
+       my $sql = "INSERT INTO ACCT_ADDR (COMPANY,TYPE,NAME1,STR,NR,POSTCODE,CITY,BANK,IBAN,BIC,BLZ,ACCOUNT,EMAIL,INTERNET,HRB,USTID,TEL,FAX) VALUES ( ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
+       my $sth = $dbh->prepare( $sql );
+       $sth->execute( $comp,$type,$name1,$str,$nr,$post,$city,$bank,$iban,$bic,$blz,$kto,$mail,$inet,$hrb,$ustid,$tel,$fax );
+       $dbh=&closedb;
+}
+
+sub updateaddr {
+       my $type  = $_[0];
+       my $comp  = $_[1];
+       my $name1 = $_[2];
+       my $str   = $_[3];
+       my $nr    = $_[4];
+       my $post  = $_[5];
+       my $city  = $_[6];
+       my $bank  = $_[7];
+       my $iban  = $_[8];
+       my $bic   = $_[9];
+       my $blz   = $_[10];
+       my $kto   = $_[11];
+       my $mail  = $_[12];
+       my $inet  = $_[13];
+       my $hrb   = $_[14];
+       my $ustid = $_[15];
+       my $tel   = $_[16];
+       my $fax   = $_[17];
+       my $oldname = $_[18];
+       $dbh=&connectdb;
+       $dbh->do("UPDATE ACCT_ADDR SET COMPANY=?,TYPE=?,NAME1=?,STR=?,NR=?,POSTCODE=?,CITY=?,BANK=?,IBAN=?,BIC=?,BLZ=?,ACCOUNT=?,EMAIL=?,INTERNET=?,HRB=?,USTID=?,TEL=?,FAX=? WHERE COMPANY=?", undef,$comp,$type,$name1,$str,$nr,$post,$city,$bank,$iban,$bic,$blz,$kto,$mail,$inet,$hrb,$ustid,$tel,$fax,$oldname)or die "Could not UPDATE Address.";
+       $dbh=&closedb;
+}
+
+sub deladdr {
+       my $comp    = $_[0];
+       $dbh=&connectdb;
+       $dbh->do("DELETE FROM ACCT_ADDR WHERE COMPANY=?", undef,$comp )or die "Could not delete address $comp!";
+       $dbh=&closedb;
+}
+
+sub getaddresses {
+       $dbh=&connectdb;
+       my $res=$dbh->selectall_arrayref("SELECT (SELECT COUNT(NAME) FROM BILLINGGRP GROUP BY NAME),* FROM ACCT_ADDR ORDER BY COMPANY;");
+       $dbh=&closedb;
+       return $res;
+}
+
+sub gethosts{
+       $dbh=&connectdb;
+       my $res =$dbh->selectall_arrayref("SELECT NAME from ACCT GROUP BY NAME ORDER BY NAME;");
+       $dbh=&closedb;
+       return $res;
+}
+
+sub getbillgroups {
+       $dbh=connectdb;
+       my $res=$dbh->selectall_arrayref("SELECT NAME,HOST,CUST,BILLTEXT,(SELECT COUNT(HOST) FROM BILLINGHOST WHERE BILLINGGRP.NAME=BILLINGHOST.GRP),CENT FROM BILLINGGRP ORDER BY NAME;");
+       return $res;
+       $dbh->disconnect();
+}
+
+sub getextrabillpos {
+       my $grp=$_[0];
+       $dbh=&connectdb;
+       my $res=$dbh->selectall_arrayref("SELECT * from BILLPOS WHERE GRP =?", undef,$grp);
+       $dbh=&closedb;
+       return $res;
+}
+
+sub savebillgroup {
+       my $grp=$_[0];
+       my $txt=$_[1];
+       my $host=$_[2];
+       my $cust=$_[3];
+       my $ust=$_[4];
+       my @ips=@{$_[5]};
+       $dbh=&connectdb;
+       my $sql = "INSERT INTO BILLINGGRP (NAME,BILLTEXT,HOST,CUST,CENT) VALUES (?,?,?,?,?)";
+       my $sth = $dbh->prepare( $sql );
+       $sth->execute( $grp,$txt,$host,$cust,$ust );
+       foreach my $ip (@ips){
+               my $sql = "INSERT INTO BILLINGHOST (GRP,HOST) VALUES (?,?)";
+               my $sth = $dbh->prepare( $sql ) or die "Could not prepare insert into BILLINGHOST $!";
+               $sth->execute( $grp,$ip ) or die "Could not execute INSERT into BILLINGHOST $!";
+       }
+       $dbh=&closedb;
+}
+
+sub updatebillgrouphost {
+       my $oldgrp=$_[0];
+       my $newgrp=$_[1];
+       $dbh=&connectdb;
+       my $sql = "UPDATE BILLINGGRP SET HOST=? WHERE HOST=?;";
+       my $sth = $dbh->prepare( $sql );
+       $sth->execute( $newgrp,$oldgrp );
+       $dbh=&closedb;
+}
+
+sub updatebillgroupcust {
+       my $oldgrp=$_[0];
+       my $newgrp=$_[1];
+       $dbh=&connectdb;
+       my $sql = "UPDATE BILLINGGRP SET CUST=? WHERE CUST=?;";
+       my $sth = $dbh->prepare( $sql );
+       $sth->execute( $newgrp,$oldgrp );
+       $dbh=&closedb;
+}
+
+sub deletebillgroup {
+       my $name=shift;
+       $dbh=connectdb;
+       $dbh->do("DELETE FROM BILLINGGRP WHERE NAME=?;", undef,$name);
+       $dbh->do("DELETE FROM BILLINGHOST WHERE GRP=?;", undef,$name);
+       &closedb;
+}
+
+sub savebillpos {
+       my $grp=$_[0];
+       my $amnt=$_[1];
+       my $pos=$_[2];
+       my $price=$_[3];
+       $dbh=&connectdb;
+       my $sql = "INSERT INTO BILLPOS (GRP,AMOUNT,POS,PRICE) VALUES (?,?,?,?)";
+       my $sth = $dbh->prepare( $sql )or die "Could not prepare insert into BILLINGPOS $!";
+       $sth->execute( $grp,$amnt,$pos,$price ) or die "Could not execute INSERT into BILLINGHOST $!";
+       $dbh->disconnect();
+}
+
+sub updatebillpos {
+       my $oldgrp=shift;
+       my $newgrp=shift;
+       $dbh=&connectdb;
+       my $sql = "UPDATE BILLPOS SET GRP=? WHERE GRP=?;";
+       my $sth = $dbh->prepare( $sql );
+       $sth->execute( $newgrp,$oldgrp );
+       my $sql1 = "UPDATE BILLS SET GRP=? WHERE GRP=?;";
+       my $sth1 = $dbh->prepare( $sql1 );
+       $sth1->execute( $newgrp,$oldgrp );
+       $dbh=&closedb;
+       #Now rename directories
+       rename ("/srv/web/ipfire/html/accounting/logo/$oldgrp","/srv/web/ipfire/html/accounting/logo/$newgrp");
+       rename ("/var/ipfire/accounting/bill/$oldgrp","/var/ipfire/accounting/bill/$newgrp")
+       
+}
+
+sub delbillpos_single {
+       my $pos=$_[0];
+       my $grp=$_[1];
+       my $sql = "DELETE FROM BILLPOS WHERE GRP=? AND POS=?;";
+       $dbh=&connectdb;
+       my $sth = $dbh->prepare( $sql )or die "Could not prepare DELETE POS from BILLINGPOS $!";
+       $sth->execute( $grp,$pos ) or die "Could not execute DELETE from BILLINGHOST $!";
+       $dbh=&closedb;
+}
+
+sub delbillpos {
+       my $grp=$_[0];
+       my $sql = "DELETE FROM BILLPOS WHERE GRP=?;";
+       $dbh=&connectdb;
+       my $sth = $dbh->prepare( $sql )or die "Could not prepare DELETE POS from BILLINGPOS $!";
+       $sth->execute( $grp ) or die "Could not execute DELETE from BILLINGHOST $!";
+       $dbh=&closedb;
+}
+
+sub listhosts{
+       my $name=$_[0];
+       my $a;
+       my $res=$dbh->selectall_arrayref("SELECT * FROM BILLINGHOST WHERE GRP='".$name."';");
+       foreach my $gzu (@$res){
+               my ($x,$y)=@$gzu;
+               $a.= "|$y";
+       }
+       return $a;
+}
+
+sub checkusergrp {
+       $dbh=connectdb;
+       my $res=$dbh->selectall_arrayref("SELECT * FROM BILLINGHOST;");
+       $dbh->disconnect();
+       return $res;
+}
+
+sub getmonth{
+       #GET  : 1. month   2. year
+       #GIVES: 1.day of given month AND last day of given month in seconds since 1.1.1970
+       ($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat,$isdst)=localtime();
+               my $jahr=$_[1];
+               my $monat=$_[0]-1 if($_[0]);
+               my $tag=1;
+               my $time1=timelocal(0,0,0,$tag,$monat,$jahr);
+               my $time2=timelocal(0,0,0,$tag,($monat+1),$jahr);
+               --$time2;
+               return ($time1,$time2);
+}
+
+sub GetTaValues {
+       $dbh=&connectdb;
+       my $from = $_[0]; #unixtimestamp
+       my $till = $_[1]; #unixtimestamp
+       my $grp  = $_[2]; #Billgroupname
+       my $all = $dbh->selectall_arrayref("SELECT bh.HOST,SUM(ac.BYTES) sbytes,bh.GRP FROM ACCT ac ,BILLINGHOST bh WHERE ac.NAME=bh.HOST AND bh.GRP=? AND ac.TIME_RUN between ? AND ? GROUP BY bh.GRP,bh.HOST;", undef, $grp, $from, $till) or die "Could not fetch Groupdata $!"; 
+       my $nri1 = @$all;
+       my @return;
+       my $cnt=0;
+       if ($nri1 eq "0"){
+               $return[$cnt]="999";
+       }
+       else
+       {
+               foreach my $row (@$all){
+                       my ($bytes,$billgrp,$host) = @$row;
+                       $return[$cnt]="$bytes,$billgrp,$host";
+                       $cnt++;
+               }
+       }
+       &closedb;
+       return @return;
+}
+
+sub getTaAddress {
+       my $grp=$_[0];
+       my $type=$_[1];
+       $dbh=&connectdb;
+       my $res = $dbh->selectall_arrayref("select * from ACCT_ADDR,BILLINGGRP where (BILLINGGRP.HOST=ACCT_ADDR.COMPANY AND BILLINGGRP.NAME=? AND ACCT_ADDR.TYPE=?) or (BILLINGGRP.CUST=ACCT_ADDR.COMPANY and BILLINGGRP.NAME=? AND ACCT_ADDR.TYPE=?);", undef, $grp,$type,$grp,$type);
+       &closedb;
+       return $res;
+}
+
+sub checkbillgrp {
+       my $comp=$_[0];
+       $dbh=&connectdb;
+       my $res=$dbh->selectall_arrayref("SELECT NAME,HOST,CUST FROM BILLINGGRP;");
+       &closedb;
+       return $res;
+}
+
+sub pdf2 {
+       my @billar              = @{$_[0]}; #DATA from sendbill (just host/values)
+       my $month               = $_[1];
+       $month                  = '0'.$month if $month < 10;
+       my $year                = $_[2];
+       my $mwst                = $_[3];
+       my @address_cust= @{$_[4]}; #Array which contains customer and hoster adresses and some additional info from billgroup
+       my @address_host= @{$_[5]};
+       my @billpos             = @{$_[6]};
+       my $grp                 = $_[7];
+       my $cur                 = $_[8]; #(Eur,USD,...)
+       my $preview             = $_[9];
+       my $no                  = &getBillNr;
+       my $name                = $month."-".$year."-".$no.".pdf";
+       my $path                ="/var/ipfire/accounting/bill/";
+       my $filename    = "$path/$grp/$name";
+       my @summen; #Used for counting the sums
+       my $x                   = 500;
+       my $y                   = 1;
+       my $zwsum;
+       my $pages               = 0;
+       my $anzbillpos  = @billpos;
+       my $anz                 = (@billar+$anzbillpos)/18; #Total pages
+       $anz = ceil($anz); #round the $anz value
+       my $aktpage=1;
+       my $sum=0;
+       my $sum1=0;
+       my $lines;
+       my $title;
+       my $txt;
+       my $txt1;
+       my $txt2;
+       my $txt3;
+       my $txt4;
+       my $txt5;
+       my $fnt;
+       my $fnt1;
+       my $fulldate    = strftime('%d.%m.%Y',localtime(time()));
+       my($company_host,$type_host,$name1_host,$str_host,$str_nr_host,$plz_host,$city_host,$bank,$iban,$bic,$blz,$kto,$email,$internet,$hrb,$stnr,$tel_host,$fax_host,$ccmail,$billgrp,$text,$host,$cust,$cent);
+       my($company_cust,$type_cust,$name1_cust,$str_cust,$str_nr_cust,$plz_cust,$city_cust);
+
+       #First of all check if directory exists, else create it
+       if(! -d "$path/$grp" && $preview ne 'on'){
+               mkdir("$path/$grp",0777);
+       }
+
+       #Check if we are creating a preview or a real bill
+       if($preview eq 'on'){
+               $filename="$path/".tempfile( SUFFIX => ".pdf", );
+       }
+       ####################################################################
+       #Prepare DATA from arrays
+       ####################################################################
+       #Get HOSTER for this grp
+       foreach my $addrline (@address_host){
+               ($company_host,$type_host,$name1_host,$str_host,$str_nr_host,$plz_host,$city_host,$bank,$iban,$bic,$blz,$kto,$email,$internet,$hrb,$stnr,$tel_host,$fax_host,$ccmail,$billgrp,$text,$host,$cust,$cent)=@$addrline;
+       }
+       #Get CUST for this grp
+       foreach my $addrline_cust (@address_cust){
+               ($company_cust,$type_cust,$name1_cust,$str_cust,$str_nr_cust,$plz_cust,$city_cust)=@$addrline_cust;
+       }
+
+
+       #Generate PDF File
+       my $pdf  = PDF::API2->new(-file => $filename);
+       $pdf->mediabox('A4');
+       my $page = $pdf->page;
+       $fnt = $pdf->corefont('Helvetica');
+       $fnt1 = $pdf->corefont('HelveticaBold');
+
+       #Set lines
+       $lines = $page->gfx;
+       $title = $page->gfx;
+       $lines->strokecolor('grey');
+       $lines->linewidth('0.5');
+
+       #Fill BILL DATA into PDF
+       foreach (@billar) {
+               my ($a1,$a2) = split( /\,/, $_ );
+               $a2=sprintf"%.2f",($a2/1024/1024);
+               my $sum=(($a2)*$cent);
+               $sum = sprintf"%.2f",($sum);
+               # Seitenwechsel ermitteln
+               if ($y % 18 == 0) {
+                       $txt1->translate(390, 120);
+                       $txt1->text($Lang::tr{'acct pdf zwsum'}); #Pos
+                       $zwsum=sprintf("%.2f",($zwsum));
+                       $txt1->translate(540, 120);
+                       $txt1->text_right("$zwsum".decode('utf8',$cur)); #Pos
+                       $zwsum=0;
+                       $pages++;
+                       $aktpage++;
+                       $x=500;
+                       $page=$pdf->page;
+                       #draw lines
+                       $lines = $page->gfx;
+                       $title = $page->gfx;
+                       $lines->strokecolor('grey');
+                       $lines->linewidth('0.5');
+               }
+
+               #TITLES
+               $title->linewidth(14);
+               $title->move(385, 168);
+               $title->line(545, 168); #Title of SUMBOX
+               $title->move(60, 523);
+               $title->line(545, 523);#Bottom horiz. line of Title
+
+               # Generate Tables
+               $lines->move(59, 745);
+               $lines->line(545, 745);
+               $lines->move(59, 563);
+               $lines->line(545, 563);
+
+               # Addressbox
+               $lines->move(61, 710);
+               $lines->line(61, 715, 66, 715); #TL
+               $lines->move(61, 610);
+               $lines->line(61, 605, 66, 605); #BL
+               $lines->move(285, 715);
+               $lines->line(290, 715, 290, 710); #TR
+               $lines->move(290, 610);
+               $lines->line(290, 605, 285, 605); #BR
+
+               # Table for positions
+               $lines->move(60, 530);
+               $lines->line(60, 200); #First vert. line POS
+               $lines->move(90, 523);
+               $lines->line(90, 200); #Second vert. line
+               $lines->move(280, 523);
+               $lines->line(280, 200); #third vert. line
+               $lines->move(385, 523);
+               $lines->line(385, 200); #third vert. line
+               $lines->move(430, 523);
+               $lines->line(430, 200); #fourth vert. line
+               $lines->move(545, 530);
+               $lines->line(545, 200); #fifth vert. line
+               $lines->move(60, 200);
+               $lines->line(545, 200); #Bottom horizontal line
+
+               #SUM BOX
+               $lines->move(385, 175);
+               $lines->line(385, 115); #Left vert. line of SUMBOX
+               $lines->move(545, 175);
+               $lines->line(545, 115); #Right vert. line of SUMBOX
+               $lines->move(385, 115);
+               $lines->line(545, 115); #Bottom horiz. line of SUMBOX
+
+               #Lines on right side after sender and after "bank"
+               $lines->move(420, 723);
+               $lines->line(545, 723);# Line "Sender"
+               $lines->move(420, 648);
+               $lines->line(545, 648);# Line "Bank"
+               $lines->move(420, 600);
+               $lines->line(545, 600);# Line HRB/USTID
+
+               #Make lines Visible
+               $lines->stroke;
+               $title->stroke;
+               if (-f "/srv/web/ipfire/html/accounting/logo/$grp/logo.png"){
+               #Image LOGO
+                       my $gfx = $page->gfx;
+                       my $image = $pdf->image_png("/srv/web/ipfire/html/accounting/logo/$grp/logo.png");
+                       my $width= $image->width;
+                       my $height= $image->height;
+                       $gfx->image($image, (545+($width/2))-$width, 750,0.5);
+               }
+
+               #Set Fonts
+               $txt = $page->text;
+               $txt1 = $page->text;
+               $txt2 = $page->text;
+               $txt3 = $page->text;
+               $txt4 = $page->text;
+               $txt5 = $page->text;
+               $txt->textstart;                #Begin Text
+               $txt->font($fnt, 10);   #Set fontsize for font1
+               $txt1->font($fnt, 8);   #Set fontsize for font2
+               $txt2->font($fnt1, 10); #Set fontsize for font3
+               $txt3->font($fnt1, 16); #Set fontsize for font4
+               $txt4->font($fnt, 6);   #Set fontsize for font5
+               $txt5->font($fnt1, 6);  #Set fontsize for font6
+
+               #if $cent not set, set it to 0.5
+               if(!$cent){$cent='0.005';}
+
+               #if MWst not set, set it to 19%
+               if(!$mwst){$mwst='19';}
+
+               # Titles
+               $txt1->translate(65,520);
+               $txt1->text($Lang::tr{'acct pos'}); #Pos
+               $txt1->translate(95, 520);
+               $txt1->text($Lang::tr{'acct name'}); #Host/Name
+               $txt1->translate(285, 520);
+               $txt1->text($Lang::tr{'acct amount'}); #Traffic
+               $txt1->translate(390, 520);
+               $txt1->text($Lang::tr{'acct cent1'}); #Price /MB
+               $txt1->translate(435, 520);
+               $txt1->text($Lang::tr{'acct pdf price'}); #Sum
+
+       ####################################################################
+               #Fill Recipient address
+               my $rec_name= "$company_cust";
+               my $rec_name1="$name1_cust";
+               my $rec_str = "$str_cust $str_nr_cust";
+               my $rec_city = "$plz_cust $city_cust";
+               #INSERT RECIPIENT
+               my $o=675;
+               $txt2->translate(78, 685);
+               $txt2->text(decode('utf8',$rec_name));
+               if($rec_name1){
+                       $txt1->translate(78, $o);
+                       $txt1->text(decode('utf8',$rec_name1));
+                       $o=$o-15;
+               }else{
+                       $o=$o-15;
+               }
+               $txt1->translate(78, $o);
+               $txt1->text(decode('utf8',$rec_str));
+               $o=$o-10;
+               $txt1->translate(78, $o);
+               $txt1->text(decode('utf8',$rec_city));
+
+               # INSERT SENDER
+               my $send_name= "$company_host";
+               my $send_str = "$str_host $str_nr_host";
+               my $send_city = "$plz_host $city_host";
+               my $send_bank ="$bank";
+
+               $txt5->translate(420, 725);
+               $txt5->text(decode('utf8',$Lang::tr{'acct pdf prov'}));
+               $txt5->translate(420, 715);
+               $txt5->text(decode('utf8',$send_name));
+               my $j=705;
+               if($name1_host){
+                       $txt4->translate(420, $j);
+                       $txt4->text(decode('utf8',$name1_host));
+                       $j=$j-8;
+               }
+               $txt4->translate(420, $j);
+               $txt4->text(decode('utf8',$send_str)); #STR
+               $j=$j-8;
+               $txt4->translate(420, $j);
+               $txt4->text(decode('utf8',$send_city)); #PLZ.City
+               #Print optional Values tel,fax
+               my $i=680;
+               if($tel_host){
+                       $txt4->translate(420, $i);
+                       $txt4->text($Lang::tr{'acct tel'}); #Tel
+                       $txt4->translate(480, $i);
+                       $txt4->text($tel_host); #Telnr
+                       $i=$i-8;
+               }
+               if($fax_host){
+                       $txt4->translate(420, $i);
+                       $txt4->text($Lang::tr{'acct fax'}); #Fax
+                       $txt4->translate(480, $i);
+                       $txt4->text($fax_host); #Faxnr
+                       $i=$i-8;
+               }
+               if($internet){
+                       $txt4->translate(420, $i);
+                       $txt4->text($Lang::tr{'acct inet'}); #Internet
+                       $txt4->translate(480, $i);
+                       $txt4->text($internet); #www-address
+                       $i=$i-8;
+               }
+               $txt5->translate(420, 650);
+               $txt5->text(decode('utf8',$Lang::tr{'acct bank'})); #"BANK"
+               $txt4->lead(7); 
+               $txt4->translate(420, 640);
+               $txt4->paragraph(decode('utf8',$bank), 130, 20, -align => "justify"); #Bankname
+               if($iban){
+                       $txt4->translate(420, 625);
+                       $txt4->text($Lang::tr{'acct iban'}); #iban
+                       $txt4->translate(480, 625);
+                       $txt4->text(decode('utf8',$iban)); #iban
+                       $txt4->translate(420, 619);
+                       $txt4->text($Lang::tr{'acct bic'}); #bic
+                       $txt4->translate(480, 619);
+                       $txt4->text(decode('utf8',$bic)); #bic
+               }
+               if($blz){
+                       $txt4->translate(420, 613);
+                       $txt4->text($Lang::tr{'acct blz'}); #blz
+                       $txt4->translate(420, 607);
+                       $txt4->text($Lang::tr{'acct kto'}); #kto
+                       $txt4->translate(480, 613);
+                       $txt4->text(decode('utf8',$blz)); #blz
+                       $txt4->translate(480, 607);
+                       $txt4->text(decode('utf8',$kto)); #kto
+               }
+
+               #Print USTID and optional HRB
+               $txt4->translate(420, 590);
+               $txt4->text($Lang::tr{'acct ustid'}); #USTID
+               $txt4->translate(480, 590);
+               $txt4->text($stnr); #ustid
+               if($hrb){
+                       $txt4->translate(420, 580);
+                       $txt4->text($Lang::tr{'acct hrb'}); #USTID
+                       $txt4->translate(480, 580);
+                       $txt4->text($hrb); #ustid
+               }
+               ################################################################
+
+               #Print Date, Pages ....
+               $txt3->translate(59, 545);
+               $txt3->text($Lang::tr{'acct pdf billtxt'});
+               $txt1->translate(160, 545);
+               $txt1->text("$no $Lang::tr{'acct billnr'}");
+               $txt1->translate(60, 532);
+               $txt1->text("$Lang::tr{'acct pdf time'} $month/$year");
+               $txt1->translate(545, 550);
+               $txt1->text_right("$Lang::tr{'acct pdf date'} $fulldate");
+               $txt1->translate(545, 532);
+               $txt1->text_right("$Lang::tr{'acct pdf page'} $aktpage / $anz");
+
+               if ($a1 eq '999'){last;}
+               #Print DATA from array to Position table
+               $txt1->translate(80, $x);
+               $txt1->text_right($y);
+               $txt1->translate(95, $x);
+               $txt1->text($a1);
+               $txt1->translate(380, $x);
+               $txt1->text_right("$a2 MB");
+               $txt1->translate(425, $x);
+               $txt1->text_right("$cent ".decode('utf8',$cur));
+               $txt1->translate(540, $x);
+               $txt1->text_right("$sum ".decode('utf8',$cur));
+
+               #Build SUMMARY
+               $summen[$y-1]="$y,$a2,$sum";
+               $zwsum=$zwsum+$sum;
+               $x=$x-15;
+               $y++;
+       }
+       #Print extra billpositions
+       foreach my $line (@billpos){
+               my ($grp,$amount,$art,$price)=@$line;
+               #Print DATA from array to Position table
+               $txt1->translate(80, $x);
+               $txt1->text_right($y);
+               $txt1->translate(95, $x);
+               $txt1->text(decode('utf8',$art));
+               $txt1->translate(380, $x);
+               $txt1->text_right($amount." pcs");
+               $txt1->translate(540, $x);
+               $txt1->text_right("$price ".decode('utf8',$cur));
+               #Build SUMMARY
+               my $zu=$amount * $price;
+               $summen[$y-1]="$y,'0',$zu";
+               $zwsum=$zwsum+$zu;
+               $x=$x-15;
+               $y++;
+       }
+       foreach (@summen){
+               my ($a1,$a2,$a3) = split( /\,/, $_ );
+               $sum=$sum+$a2;
+               $sum1=$sum1+$a3;
+       }
+
+       # Last Line in positiontable prints the sum of all traffic (therefor txt2 which is BOLD)
+       $txt2->translate(95, 205);
+       $txt2->text($Lang::tr{'acct pdf sum1'});        #SUM
+       $txt2->translate(427, 205);
+       $txt2->text_right($cent);                                       #cent
+       $txt2->translate(380, 205);
+       $txt2->text_right("$sum MB");                           #MB
+       $sum1=sprintf("%.2f",($sum1));
+       $txt2->translate(540, 205);
+       $txt2->text_right("$sum1 ".decode('utf8',$cur));                                #SUM Eur
+       $txt->translate(390, 150);
+       $txt->text($Lang::tr{'acct pdf sum1'});
+       $txt->translate(540, 150);
+       $txt->text_right("$sum1 ".decode('utf8',$cur));
+       $txt->translate(390, 135);
+       my $endsum=$sum1;
+       $txt->text("$Lang::tr{'acct mwst_name'} $mwst%");
+       my $sum1=sprintf("%.2f",($sum1/100*$mwst));
+       $txt->translate(540, 135);
+       $txt->text_right("$sum1 ".decode('utf8',$cur));
+       $txt2->translate(390, 120);
+       $txt2->text($Lang::tr{'acct sum total'});
+       my $endsum=sprintf("%.2f",($sum1+$endsum));
+       $txt2->translate(540, 120);
+       $txt2->text_right("$endsum ".decode('utf8',$cur));
+
+       #Print the optional Billtext if any
+       $txt4->translate(60, 170);
+       $txt4->paragraph(decode('utf8',$text), 300, 40, -align => "justify"); #Bankname
+
+       #Watermark if preview
+       if ($preview eq 'on'){
+               my $eg_trans = $pdf->egstate();
+               $eg_trans->transparency(0.9);
+               $txt5->egstate($eg_trans);
+               $txt5->textlabel(80, 400, $fnt, 60, "PDF preview", -rotate => 40);
+               $txt5->textlabel(150, 330, $fnt, 60, "IPFire accounting", -rotate => 40);
+       }
+
+       $txt->textend;                  #END Text
+       $pdf->save;                             #Save pdf
+       $pdf->end( );                   #END
+       if ($preview ne 'on'){
+               &fillBill($path.$grp,$name,$no,$grp);
+       }
+       if($preview eq 'on'){
+               return $filename;
+       }
+       return '0';
+}
+
+sub getBillNr {
+       $dbh=&connectdb;
+       my $year1=$year+1900;
+       my $no1;
+       my $res=$dbh->selectall_arrayref("SELECT MAX(NO) FROM BILLS;");
+       foreach my $row (@$res){
+               ($no1) = @$row;
+       }
+       if(!$no1){$no1=$year1."1000";}
+       $no1++;
+       return $no1;
+}
+
+sub fillBill {
+       my $path=$_[0];
+       my $name=$_[1];
+       my $no=$_[2];
+       my $grp=$_[3];
+       my $sth = $dbh->prepare("INSERT INTO BILLS (NO,GRP,PATH,NAME,DATE) VALUES (?,?,?,?,?);");
+       my $year1=$year+1900;
+       ++$mon;
+       $sth->execute($no,$grp,$path,$name,"$mday.$mon.$year1");
+       $sth->finish();
+       $dbh->disconnect();
+}
+
+sub getbills {
+       my $grp=shift;
+       $dbh=&connectdb;
+       my $res=$dbh->selectall_arrayref("SELECT * FROM BILLS WHERE GRP=?;",undef, $grp);
+       $dbh->disconnect();
+       return $res;
+}
+
+sub pngsize {
+       my $Buffer = shift;
+       my ($width,$height) = ( undef, undef );
+
+       if ($Buffer =~ /IHDR(.{8})/) {
+               my $PNG = $1;
+               ($width,$height) = unpack( "NN", $PNG );
+       } else { 
+               $width=$Lang::tr{'acct invalid png'};
+       };
+       return ($width,$height);
+}
+
+sub gifsize {
+       my ($GIF)=@_;
+       my ($type,$a,$b,$c,$d,$s,$width,$height) ;
+       $type=substr($GIF,0,6);
+       if(!($type =~ m/GIF8[7,9]a/) || (length($s=substr($GIF, 6, 4))!=4) ){
+               return;
+       }
+       ($a,$b,$c,$d)=unpack("C"x4,$s);
+
+       $width= $b<<8|$a;
+       $height= $d<<8|$c;
+       return ($width,$height);
+}
+
+sub jpegsize {
+       my ($JPEG)=@ _ ;
+       my ($count)=2 ;
+       my ($length)=length($JPEG) ;
+       my ($ch)="" ;
+       my ($c1,$c2,$a,$b,$c,$d,$width,$height) ;
+
+       while (($ch ne "\xda") && ($count<$length)) {
+               while (($ch ne "\xff") && ($count < $length)) {
+                       $ch=substr($JPEG,$count,1); 
+                       $count++;
+               }
+
+               while (($ch eq "\xff") && ($count<$length)) {
+                       $ch=substr($JPEG,$count,1); 
+                       $count++;
+               }
+
+               if ((ord($ch) >= 0xC0) && (ord($ch) <= 0xC3)) {
+                       $count+=3;
+                       ($a,$b,$c,$d)=unpack("C"x4,substr($JPEG,$count,4));
+                       $width=$c<<8|$d;
+                       $height=$a<<8|$b;
+                       return($width,$height);
+               }else {
+                       ($c1,$c2)= unpack("C"x2,substr($JPEG,$count,2));
+                       $count += $c1<<8|$c2;
+               }
+       }
+}
+
+sub time{
+       ($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat,$isdst)=localtime();
+       $hour=sprintf("%02d",$hour);
+       $min=sprintf("%02d",$min);
+       $sec=sprintf("%02d",$sec);
+       $year +=1900;
+       $mday=sprintf("%02d",$mday);
+       $mon=sprintf("%02d",$mon+1);
+       my $res="$mday.$mon.$year $hour:$min:$sec - ";
+       return $res;
+}
+
+sub logger{
+       my $settings=shift;
+       my $msg=shift;
+       #open LOGFILE
+       if ($settings eq 'on'){
+               open ACCTLOG,">>/var/log/accounting.log" || print "could not open /var/log/accounting.log ";
+               print ACCTLOG &time."$msg";
+               close (ACCTLOG);
+       }
+}
+
+sub updateccaddr {
+       my $addr=shift;
+       my $cust=shift;
+       $dbh=&connectdb;
+       $dbh->do("UPDATE ACCT_ADDR SET CCMAIL=? WHERE COMPANY=? ;",undef, $addr, $cust);
+       $dbh->disconnect();
+}
+return 1;
diff --git a/src/squid-accounting/acct.de.pl b/src/squid-accounting/acct.de.pl
new file mode 100644 (file)
index 0000000..2110cf7
--- /dev/null
@@ -0,0 +1,134 @@
+# Added for Squid accounting
+%tr = (
+%tr,
+'acct action' => 'Aktion',
+'acct activate' => 'Aktivieren',
+'acct addresses' => 'Adressverwaltung',
+'acct bank' => 'Bank',
+'acct bic' => 'BIC',
+'acct billarchive' => 'Rechnungsarchiv',
+'acct billgroup' => 'Rechnungsgruppen',
+'acct billgroupexists' => 'Eine Abrechnungsgruppe mit diesem Namen existiert bereits',
+'acct billtext1' => 'Rechnungstext',
+'acct billnr' => '(Rechnungsnummer immer angeben)',
+'acct billoverview' => 'Rechnungsübersicht',
+'acct blz' => 'BLZ',
+'acct ccmail' => 'E-Mail Kopie an',
+'acct currency' => 'Währung (EUR,USD)',
+'acct traffic' => 'Traffic',
+'acct amount' => 'Anzahl',
+'acct cent' => 'Preis je MB (z.B 0.003)',
+'acct cent1' => 'Preis MB',
+'acct city' => 'Ort',
+'acct config' => 'Konfiguration',
+'acct commit' => 'Ausführen',
+'acct company' => 'Firma',
+'acct companyexists' => 'Eine Firma mit diesem Namen existiert bereits',
+'acct companytype' => 'Typ',
+'acct customer' => 'Kunde',
+'acct cust empty' => 'Noch keine Kunden-Adressen angelegt',
+'acct dbsize' => 'Datenbankgröße',
+'acct dbmaintenance' => 'Datenbank-Wartung',
+'acct delbefore' => 'Alle Einträge löschen vor',
+'acct deladr' => 'Löschen',
+'acct edit' => 'Bearbeiten',
+'acct edit_addr' => 'Anlegen/Bearbeiten',
+'acct email' => 'E-Mail',
+'acct emptydb' => 'Datenbank leeren (alles)',
+'acct emptydbtraf' => 'Datenbank leeren (nur Trafficdaten)',
+'acct empty field' => 'Feld darf nicht leer sein: ',
+'acct entries' => 'Einträge',
+'acct err custdel' => 'Die Adresse kann nicht gelöscht werden, weil sie als Kunde in einer Rechnungsgruppe verwendet wird - Rechnungsgruppe',
+'acct err hostdel' => 'Die Adresse kann nicht gelöscht werden, weil sie als Hoster in einer Rechnungsgruppe verwendet wird - Rechnungsgruppe',
+'acct exst_cust_addr' => 'Kunden-Adressen',
+'acct exst_host_addr' => 'Hoster-Adressen',
+'acct expert' => 'Wartungsbereich aktivieren',
+'acct expdelbefore' => 'Löschen',
+'acct fax' => 'Fax',
+'acct fix billpos' => 'Feste Rechnungspositionen der Rechnungsgruppe',
+'acct gb' => 'GB',
+'acct generated' => 'Erzeugt',
+'acct hint billgrp' => 'Bitte zuerst mindestens eine Hoster-Adresse und eine Kunden-Adresse anlegen',
+'acct hint_hoster' => 'Muss nur ausgefüllt werden, wenn Typ "Hoster"',
+'acct hrb' => 'HRB-Nr',
+'acct hoster' => 'Hoster',
+'acct hosts' => 'Hostübersicht',
+'acct host empty' => 'Noch keine Hoster-Adressen angelegt',
+'acct host detail' => 'Host-Details',
+'acct iban' => 'IBAN',
+'acct inet' => 'Internet',
+'acct interval' => 'Checkintervall',
+'acct invalid' => 'Ungültiger Wert für',
+'acct invalid billpos' => 'Es müssen alle Felder für Extra-Rechnungspositionen ausgefüllt sein',
+'acct invalid mailip' => 'Ungültige IP-Adresse für Mailserver',
+'acct invalid mailfqdn' => 'Ungültiger FQDN für Mailserver',
+'acct invalid mailport' => 'Ungültiger Port für Mailserver',
+'acct invalid png' => 'Ungültige PNG Datei',
+'acct invalid pngsize' => 'Ungültige PNG Größe',
+'acct kb' => 'KB',
+'acct kto' => 'KTO',
+'acct latestdb' => 'Letzter DB-Eintrag',
+'acct logging' => 'Logging (/var/log/accounting.log) aktivieren',
+'acct logo' => 'Aktuelles Logo',
+'acct logo upload' => 'Logo Hochladen (PNG, max. 400x150)',
+'acct maintenance' => 'Wartung',
+'acct mailaddr' => 'Mailserver-Adresse',
+'acct mailport' => 'Mailserver-Port',
+'acct mailuser' => 'Benutzername',
+'acct mailpass' => 'Passwort',
+'acct mailrcpt' => 'E-Mail-Empfänger',
+'acct mailsender' => 'E-Mail Absender',
+'acct mailtxt' => 'Text der Rechnungsmails',
+'acct mb' => 'MB',
+'acct members' => 'Mitglieder',
+'acct menu' => 'Proxy-Abrechnung',
+'acct month' => 'Monat',
+'acct multiuser' => 'User dürfen in mehreren Gruppen sein',
+'acct mwst_name' => 'USt.',
+'acct mwst' => 'Mehrwertsteuer in %',
+'acct name1' => 'Name 1',
+'acct name2' => 'Name 2',
+'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',
+'acct pdf date' => 'Datum',
+'acct pdf zwsum' => 'Zwischensumme',
+'acct pdf page' => 'Seite',
+'acct pdf prov' => 'Absender',
+'acct pdf sum1' => 'Summe',
+'acct pdf price' => 'Preis',
+'acct pdf time' => 'Abrechnung',
+'acct plz' => 'PLZ',
+'acct preview' => 'Rechnungsvorschau',
+'acct price pp' => 'Einzelpreis',
+'acct proxy_enable' => 'Bitte zuerst Proxy aktivieren',
+'acct pos' => 'Pos.',
+'acct sum total' => 'Gesamtsumme',
+'acct name' => 'Bezeichnung',
+'acct no data' => 'Keine Daten vorhanden',
+'acct rrdsize' => 'Größe des Rechnungs-Verzeichnisses',
+'acct settings' => 'Accounting-Einstellungen',
+'acct skipurl' => 'Diese URLs nicht bewerten',
+'acct status' => 'Status',
+'acct str' => 'Straße',
+'acct str_nr' => 'Nr.',
+'acct subject' => 'Betreff der Rechnungsmails',
+'acct sum' => 'Summe',
+'acct task' => 'Aufgabe',
+'acct tb' => 'TB',
+'acct tel' => 'Telefon',
+'acct tls' => 'Benutze TLS',
+'acct traffic monthly' => 'Monatliches Datenvolumen',
+'acct title' => 'Webproxy-Abrechnung',
+'acct usemail' => 'Mailversand aktivieren',
+'acct usermulti' => 'befindet sich bereits in Gruppe',
+'acct ustid' => 'USt-ID',
+'acct edit settings' => 'Einstellungen bearbeiten',
+'acct value' => 'Wert',
+'acct view' => 'Anzeigen',
+'acct year' => 'Jahr'
+);
+# End Squid accounting
diff --git a/src/squid-accounting/acct.en.pl b/src/squid-accounting/acct.en.pl
new file mode 100644 (file)
index 0000000..bdbf5b2
--- /dev/null
@@ -0,0 +1,134 @@
+# Added for Squid accounting
+%tr = (
+%tr,
+'acct action' => 'Action',
+'acct activate' => 'Activate',
+'acct addresses' => 'Address Management',
+'acct bank' => 'Bank',
+'acct bic' => 'BIC',
+'acct billarchive' => 'Bill Archive',
+'acct billgroup' => 'Billing Groups',
+'acct billgroupexists' => 'A billing group with this name already exists',
+'acct billtext1' => 'Bill text',
+'acct billnr' => '(always state bill number)',
+'acct billoverview' => 'Bill overview',
+'acct blz' => 'Bank code',
+'acct ccmail' => 'E-Mail CC-Addresses',
+'acct currency' => 'Currency (EUR,USD)',
+'acct traffic' => 'Traffic',
+'acct amount' => 'Amount',
+'acct cent' => 'Price/MB (e.g. 0.003)',
+'acct cent1' => 'Price MB',
+'acct city' => 'City',
+'acct config' => 'Configuration',
+'acct commit' => 'Execute',
+'acct company' => 'Company',
+'acct companyexists' => 'A Company with this name already exists',
+'acct companytype' => 'Type',
+'acct customer' => 'Customer',
+'acct cust empty' => 'No Customer addresses defined',
+'acct dbsize' => 'Database size',
+'acct dbmaintenance' => 'Database maintenance',
+'acct delbefore' => 'Delete all entries before',
+'acct deladr' => 'Delete',
+'acct edit' => 'Edit',
+'acct edit_addr' => 'Add / Edit',
+'acct email' => 'E-Mail',
+'acct emptydb' => 'Erase Database (all data)',
+'acct emptydbtraf' => 'Erase Database (only traffic data)',
+'acct empty field' => 'Field must not be empty: ',
+'acct entries' => 'Entries',
+'acct err custdel' => 'Address can not be deleted. It is defined as customer in a Bill group - Bill group',
+'acct err hostdel' => 'Address can not be deleted. It is defined as provider in a Bill group - Bill group',
+'acct exst_cust_addr' => 'Customer addresses',
+'acct exst_host_addr' => 'Provider addresses',
+'acct expert' => 'Activate maintenance area',
+'acct expdelbefore' => 'Delete',
+'acct fax' => 'Faximile',
+'acct fix billpos' => 'Fixed bill positions of bill group',
+'acct gb' => 'GB',
+'acct generated' => 'Generated',
+'acct hint billgrp' => 'You have to define a provider and a customer address first',
+'acct hint_hoster' => 'Has only to be filled when type "provider"',
+'acct hrb' => 'HRB-No',
+'acct hoster' => 'Provider',
+'acct hosts' => 'Host Overview',
+'acct host empty' => 'No provider addresses defined',
+'acct host detail' => 'Host Details',
+'acct iban' => 'IBAN',
+'acct inet' => 'Internet',
+'acct interval' => 'Checkintervall',
+'acct invalid' => 'Invalid value for',
+'acct invalid billpos' => 'You have to fill in all fields for fixed bill positions',
+'acct invalid mailip' => 'Invalid IP address for mailserver',
+'acct invalid mailfqdn' => 'Invalid FQDN for mailserver',
+'acct invalid mailport' => 'Invalid port for mailserver',
+'acct invalid png' => 'Invalid PNG file',
+'acct invalid pngsize' => 'Invalid PNG size',
+'acct kb' => 'KB',
+'acct kto' => 'Account Number',
+'acct latestdb' => 'Last DB entry',
+'acct logging' => 'Activate Logging (/var/log/accounting.log)',
+'acct logo' => 'Actual Logo',
+'acct logo upload' => 'Upload Logo (PNG, max. 400x150)',
+'acct maintenance' => 'Maintenance',
+'acct mailaddr' => 'Mailserver address',
+'acct mailport' => 'Mailserver port',
+'acct mailuser' => 'Username',
+'acct mailpass' => 'Password',
+'acct mailrcpt' => 'E-Mail Recipient',
+'acct mailsender' => 'E-Mail Sender',
+'acct mailtxt' => 'Text for bill mail',
+'acct mb' => 'MB',
+'acct members' => 'Members',
+'acct menu' => 'Proxy Accounting',
+'acct month' => 'Month',
+'acct multiuser' => 'User can be in multiple groups',
+'acct mwst_name' => 'VAT',
+'acct mwst' => 'Tax rate',
+'acct name1' => 'Name 1',
+'acct name2' => 'Name 2',
+'acct nr' => 'RG-No.',
+'acct oldestdb' => 'Fist DB Entry',
+'acct optional' => 'These fields are optional',
+'acct parameter' => 'Parameter',
+'acct path' => 'Path',
+'acct pdf billtxt' => 'Bill',
+'acct pdf date' => 'Date',
+'acct pdf zwsum' => 'subtotal',
+'acct pdf page' => 'Page',
+'acct pdf prov' => 'Sender',
+'acct pdf sum1' => 'Sum',
+'acct pdf price' => 'Price',
+'acct pdf time' => 'Accounting',
+'acct plz' => 'Postcode',
+'acct preview' => 'Bill preview',
+'acct price pp' => 'Unit price',
+'acct proxy_enable' => 'Please actiavte proxy first',
+'acct pos' => 'Pos.',
+'acct sum total' => 'Total',
+'acct name' => 'Description',
+'acct no data' => 'No Data available',
+'acct rrdsize' => 'Size of Bill directory',
+'acct settings' => 'Accounting settings',
+'acct skipurl' => 'Skip these URLs (Intranet)',
+'acct status' => 'Status',
+'acct str' => 'Steet',
+'acct str_nr' => 'No.',
+'acct subject' => 'Subject',
+'acct sum' => 'Sum',
+'acct task' => 'Task',
+'acct tb' => 'TB',
+'acct tel' => 'Telephone',
+'acct tls' => 'Use TLS',
+'acct traffic monthly' => 'Monthly data volume',
+'acct title' => 'Webproxy Accounting',
+'acct usemail' => 'Send bills via Mail',
+'acct usermulti' => 'is already in group',
+'acct ustid' => 'USt-ID',
+'acct edit settings' => 'Edit settings',
+'acct value' => 'Value',
+'acct view' => 'Show',
+'acct year' => 'Year'
+);
+# End Squid accounting
diff --git a/src/squid-accounting/acct.pl b/src/squid-accounting/acct.pl
new file mode 100755 (executable)
index 0000000..d535901
--- /dev/null
@@ -0,0 +1,265 @@
+#!/usr/bin/perl
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2014  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/>.       #
+#                                                                             #
+###############################################################################
+
+
+###########
+# Modules #
+###########
+
+use Time::Local;
+use File::ReadBackwards;
+use strict;
+#use warnings;
+
+require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/accounting/acct-lib.pl";
+require "${General::swroot}/lang.pl";
+
+#############
+# Variables #
+#############
+
+my $count = 0;
+my $dbh;
+my $logfile = "/var/log/squid/access.log";
+my $line = '';
+my $checktime = 3600;  #1 hour = 3600 sec
+my $starttime = time;
+my ($time,$elapsed,$ip,$state,$bytes,$method,$url,$user,$peerstate,$type); #split logfileline into variables
+my $name;
+my $name1;
+my $settingsfile = "${General::swroot}/accounting/settings.conf";
+my $proxyenabled = "${General::swroot}/proxy/enable";
+my %counter = ();
+my %counterip = ();
+my %settings = ();
+my %toplist = ();
+my ($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat,$isdst)=localtime();
+my $skipurlcount=0;
+my $skipurlsum=0;
+&General::readhash("$settingsfile", \%settings);
+my $skipurl=$settings{'SKIPURLS'};
+$skipurl="'".$skipurl."'";
+my ($mini,$max)=&ACCT::getminmax;
+my $now = localtime;
+my $proxylog;
+my $proxysrv;
+
+########
+# Main #
+########
+
+&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");
+       exit 0;
+}
+#If proxy was turned off within last hour, we need to check missing minutes and write a disabled file
+if ((! -f $proxyenabled || $proxylog eq $Lang::tr{'stopped'}) && ! -f "${General::swroot}/accounting/disabled"){
+       $checktime = (time-$max);
+       open (FH,">${General::swroot}/accounting/disabled");
+       close (FH);
+       &ACCT::logger($settings{'LOG'}," Proxy or proxylogging was disabled during last hour - just checking meantime and disabling data collection\n");
+}
+
+#If proxy is on, we are doing a normal run. maybe we had a disabled file, so delete it here
+if (-f $proxyenabled && $proxylog eq $Lang::tr{'running'}){
+       #check if we are running again after the was shutdown and reenabled
+       if (-f "${General::swroot}/accounting/disabled"){
+               unlink("${General::swroot}/accounting/disabled");
+       }
+       #Find out if the month changed
+       $dbh=&ACCT::connectdb;
+       my $m=sprintf("%d",(localtime((time-3600)))[4]+1);
+       &ACCT::logger($settings{'LOG'},"month before one hour $m, now is ".($mon+1)."\n");
+       if ($m < ($mon+1) || $m == '12' && ($mon+1) == '1'){
+               #Logrotate
+               my $year1=$year+1900;
+               system ("tar", "cfz", "/var/log/accounting-$m-$year1.tar.gz", "/var/log/accounting.log");
+               unlink ("/var/log/accounting.log");
+               open (FH,">/var/log/accounting.log");
+               close (FH);
+               chmod 0755, "/var/log/accounting.log";
+               #move all db entries older than 2 months to second table and cumulate them hourly
+               &ACCT::movedbdata;
+               &ACCT::logger($settings{'LOG'},"New Month. Old trafficvalues moved to ACCT_HIST Table\n");
+               if ($settings{'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;
+                               &sendbill($grp,$settings{'MWST'},$settings{'CURRENCY'});
+                       }
+               }else{
+                       &ACCT::logger($settings{'LOG'},"Mailserver is deactivated - We are NOT sending bills via mail...\n");
+               }
+       }
+
+       &ACCT::logger($settings{'LOG'},"Start reading last hour of access.log\n");
+       &readlog;
+       &fill_db;
+       &ACCT::closedb;
+       $skipurlsum=sprintf("%.2f",$skipurlsum/(1024*1024));
+       &ACCT::logger($settings{'LOG'},"skipped: $skipurlcount Adressen\n");
+       &ACCT::logger($settings{'LOG'},"skipped: $skipurlsum MB\n") if ($skipurl);
+}
+#############
+# functions #
+#############
+
+sub checkproxy{
+       if(-f "${General::swroot}/proxy/enable"){
+               $proxysrv=$Lang::tr{'running'};
+       }else{
+               $proxysrv=$Lang::tr{'stopped'};
+       }
+       my $srce = "${General::swroot}/proxy/squid.conf";
+       my $string1 = 'access\.log';
+       open(FH, $srce);
+       while(my $line = <FH>) {
+               if($line =~ m/$string1/) {
+                       $proxylog=$Lang::tr{'running'};
+               }
+       }
+       close FH;
+       return;
+}
+
+sub readlog{
+       my $url1;
+       my $user1;
+       $count = 0;
+       my $urlcnt=0;
+       &ACCT::logger($settings{'LOG'},"Start: $now. Reading data back till: ".localtime(($starttime-$checktime)).".\n");
+       #Open Logfile and begin to read the file backwards
+       my $bw = File::ReadBackwards->new( $logfile ) or die "can't read $logfile $!" ;
+       while( defined( $line = $bw->readline ) ) {
+               undef $url1;
+               chomp $line;
+               #Divide $line into single variables to get timestamp and check if we are within hte desired timerange
+               ($time,$elapsed,$ip,$state,$bytes,$method,$url,$user,$peerstate,$type)=split(m/\s+/, $line);
+               $count += $bytes;
+               $time = substr($time, 0, -4);
+               if (($time > ($starttime-$checktime))){
+                       #Skip DENIED stated lines (can be reactivated later)
+                       next if ($state =~ m/DENIED/);
+
+                       #extract site name
+                       if ($url =~ m/([a-z]+:\/\/)??([a-z0-9\-]+\.){1}(([a-z0-9\-]+\.){0,})([a-z0-9\-]+){1}(:[0-9]+)?\/(.*)/o) {
+                          $url=$2.$3.$5;
+                       } else {
+                          my ($a,$b)=split(":",$url);
+                          $url=$a;
+                       }
+
+                       #Skip special URLs like intranet and webservers from local network
+                       if ($url =~ m/$skipurl/o) {
+                         $skipurlcount++;
+                         $skipurlsum+=$bytes;
+                         next;
+                       };
+
+                       #Increase urlcounter
+                       $urlcnt++;
+
+                       #Get Data for accounting
+                       $counter{$user}{'bytes'} += $bytes if ($user ne '-');
+                       $counter{$ip}{'bytes'} += $bytes;
+               }else{
+                       #If we are out of timewindow, break
+                       last;
+               }
+       }
+       $count=sprintf("%.2f",$count/(1024*1024));
+       &ACCT::logger($settings{'LOG'},"got $count MB from $urlcnt URLs this run.\n");
+       $bw->close;
+}
+sub fill_db{
+       my $tim=time();
+       #Fill ACCT table with accounting information
+       foreach my $name (sort keys %counter){
+               foreach my $bytes (keys %{ $counter{$name} }) {
+                       $dbh->do("insert into ACCT (TIME_RUN,NAME,BYTES) values ('$tim','$name','$counter{$name}{$bytes}');");
+               }
+       }
+}
+sub sendbill {
+       my $rggrp=$_[0];
+       my $mwst=$_[1];
+       my $cur = $_[2];
+       my @now = localtime(time);
+       $now[5] = $now[5] + 1900;
+       my $actmonth = $now[4];
+       my $month                       = '0'.$actmonth if $actmonth < 10;
+       my $actyear  = $now[5];
+       my ($from,$till)=&ACCT::getmonth($actmonth,$actyear);                                   #FIXME month and year as variables!
+       my @billar = &ACCT::GetTaValues($from,$till,$rggrp);
+       my $address_cust = &ACCT::getTaAddress($rggrp,'CUST');
+       my $address_host = &ACCT::getTaAddress($rggrp,'HOST');
+       my $billpos             = &ACCT::getextrabillpos($rggrp);
+       my $no                  = &ACCT::getBillNr;
+       my $back = &ACCT::pdf2(\@billar,$actmonth,$actyear,$mwst,$address_cust,$address_host,$billpos,$rggrp,$cur);
+       my ($company_cust,$type_cust,$name1_cust,$str_cust,$str_nr_cust,$plz_cust,$city_cust,$bank,$iban,$bic,$blz,$kto,$email,$internet,$hrb,$stnr,$tel_host,$fax_host,$ccmail,$billgrp,$text,$host,$cust,$cent);
+
+       foreach my $addrline_cust (@$address_cust){
+               ($company_cust,$type_cust,$name1_cust,$str_cust,$str_nr_cust,$plz_cust,$city_cust,$bank,$iban,$bic,$blz,$kto,$email,$internet,$hrb,$stnr,$tel_host,$fax_host,$ccmail,$billgrp,$text,$host,$cust,$cent)=@$addrline_cust;
+       }
+
+       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'";
+               $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);
+               if ($res == 0){
+                       &ACCT::logger($settings{'LOG'},"Bill for $company_cust successfully sent.\n");
+               }elsif ($res > 0){
+                       &ACCT::logger($settings{'LOG'},"ERROR: Bill for $company_cust NOT sent.\n");
+               }
+               return 0;
+               
+       }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);
+               return 0;
+       }
+}
diff --git a/src/squid-accounting/config/backup/includes/squid-accounting b/src/squid-accounting/config/backup/includes/squid-accounting
new file mode 100644 (file)
index 0000000..53116a5
--- /dev/null
@@ -0,0 +1,5 @@
+/var/ipfire/accounting/settings.conf
+/var/ipfire/accounting/bill
+/srv/web/ipfire/html/accounting
+/var/ipfire/accounting/acct.db
+/var/log/accounting.log
diff --git a/src/squid-accounting/dbinstall.pl b/src/squid-accounting/dbinstall.pl
new file mode 100755 (executable)
index 0000000..0443732
--- /dev/null
@@ -0,0 +1,49 @@
+#!/usr/bin/perl
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2014  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 DBI;
+
+###############################################################################
+my $dbh;
+my $dsn="dbi:SQLite:dbname=/var/ipfire/accounting/acct.db";
+###############################################################################
+
+
+$dbh = DBI->connect($dsn, "", "",{RaiseError => 1, AutoCommit => 1})or die "ERROR $!";
+
+$dbh->do('CREATE TABLE ACCT        (TIME_RUN "NUM",NAME "TXT",BYTES "NUM");');
+
+$dbh->do('CREATE TABLE ACCT_HIST   (TIME_RUN "NUM",NAME "TXT",BYTES "NUM");');
+
+$dbh->do('CREATE TABLE ACCT_ADDR   (COMPANY "TXT",TYPE "TXT",NAME1 "TXT", STR "TXT", NR "TXT", POSTCODE "NUM", CITY "TXT",BANK "TXT",IBAN "TXT",BIC "TXT",BLZ "NUM",ACCOUNT "NUM", EMAIL "TXT",INTERNET "TXT", HRB "TXT", USTID "TXT", TEL "TXT", FAX "TXT", CCMAIL "TXT");');
+
+$dbh->do('CREATE TABLE BILLINGGRP  (NAME "TXT",BILLTEXT "TXT",HOST "TXT",CUST "TXT",CENT "NUM");');
+
+$dbh->do('CREATE TABLE BILLINGHOST (GRP "TXT",HOST "TXT");');
+
+$dbh->do('CREATE TABLE BILLPOS     (GRP "TXT",AMOUNT "INT", POS "TXT", PRICE "NUM");');
+
+$dbh->do('CREATE TABLE BILLS       (NO "NUM", PATH "TXT", NAME "TXT", DATE "NUM", GRP "TXT");');
+
+$dbh->disconnect();
+
+exit 0;