Diff of the two buildlogs: -- --- b1/build.log 2025-03-17 18:03:19.783806652 +0000 +++ b2/build.log 2025-03-17 18:06:14.892003054 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Mar 17 06:02:23 -12 2025 -I: pbuilder-time-stamp: 1742234543 +I: Current time: Mon Apr 20 14:26:22 +14 2026 +I: pbuilder-time-stamp: 1776644782 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/experimental-reproducible-base.tgz] I: copying local configuration @@ -22,52 +22,84 @@ dpkg-source: info: unpacking aide_0.19~dev20250316-1.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/1619352/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/804558/tmp/hooks/D01_modify_environment starting +debug: Running on codethink03-arm64. +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 Apr 20 00:26 /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/804558/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/804558/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='arm64' - DEBIAN_FRONTEND='noninteractive' + 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]="37" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='experimental' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=experimental + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='ed57567f4d0940e6a69e21d45f468ad1' - 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='1619352' - PS1='# ' - PS2='> ' + INVOCATION_ID=634d8e901a32468ea4c52adfe8f3fd1f + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + 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=804558 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.NMk2UvIF/pbuilderrc_zFM2 --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.NMk2UvIF/b1 --logfile b1/build.log aide_0.19~dev20250316-1.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4:3128' + 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.NMk2UvIF/pbuilderrc_kF4F --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.NMk2UvIF/b2 --logfile b2/build.log aide_0.19~dev20250316-1.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink04-arm64 6.1.0-32-cloud-arm64 #1 SMP Debian 6.1.129-1 (2025-03-06) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-32-cloud-arm64 #1 SMP Debian 6.1.129-1 (2025-03-06) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Mar 4 11:20 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/1619352/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Mar 4 2025 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/804558/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -194,7 +226,7 @@ Get: 57 http://deb.debian.org/debian unstable/main arm64 pkgconf-bin arm64 1.8.1-4 [29.6 kB] Get: 58 http://deb.debian.org/debian unstable/main arm64 pkgconf arm64 1.8.1-4 [26.1 kB] Get: 59 http://deb.debian.org/debian unstable/main arm64 zlib1g-dev arm64 1:1.3.dfsg+really1.3.1-1+b1 [917 kB] -Fetched 29.4 MB in 0s (120 MB/s) +Fetched 29.4 MB in 1s (47.4 MB/s) Preconfiguring packages ... 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 ... 19898 files and directories currently installed.) @@ -450,7 +482,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/aide-0.19~dev20250316/ && 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~dev20250316-1_source.changes +I: user script /srv/workspace/pbuilder/804558/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for experimental +I: user script /srv/workspace/pbuilder/804558/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/aide-0.19~dev20250316/ && 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~dev20250316-1_source.changes dpkg-buildpackage: info: source package aide dpkg-buildpackage: info: source version 0.19~dev20250316-1 dpkg-buildpackage: info: source distribution experimental @@ -611,19 +647,8 @@ make all-am make[2]: Entering directory '/build/reproducible-path/aide-0.19~dev20250316' flex -osrc/conf_lex.c -Pconf src/conf_lex.l -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-aide.o `test -f 'src/aide.c' || echo './'`src/aide.c -src/conf_lex.l:574: multiple <> rules for start condition INITIAL -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-base64.o `test -f 'src/base64.c' || echo './'`src/base64.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-be.o `test -f 'src/be.c' || echo './'`src/be.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-commandconf.o `test -f 'src/commandconf.c' || echo './'`src/commandconf.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-attributes.o `test -f 'src/attributes.c' || echo './'`src/attributes.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-file.o `test -f 'src/file.c' || echo './'`src/file.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-report.o `test -f 'src/report.c' || echo './'`src/report.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-report_plain.o `test -f 'src/report_plain.c' || echo './'`src/report_plain.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-report_json.o `test -f 'src/report_json.c' || echo './'`src/report_json.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-conf_ast.o `test -f 'src/conf_ast.c' || echo './'`src/conf_ast.c -gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-conf_eval.o `test -f 'src/conf_eval.c' || echo './'`src/conf_eval.c gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-conf_yacc.o `test -f 'src/conf_yacc.c' || echo './'`src/conf_yacc.c +src/conf_lex.l:574: multiple <> rules for start condition INITIAL gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-db.o `test -f 'src/db.c' || echo './'`src/db.c gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-db_disk.o `test -f 'src/db_disk.c' || echo './'`src/db_disk.c gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-db_file.o `test -f 'src/db_file.c' || echo './'`src/db_file.c @@ -645,6 +670,17 @@ gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-url.o `test -f 'src/url.c' || echo './'`src/url.c gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-util.o `test -f 'src/util.c' || echo './'`src/util.c gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-e2fsattrs.o `test -f 'src/e2fsattrs.c' || echo './'`src/e2fsattrs.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-aide.o `test -f 'src/aide.c' || echo './'`src/aide.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-base64.o `test -f 'src/base64.c' || echo './'`src/base64.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-be.o `test -f 'src/be.c' || echo './'`src/be.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-commandconf.o `test -f 'src/commandconf.c' || echo './'`src/commandconf.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-attributes.o `test -f 'src/attributes.c' || echo './'`src/attributes.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-file.o `test -f 'src/file.c' || echo './'`src/file.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-report.o `test -f 'src/report.c' || echo './'`src/report.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-report_plain.o `test -f 'src/report_plain.c' || echo './'`src/report_plain.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-report_json.o `test -f 'src/report_json.c' || echo './'`src/report_json.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-conf_ast.o `test -f 'src/conf_ast.c' || echo './'`src/conf_ast.c +gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-conf_eval.o `test -f 'src/conf_eval.c' || echo './'`src/conf_eval.c gcc -DHAVE_CONFIG_H -I. -I./include -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/aide-conf_lex.o `test -f 'src/conf_lex.c' || echo './'`src/conf_lex.c gcc -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~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 aide src/aide-aide.o src/aide-base64.o src/aide-be.o src/aide-commandconf.o src/aide-attributes.o src/aide-file.o src/aide-report.o src/aide-report_plain.o src/aide-report_json.o src/aide-conf_ast.o src/aide-conf_eval.o src/aide-conf_lex.o src/aide-conf_yacc.o src/aide-db.o src/aide-db_disk.o src/aide-db_file.o src/aide-db_list.o src/aide-do_md.o src/aide-gen_list.o src/aide-getopt1.o src/aide-getopt.o src/aide-hashsum.o src/aide-rx_rule.o src/aide-list.o src/aide-log.o src/aide-md.o src/aide-queue.o src/aide-progress.o src/aide-seltree.o src/aide-symboltable.o src/aide-tree.o src/aide-url.o src/aide-util.o src/aide-e2fsattrs.o -lm -laudit -lcap -le2p -lnettle -lpcre2-8 -lacl -lpthread -lselinux -lattr -lz make[2]: Leaving directory '/build/reproducible-path/aide-0.19~dev20250316' @@ -657,9 +693,13 @@ make check_aide make[3]: Entering directory '/build/reproducible-path/aide-0.19~dev20250316' gcc -DHAVE_CONFIG_H -I. -I./include -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o tests/check_aide-check_hashsum.o `test -f 'tests/check_hashsum.c' || echo './'`tests/check_hashsum.c gcc -DHAVE_CONFIG_H -I. -I./include -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/check_aide-hashsum.o `test -f 'src/hashsum.c' || echo './'`src/hashsum.c +gcc -DHAVE_CONFIG_H -I. -I./include -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/check_aide-md.o `test -f 'src/md.c' || echo './'`src/md.c gcc -DHAVE_CONFIG_H -I. -I./include -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/check_aide-file.o `test -f 'src/file.c' || echo './'`src/file.c gcc -DHAVE_CONFIG_H -I. -I./include -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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,10 +709,6 @@ gcc -DHAVE_CONFIG_H -I. -I./include -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o src/check_aide-rx_rule.o `test -f 'src/rx_rule.c' || echo './'`src/rx_rule.c gcc -DHAVE_CONFIG_H -I. -I./include -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -pedantic -fPIE -DPIE -Wundef -Wmissing-format-attribute -Wshadow -Wlogical-op -c -o tests/check_aide-check_hashsum.o `test -f 'tests/check_hashsum.c' || echo './'`tests/check_hashsum.c -gcc -DHAVE_CONFIG_H -I. -I./include -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -Wdate-time -D_FORTIFY_SOURCE=2 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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 -I./include -pthread -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/aide-0.19~dev20250316=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -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_hashsum.o src/check_aide-hashsum.o tests/check_aide-check_seltree.o src/check_aide-seltree.o tests/check_aide-check_progress.o src/check_aide-md.o src/check_aide-file.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 -lnettle -lpcre2-8 make[3]: Leaving directory '/build/reproducible-path/aide-0.19~dev20250316' make check-TESTS @@ -682,27 +718,27 @@ progress seltree INFO: test_unrestricted_equal_rule - DEBUG: created root node '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) RULE: ┌ /: RULE: │ '=/dev (none) ' (check_seltree:0: 'n/a') RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -712,13 +748,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -726,8 +762,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -736,24 +772,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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' (0xaaaae80532f0)) + DEBUG: │ cache no rule match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02322f0)) 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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ (cache) no rule match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae80532f0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ (cache) no rule match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02322f0)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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 @@ -762,53 +798,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae80533e0)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac02323e0)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) RULE: ┌ /: RULE: ┝ /dev: RULE: │ '=/dev/ (none) ' (check_seltree:0: 'n/a') RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) RULE: │ node: '/dev': check equal list @@ -818,8 +854,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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 @@ -829,15 +865,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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' (0xaaaae8053380)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0232380)) RULE: │ no non-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) @@ -846,20 +882,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8053380)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae8053380)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0232380)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac0232380)) 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' (0xaaaae8053470)) + DEBUG: │ cache no rule match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0232470)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -867,18 +903,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8053560)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0232560)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -886,7 +922,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -895,14 +931,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -914,15 +950,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -933,8 +969,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -946,9 +982,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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) @@ -956,7 +992,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' (0xaaaae8053670)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0232670)) RULE: │ no non-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) @@ -968,10 +1004,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8053670)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae8053670)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0232670)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac0232670)) 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) @@ -980,9 +1016,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' (0xaaaae8053760)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0232760)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae8053670)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac0232670)) 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) @@ -990,7 +1026,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' (0xaaaae8055890)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac0234890)) RULE: │ no non-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) @@ -1003,7 +1039,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -1014,31 +1050,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055980)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac0234980)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055a70)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac0234a70)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055b60)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac0234b60)) RULE: │ no non-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) @@ -1049,9 +1085,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -1059,7 +1095,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -1068,14 +1104,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -1087,15 +1123,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -1106,8 +1142,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -1119,9 +1155,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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) @@ -1129,7 +1165,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' (0xaaaae80536f0)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02326f0)) RULE: │ no non-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) @@ -1141,10 +1177,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae80536f0)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae80536f0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02326f0)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac02326f0)) 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) @@ -1153,9 +1189,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' (0xaaaae8055870)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0234870)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae80536f0)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac02326f0)) 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) @@ -1163,7 +1199,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' (0xaaaae8055900)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac0234900)) RULE: │ no non-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) @@ -1176,7 +1212,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -1187,31 +1223,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae80559f0)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac02349f0)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055ae0)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac0234ae0)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055bd0)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac0234bd0)) RULE: │ no non-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) @@ -1222,9 +1258,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -1232,7 +1268,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -1241,14 +1277,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -1260,34 +1296,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -1298,31 +1334,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8053770)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac0232770)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055890)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac0234890)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055980)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac0234980)) RULE: │ no non-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) @@ -1333,9 +1369,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -1343,7 +1379,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -1352,14 +1388,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -1371,34 +1407,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -1409,31 +1445,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055870)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac0234870)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055920)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac0234920)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055a10)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac0234a10)) RULE: │ no non-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) @@ -1444,11 +1480,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) RULE: ┌ /: RULE: │ '!/dev (none)' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -1456,7 +1492,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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) @@ -1464,16 +1500,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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) @@ -1481,9 +1517,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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') @@ -1491,7 +1527,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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1503,8 +1539,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -1517,9 +1553,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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 @@ -1528,7 +1564,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' (0xaaaae80558b0)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02348b0)) RULE: │ no non-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) @@ -1541,10 +1577,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae80558b0)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae80558b0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02348b0)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac02348b0)) 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) @@ -1554,9 +1590,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' (0xaaaae80559a0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac02349a0)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae80558b0)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac02348b0)) 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 @@ -1565,7 +1601,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' (0xaaaae8055a90)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac0234a90)) RULE: │ no non-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) @@ -1579,7 +1615,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -1588,21 +1624,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055b60)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0234b60)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) RULE: ┌ /: RULE: │ '!/dev$ (none)' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -1610,7 +1646,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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) @@ -1618,16 +1654,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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) @@ -1635,9 +1671,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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') @@ -1645,7 +1681,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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1657,8 +1693,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -1671,9 +1707,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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 @@ -1682,7 +1718,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' (0xaaaae8055940)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234940)) RULE: │ no non-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) @@ -1695,10 +1731,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8055940)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae8055940)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234940)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac0234940)) 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) @@ -1708,9 +1744,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' (0xaaaae8055a30)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0234a30)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae8055940)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac0234940)) 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 @@ -1719,7 +1755,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' (0xaaaae8055b20)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac0234b20)) RULE: │ no non-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) @@ -1733,7 +1769,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -1742,21 +1778,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055bf0)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0234bf0)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) RULE: ┌ /: RULE: │ '-/dev (none)' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -1764,7 +1800,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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) @@ -1772,16 +1808,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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) @@ -1789,9 +1825,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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') @@ -1799,26 +1835,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' (0xaaaae804ce40)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -1827,21 +1863,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae80559c0)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac02349c0)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) RULE: ┌ /: RULE: │ '-/dev$ (none)' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -1849,7 +1885,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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) @@ -1857,16 +1893,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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) @@ -1874,9 +1910,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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') @@ -1884,26 +1920,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' (0xaaaae804ce40)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -1912,24 +1948,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055a30)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0234a30)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/.*/[0-9]' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/etc/deep/down/0' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep/down' (0xaaaae8055df0) - DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep' (0xaaaae8055d00) - DEBUG: set NODE_HAS_SUB_RULES for node '/etc' (0xaaaae8055c10) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep/down' (0xaaaac0234df0) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep' (0xaaaac0234d00) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc' (0xaaaac0234c10) RULE: ┌ /: RULE: ┝ /dev: RULE: │ '/dev/.*/[0-9] (none) ' (check_seltree:0: 'n/a') @@ -1940,34 +1976,34 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -1978,8 +2014,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -1990,16 +2026,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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' (0xaaaae8055f30)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234f30)) RULE: │ no non-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) @@ -2010,10 +2046,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8055f30)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae8055f30)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234f30)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac0234f30)) 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) @@ -2021,16 +2057,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' (0xaaaae8056020)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0235020)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae8055f30)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac0234f30)) 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' (0xaaaae8056110)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac0235110)) RULE: │ no non-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) @@ -2042,32 +2078,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ check '/etc' (filetype: d) - DEBUG: │ directory node '/etc' (0xaaaae8055c10) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/etc' (0xaaaac0234c10) 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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/etc' (0xaaaae8055c10)) - DEBUG: │ directory node '/etc' (0xaaaae8055c10) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/etc' (0xaaaac0234c10)) + DEBUG: │ directory node '/etc' (0xaaaac0234c10) 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' (0xaaaae8055c10)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac0234c10)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/etc/deep' (0xaaaae8055d00)) - DEBUG: │ directory node '/etc/deep' (0xaaaae8055d00) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/etc/deep' (0xaaaac0234d00)) + DEBUG: │ directory node '/etc/deep' (0xaaaac0234d00) 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' (0xaaaae8055d00)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac0234d00)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/etc/deep/down' (0xaaaae8055df0)) - DEBUG: │ directory node '/etc/deep/down' (0xaaaae8055df0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/etc/deep/down' (0xaaaac0234df0)) + DEBUG: │ directory node '/etc/deep/down' (0xaaaac0234df0) 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') @@ -2075,7 +2111,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' (0xaaaae8055df0)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac0234df0)) RULE: │ no non-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) @@ -2088,9 +2124,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/dev (none) ' (check_seltree:0: 'n/a') @@ -2098,7 +2134,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -2107,62 +2143,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache non-recursive negative match of parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) RULE: ┌ /: RULE: │ '=/dev d ' (check_seltree:0: 'n/a') RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -2172,13 +2208,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2186,8 +2222,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -2196,24 +2232,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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' (0xaaaae8055950)) + DEBUG: │ cache no rule match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234950)) 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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ (cache) no rule match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8055950)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ (cache) no rule match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234950)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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 @@ -2222,53 +2258,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055a40)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0234a40)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) RULE: ┌ /: RULE: ┝ /dev: RULE: │ '=/dev/ d ' (check_seltree:0: 'n/a') RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) RULE: │ node: '/dev': check equal list @@ -2278,8 +2314,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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 @@ -2289,15 +2325,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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' (0xaaaae80559b0)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02349b0)) RULE: │ no non-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) @@ -2306,20 +2342,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae80559b0)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae80559b0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02349b0)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac02349b0)) 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' (0xaaaae8055aa0)) + DEBUG: │ cache no rule match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0234aa0)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -2327,18 +2363,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055b90)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0234b90)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -2346,7 +2382,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -2355,14 +2391,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -2374,15 +2410,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2393,8 +2429,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -2406,9 +2442,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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) @@ -2416,7 +2452,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' (0xaaaae8055ca0)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234ca0)) RULE: │ no non-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) @@ -2428,10 +2464,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8055ca0)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae8055ca0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234ca0)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac0234ca0)) 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) @@ -2440,9 +2476,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' (0xaaaae8055d90)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0234d90)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae8055ca0)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac0234ca0)) 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) @@ -2450,7 +2486,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' (0xaaaae8055e80)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac0234e80)) RULE: │ no non-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) @@ -2463,7 +2499,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -2474,31 +2510,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055f70)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac0234f70)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8056060)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac0235060)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8056150)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac0235150)) RULE: │ no non-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) @@ -2509,9 +2545,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -2519,7 +2555,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -2528,14 +2564,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -2547,15 +2583,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/' skip equal list (reason: not on top level) @@ -2566,8 +2602,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -2579,9 +2615,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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) @@ -2589,7 +2625,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' (0xaaaae8055d20)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234d20)) RULE: │ no non-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) @@ -2601,10 +2637,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8055d20)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae8055d20)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234d20)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac0234d20)) 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) @@ -2613,9 +2649,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' (0xaaaae8055e10)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0234e10)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae8055d20)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac0234d20)) 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) @@ -2623,7 +2659,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' (0xaaaae8055f00)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac0234f00)) RULE: │ no non-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) @@ -2636,7 +2672,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -2647,31 +2683,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055ff0)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac0234ff0)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae80560e0)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac02350e0)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae80561d0)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac02351d0)) RULE: │ no non-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) @@ -2682,9 +2718,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -2692,7 +2728,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -2701,14 +2737,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -2720,34 +2756,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -2758,31 +2794,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055da0)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac0234da0)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055e90)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac0234e90)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055f80)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac0234f80)) RULE: │ no non-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) @@ -2793,9 +2829,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/ (none) ' (check_seltree:1: 'n/a') @@ -2803,7 +2839,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -2812,14 +2848,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-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) @@ -2831,34 +2867,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae804ce40)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -2869,31 +2905,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055e20)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac0234e20)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8055f10)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac0234f10)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaae804ec60)) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8056000)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac0235000)) RULE: │ no non-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) @@ -2904,11 +2940,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) RULE: ┌ /: RULE: │ '!/dev d' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -2916,7 +2952,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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) @@ -2924,16 +2960,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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) @@ -2941,9 +2977,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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') @@ -2951,7 +2987,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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -2963,8 +2999,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -2977,9 +3013,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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 @@ -2988,7 +3024,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' (0xaaaae8055e90)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234e90)) RULE: │ no non-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) @@ -3001,10 +3037,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8055e90)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae8055e90)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0234e90)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac0234e90)) 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) @@ -3014,9 +3050,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' (0xaaaae8055f80)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0234f80)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae8055e90)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac0234e90)) 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 @@ -3025,7 +3061,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' (0xaaaae8056070)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac0235070)) RULE: │ no non-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) @@ -3039,7 +3075,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -3048,21 +3084,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8056140)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0235140)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) RULE: ┌ /: RULE: │ '!/dev$ d' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -3070,7 +3106,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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) @@ -3078,16 +3114,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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) @@ -3095,9 +3131,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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') @@ -3105,7 +3141,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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -3117,8 +3153,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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) @@ -3131,9 +3167,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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 @@ -3142,7 +3178,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' (0xaaaae8056ec0)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0235ec0)) RULE: │ no non-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) @@ -3155,10 +3191,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae8056ec0)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae8056ec0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac0235ec0)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac0235ec0)) 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) @@ -3168,9 +3204,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' (0xaaaae8056fb0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac0235fb0)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae8056ec0)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac0235ec0)) 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 @@ -3179,7 +3215,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' (0xaaaae80570a0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac02360a0)) RULE: │ no non-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) @@ -3193,7 +3229,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -3202,21 +3238,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8057170)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0236170)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) RULE: ┌ /: RULE: │ '-/dev d' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -3224,7 +3260,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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) @@ -3232,16 +3268,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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) @@ -3249,9 +3285,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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') @@ -3259,26 +3295,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' (0xaaaae804ce40)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -3287,21 +3323,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8056f60)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0235f60)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev$' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/pts' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) RULE: ┌ /: RULE: │ '-/dev$ d' (check_seltree:0: 'n/a') RULE: ┝ /dev: @@ -3309,7 +3345,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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) @@ -3317,16 +3353,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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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) @@ -3334,9 +3370,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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') @@ -3344,26 +3380,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' (0xaaaae804ce40)) + DEBUG: │ cache non-recursive negative match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) - RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ (cache) negative match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) 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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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) @@ -3372,24 +3408,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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/' (0xaaaac022dc60)) 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' (0xaaaae8056fe0)) + DEBUG: │ cache no rule match of parent directory '/etc' (node: '/etc' (0xaaaac0235fe0)) 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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev/.*/[0-9]' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaae804ce40) - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/dev' (0xaaaac022be40) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/etc/deep/down/0' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep/down' (0xaaaae80573a0) - DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep' (0xaaaae80572b0) - DEBUG: set NODE_HAS_SUB_RULES for node '/etc' (0xaaaae80571c0) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep/down' (0xaaaac02363a0) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc/deep' (0xaaaac02362b0) + DEBUG: set NODE_HAS_SUB_RULES for node '/etc' (0xaaaac02361c0) RULE: ┌ /: RULE: ┝ /dev: RULE: │ '/dev/.*/[0-9] b ' (check_seltree:0: 'n/a') @@ -3400,34 +3436,34 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache positive match of parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ no non-recurse match found for parent directory '/' RULE: │ check '/dev' (filetype: d) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ directory node '/dev' (0xaaaae804ce40) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/dev' for non-recurse match (node: '/dev' (0xaaaac022be40)) + DEBUG: │ directory node '/dev' (0xaaaac022be40) 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' (0xaaaae804ce40)) + DEBUG: │ cache positive match of parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ no non-recurse match found for parent directory '/dev' RULE: │ check '/dev/sda' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) @@ -3438,8 +3474,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) RULE: │ check '/dev/pts' (filetype: b) DEBUG: │ node: '/dev': skip equal list (reason: list is empty) RULE: │ node: '/dev': check selective list @@ -3449,16 +3485,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaae804ce40)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + RULE: │ check parent directory '/dev/pts' for non-recurse match (node: '/dev' (0xaaaac022be40)) 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' (0xaaaae80574e0)) + DEBUG: │ cache positive match of parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02364e0)) RULE: │ no non-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) @@ -3469,10 +3505,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: '/' (0xaaaae804ec60)) - DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaae804ce40)) - DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaae80574e0)) - RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaae80574e0)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + DEBUG: │ (cache) positive match for parent directory '/dev' (node: '/dev' (0xaaaac022be40)) + DEBUG: │ (cache) positive match for parent directory '/dev/pts' (node: '/dev/pts' (0xaaaac02364e0)) + RULE: │ check parent directory '/dev/pts/deep' for non-recurse match (node: '/dev/pts' (0xaaaac02364e0)) 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) @@ -3480,16 +3516,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' (0xaaaae80575d0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep' (node: '/dev/pts/deep' (0xaaaac02365d0)) RULE: │ no non-recurse match found for parent directory '/dev/pts/deep' - RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaae80574e0)) + RULE: │ check parent directory '/dev/pts/deep/down' for non-recurse match (node: '/dev/pts' (0xaaaac02364e0)) 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' (0xaaaae80576c0)) + DEBUG: │ cache positive match of parent directory '/dev/pts/deep/down' (node: '/dev/pts/deep/down' (0xaaaac02366c0)) RULE: │ no non-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) @@ -3501,32 +3537,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: '/' (0xaaaae804ec60)) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) RULE: │ check '/etc' (filetype: d) - DEBUG: │ directory node '/etc' (0xaaaae80571c0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/etc' (0xaaaac02361c0) 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: '/' (0xaaaae804ec60)) - RULE: │ check parent directory '/etc' for non-recurse match (node: '/etc' (0xaaaae80571c0)) - DEBUG: │ directory node '/etc' (0xaaaae80571c0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ (cache) positive match for parent directory '/' (node: '/' (0xaaaac022dc60)) + RULE: │ check parent directory '/etc' for non-recurse match (node: '/etc' (0xaaaac02361c0)) + DEBUG: │ directory node '/etc' (0xaaaac02361c0) 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' (0xaaaae80571c0)) + DEBUG: │ cache positive match of parent directory '/etc' (node: '/etc' (0xaaaac02361c0)) RULE: │ no non-recurse match found for parent directory '/etc' - RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/etc/deep' (0xaaaae80572b0)) - DEBUG: │ directory node '/etc/deep' (0xaaaae80572b0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/etc/deep' for non-recurse match (node: '/etc/deep' (0xaaaac02362b0)) + DEBUG: │ directory node '/etc/deep' (0xaaaac02362b0) 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' (0xaaaae80572b0)) + DEBUG: │ cache positive match of parent directory '/etc/deep' (node: '/etc/deep' (0xaaaac02362b0)) RULE: │ no non-recurse match found for parent directory '/etc/deep' - RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/etc/deep/down' (0xaaaae80573a0)) - DEBUG: │ directory node '/etc/deep/down' (0xaaaae80573a0) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/etc/deep/down' for non-recurse match (node: '/etc/deep/down' (0xaaaac02363a0)) + DEBUG: │ directory node '/etc/deep/down' (0xaaaac02363a0) 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') @@ -3534,7 +3570,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' (0xaaaae80573a0)) + DEBUG: │ cache positive match of parent directory '/etc/deep/down' (node: '/etc/deep/down' (0xaaaac02363a0)) RULE: │ no non-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) @@ -3547,9 +3583,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 '/' (0xaaaae804ec60) + DEBUG: created root node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/dev' successful - DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaae804ec60) + DEBUG: set NODE_HAS_SUB_RULES for node '/' (0xaaaac022dc60) DEBUG: JIT compilation for regex '/' successful RULE: ┌ /: RULE: │ '/dev b ' (check_seltree:0: 'n/a') @@ -3557,7 +3593,7 @@ RULE: └ RULE: ┬ check '/' (filetype: d) RULE: │ check '/' (filetype: d) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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') @@ -3566,50 +3602,50 @@ 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 non-recurse match (node: '/' (0xaaaae804ec60)) - DEBUG: │ directory node '/' (0xaaaae804ec60) has NODE_HAS_SUB_RULES set (set default match result to RESULT_PARTIAL_MATCH) + RULE: │ check parent directory '/' for non-recurse match (node: '/' (0xaaaac022dc60)) + DEBUG: │ directory node '/' (0xaaaac022dc60) 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: '/' (0xaaaae804ec60)) + DEBUG: │ cache non-recursive negative match of parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) 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: '/' (0xaaaae804ec60)) + RULE: │ (cache) negative match for parent directory '/' (node: '/' (0xaaaac022dc60)) DEBUG: │ check_selree: match result RESULT_NEGATIVE_PARENT_MATCH (256) for '/etc/deep/down/0' RULE: ┴ result: RESULT_NEGATIVE_PARENT_MATCH hashsum - DEBUG: > initialized md_container: md5+sha1+rmd160+gost+sha256+sha512+stribog256+stribog512+sha512_256+sha3_256+sha3_512 (0xfffff9af1e18) - DEBUG: > copy hashsums from md_container (0xfffff9af1e18) - DEBUG: > free md_container (0xfffff9af1e18) - DEBUG: > initialized md_container: md5+sha1+rmd160+gost+sha256+sha512+stribog256+stribog512+sha512_256+sha3_256+sha3_512 (0xfffff9af1e18) - DEBUG: > copy hashsums from md_container (0xfffff9af1e18) - DEBUG: > free md_container (0xfffff9af1e18) - DEBUG: > initialized md_container: md5+sha1+rmd160+gost+sha256+sha512+stribog256+stribog512+sha512_256+sha3_256+sha3_512 (0xfffff9af1e18) - DEBUG: > copy hashsums from md_container (0xfffff9af1e18) - DEBUG: > free md_container (0xfffff9af1e18) + DEBUG: > initialized md_container: md5+sha1+rmd160+gost+sha256+sha512+stribog256+stribog512+sha512_256+sha3_256+sha3_512 (0xffffc7dff1b8) + DEBUG: > copy hashsums from md_container (0xffffc7dff1b8) + DEBUG: > free md_container (0xffffc7dff1b8) + DEBUG: > initialized md_container: md5+sha1+rmd160+gost+sha256+sha512+stribog256+stribog512+sha512_256+sha3_256+sha3_512 (0xffffc7dff1b8) + DEBUG: > copy hashsums from md_container (0xffffc7dff1b8) + DEBUG: > free md_container (0xffffc7dff1b8) + DEBUG: > initialized md_container: md5+sha1+rmd160+gost+sha256+sha512+stribog256+stribog512+sha512_256+sha3_256+sha3_512 (0xffffc7dff1b8) + DEBUG: > copy hashsums from md_container (0xffffc7dff1b8) + DEBUG: > free md_container (0xffffc7dff1b8) 100%: Checks: 166, Failures: 0, Errors: 0 PASS: check_aide ============= @@ -3663,21 +3699,21 @@ dh_makeshlibs -a dh_shlibdeps -a dpkg-shlibdeps: warning: diversions involved - output may be incorrect - diversion by libc6 from: /lib/ld-linux-aarch64.so.1 -dpkg-shlibdeps: warning: diversions involved - output may be incorrect - diversion by libc6 to: /lib/ld-linux-aarch64.so.1.usr-is-merged -dpkg-shlibdeps: warning: diversions involved - output may be incorrect diversion by libext2fs2t64 from: /lib/aarch64-linux-gnu/libe2p.so.2 dpkg-shlibdeps: warning: diversions involved - output may be incorrect diversion by libext2fs2t64 to: /lib/aarch64-linux-gnu/libe2p.so.2.usr-is-merged +dpkg-shlibdeps: warning: diversions involved - output may be incorrect + diversion by libc6 from: /lib/ld-linux-aarch64.so.1 +dpkg-shlibdeps: warning: diversions involved - output may be incorrect + diversion by libc6 to: /lib/ld-linux-aarch64.so.1.usr-is-merged dh_installdeb dh_gencontrol dh_md5sums dh_builddeb -dpkg-deb: building package 'aide' in '../aide_0.19~dev20250316-1_arm64.deb'. +dpkg-deb: building package 'aide-dynamic' in '../aide-dynamic_0.19~dev20250316-1_all.deb'. dpkg-deb: building package 'aide-dbgsym' in '../aide-dbgsym_0.19~dev20250316-1_arm64.deb'. dpkg-deb: building package 'aide-common' in '../aide-common_0.19~dev20250316-1_all.deb'. -dpkg-deb: building package 'aide-dynamic' in '../aide-dynamic_0.19~dev20250316-1_all.deb'. +dpkg-deb: building package 'aide' in '../aide_0.19~dev20250316-1_arm64.deb'. dpkg-genbuildinfo --build=binary -O../aide_0.19~dev20250316-1_arm64.buildinfo dpkg-genchanges --build=binary -O../aide_0.19~dev20250316-1_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -3685,12 +3721,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/804558/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/804558/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/1619352 and its subdirectories -I: Current time: Mon Mar 17 06:03:18 -12 2025 -I: pbuilder-time-stamp: 1742234598 +I: removing directory /srv/workspace/pbuilder/804558 and its subdirectories +I: Current time: Mon Apr 20 14:29:13 +14 2026 +I: pbuilder-time-stamp: 1776644953