Diff of the two buildlogs: -- --- b1/build.log 2024-07-12 18:45:10.751239536 +0000 +++ b2/build.log 2024-07-12 18:47:46.800619805 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Fri Jul 12 06:43:44 -12 2024 -I: pbuilder-time-stamp: 1720809824 +I: Current time: Sat Jul 13 08:45:19 +14 2024 +I: pbuilder-time-stamp: 1720809919 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/experimental-reproducible-base.tgz] I: copying local configuration @@ -25,52 +25,84 @@ dpkg-source: info: unpacking aide_0.19~dev20240708-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/8465/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/3833/tmp/hooks/D01_modify_environment starting +debug: Running on ff4a. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Jul 12 18:45 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/3833/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/3833/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='armhf' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=3 ' - DISTRIBUTION='experimental' - HOME='/root' - HOST_ARCH='armhf' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="21" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf") + BASH_VERSION='5.2.21(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=armhf + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=4 ' + DIRSTACK=() + DISTRIBUTION=experimental + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=arm + HOST_ARCH=armhf IFS=' ' - INVOCATION_ID='6cf63fcb44324343bf0bbb1008064219' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='8465' - PS1='# ' - PS2='> ' + INVOCATION_ID=bfaefbf51e1a40a3a5a6b1deb009a526 + LANG=C + LANGUAGE=it_CH:it + LC_ALL=C + MACHTYPE=arm-unknown-linux-gnueabihf + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnueabihf + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=3833 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.ZpL2wTCA/pbuilderrc_SWjh --distribution experimental --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/experimental-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.ZpL2wTCA/b1 --logfile b1/build.log aide_0.19~dev20240708-1.dsc' - SUDO_GID='110' - SUDO_UID='103' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://10.0.0.15:3142/' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.ZpL2wTCA/pbuilderrc_PTB0 --distribution experimental --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/experimental-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.ZpL2wTCA/b2 --logfile b2/build.log aide_0.19~dev20240708-1.dsc' + SUDO_GID=113 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://10.0.0.15:3142/ I: uname -a - Linux virt64z 6.1.0-22-arm64 #1 SMP Debian 6.1.94-1 (2024-06-21) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-22-armmp-lpae #1 SMP Debian 6.1.94-1 (2024-06-21) armv7l GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Jun 5 22:35 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/8465/tmp/hooks/D02_print_environment finished +I: user script /srv/workspace/pbuilder/3833/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -195,7 +227,7 @@ Get: 55 http://deb.debian.org/debian unstable/main armhf pkgconf-bin armhf 1.8.1-3 [29.1 kB] Get: 56 http://deb.debian.org/debian unstable/main armhf pkgconf armhf 1.8.1-3 [26.1 kB] Get: 57 http://deb.debian.org/debian unstable/main armhf zlib1g-dev armhf 1:1.3.dfsg+really1.3.1-1 [904 kB] -Fetched 25.4 MB in 1s (28.3 MB/s) +Fetched 25.4 MB in 2s (14.0 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package autoconf-archive. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19405 files and directories currently installed.) @@ -443,7 +475,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/aide-0.19~dev20240708/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../aide_0.19~dev20240708-1_source.changes +I: user script /srv/workspace/pbuilder/3833/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for experimental +I: user script /srv/workspace/pbuilder/3833/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/aide-0.19~dev20240708/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../aide_0.19~dev20240708-1_source.changes dpkg-buildpackage: info: source package aide dpkg-buildpackage: info: source version 0.19~dev20240708-1 dpkg-buildpackage: info: source distribution experimental @@ -598,7 +634,7 @@ config.status: executing depfiles commands make[1]: Leaving directory '/build/reproducible-path/aide-0.19~dev20240708' dh_auto_build - make -j3 + make -j4 make[1]: Entering directory '/build/reproducible-path/aide-0.19~dev20240708' bison -y -d -Wno-yacc -Wall -Werror -o src/conf_yacc.c -p conf src/conf_yacc.y make all-am @@ -609,6 +645,7 @@ gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I./include -W -Wall -g -I/usr/include/e2p -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-do_md.o `test -f 'src/do_md.c' || echo './'`src/do_md.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I./include -W -Wall -g -I/usr/include/e2p -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-gen_list.o `test -f 'src/gen_list.c' || echo './'`src/gen_list.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I./include -W -Wall -g -I/usr/include/e2p -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-getopt1.o `test -f 'src/getopt1.c' || echo './'`src/getopt1.c +gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I./include -W -Wall -g -I/usr/include/e2p -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-getopt.o `test -f 'src/getopt.c' || echo './'`src/getopt.c src/do_md.c: In function 'calc_hashsums': src/do_md.c:282:82: warning: format '%zi' expects argument of type 'signed size_t', but argument 3 has type '__off64_t' {aka 'long long int'} [-Wformat=] 282 | log_msg(LOG_LEVEL_DEBUG, "hash calculation: stat size (%zi) reached for growing file '%s'", old_fs->st_size, fullpath); @@ -616,7 +653,6 @@ | | | | int __off64_t {aka long long int} | %lli -gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I./include -W -Wall -g -I/usr/include/e2p -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-getopt.o `test -f 'src/getopt.c' || echo './'`src/getopt.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I./include -W -Wall -g -I/usr/include/e2p -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-hashsum.o `test -f 'src/hashsum.c' || echo './'`src/hashsum.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I./include -W -Wall -g -I/usr/include/e2p -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-rx_rule.o `test -f 'src/rx_rule.c' || echo './'`src/rx_rule.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I./include -W -Wall -g -I/usr/include/e2p -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-list.o `test -f 'src/list.c' || echo './'`src/list.c @@ -651,7 +687,7 @@ make[2]: Leaving directory '/build/reproducible-path/aide-0.19~dev20240708' make[1]: Leaving directory '/build/reproducible-path/aide-0.19~dev20240708' dh_auto_test - make -j3 check "TESTSUITEFLAGS=-j3 --verbose" VERBOSE=1 + make -j4 check "TESTSUITEFLAGS=-j4 --verbose" VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/aide-0.19~dev20240708' make check-am make[2]: Entering directory '/build/reproducible-path/aide-0.19~dev20240708' @@ -659,6 +695,7 @@ make[3]: Entering directory '/build/reproducible-path/aide-0.19~dev20240708' gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/check_aide-attributes.o `test -f 'src/attributes.c' || echo './'`src/attributes.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/check_aide-base64.o `test -f 'src/base64.c' || echo './'`src/base64.c +gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o tests/check_aide-check_seltree.o `test -f 'tests/check_seltree.c' || echo './'`tests/check_seltree.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/check_aide-seltree.o `test -f 'src/seltree.c' || echo './'`src/seltree.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o tests/check_aide-check_progress.o `test -f 'tests/check_progress.c' || echo './'`tests/check_progress.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/check_aide-log.o `test -f 'src/log.c' || echo './'`src/log.c @@ -669,7 +706,6 @@ gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o tests/check_aide-check_aide.o `test -f 'tests/check_aide.c' || echo './'`tests/check_aide.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o tests/check_aide-check_attributes.o `test -f 'tests/check_attributes.c' || echo './'`tests/check_attributes.c gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o tests/check_aide-check_base64.o `test -f 'tests/check_base64.c' || echo './'`tests/check_base64.c -gcc -DHAVE_CONFIG_H -I. -I./include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o tests/check_aide-check_seltree.o `test -f 'tests/check_seltree.c' || echo './'`tests/check_seltree.c gcc -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20240708=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -pie -o check_aide tests/check_aide-check_aide.o tests/check_aide-check_attributes.o src/check_aide-attributes.o tests/check_aide-check_base64.o src/check_aide-base64.o tests/check_aide-check_seltree.o src/check_aide-seltree.o tests/check_aide-check_progress.o src/check_aide-log.o src/check_aide-util.o src/check_aide-list.o src/check_aide-tree.o src/check_aide-rx_rule.o -lm -lcheck_pic -lrt -lm -lsubunit -lmhash -lpcre2-8 make[3]: Leaving directory '/build/reproducible-path/aide-0.19~dev20240708' make check-TESTS @@ -679,27 +715,27 @@ progress seltree INFO: test_unrestricted_equal_rule - DEBUG: created root node '/' (0x28d84f0) + DEBUG: created root node '/' (0xf934f0) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d84f0) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf934f0) RULE: ┌ /: RULE: │ '=/dev (none) ' (check_seltree:0: 'n/a') RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d84f0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf934f0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) RULE: │ node: '/': check equal list DEBUG: │ '/' partially matches regex '/dev' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d84f0)) - DEBUG: │ directory node '/' (0x28d84f0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf934f0)) + DEBUG: │ directory node '/' (0xf934f0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) RULE: │ node: '/': check equal list DEBUG: │ '/' partially matches regex '/dev' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d84f0)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf934f0)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -709,13 +745,13 @@ DEBUG: │ check_selree: match result RESULT_EQUAL_MATCH (8) for '/dev' RULE: ┴ result: RESULT_EQUAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d84f0)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d84f0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf934f0)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf934f0)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/': check equal list RULE: ┝ '/dev' matches regex '/dev' and restriction '(none)' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d86c8)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf936c8)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -723,8 +759,8 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/sda' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d84f0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d86c8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf934f0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf936c8)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -733,24 +769,24 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d84f0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d86c8)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d86c8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf934f0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf936c8)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf936c8)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache no rule match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8748)) + DEBUG: │ cache no rule match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93748)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts/0' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d84f0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d86c8)) - RULE: │ (cache) no rule match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8748)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf934f0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf936c8)) + RULE: │ (cache) no rule match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93748)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d84f0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf934f0)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/': check equal list @@ -759,53 +795,53 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d84f0)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d84f0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf934f0)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf934f0)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/': check equal list DEBUG: │ '/etc' does not match regex '/dev' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d87d0)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf937d0)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_unrestricted_equal_rule_slash - DEBUG: created root node '/' (0x28d8548) + DEBUG: created root node '/' (0xf93548) DEBUG: JIT compilation for regex '/dev/' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d86d0) - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8548) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf936d0) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93548) RULE: ┌ /: RULE: ┝ /dev: RULE: │ '=/dev/ (none) ' (check_seltree:0: 'n/a') RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8548) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93548) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8548)) - DEBUG: │ directory node '/' (0x28d8548) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93548)) + DEBUG: │ directory node '/' (0xf93548) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8548)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93548)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d86d0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf936d0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8548)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d86d0)) - DEBUG: │ directory node '/dev' (0x28d86d0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93548)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf936d0)) + DEBUG: │ directory node '/dev' (0xf936d0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) RULE: │ node: '/dev': check equal list DEBUG: │ '/dev' partially matches regex '/dev/' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d86d0)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf936d0)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) RULE: │ node: '/dev': check equal list @@ -815,8 +851,8 @@ DEBUG: │ check_selree: match result RESULT_EQUAL_MATCH (8) for '/dev/sda' RULE: ┴ result: RESULT_EQUAL_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8548)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d86d0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93548)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf936d0)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/dev': check equal list @@ -826,15 +862,15 @@ DEBUG: │ check_selree: match result RESULT_EQUAL_MATCH (8) for '/dev/pts' RULE: ┴ result: RESULT_EQUAL_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8548)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d86d0)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d86d0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93548)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf936d0)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf936d0)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/dev': check equal list RULE: ┝ '/dev/pts' matches regex '/dev/' and restriction '(none)' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8760)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93760)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -843,20 +879,20 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts/0' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8548)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d86d0)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8760)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8760)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93548)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf936d0)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93760)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93760)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache no rule match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d87d0)) + DEBUG: │ cache no rule match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf937d0)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8548)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93548)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -864,18 +900,18 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8548)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8548)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93548)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93548)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d8870)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf93870)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_unrestricted_recursive_negative_rule_eol - DEBUG: created root node '/' (0x28d85a0) + DEBUG: created root node '/' (0xf935a0) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d85a0) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf935a0) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -883,7 +919,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d85a0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf935a0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') @@ -892,14 +928,14 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d85a0)) - DEBUG: │ directory node '/' (0x28d85a0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf935a0)) + DEBUG: │ directory node '/' (0xf935a0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d85a0)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf935a0)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -911,15 +947,15 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85a0)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d85a0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935a0)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf935a0)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/dev' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev$' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d88a8)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf938a8)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -930,8 +966,8 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/sda' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85a0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d88a8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935a0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf938a8)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -943,9 +979,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85a0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d88a8)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d88a8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935a0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf938a8)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf938a8)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) @@ -953,7 +989,7 @@ RULE: ┝ '/dev/pts' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8928)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93928)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -965,10 +1001,10 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85a0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d88a8)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8928)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8928)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935a0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf938a8)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93928)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93928)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -977,9 +1013,9 @@ RULE: ┝ '/dev/pts/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts/deep' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d8998)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf93998)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8928)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93928)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) @@ -987,7 +1023,7 @@ RULE: ┝ '/dev/pts/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts/deep/down' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d8a20)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf93a20)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -1000,7 +1036,7 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85a0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935a0)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -1011,31 +1047,31 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85a0)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d85a0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935a0)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf935a0)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/etc' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d8ac0)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf93ac0)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0x28d85a0)) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0xf935a0)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8b20)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93b20)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0x28d85a0)) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0xf935a0)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep/down' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d8ba0)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf93ba0)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -1046,9 +1082,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_unrestricted_recursive_negative_rule - DEBUG: created root node '/' (0x28d85f8) + DEBUG: created root node '/' (0xf935f8) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d85f8) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf935f8) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -1056,7 +1092,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d85f8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf935f8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') @@ -1065,14 +1101,14 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d85f8)) - DEBUG: │ directory node '/' (0x28d85f8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf935f8)) + DEBUG: │ directory node '/' (0xf935f8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d85f8)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf935f8)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -1084,15 +1120,15 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85f8)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d85f8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935f8)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf935f8)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/dev' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8900)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93900)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -1103,8 +1139,8 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/sda' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85f8)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8900)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935f8)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93900)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1116,9 +1152,9 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85f8)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8900)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8900)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935f8)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93900)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93900)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) @@ -1126,7 +1162,7 @@ RULE: ┝ '/dev/pts' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts' matches regex '/dev' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8980)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93980)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -1138,10 +1174,10 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts/0' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85f8)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8900)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8980)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8980)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935f8)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93900)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93980)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93980)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -1150,9 +1186,9 @@ RULE: ┝ '/dev/pts/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts/deep' matches regex '/dev' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d89f0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf939f0)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8980)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93980)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) @@ -1160,7 +1196,7 @@ RULE: ┝ '/dev/pts/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts/deep/down' matches regex '/dev' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d8a78)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf93a78)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -1173,7 +1209,7 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85f8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935f8)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -1184,31 +1220,31 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d85f8)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d85f8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf935f8)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf935f8)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/etc' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc' does not match regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d8b18)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf93b18)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0x28d85f8)) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0xf935f8)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep' does not match regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8b78)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93b78)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0x28d85f8)) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0xf935f8)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep/down' does not match regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d8bf8)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf93bf8)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -1219,9 +1255,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_unrestricted_non_recursive_negative_rule_eol - DEBUG: created root node '/' (0x28d8650) + DEBUG: created root node '/' (0xf93650) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8650) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93650) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -1229,7 +1265,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8650) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93650) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') @@ -1238,14 +1274,14 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8650)) - DEBUG: │ directory node '/' (0x28d8650) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93650)) + DEBUG: │ directory node '/' (0xf93650) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8650)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93650)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -1257,34 +1293,34 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/dev' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8650)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d8650)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93650)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf93650)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/dev' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev$' and restriction '(none)' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0x28d8958)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xf93958)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8650)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8958)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93650)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93958)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8650)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8958)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93650)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93958)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8650)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8958)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93650)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93958)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8650)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93650)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -1295,31 +1331,31 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8650)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8650)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93650)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93650)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/etc' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc' does not match regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d89e0)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf939e0)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0x28d8650)) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0xf93650)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep' does not match regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8a40)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93a40)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0x28d8650)) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0xf93650)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep/down' does not match regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d8ac0)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf93ac0)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -1330,9 +1366,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_unrestricted_non_recursive_negative_rule - DEBUG: created root node '/' (0x28d86a8) + DEBUG: created root node '/' (0xf936a8) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d86a8) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf936a8) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -1340,7 +1376,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d86a8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf936a8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') @@ -1349,14 +1385,14 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d86a8)) - DEBUG: │ directory node '/' (0x28d86a8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf936a8)) + DEBUG: │ directory node '/' (0xf936a8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d86a8)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf936a8)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -1368,34 +1404,34 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/dev' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d86a8)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d86a8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf936a8)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf936a8)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/dev' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev' and restriction '(none)' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0x28d89b0)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xf939b0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d86a8)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d89b0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf936a8)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf939b0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d86a8)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d89b0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf936a8)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf939b0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d86a8)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d89b0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf936a8)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf939b0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d86a8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf936a8)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -1406,31 +1442,31 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d86a8)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d86a8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf936a8)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf936a8)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/etc' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc' does not match regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d8a38)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf93a38)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0x28d86a8)) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0xf936a8)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep' does not match regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8a98)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93a98)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0x28d86a8)) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0xf936a8)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep/down' does not match regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d8b18)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf93b18)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -1441,11 +1477,11 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_unrestricted_recursive_negative_rule_deep_selective - DEBUG: created root node '/' (0x28d8700) + DEBUG: created root node '/' (0xf93700) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8700) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93700) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8a40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93a40) RULE: ┌ /: RULE: │ '!/dev (none)' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -1453,7 +1489,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8700) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93700) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -1461,16 +1497,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8700)) - DEBUG: │ directory node '/' (0x28d8700) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93700)) + DEBUG: │ directory node '/' (0xf93700) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8700)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93700)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8a40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93a40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -1478,9 +1514,9 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8700)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8a40)) - DEBUG: │ directory node '/dev' (0x28d8a40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93700)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93a40)) + DEBUG: │ directory node '/dev' (0xf93a40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/pts' of selective rule (check_seltree:1: 'n/a') @@ -1488,7 +1524,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8a40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93a40)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1500,8 +1536,8 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/sda' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8700)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8a40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93700)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93a40)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1514,9 +1550,9 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8700)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8a40)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8a40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93700)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93a40)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93a40)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list @@ -1525,7 +1561,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts' matches regex '/dev' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8af8)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93af8)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -1538,10 +1574,10 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts/0' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8700)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8a40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8af8)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8af8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93700)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93a40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93af8)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93af8)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -1551,9 +1587,9 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts/deep' matches regex '/dev' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d8b68)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf93b68)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8af8)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93af8)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) RULE: │ node: '/dev': check selective list @@ -1562,7 +1598,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts/deep/down' matches regex '/dev' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d8bf0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf93bf0)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -1576,7 +1612,7 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8700)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93700)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -1585,21 +1621,21 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8700)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8700)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93700)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93700)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) DEBUG: │ node: '/': skip negative list (reason: no previous positive/partial match) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d8c90)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf93c90)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_unrestricted_recursive_negative_rule_eol_deep_selective - DEBUG: created root node '/' (0x28d8758) + DEBUG: created root node '/' (0xf93758) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8758) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93758) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8a98) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93a98) RULE: ┌ /: RULE: │ '!/dev$ (none)' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -1607,7 +1643,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8758) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93758) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -1615,16 +1651,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8758)) - DEBUG: │ directory node '/' (0x28d8758) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93758)) + DEBUG: │ directory node '/' (0xf93758) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8758)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93758)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8a98) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93a98) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -1632,9 +1668,9 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8758)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8a98)) - DEBUG: │ directory node '/dev' (0x28d8a98) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93758)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93a98)) + DEBUG: │ directory node '/dev' (0xf93a98) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/pts' of selective rule (check_seltree:1: 'n/a') @@ -1642,7 +1678,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev$' and restriction '(none)' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8a98)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93a98)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1654,8 +1690,8 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/sda' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8758)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8a98)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93758)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93a98)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1668,9 +1704,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8758)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8a98)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8a98)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93758)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93a98)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93a98)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list @@ -1679,7 +1715,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8b50)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93b50)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -1692,10 +1728,10 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8758)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8a98)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8b50)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8b50)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93758)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93a98)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93b50)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93b50)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -1705,9 +1741,9 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts/deep' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d8bc0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf93bc0)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8b50)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93b50)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) RULE: │ node: '/dev': check selective list @@ -1716,7 +1752,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts/deep/down' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d8c48)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf93c48)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -1730,7 +1766,7 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8758)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93758)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -1739,21 +1775,21 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8758)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8758)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93758)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93758)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) DEBUG: │ node: '/': skip negative list (reason: no previous positive/partial match) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d8ce8)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf93ce8)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_unrestricted_non_recursive_negative_rule_deep_selective - DEBUG: created root node '/' (0x28d87b0) + DEBUG: created root node '/' (0xf937b0) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d87b0) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf937b0) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8af0) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93af0) RULE: ┌ /: RULE: │ '-/dev (none)' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -1761,7 +1797,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d87b0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf937b0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -1769,16 +1805,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d87b0)) - DEBUG: │ directory node '/' (0x28d87b0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf937b0)) + DEBUG: │ directory node '/' (0xf937b0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d87b0)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf937b0)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8af0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93af0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -1786,9 +1822,9 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/dev' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d87b0)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8af0)) - DEBUG: │ directory node '/dev' (0x28d8af0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf937b0)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93af0)) + DEBUG: │ directory node '/dev' (0xf93af0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/pts' of selective rule (check_seltree:1: 'n/a') @@ -1796,26 +1832,26 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev' and restriction '(none)' of non-recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0x28d8af0)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xf93af0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d87b0)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8af0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf937b0)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93af0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d87b0)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8af0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf937b0)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93af0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d87b0)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8af0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf937b0)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93af0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d87b0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf937b0)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -1824,21 +1860,21 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d87b0)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d87b0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf937b0)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf937b0)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) DEBUG: │ node: '/': skip negative list (reason: no previous positive/partial match) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d8bc0)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf93bc0)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_unrestricted_non_recursive_negative_rule_eol_deep_selective - DEBUG: created root node '/' (0x28d8808) + DEBUG: created root node '/' (0xf93808) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8808) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93808) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8b48) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93b48) RULE: ┌ /: RULE: │ '-/dev$ (none)' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -1846,7 +1882,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8808) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93808) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -1854,16 +1890,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8808)) - DEBUG: │ directory node '/' (0x28d8808) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93808)) + DEBUG: │ directory node '/' (0xf93808) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8808)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93808)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8b48) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93b48) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -1871,9 +1907,9 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/dev' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8808)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8b48)) - DEBUG: │ directory node '/dev' (0x28d8b48) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93808)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93b48)) + DEBUG: │ directory node '/dev' (0xf93b48) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/pts' of selective rule (check_seltree:1: 'n/a') @@ -1881,26 +1917,26 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev$' and restriction '(none)' of non-recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0x28d8b48)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xf93b48)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8808)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8b48)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93808)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93b48)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8808)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8b48)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93808)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93b48)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8808)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8b48)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93808)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93b48)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8808)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93808)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -1909,24 +1945,24 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8808)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8808)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93808)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93808)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) DEBUG: │ node: '/': skip negative list (reason: no previous positive/partial match) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d8c18)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf93c18)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_unrestricted_deep_selective_rule - DEBUG: created root node '/' (0x28d8860) + DEBUG: created root node '/' (0xf93860) DEBUG: JIT compilation for regex '/dev/.*/[0-9]' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8b60) - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8860) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93b60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93860) DEBUG: JIT compilation for regex '/etc/deep/down/0' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep/down' (0x28d8f08) - DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep' (0x28d8e98) - DEBUG: set NODE_HAS_SUB_RULES for node '/etc' (0x28d8e28) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep/down' (0xf93f08) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep' (0xf93e98) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc' (0xf93e28) RULE: ┌ /: RULE: ┝ /dev: RULE: │ '/dev/.*/[0-9] (none) ' (check_seltree:0: 'n/a') @@ -1937,34 +1973,34 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8860) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93860) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8860)) - DEBUG: │ directory node '/' (0x28d8860) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93860)) + DEBUG: │ directory node '/' (0xf93860) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8860)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93860)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8b60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93b60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8860)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8b60)) - DEBUG: │ directory node '/dev' (0x28d8b60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93860)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93b60)) + DEBUG: │ directory node '/dev' (0xf93b60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/.*/[0-9]' of selective rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8b60)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93b60)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1975,8 +2011,8 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev/sda' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8860)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8b60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93860)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93b60)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1987,16 +2023,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev/pts' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8860)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8b60)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8b60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93860)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93b60)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93b60)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev/pts' partially matches regex '/dev/.*/[0-9]' of selective rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8fe0)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93fe0)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -2007,10 +2043,10 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8860)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8b60)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8fe0)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8fe0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93860)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93b60)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93fe0)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93fe0)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -2018,16 +2054,16 @@ DEBUG: │ '/dev/pts/deep' partially matches regex '/dev/.*/[0-9]' of selective rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d9060)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf94060)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8fe0)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93fe0)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev/pts/deep/down' partially matches regex '/dev/.*/[0-9]' of selective rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d90d0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf940d0)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -2039,32 +2075,32 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8860)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93860)) RULE: │ check '/etc' (filetype: d) - DEBUG: │ directory node '/etc' (0x28d8e28) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/etc' (0xf93e28) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/etc' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8860)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/etc' (0x28d8e28)) - DEBUG: │ directory node '/etc' (0x28d8e28) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93860)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/etc' (0xf93e28)) + DEBUG: │ directory node '/etc' (0xf93e28) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/etc': skip equal list (reason: list is empty) DEBUG: │ node: '/etc': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d8e28)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf93e28)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/etc/deep' (0x28d8e98)) - DEBUG: │ directory node '/etc/deep' (0x28d8e98) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/etc/deep' (0xf93e98)) + DEBUG: │ directory node '/etc/deep' (0xf93e98) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/etc/deep': skip equal list (reason: list is empty) DEBUG: │ node: '/etc/deep': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/etc': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8e98)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93e98)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/etc/deep/down' (0x28d8f08)) - DEBUG: │ directory node '/etc/deep/down' (0x28d8f08) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/etc/deep/down' (0xf93f08)) + DEBUG: │ directory node '/etc/deep/down' (0xf93f08) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/etc/deep/down': skip equal list (reason: list is empty) RULE: │ node: '/etc/deep/down': check selective list DEBUG: │ '/etc/deep/down' partially matches regex '/etc/deep/down/0' of selective rule (check_seltree:1: 'n/a') @@ -2072,7 +2108,7 @@ DEBUG: │ node: '/etc': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/etc/deep/down': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d8f08)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf93f08)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/etc/deep/down': skip equal list (reason: list is empty) @@ -2085,9 +2121,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_unrestricted_forbid_root - DEBUG: created root node '/' (0x28d88b8) + DEBUG: created root node '/' (0xf938b8) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d88b8) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf938b8) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/dev (none) ' (check_seltree:0: 'n/a') @@ -2095,7 +2131,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d88b8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf938b8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list DEBUG: │ '/' partially matches regex '/dev' of selective rule (check_seltree:0: 'n/a') @@ -2104,62 +2140,62 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d88b8)) - DEBUG: │ directory node '/' (0x28d88b8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf938b8)) + DEBUG: │ directory node '/' (0xf938b8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list DEBUG: │ '/' partially matches regex '/dev' of selective rule (check_seltree:0: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/' matches regex '/' and restriction '(none)' of non-recursive negative rule (check_seltree:1: 'n/a') - DEBUG: │ cache non-recursive negative match of parent directory '/' (node: '/' (0x28d88b8)) + DEBUG: │ cache non-recursive negative match of parent directory '/' (node: '/' (0xf938b8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d88b8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf938b8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: b) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d88b8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf938b8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d88b8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf938b8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d88b8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf938b8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d88b8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf938b8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/etc' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d88b8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf938b8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH INFO: test_f_type_restricted_equal_rule - DEBUG: created root node '/' (0x28d8910) + DEBUG: created root node '/' (0xf93910) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8910) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93910) RULE: ┌ /: RULE: │ '=/dev d ' (check_seltree:0: 'n/a') RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8910) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93910) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) RULE: │ node: '/': check equal list DEBUG: │ '/' partially matches regex '/dev' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8910)) - DEBUG: │ directory node '/' (0x28d8910) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93910)) + DEBUG: │ directory node '/' (0xf93910) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) RULE: │ node: '/': check equal list DEBUG: │ '/' partially matches regex '/dev' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8910)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93910)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -2169,13 +2205,13 @@ DEBUG: │ check_selree: match result RESULT_EQUAL_MATCH (8) for '/dev' RULE: ┴ result: RESULT_EQUAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8910)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d8910)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93910)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf93910)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/': check equal list RULE: ┝ '/dev' matches regex '/dev' and restriction 'd' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8ae8)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93ae8)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2183,8 +2219,8 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/sda' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8910)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8ae8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93910)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93ae8)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -2193,24 +2229,24 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8910)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8ae8)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8ae8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93910)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93ae8)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93ae8)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache no rule match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8b68)) + DEBUG: │ cache no rule match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93b68)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts/0' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8910)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8ae8)) - RULE: │ (cache) no rule match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8b68)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93910)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93ae8)) + RULE: │ (cache) no rule match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93b68)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8910)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93910)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/': check equal list @@ -2219,53 +2255,53 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8910)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8910)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93910)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93910)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/': check equal list DEBUG: │ '/etc' does not match regex '/dev' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d8bf0)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf93bf0)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_f_type_restricted_equal_rule_slash - DEBUG: created root node '/' (0x28d8968) + DEBUG: created root node '/' (0xf93968) DEBUG: JIT compilation for regex '/dev/' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8af0) - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8968) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93af0) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93968) RULE: ┌ /: RULE: ┝ /dev: RULE: │ '=/dev/ d ' (check_seltree:0: 'n/a') RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8968) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93968) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8968)) - DEBUG: │ directory node '/' (0x28d8968) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93968)) + DEBUG: │ directory node '/' (0xf93968) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8968)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93968)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8af0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93af0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8968)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8af0)) - DEBUG: │ directory node '/dev' (0x28d8af0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93968)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93af0)) + DEBUG: │ directory node '/dev' (0xf93af0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) RULE: │ node: '/dev': check equal list DEBUG: │ '/dev' partially matches regex '/dev/' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8af0)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93af0)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) RULE: │ node: '/dev': check equal list @@ -2275,8 +2311,8 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev/sda' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8968)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8af0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93968)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93af0)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/dev': check equal list @@ -2286,15 +2322,15 @@ DEBUG: │ check_selree: match result RESULT_EQUAL_MATCH (8) for '/dev/pts' RULE: ┴ result: RESULT_EQUAL_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8968)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8af0)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8af0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93968)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93af0)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93af0)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) RULE: │ node: '/dev': check equal list RULE: ┝ '/dev/pts' matches regex '/dev/' and restriction 'd' of equal rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8b80)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93b80)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -2303,20 +2339,20 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts/0' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8968)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8af0)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8b80)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8b80)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93968)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93af0)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93b80)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93b80)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache no rule match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d8bf0)) + DEBUG: │ cache no rule match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf93bf0)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8968)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93968)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -2324,18 +2360,18 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8968)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8968)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93968)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93968)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d8c90)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf93c90)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_f_type_restricted_recursive_negative_rule_eol - DEBUG: created root node '/' (0x28d89c0) + DEBUG: created root node '/' (0xf939c0) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d89c0) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf939c0) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -2343,7 +2379,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d89c0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf939c0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') @@ -2352,14 +2388,14 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d89c0)) - DEBUG: │ directory node '/' (0x28d89c0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf939c0)) + DEBUG: │ directory node '/' (0xf939c0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d89c0)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf939c0)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -2371,15 +2407,15 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d89c0)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d89c0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf939c0)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf939c0)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/dev' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev$' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8cc8)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93cc8)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2390,8 +2426,8 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/sda' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d89c0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8cc8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf939c0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93cc8)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -2403,9 +2439,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d89c0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8cc8)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8cc8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf939c0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93cc8)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93cc8)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) @@ -2413,7 +2449,7 @@ RULE: ┝ '/dev/pts' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8d88)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93d88)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -2425,10 +2461,10 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d89c0)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8cc8)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8d88)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8d88)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf939c0)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93cc8)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93d88)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93d88)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -2437,9 +2473,9 @@ RULE: ┝ '/dev/pts/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts/deep' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d8dd8)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf93dd8)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8d88)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93d88)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) @@ -2447,7 +2483,7 @@ RULE: ┝ '/dev/pts/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts/deep/down' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d8e60)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf93e60)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -2460,7 +2496,7 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d89c0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf939c0)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -2471,31 +2507,31 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d89c0)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d89c0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf939c0)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf939c0)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/etc' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d8f00)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf93f00)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0x28d89c0)) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0xf939c0)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8f60)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93f60)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0x28d89c0)) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0xf939c0)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep/down' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d8fe0)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf93fe0)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2506,9 +2542,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_f_type_restricted_recursive_negative_rule - DEBUG: created root node '/' (0x28d8a18) + DEBUG: created root node '/' (0xf93a18) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8a18) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93a18) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -2516,7 +2552,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8a18) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93a18) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') @@ -2525,14 +2561,14 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8a18)) - DEBUG: │ directory node '/' (0x28d8a18) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93a18)) + DEBUG: │ directory node '/' (0xf93a18) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8a18)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93a18)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -2544,15 +2580,15 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a18)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d8a18)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a18)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf93a18)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/dev' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8d88)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93d88)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2563,8 +2599,8 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/sda' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a18)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8d88)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a18)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93d88)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -2576,9 +2612,9 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a18)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8d88)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8d88)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a18)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93d88)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93d88)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) @@ -2586,7 +2622,7 @@ RULE: ┝ '/dev/pts' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts' matches regex '/dev' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8dd8)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93dd8)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -2598,10 +2634,10 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a18)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8d88)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8dd8)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8dd8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a18)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93d88)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93dd8)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93dd8)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -2610,9 +2646,9 @@ RULE: ┝ '/dev/pts/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts/deep' matches regex '/dev' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d8e48)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf93e48)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8dd8)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93dd8)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip selective and negative list (reason: lists are empty) @@ -2620,7 +2656,7 @@ RULE: ┝ '/dev/pts/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts/deep/down' matches regex '/dev' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d8eb8)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf93eb8)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -2633,7 +2669,7 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a18)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a18)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -2644,31 +2680,31 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a18)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8a18)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a18)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93a18)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/etc' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc' does not match regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d8f58)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf93f58)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0x28d8a18)) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0xf93a18)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep' does not match regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8fb8)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93fb8)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0x28d8a18)) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0xf93a18)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep/down' does not match regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d9038)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf94038)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2679,9 +2715,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_f_type_restricted_non_recursive_negative_rule_eol - DEBUG: created root node '/' (0x28d8a70) + DEBUG: created root node '/' (0xf93a70) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8a70) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93a70) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -2689,7 +2725,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8a70) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93a70) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') @@ -2698,14 +2734,14 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8a70)) - DEBUG: │ directory node '/' (0x28d8a70) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93a70)) + DEBUG: │ directory node '/' (0xf93a70) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8a70)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93a70)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -2717,34 +2753,34 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/dev' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a70)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d8a70)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a70)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf93a70)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/dev' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev$' and restriction 'd' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0x28d8d98)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xf93d98)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a70)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8d98)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a70)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93d98)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a70)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8d98)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a70)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93d98)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a70)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8d98)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a70)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93d98)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a70)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a70)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -2755,31 +2791,31 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8a70)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8a70)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93a70)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93a70)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/etc' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc' does not match regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d8e20)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf93e20)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0x28d8a70)) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0xf93a70)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep' does not match regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8e80)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93e80)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0x28d8a70)) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0xf93a70)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep/down' does not match regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d8f00)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf93f00)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2790,9 +2826,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_f_type_restricted_non_recursive_negative_rule - DEBUG: created root node '/' (0x28d8ac8) + DEBUG: created root node '/' (0xf93ac8) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8ac8) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93ac8) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -2800,7 +2836,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8ac8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93ac8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') @@ -2809,14 +2845,14 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8ac8)) - DEBUG: │ directory node '/' (0x28d8ac8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93ac8)) + DEBUG: │ directory node '/' (0xf93ac8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8ac8)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93ac8)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) @@ -2828,34 +2864,34 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/dev' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8ac8)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0x28d8ac8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93ac8)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/' (0xf93ac8)) DEBUG: │ no node for directory '/dev' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/dev' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev' and restriction 'd' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0x28d8df0)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xf93df0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8ac8)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8df0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93ac8)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93df0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8ac8)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8df0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93ac8)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93df0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8ac8)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8df0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93ac8)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93df0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8ac8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93ac8)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -2866,31 +2902,31 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8ac8)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8ac8)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93ac8)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93ac8)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list RULE: ┝ '/etc' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc' does not match regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d8e78)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf93e78)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0x28d8ac8)) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/' (0xf93ac8)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep' does not match regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d8ed8)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf93ed8)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0x28d8ac8)) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/' (0xf93ac8)) DEBUG: │ node: '/' skip equal list (reason: not on top level) RULE: │ node: '/': check selective list RULE: ┝ '/etc/deep/down' matches regex '/' and restriction '(none)' of selective rule (check_seltree:1: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/etc/deep/down' does not match regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d8f58)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf93f58)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2901,11 +2937,11 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_restricted_recursive_negative_rule_deep_selective - DEBUG: created root node '/' (0x28d8b20) + DEBUG: created root node '/' (0xf93b20) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8b20) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93b20) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8e88) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93e88) RULE: ┌ /: RULE: │ '!/dev d' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -2913,7 +2949,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8b20) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93b20) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -2921,16 +2957,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8b20)) - DEBUG: │ directory node '/' (0x28d8b20) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93b20)) + DEBUG: │ directory node '/' (0xf93b20) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8b20)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93b20)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8e88) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93e88) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -2938,9 +2974,9 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b20)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8e88)) - DEBUG: │ directory node '/dev' (0x28d8e88) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b20)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93e88)) + DEBUG: │ directory node '/dev' (0xf93e88) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/pts' of selective rule (check_seltree:1: 'n/a') @@ -2948,7 +2984,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8e88)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93e88)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -2960,8 +2996,8 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/sda' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b20)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8e88)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b20)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93e88)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -2974,9 +3010,9 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b20)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8e88)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8e88)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b20)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93e88)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93e88)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list @@ -2985,7 +3021,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts' matches regex '/dev' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8f40)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93f40)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -2998,10 +3034,10 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b20)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8e88)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8f40)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8f40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b20)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93e88)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93f40)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93f40)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -3011,9 +3047,9 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts/deep' matches regex '/dev' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d8fb0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf93fb0)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8f40)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93f40)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) RULE: │ node: '/dev': check selective list @@ -3022,7 +3058,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev/pts/deep/down' matches regex '/dev' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d9038)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf94038)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -3036,7 +3072,7 @@ DEBUG: │ check_selree: match result RESULT_RECURSIVE_NEGATIVE_MATCH (1) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b20)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b20)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -3045,21 +3081,21 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b20)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8b20)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b20)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93b20)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) DEBUG: │ node: '/': skip negative list (reason: no previous positive/partial match) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d90d8)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf940d8)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_restricted_recursive_negative_rule_eol_deep_selective - DEBUG: created root node '/' (0x28d8b78) + DEBUG: created root node '/' (0xf93b78) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8b78) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93b78) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8ee0) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93ee0) RULE: ┌ /: RULE: │ '!/dev$ d' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -3067,7 +3103,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8b78) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93b78) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -3075,16 +3111,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8b78)) - DEBUG: │ directory node '/' (0x28d8b78) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93b78)) + DEBUG: │ directory node '/' (0xf93b78) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8b78)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93b78)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8ee0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93ee0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -3092,9 +3128,9 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b78)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8ee0)) - DEBUG: │ directory node '/dev' (0x28d8ee0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b78)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93ee0)) + DEBUG: │ directory node '/dev' (0xf93ee0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/pts' of selective rule (check_seltree:1: 'n/a') @@ -3102,7 +3138,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev$' and restriction 'd' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8ee0)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93ee0)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -3114,8 +3150,8 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/dev/sda' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b78)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8ee0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b78)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93ee0)) RULE: │ check '/dev/pts' (filetype: d) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -3128,9 +3164,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b78)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8ee0)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8ee0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b78)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93ee0)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93ee0)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list @@ -3139,7 +3175,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d8f90)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf93f90)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -3152,10 +3188,10 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b78)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8ee0)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d8f90)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d8f90)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b78)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93ee0)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf93f90)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf93f90)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -3165,9 +3201,9 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts/deep' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d9000)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf94000)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d8f90)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf93f90)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) RULE: │ node: '/dev': check selective list @@ -3176,7 +3212,7 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/dev/pts/deep/down' does not match regex '/dev$' of recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d9088)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf94088)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -3190,7 +3226,7 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b78)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b78)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -3199,21 +3235,21 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8b78)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8b78)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93b78)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93b78)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) DEBUG: │ node: '/': skip negative list (reason: no previous positive/partial match) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d9128)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf94128)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_restricted_non_recursive_negative_rule_deep_selective - DEBUG: created root node '/' (0x28d8bd0) + DEBUG: created root node '/' (0xf93bd0) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8bd0) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93bd0) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8f30) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93f30) RULE: ┌ /: RULE: │ '-/dev d' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -3221,7 +3257,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8bd0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93bd0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -3229,16 +3265,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8bd0)) - DEBUG: │ directory node '/' (0x28d8bd0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93bd0)) + DEBUG: │ directory node '/' (0xf93bd0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8bd0)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93bd0)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8f30) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93f30) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -3246,9 +3282,9 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/dev' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8bd0)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8f30)) - DEBUG: │ directory node '/dev' (0x28d8f30) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93bd0)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93f30)) + DEBUG: │ directory node '/dev' (0xf93f30) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/pts' of selective rule (check_seltree:1: 'n/a') @@ -3256,26 +3292,26 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev' and restriction 'd' of non-recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0x28d8f30)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xf93f30)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8bd0)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8f30)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93bd0)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93f30)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8bd0)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8f30)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93bd0)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93f30)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8bd0)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8f30)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93bd0)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93f30)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8bd0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93bd0)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -3284,21 +3320,21 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8bd0)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8bd0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93bd0)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93bd0)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) DEBUG: │ node: '/': skip negative list (reason: no previous positive/partial match) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d9000)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf94000)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_restricted_non_recursive_negative_rule_eol_deep_selective - DEBUG: created root node '/' (0x28d8c28) + DEBUG: created root node '/' (0xf93c28) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8c28) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93c28) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8fa0) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93fa0) RULE: ┌ /: RULE: │ '-/dev$ d' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -3306,7 +3342,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8c28) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93c28) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -3314,16 +3350,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8c28)) - DEBUG: │ directory node '/' (0x28d8c28) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93c28)) + DEBUG: │ directory node '/' (0xf93c28) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) DEBUG: │ '/' partially matches regex '/dev$' of non-recursive negative rule (check_seltree:0: 'n/a') - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8c28)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93c28)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8fa0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93fa0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) RULE: │ node: '/': check negative list (reason: previous positive/partial match) @@ -3331,9 +3367,9 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/dev' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c28)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8fa0)) - DEBUG: │ directory node '/dev' (0x28d8fa0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c28)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93fa0)) + DEBUG: │ directory node '/dev' (0xf93fa0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/pts' of selective rule (check_seltree:1: 'n/a') @@ -3341,26 +3377,26 @@ RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/dev' matches regex '/dev$' and restriction 'd' of non-recursive negative rule (check_seltree:0: 'n/a') DEBUG: │ node: '/dev': skip negative list (reason: previous negative match) - DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0x28d8fa0)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xf93fa0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c28)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8fa0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c28)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93fa0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c28)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8fa0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c28)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93fa0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c28)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0x28d8fa0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c28)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xf93fa0)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c28)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c28)) RULE: │ check '/etc' (filetype: d) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) @@ -3369,24 +3405,24 @@ DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc' RULE: ┴ result: RESULT_NO_RULE_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c28)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0x28d8c28)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c28)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/' (0xf93c28)) DEBUG: │ no node for directory '/etc' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective list (reason: list is empty) DEBUG: │ node: '/': skip negative list (reason: no previous positive/partial match) - DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0x28d9058)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xf94058)) DEBUG: │ check_selree: match result RESULT_NO_RULE_MATCH (0) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NO_RULE_MATCH INFO: test_f_type_restricted_deep_selective_rule - DEBUG: created root node '/' (0x28d8c80) + DEBUG: created root node '/' (0xf93c80) DEBUG: JIT compilation for regex '/dev/.*/[0-9]' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0x28d8fa0) - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8c80) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xf93fa0) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93c80) DEBUG: JIT compilation for regex '/etc/deep/down/0' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep/down' (0x28d9328) - DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep' (0x28d92a8) - DEBUG: set NODE_HAS_SUB_RULES for node '/etc' (0x28d9238) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep/down' (0xf94328) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep' (0xf942a8) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc' (0xf94238) RULE: ┌ /: RULE: ┝ /dev: RULE: │ '/dev/.*/[0-9] b ' (check_seltree:0: 'n/a') @@ -3397,34 +3433,34 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8c80) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93c80) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8c80)) - DEBUG: │ directory node '/' (0x28d8c80) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93c80)) + DEBUG: │ directory node '/' (0xf93c80) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/' (node: '/' (0x28d8c80)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xf93c80)) RULE: │ no no-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0x28d8fa0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xf93fa0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c80)) - RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0x28d8fa0)) - DEBUG: │ directory node '/dev' (0x28d8fa0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c80)) + RULE: │ check parent directory '/dev' for no-recurse match (node: '/dev' (0xf93fa0)) + DEBUG: │ directory node '/dev' (0xf93fa0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev' partially matches regex '/dev/.*/[0-9]' of selective rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0x28d8fa0)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xf93fa0)) RULE: │ no no-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -3435,8 +3471,8 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev/sda' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/pts' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c80)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8fa0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c80)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93fa0)) RULE: │ check '/dev/pts' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list @@ -3446,16 +3482,16 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev/pts' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c80)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8fa0)) - RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0x28d8fa0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c80)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93fa0)) + RULE: │ check parent directory '/dev/pts' for no-recurse match (node: '/dev' (0xf93fa0)) DEBUG: │ no node for directory '/dev/pts' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev/pts' partially matches regex '/dev/.*/[0-9]' of selective rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0x28d9400)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xf94400)) RULE: │ no no-recurse match found for parent directory '/dev/pts' RULE: │ check '/dev/pts/0' (filetype: b) DEBUG: │ node: '/dev' skip equal list (reason: not on top level) @@ -3466,10 +3502,10 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/dev/pts/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c80)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0x28d8fa0)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0x28d9400)) - RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0x28d9400)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c80)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xf93fa0)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xf94400)) + RULE: │ check parent directory '/dev/pts/deep' for no-recurse match (node: '/dev/pts' (0xf94400)) DEBUG: │ no node for directory '/dev/pts/deep' exists (keep default match result at RESULT_NO_RULE_MATCH) DEBUG: │ node: '/dev/pts': skip equal list (reason: list is empty) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) @@ -3477,16 +3513,16 @@ DEBUG: │ '/dev/pts/deep' partially matches regex '/dev/.*/[0-9]' of selective rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0x28d9480)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xf94480)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0x28d9400)) + RULE: │ check parent directory '/dev/pts/deep/down' for no-recurse match (node: '/dev/pts' (0xf94400)) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) DEBUG: │ node: '/dev/pts': skip selective and negative list (reason: lists are empty) RULE: │ node: '/dev': check selective list DEBUG: │ '/dev/pts/deep/down' partially matches regex '/dev/.*/[0-9]' of selective rule (check_seltree:0: 'n/a') DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/dev': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0x28d94f0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xf944f0)) RULE: │ no no-recurse match found for parent directory '/dev/pts/deep/down' RULE: │ check '/dev/pts/deep/down/0' (filetype: d) DEBUG: │ node: '/dev/pts' skip equal list (reason: not on top level) @@ -3498,32 +3534,32 @@ DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/etc' (filetype: d) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c80)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c80)) RULE: │ check '/etc' (filetype: d) - DEBUG: │ directory node '/etc' (0x28d9238) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/etc' (0xf94238) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ check_selree: match result RESULT_PARTIAL_MATCH (16) for '/etc' RULE: ┴ result: RESULT_PARTIAL_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0x28d8c80)) - RULE: │ check parent directory '/etc' for no-recurse match (node: '/etc' (0x28d9238)) - DEBUG: │ directory node '/etc' (0x28d9238) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xf93c80)) + RULE: │ check parent directory '/etc' for no-recurse match (node: '/etc' (0xf94238)) + DEBUG: │ directory node '/etc' (0xf94238) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/etc': skip equal list (reason: list is empty) DEBUG: │ node: '/etc': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0x28d9238)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xf94238)) RULE: │ no no-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/etc/deep' (0x28d92a8)) - DEBUG: │ directory node '/etc/deep' (0x28d92a8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/etc/deep' for no-recurse match (node: '/etc/deep' (0xf942a8)) + DEBUG: │ directory node '/etc/deep' (0xf942a8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/etc/deep': skip equal list (reason: list is empty) DEBUG: │ node: '/etc/deep': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/etc': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) - DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0x28d92a8)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xf942a8)) RULE: │ no no-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/etc/deep/down' (0x28d9328)) - DEBUG: │ directory node '/etc/deep/down' (0x28d9328) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/etc/deep/down' for no-recurse match (node: '/etc/deep/down' (0xf94328)) + DEBUG: │ directory node '/etc/deep/down' (0xf94328) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/etc/deep/down': skip equal list (reason: list is empty) RULE: │ node: '/etc/deep/down': check selective list DEBUG: │ '/etc/deep/down' partially matches regex '/etc/deep/down/0' of selective rule (check_seltree:1: 'n/a') @@ -3531,7 +3567,7 @@ DEBUG: │ node: '/etc': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/': skip selective and negative list (reason: lists are empty) DEBUG: │ node: '/etc/deep/down': skip negative list (reason: list is empty) - DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0x28d9328)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xf94328)) RULE: │ no no-recurse match found for parent directory '/etc/deep/down' RULE: │ check '/etc/deep/down/0' (filetype: f) DEBUG: │ node: '/etc/deep/down': skip equal list (reason: list is empty) @@ -3544,9 +3580,9 @@ DEBUG: │ check_selree: match result RESULT_SELECTIVE_MATCH (4) for '/etc/deep/down/0' RULE: ┴ result: RESULT_SELECTIVE_MATCH INFO: test_f_type_restricted_forbid_root - DEBUG: created root node '/' (0x28d8cd8) + DEBUG: created root node '/' (0xf93cd8) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0x28d8cd8) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xf93cd8) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/dev b ' (check_seltree:0: 'n/a') @@ -3554,7 +3590,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0x28d8cd8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xf93cd8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list DEBUG: │ '/' partially matches regex '/dev' of selective rule (check_seltree:0: 'n/a') @@ -3563,38 +3599,38 @@ DEBUG: │ check_selree: match result RESULT_NON_RECURSIVE_NEGATIVE_MATCH (2) for '/' RULE: ┴ result: RESULT_NON_RECURSIVE_NEGATIVE_MATCH RULE: ┬ check '/dev' (filetype: d) - RULE: │ check parent directory '/' for no-recurse match (node: '/' (0x28d8cd8)) - DEBUG: │ directory node '/' (0x28d8cd8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for no-recurse match (node: '/' (0xf93cd8)) + DEBUG: │ directory node '/' (0xf93cd8) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) DEBUG: │ node: '/': skip equal list (reason: list is empty) RULE: │ node: '/': check selective list DEBUG: │ '/' partially matches regex '/dev' of selective rule (check_seltree:0: 'n/a') RULE: │ node: '/': check negative list (reason: previous positive/partial match) RULE: ┝ '/' matches regex '/' and restriction 'd' of non-recursive negative rule (check_seltree:1: 'n/a') - DEBUG: │ cache non-recursive negative match of parent directory '/' (node: '/' (0x28d8cd8)) + DEBUG: │ cache non-recursive negative match of parent directory '/' (node: '/' (0xf93cd8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/sda' (filetype: b) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d8cd8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf93cd8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/sda' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts' (filetype: b) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d8cd8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf93cd8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/0' (filetype: b) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d8cd8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf93cd8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/dev/pts/deep/down/0' (filetype: d) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d8cd8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf93cd8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/dev/pts/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc' (filetype: d) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d8cd8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf93cd8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/etc' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH RULE: ┬ check '/etc/deep/down/0' (filetype: f) - RULE: │ (cache) negative match for parent directory '/' (node: '/' (0x28d8cd8)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xf93cd8)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH 100%: Checks: 163, Failures: 0, Errors: 0 @@ -3611,7 +3647,7 @@ debian/rules override_dh_auto_install make[1]: Entering directory '/build/reproducible-path/aide-0.19~dev20240708' dh_auto_install - make -j3 install DESTDIR=/build/reproducible-path/aide-0.19\~dev20240708/debian/tmp AM_UPDATE_INFO_DIR=no + make -j4 install DESTDIR=/build/reproducible-path/aide-0.19\~dev20240708/debian/tmp AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/build/reproducible-path/aide-0.19~dev20240708' make install-am make[3]: Entering directory '/build/reproducible-path/aide-0.19~dev20240708' @@ -3619,8 +3655,8 @@ /usr/bin/mkdir -p '/build/reproducible-path/aide-0.19~dev20240708/debian/tmp/usr/share/man/man1' /usr/bin/mkdir -p '/build/reproducible-path/aide-0.19~dev20240708/debian/tmp/usr/share/man/man5' /usr/bin/mkdir -p '/build/reproducible-path/aide-0.19~dev20240708/debian/tmp/usr/bin' - /usr/bin/install -c aide '/build/reproducible-path/aide-0.19~dev20240708/debian/tmp/usr/bin' /usr/bin/install -c -m 644 doc/aide.1 '/build/reproducible-path/aide-0.19~dev20240708/debian/tmp/usr/share/man/man1' + /usr/bin/install -c aide '/build/reproducible-path/aide-0.19~dev20240708/debian/tmp/usr/bin' /usr/bin/install -c -m 644 doc/aide.conf.5 '/build/reproducible-path/aide-0.19~dev20240708/debian/tmp/usr/share/man/man5' make[4]: Leaving directory '/build/reproducible-path/aide-0.19~dev20240708' make[3]: Leaving directory '/build/reproducible-path/aide-0.19~dev20240708' @@ -3650,20 +3686,20 @@ dh_makeshlibs -a dh_shlibdeps -a dpkg-shlibdeps: warning: diversions involved - output may be incorrect - diversion by libc6 from: /lib/ld-linux-armhf.so.3 -dpkg-shlibdeps: warning: diversions involved - output may be incorrect - diversion by libc6 to: /lib/ld-linux-armhf.so.3.usr-is-merged -dpkg-shlibdeps: warning: diversions involved - output may be incorrect diversion by libext2fs2t64 from: /lib/arm-linux-gnueabihf/libe2p.so.2 dpkg-shlibdeps: warning: diversions involved - output may be incorrect diversion by libext2fs2t64 to: /lib/arm-linux-gnueabihf/libe2p.so.2.usr-is-merged +dpkg-shlibdeps: warning: diversions involved - output may be incorrect + diversion by libc6 from: /lib/ld-linux-armhf.so.3 +dpkg-shlibdeps: warning: diversions involved - output may be incorrect + diversion by libc6 to: /lib/ld-linux-armhf.so.3.usr-is-merged dh_installdeb dh_gencontrol dh_md5sums dh_builddeb -dpkg-deb: building package 'aide-common' in '../aide-common_0.19~dev20240708-1_all.deb'. -dpkg-deb: building package 'aide' in '../aide_0.19~dev20240708-1_armhf.deb'. dpkg-deb: building package 'aide-dbgsym' in '../aide-dbgsym_0.19~dev20240708-1_armhf.deb'. +dpkg-deb: building package 'aide' in '../aide_0.19~dev20240708-1_armhf.deb'. +dpkg-deb: building package 'aide-common' in '../aide-common_0.19~dev20240708-1_all.deb'. dpkg-deb: building package 'aide-dynamic' in '../aide-dynamic_0.19~dev20240708-1_all.deb'. dpkg-genbuildinfo --build=binary -O../aide_0.19~dev20240708-1_armhf.buildinfo dpkg-genchanges --build=binary -O../aide_0.19~dev20240708-1_armhf.changes @@ -3672,12 +3708,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/3833/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/3833/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/8465 and its subdirectories -I: Current time: Fri Jul 12 06:45:04 -12 2024 -I: pbuilder-time-stamp: 1720809904 +I: removing directory /srv/workspace/pbuilder/3833 and its subdirectories +I: Current time: Sat Jul 13 08:47:40 +14 2024 +I: pbuilder-time-stamp: 1720810060