summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2015-09-05 18:36:23 +0000
committerdim <dim@FreeBSD.org>2015-09-05 18:36:23 +0000
commitfe74670889cf92661ccb26dc6bd31e8227b41594 (patch)
treec2636bec23985b92b33023a5ca2e324f89604bfa /tools
parent3cb87c6fdcce3fa2b08afc959741598eb31a8a5c (diff)
parent127f7b062779965375aa7d373ab56614a5d13f16 (diff)
downloadFreeBSD-src-fe74670889cf92661ccb26dc6bd31e8227b41594.zip
FreeBSD-src-fe74670889cf92661ccb26dc6bd31e8227b41594.tar.gz
Merge ^/head r286858 through r287489.
Diffstat (limited to 'tools')
-rw-r--r--tools/regression/acltools/tools-crossfs.test40
-rw-r--r--tools/regression/acltools/tools-nfs4-psarc.test406
-rw-r--r--tools/regression/acltools/tools-nfs4-trivial.test28
-rw-r--r--tools/regression/acltools/tools-nfs4.test860
-rw-r--r--tools/regression/lib/libc/gen/test-wordexp.c9
-rw-r--r--tools/regression/lib/msun/test-cexp.c14
-rw-r--r--tools/regression/lib/msun/test-csqrt.c10
-rw-r--r--tools/regression/lib/msun/test-invtrig.c2
-rw-r--r--tools/regression/lib/msun/test-trig.c10
-rw-r--r--tools/regression/p1003_1b/main.c11
-rw-r--r--tools/tools/ath/athaggrstats/athaggrstats.c6
-rw-r--r--tools/tools/ath/athaggrstats/main.c12
-rw-r--r--tools/tools/ath/athdebug/athdebug.c17
-rw-r--r--tools/tools/ath/athrd/athrd.c34
-rw-r--r--tools/tools/ath/athstats/athstats.c13
-rw-r--r--tools/tools/ath/athstats/main.c12
-rw-r--r--tools/tools/ath/common/ah_osdep.h2
-rw-r--r--tools/tools/ath/common/dumpregs_5210.c7
-rw-r--r--tools/tools/ath/common/dumpregs_5211.c7
-rw-r--r--tools/tools/ath/common/dumpregs_5212.c7
-rw-r--r--tools/tools/ath/common/dumpregs_5416.c7
-rw-r--r--tools/tools/crypto/cryptostats.c10
-rw-r--r--tools/tools/crypto/cryptotest.c30
-rw-r--r--tools/tools/crypto/hifnstats.c9
-rw-r--r--tools/tools/crypto/ipsecstats.c18
-rw-r--r--tools/tools/crypto/safestats.c9
-rw-r--r--tools/tools/crypto/ubsecstats.c9
-rw-r--r--tools/tools/cxgbetool/cxgbetool.c36
-rw-r--r--tools/tools/ioat/Makefile8
-rw-r--r--tools/tools/ioat/ioatcontrol.875
-rw-r--r--tools/tools/ioat/ioatcontrol.c70
-rw-r--r--tools/tools/iwn/iwnstats/iwn_ioctl.c20
-rw-r--r--tools/tools/iwn/iwnstats/iwn_ioctl.h1
-rw-r--r--tools/tools/iwn/iwnstats/iwnstats.h1
-rw-r--r--tools/tools/iwn/iwnstats/main.c21
-rw-r--r--tools/tools/mwl/mwldebug/mwldebug.c18
-rw-r--r--tools/tools/mwl/mwlstats/mwlstats.c17
-rwxr-xr-xtools/tools/nanobsd/defaults.sh51
-rw-r--r--tools/tools/nanobsd/pcengines/common.conf2
-rw-r--r--tools/tools/nanobsd/rescue/common2
-rw-r--r--tools/tools/net80211/wlanstats/main.c15
-rw-r--r--tools/tools/net80211/wlanstats/wlanstats.c23
-rw-r--r--tools/tools/net80211/wlantxtime/wlantxtime.c11
-rw-r--r--tools/tools/npe/npestats/main.c10
-rw-r--r--tools/tools/npe/npestats/npestats.c11
-rw-r--r--tools/tools/sysbuild/sysbuild.sh21
46 files changed, 1065 insertions, 947 deletions
diff --git a/tools/regression/acltools/tools-crossfs.test b/tools/regression/acltools/tools-crossfs.test
index 498fba5..1f59637 100644
--- a/tools/regression/acltools/tools-crossfs.test
+++ b/tools/regression/acltools/tools-crossfs.test
@@ -43,9 +43,9 @@ $ umask 022
$ touch nfs4/xxx
$ getfacl -nq nfs4/xxx
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ touch posix/xxx
$ getfacl -nq posix/xxx
@@ -96,10 +96,10 @@ $ ls -l posix/xxx | cut -d' ' -f1
$ mv posix/yyy nfs4/xxx
> mv: failed to set acl entries for nfs4/xxx: Invalid argument
$ getfacl -nq nfs4/xxx
-> owner@:-wxp----------:------:deny
-> owner@:r-----aARWcCos:------:allow
-> group@:rwxp--a-R-c--s:------:allow
-> everyone@:rw-p--a-R-c--s:------:allow
+> owner@:-wxp----------:-------:deny
+> owner@:r-----aARWcCos:-------:allow
+> group@:rwxp--a-R-c--s:-------:allow
+> everyone@:rw-p--a-R-c--s:-------:allow
$ ls -l nfs4/xxx | cut -d' ' -f1
> -r--rwxrw-
@@ -110,11 +110,11 @@ $ touch nfs4/xxx
$ setfacl -a0 u:42:x:allow,g:43:w:allow nfs4/xxx
$ mv nfs4/xxx nfs4/yyy
$ getfacl -nq nfs4/yyy
-> user:42:--x-----------:------:allow
-> group:43:-w------------:------:allow
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:--x-----------:-------:allow
+> group:43:-w------------:-------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ ls -l nfs4/yyy | cut -d' ' -f1
> -rw-r--r--+
@@ -261,14 +261,14 @@ $ chmod 543 nfs4/xxx
$ setfacl -a0 u:42:x:allow,g:43:w:allow nfs4/xxx
$ cp -p nfs4/xxx nfs4/yyy
$ getfacl -nq nfs4/yyy
-> user:42:--x-----------:------:allow
-> group:43:-w------------:------:allow
-> owner@:--x-----------:------:allow
-> owner@:-w-p----------:------:deny
-> group@:-wxp----------:------:deny
-> owner@:r-x---aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:-wxp--a-R-c--s:------:allow
+> user:42:--x-----------:-------:allow
+> group:43:-w------------:-------:allow
+> owner@:--x-----------:-------:allow
+> owner@:-w-p----------:-------:deny
+> group@:-wxp----------:-------:deny
+> owner@:r-x---aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:-wxp--a-R-c--s:-------:allow
$ ls -l nfs4/yyy | cut -d' ' -f1
> -r-xr---wx+
diff --git a/tools/regression/acltools/tools-nfs4-psarc.test b/tools/regression/acltools/tools-nfs4-psarc.test
index e1e8ffc..9ab0b51 100644
--- a/tools/regression/acltools/tools-nfs4-psarc.test
+++ b/tools/regression/acltools/tools-nfs4-psarc.test
@@ -42,14 +42,14 @@ $ getfacl xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ getfacl -q xxx
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
# Check verbose mode formatting.
$ getfacl -v xxx
@@ -66,11 +66,11 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Test user and group name resolving.
$ rm xxx
@@ -80,11 +80,11 @@ $ getfacl xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> user:root:-----------C--:------:allow
-> group:daemon:----------c---:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> user:root:-----------C--:-------:allow
+> group:daemon:----------c---:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Check whether ls correctly marks files with "+".
$ ls -l xxx | cut -d' ' -f1
@@ -96,10 +96,10 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:rw-p--aARWcCos:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Test setfacl -m.
$ setfacl -a0 everyone@:rwx:deny xxx
@@ -110,26 +110,26 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> owner@:rw-p--aARWcCos:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> owner@:rw-p--aARWcCos:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Test getfacl -i.
$ getfacl -i xxx
> # file: xxx
> # owner: root
> # group: wheel
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> owner@:rw-p--aARWcCos:------:allow
-> user:root:-----------C--:------:allow:0
-> group:daemon:----------c---:------:deny:1
-> everyone@:r-----a-R-c--s:------:allow
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> owner@:rw-p--aARWcCos:-------:allow
+> user:root:-----------C--:-------:allow:0
+> group:daemon:----------c---:-------:deny:1
+> everyone@:r-----a-R-c--s:-------:allow
# Make sure cp without any flags does not copy copy the ACL.
$ cp xxx yyy
@@ -143,13 +143,13 @@ $ getfacl -n yyy
> # file: yyy
> # owner: root
> # group: wheel
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> owner@:rw-p--aARWcCos:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> owner@:rw-p--aARWcCos:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ rm yyy
@@ -159,10 +159,10 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:rw-p--aARWcCos:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Test setfacl -b.
$ setfacl -b xxx
@@ -170,9 +170,9 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> -rw-r--r--
@@ -196,23 +196,23 @@ $ ls -l nnn xxx yyy zzz | cut -d' ' -f1
$ getfacl -nq nnn xxx yyy zzz
> getfacl: nnn: stat() failed: No such file or directory
-> user:42:--x-----------:------:allow
-> group:43:-w------------:------:allow
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:--x-----------:-------:allow
+> group:43:-w------------:-------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
>
-> user:42:--x-----------:------:allow
-> group:43:-w------------:------:allow
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:--x-----------:-------:allow
+> group:43:-w------------:-------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
>
-> user:42:--x-----------:------:allow
-> group:43:-w------------:------:allow
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:--x-----------:-------:allow
+> group:43:-w------------:-------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ setfacl -b nnn xxx yyy zzz
> setfacl: nnn: stat() failed: No such file or directory
@@ -233,9 +233,9 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:rw-p--aARWcCos:------:allow
-> group@:------a-R-c--s:------:allow
-> everyone@:------a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:------a-R-c--s:-------:allow
+> everyone@:------a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> -rw-------
@@ -249,9 +249,9 @@ $ getfacl -n xxx
> # file: xxx
> # owner: 42
> # group: wheel
-> owner@:rw-p--aARWcCos:------:allow
-> group@:------a-R-c--s:------:allow
-> everyone@:------a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:------a-R-c--s:-------:allow
+> everyone@:------a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> -rw-------
@@ -264,11 +264,11 @@ $ getfacl -n xxx
> # file: xxx
> # owner: 43
> # group: wheel
-> owner@:rw-p----------:------:deny
-> group@:r-------------:------:deny
-> owner@:--x---aARWcCos:------:allow
-> group@:-w-p--a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p----------:-------:deny
+> group@:r-------------:-------:deny
+> owner@:--x---aARWcCos:-------:allow
+> group@:-w-p--a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> ---x-w-r--
@@ -281,11 +281,11 @@ $ getfacl -n xxx
> # file: xxx
> # owner: 43
> # group: wheel
-> owner@:-wxp----------:------:deny
-> group@:-w-p----------:------:deny
-> owner@:r-----aARWcCos:------:allow
-> group@:--x---a-R-c--s:------:allow
-> everyone@:-w-p--a-R-c--s:------:allow
+> owner@:-wxp----------:-------:deny
+> group@:-w-p----------:-------:deny
+> owner@:r-----aARWcCos:-------:allow
+> group@:--x---a-R-c--s:-------:allow
+> everyone@:-w-p--a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> -r----x-w-
@@ -298,23 +298,23 @@ $ getfacl -n ddd
> # file: ddd
> # owner: root
> # group: wheel
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:-d----:allow
-> group:43:-w--D---------:-d----:deny
-> group@:-----da-------:------:allow
-> group:44:rw-p-da-------:------:allow
-> owner@:rwxp--aARWcCos:------:allow
-> group@:r-x---a-R-c--s:------:allow
-> everyone@:-w-p--a-R-c--s:f-i---:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-d-----:allow
+> group:43:-w--D---------:-d-----:deny
+> group@:-----da-------:-------:allow
+> group:44:rw-p-da-------:-------:allow
+> owner@:rwxp--aARWcCos:-------:allow
+> group@:r-x---a-R-c--s:-------:allow
+> everyone@:-w-p--a-R-c--s:f-i----:allow
$ chmod 777 ddd
$ getfacl -n ddd
> # file: ddd
> # owner: root
> # group: wheel
-> owner@:rwxp--aARWcCos:------:allow
-> group@:rwxp--a-R-c--s:------:allow
-> everyone@:rwxp--a-R-c--s:------:allow
+> owner@:rwxp--aARWcCos:-------:allow
+> group@:rwxp--a-R-c--s:-------:allow
+> everyone@:rwxp--a-R-c--s:-------:allow
# Test applying ACL to mode.
$ rmdir ddd
@@ -360,104 +360,104 @@ $ setfacl -a0 user:42:write_acl/write_owner:fi:allow ddd
$ setfacl -a0 group:41:read_data/read_attributes:dni:allow ddd
$ setfacl -a0 user:41:write_data/write_attributes:fn:allow ddd
$ getfacl -qn ddd
-> user:41:-w-----A------:f--n--:allow
-> group:41:r-----a-------:-din--:allow
-> user:42:-----------Co-:f-i---:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:-d-n--:deny
-> group:43:-w---------C--:f-in--:deny
-> user:43:rwxp----------:------:allow
-> owner@:rwxp--aARWcCos:------:allow
-> group@:r-x---a-R-c--s:------:allow
-> everyone@:r-x---a-R-c--s:------:allow
+> user:41:-w-----A------:f--n---:allow
+> group:41:r-----a-------:-din---:allow
+> user:42:-----------Co-:f-i----:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-d-n---:deny
+> group:43:-w---------C--:f-in---:deny
+> user:43:rwxp----------:-------:allow
+> owner@:rwxp--aARWcCos:-------:allow
+> group@:r-x---a-R-c--s:-------:allow
+> everyone@:r-x---a-R-c--s:-------:allow
$ cd ddd
$ touch xxx
$ getfacl -qn xxx
-> user:41:--------------:------:allow
-> user:42:--------------:------:allow
-> user:42:r-------------:------:allow
-> group:43:-w---------C--:------:deny
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> user:41:--------------:------I:allow
+> user:42:--------------:------I:allow
+> user:42:r-------------:------I:allow
+> group:43:-w---------C--:------I:deny
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ rm xxx
$ umask 077
$ touch xxx
$ getfacl -qn xxx
-> user:41:--------------:------:allow
-> user:42:--------------:------:allow
-> user:42:--------------:------:allow
-> group:43:-w---------C--:------:deny
-> owner@:rw-p--aARWcCos:------:allow
-> group@:------a-R-c--s:------:allow
-> everyone@:------a-R-c--s:------:allow
+> user:41:--------------:------I:allow
+> user:42:--------------:------I:allow
+> user:42:--------------:------I:allow
+> group:43:-w---------C--:------I:deny
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:------a-R-c--s:-------:allow
+> everyone@:------a-R-c--s:-------:allow
$ rm xxx
$ umask 770
$ touch xxx
$ getfacl -qn xxx
-> owner@:rw-p----------:------:deny
-> group@:rw-p----------:------:deny
-> user:41:--------------:------:allow
-> user:42:--------------:------:allow
-> user:42:--------------:------:allow
-> group:43:-w---------C--:------:deny
-> owner@:------aARWcCos:------:allow
-> group@:------a-R-c--s:------:allow
-> everyone@:rw-p--a-R-c--s:------:allow
+> owner@:rw-p----------:-------:deny
+> group@:rw-p----------:-------:deny
+> user:41:--------------:------I:allow
+> user:42:--------------:------I:allow
+> user:42:--------------:------I:allow
+> group:43:-w---------C--:------I:deny
+> owner@:------aARWcCos:-------:allow
+> group@:------a-R-c--s:-------:allow
+> everyone@:rw-p--a-R-c--s:-------:allow
$ rm xxx
$ umask 707
$ touch xxx
$ getfacl -qn xxx
-> owner@:rw-p----------:------:deny
-> user:41:-w------------:------:allow
-> user:42:--------------:------:allow
-> user:42:r-------------:------:allow
-> group:43:-w---------C--:------:deny
-> owner@:------aARWcCos:------:allow
-> group@:rw-p--a-R-c--s:------:allow
-> everyone@:------a-R-c--s:------:allow
+> owner@:rw-p----------:-------:deny
+> user:41:-w------------:------I:allow
+> user:42:--------------:------I:allow
+> user:42:r-------------:------I:allow
+> group:43:-w---------C--:------I:deny
+> owner@:------aARWcCos:-------:allow
+> group@:rw-p--a-R-c--s:-------:allow
+> everyone@:------a-R-c--s:-------:allow
$ umask 077
$ mkdir yyy
$ getfacl -qn yyy
-> group:41:------a-------:------:allow
-> user:42:-----------Co-:f-i---:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:------:deny
-> owner@:rwxp--aARWcCos:------:allow
-> group@:------a-R-c--s:------:allow
-> everyone@:------a-R-c--s:------:allow
+> group:41:------a-------:------I:allow
+> user:42:-----------Co-:f-i---I:allow
+> user:42:r-x-----------:f-i---I:allow
+> group:42:-w--D---------:------I:deny
+> owner@:rwxp--aARWcCos:-------:allow
+> group@:------a-R-c--s:-------:allow
+> everyone@:------a-R-c--s:-------:allow
$ rmdir yyy
$ umask 770
$ mkdir yyy
$ getfacl -qn yyy
-> owner@:rwxp----------:------:deny
-> group@:rwxp----------:------:deny
-> group:41:------a-------:------:allow
-> user:42:-----------Co-:f-i---:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:------:deny
-> owner@:------aARWcCos:------:allow
-> group@:------a-R-c--s:------:allow
-> everyone@:rwxp--a-R-c--s:------:allow
+> owner@:rwxp----------:-------:deny
+> group@:rwxp----------:-------:deny
+> group:41:------a-------:------I:allow
+> user:42:-----------Co-:f-i---I:allow
+> user:42:r-x-----------:f-i---I:allow
+> group:42:-w--D---------:------I:deny
+> owner@:------aARWcCos:-------:allow
+> group@:------a-R-c--s:-------:allow
+> everyone@:rwxp--a-R-c--s:-------:allow
$ rmdir yyy
$ umask 707
$ mkdir yyy
$ getfacl -qn yyy
-> owner@:rwxp----------:------:deny
-> group:41:r-----a-------:------:allow
-> user:42:-----------Co-:f-i---:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:------:deny
-> owner@:------aARWcCos:------:allow
-> group@:rwxp--a-R-c--s:------:allow
-> everyone@:------a-R-c--s:------:allow
+> owner@:rwxp----------:-------:deny
+> group:41:r-----a-------:------I:allow
+> user:42:-----------Co-:f-i---I:allow
+> user:42:r-x-----------:f-i---I:allow
+> group:42:-w--D---------:------I:deny
+> owner@:------aARWcCos:-------:allow
+> group@:rwxp--a-R-c--s:-------:allow
+> everyone@:------a-R-c--s:-------:allow
# There is some complication regarding how write_acl and write_owner flags
# get inherited. Make sure we got it right.
@@ -478,34 +478,34 @@ $ umask 022
$ rm xxx
$ touch xxx
$ getfacl -nq xxx
-> user:53:--------------:------:allow
-> user:51:--------------:------:allow
-> user:50:--------------:------:allow
-> user:48:--------------:------:allow
-> user:47:--------------:------:allow
-> user:45:--------------:------:allow
-> user:44:--------------:------:allow
-> user:42:--------------:------:allow
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> user:53:--------------:------I:allow
+> user:51:--------------:------I:allow
+> user:50:--------------:------I:allow
+> user:48:--------------:------I:allow
+> user:47:--------------:------I:allow
+> user:45:--------------:------I:allow
+> user:44:--------------:------I:allow
+> user:42:--------------:------I:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ rmdir yyy
$ mkdir yyy
$ getfacl -nq yyy
-> user:53:--------------:------:allow
-> user:52:--------------:------:allow
-> user:50:--------------:------:allow
-> user:49:--------------:------:allow
-> user:47:--------------:fd----:allow
-> user:46:--------------:-d----:allow
-> user:45:-----------Co-:f-i---:allow
-> user:44:--------------:fd----:allow
-> user:43:--------------:-d----:allow
-> user:42:-----------Co-:f-i---:allow
-> owner@:rwxp--aARWcCos:------:allow
-> group@:r-x---a-R-c--s:------:allow
-> everyone@:r-x---a-R-c--s:------:allow
+> user:53:--------------:------I:allow
+> user:52:--------------:------I:allow
+> user:50:--------------:------I:allow
+> user:49:--------------:------I:allow
+> user:47:--------------:fd----I:allow
+> user:46:--------------:-d----I:allow
+> user:45:-----------Co-:f-i---I:allow
+> user:44:--------------:fd----I:allow
+> user:43:--------------:-d----I:allow
+> user:42:-----------Co-:f-i---I:allow
+> owner@:rwxp--aARWcCos:-------:allow
+> group@:r-x---a-R-c--s:-------:allow
+> everyone@:r-x---a-R-c--s:-------:allow
$ setfacl -b .
$ setfacl -a0 u:42:Co:f:deny .
@@ -524,34 +524,34 @@ $ umask 022
$ rm xxx
$ touch xxx
$ getfacl -nq xxx
-> user:53:-----------Co-:------:deny
-> user:51:-----------Co-:------:deny
-> user:50:-----------Co-:------:deny
-> user:48:-----------Co-:------:deny
-> user:47:-----------Co-:------:deny
-> user:45:-----------Co-:------:deny
-> user:44:-----------Co-:------:deny
-> user:42:-----------Co-:------:deny
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> user:53:-----------Co-:------I:deny
+> user:51:-----------Co-:------I:deny
+> user:50:-----------Co-:------I:deny
+> user:48:-----------Co-:------I:deny
+> user:47:-----------Co-:------I:deny
+> user:45:-----------Co-:------I:deny
+> user:44:-----------Co-:------I:deny
+> user:42:-----------Co-:------I:deny
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
$ rmdir yyy
$ mkdir yyy
$ getfacl -nq yyy
-> user:53:-----------Co-:------:deny
-> user:52:-----------Co-:------:deny
-> user:50:-----------Co-:------:deny
-> user:49:-----------Co-:------:deny
-> user:47:-----------Co-:fd----:deny
-> user:46:-----------Co-:-d----:deny
-> user:45:-----------Co-:f-i---:deny
-> user:44:-----------Co-:fd----:deny
-> user:43:-----------Co-:-d----:deny
-> user:42:-----------Co-:f-i---:deny
-> owner@:rwxp--aARWcCos:------:allow
-> group@:r-x---a-R-c--s:------:allow
-> everyone@:r-x---a-R-c--s:------:allow
+> user:53:-----------Co-:------I:deny
+> user:52:-----------Co-:------I:deny
+> user:50:-----------Co-:------I:deny
+> user:49:-----------Co-:------I:deny
+> user:47:-----------Co-:fd----I:deny
+> user:46:-----------Co-:-d----I:deny
+> user:45:-----------Co-:f-i---I:deny
+> user:44:-----------Co-:fd----I:deny
+> user:43:-----------Co-:-d----I:deny
+> user:42:-----------Co-:f-i---I:deny
+> owner@:rwxp--aARWcCos:-------:allow
+> group@:r-x---a-R-c--s:-------:allow
+> everyone@:r-x---a-R-c--s:-------:allow
$ rmdir yyy
$ rm xxx
diff --git a/tools/regression/acltools/tools-nfs4-trivial.test b/tools/regression/acltools/tools-nfs4-trivial.test
index ae49032..366b099 100644
--- a/tools/regression/acltools/tools-nfs4-trivial.test
+++ b/tools/regression/acltools/tools-nfs4-trivial.test
@@ -42,9 +42,9 @@ $ ls -l xxx | cut -d' ' -f1
> -rw-r--r--
$ getfacl -q xxx
-> owner@:rw-p--aARWcCos:------:allow
-> group@:r-----a-R-c--s:------:allow
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p--aARWcCos:-------:allow
+> group@:r-----a-R-c--s:-------:allow
+> everyone@:r-----a-R-c--s:-------:allow
# Check whether ls(1) correctly recognizes draft-style trivial ACLs.
$ rm xxx
@@ -58,12 +58,12 @@ $ ls -l xxx | cut -d' ' -f1
> -rw-r--r--
$ getfacl -q xxx
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Make sure ls(1) actually can recognize something as non-trivial.
$ setfacl -x0 xxx
@@ -72,11 +72,11 @@ $ ls -l xxx | cut -d' ' -f1
> -rw-r--r--+
$ getfacl -q xxx
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ rm xxx
diff --git a/tools/regression/acltools/tools-nfs4.test b/tools/regression/acltools/tools-nfs4.test
index 72826fb..e2ddc2b 100644
--- a/tools/regression/acltools/tools-nfs4.test
+++ b/tools/regression/acltools/tools-nfs4.test
@@ -42,20 +42,20 @@ $ getfacl xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ getfacl -q xxx
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Check verbose mode formatting.
$ getfacl -v xxx
@@ -75,14 +75,14 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Test user and group name resolving.
$ rm xxx
@@ -92,14 +92,14 @@ $ getfacl xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> user:root:-----------C--:------:allow
-> group:daemon:----------c---:------:deny
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> user:root:-----------C--:-------:allow
+> group:daemon:----------c---:-------:deny
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Check whether ls correctly marks files with "+".
$ ls -l xxx | cut -d' ' -f1
@@ -112,12 +112,12 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Test setfacl -m.
$ setfacl -a0 everyone@:rwx:deny xxx
@@ -128,30 +128,30 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:--------------:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:--------------:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Test getfacl -i.
$ getfacl -i xxx
> # file: xxx
> # owner: root
> # group: wheel
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> user:root:-----------C--:------:allow:0
-> group:daemon:----------c---:------:deny:1
-> everyone@:--------------:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> user:root:-----------C--:-------:allow:0
+> group:daemon:----------c---:-------:deny:1
+> everyone@:--------------:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Make sure cp without any flags does not copy copy the ACL.
$ cp xxx yyy
@@ -165,15 +165,15 @@ $ getfacl -n yyy
> # file: yyy
> # owner: root
> # group: wheel
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> everyone@:--------------:------:deny
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:--------------:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> everyone@:--------------:-------:deny
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:--------------:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ rm yyy
@@ -183,11 +183,11 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> user:0:-----------C--:------:allow
-> group:1:----------c---:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> user:0:-----------C--:-------:allow
+> group:1:----------c---:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
# Test setfacl -b.
$ setfacl -b xxx
@@ -195,12 +195,12 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> -rw-r--r--
@@ -224,32 +224,32 @@ $ ls -l nnn xxx yyy zzz | cut -d' ' -f1
$ getfacl -nq nnn xxx yyy zzz
> getfacl: nnn: stat() failed: No such file or directory
-> user:42:--x-----------:------:allow
-> group:43:-w------------:------:allow
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:--x-----------:-------:allow
+> group:43:-w------------:-------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
>
-> user:42:--x-----------:------:allow
-> group:43:-w------------:------:allow
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:--x-----------:-------:allow
+> group:43:-w------------:-------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
>
-> user:42:--x-----------:------:allow
-> group:43:-w------------:------:allow
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:--x-----------:-------:allow
+> group:43:-w------------:-------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ setfacl -b nnn xxx yyy zzz
> setfacl: nnn: stat() failed: No such file or directory
@@ -270,23 +270,23 @@ $ getfacl -n xxx
> # file: xxx
> # owner: root
> # group: wheel
-> user:42:r-------------:------:deny
-> user:42:r-------------:------:allow
-> user:43:-w------------:------:deny
-> user:43:-w------------:------:allow
-> user:44:--x-----------:------:deny
-> user:44:--x-----------:------:allow
-> owner@:--------------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:--------------:------:deny
-> group@:--------------:------:allow
-> everyone@:-------A-W-Co-:------:deny
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:rwxp----------:------:deny
-> group@:--------------:------:allow
-> everyone@:rwxp---A-W-Co-:------:deny
-> everyone@:------a-R-c--s:------:allow
+> user:42:r-------------:-------:deny
+> user:42:r-------------:-------:allow
+> user:43:-w------------:-------:deny
+> user:43:-w------------:-------:allow
+> user:44:--x-----------:-------:deny
+> user:44:--x-----------:-------:allow
+> owner@:--------------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:--------------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:-------A-W-Co-:-------:deny
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:rwxp----------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:rwxp---A-W-Co-:-------:deny
+> everyone@:------a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> -rw-------+
@@ -299,18 +299,18 @@ $ getfacl -n xxx
> # file: xxx
> # owner: 42
> # group: wheel
-> user:42:--------------:------:deny
-> user:42:r-------------:------:allow
-> user:43:-w------------:------:deny
-> user:43:-w------------:------:allow
-> user:44:--x-----------:------:deny
-> user:44:--x-----------:------:allow
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:rwxp----------:------:deny
-> group@:--------------:------:allow
-> everyone@:rwxp---A-W-Co-:------:deny
-> everyone@:------a-R-c--s:------:allow
+> user:42:--------------:-------:deny
+> user:42:r-------------:-------:allow
+> user:43:-w------------:-------:deny
+> user:43:-w------------:-------:allow
+> user:44:--x-----------:-------:deny
+> user:44:--x-----------:-------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:rwxp----------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:rwxp---A-W-Co-:-------:deny
+> everyone@:------a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> -rw-------+
@@ -323,18 +323,18 @@ $ getfacl -n xxx
> # file: xxx
> # owner: 43
> # group: wheel
-> user:42:r-------------:------:deny
-> user:42:r-------------:------:allow
-> user:43:-w------------:------:deny
-> user:43:-w------------:------:allow
-> user:44:--x-----------:------:deny
-> user:44:--x-----------:------:allow
-> owner@:rw-p----------:------:deny
-> owner@:--x----A-W-Co-:------:allow
-> group@:r-x-----------:------:deny
-> group@:-w-p----------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:r-------------:-------:deny
+> user:42:r-------------:-------:allow
+> user:43:-w------------:-------:deny
+> user:43:-w------------:-------:allow
+> user:44:--x-----------:-------:deny
+> user:44:--x-----------:-------:allow
+> owner@:rw-p----------:-------:deny
+> owner@:--x----A-W-Co-:-------:allow
+> group@:r-x-----------:-------:deny
+> group@:-w-p----------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> ---x-w-r--+
@@ -347,18 +347,18 @@ $ getfacl -n xxx
> # file: xxx
> # owner: 43
> # group: wheel
-> user:42:r-------------:------:deny
-> user:42:r-------------:------:allow
-> user:43:-w------------:------:deny
-> user:43:-w------------:------:allow
-> user:44:--------------:------:deny
-> user:44:--x-----------:------:allow
-> owner@:-wxp----------:------:deny
-> owner@:r------A-W-Co-:------:allow
-> group@:rw-p----------:------:deny
-> group@:--x-----------:------:allow
-> everyone@:r-x----A-W-Co-:------:deny
-> everyone@:-w-p--a-R-c--s:------:allow
+> user:42:r-------------:-------:deny
+> user:42:r-------------:-------:allow
+> user:43:-w------------:-------:deny
+> user:43:-w------------:-------:allow
+> user:44:--------------:-------:deny
+> user:44:--x-----------:-------:allow
+> owner@:-wxp----------:-------:deny
+> owner@:r------A-W-Co-:-------:allow
+> group@:rw-p----------:-------:deny
+> group@:--x-----------:-------:allow
+> everyone@:r-x----A-W-Co-:-------:deny
+> everyone@:-w-p--a-R-c--s:-------:allow
$ ls -l xxx | cut -d' ' -f1
> -r----x-w-+
@@ -371,43 +371,43 @@ $ getfacl -n ddd
> # file: ddd
> # owner: root
> # group: wheel
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:-d----:allow
-> group:43:-w--D---------:-d----:deny
-> group@:-----da-------:------:allow
-> group:44:rw-p-da-------:------:allow
-> owner@:--------------:------:deny
-> owner@:rwxp---A-W-Co-:------:allow
-> group@:-w-p----------:------:deny
-> group@:r-x-----------:------:allow
-> everyone@:-w-p---A-W-Co-:------:deny
-> everyone@:-w-p--a-R-c--s:f-i---:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-d-----:allow
+> group:43:-w--D---------:-d-----:deny
+> group@:-----da-------:-------:allow
+> group:44:rw-p-da-------:-------:allow
+> owner@:--------------:-------:deny
+> owner@:rwxp---A-W-Co-:-------:allow
+> group@:-w-p----------:-------:deny
+> group@:r-x-----------:-------:allow
+> everyone@:-w-p---A-W-Co-:-------:deny
+> everyone@:-w-p--a-R-c--s:f-i----:allow
$ chmod 777 ddd
$ getfacl -n ddd
> # file: ddd
> # owner: root
> # group: wheel
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:-di---:allow
-> group:42:--------------:------:deny
-> group:42:-w--D---------:------:allow
-> group:43:-w--D---------:-di---:deny
-> group:43:-w--D---------:------:deny
-> group@:-----da-------:------:allow
-> group:44:--------------:------:deny
-> group:44:rw-p-da-------:------:allow
-> owner@:--------------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:--------------:------:deny
-> group@:--------------:------:allow
-> everyone@:-------A-W-Co-:------:deny
-> everyone@:-w-p--a-R-c--s:f-i---:allow
-> owner@:--------------:------:deny
-> owner@:rwxp---A-W-Co-:------:allow
-> group@:--------------:------:deny
-> group@:rwxp----------:------:allow
-> everyone@:-------A-W-Co-:------:deny
-> everyone@:rwxp--a-R-c--s:------:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-di----:allow
+> group:42:--------------:-------:deny
+> group:42:-w--D---------:-------:allow
+> group:43:-w--D---------:-di----:deny
+> group:43:-w--D---------:-------:deny
+> group@:-----da-------:-------:allow
+> group:44:--------------:-------:deny
+> group:44:rw-p-da-------:-------:allow
+> owner@:--------------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:--------------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:-------A-W-Co-:-------:deny
+> everyone@:-w-p--a-R-c--s:f-i----:allow
+> owner@:--------------:-------:deny
+> owner@:rwxp---A-W-Co-:-------:allow
+> group@:--------------:-------:deny
+> group@:rwxp----------:-------:allow
+> everyone@:-------A-W-Co-:-------:deny
+> everyone@:rwxp--a-R-c--s:-------:allow
$ rmdir ddd
$ mkdir ddd
@@ -420,27 +420,27 @@ $ getfacl -n ddd
> # file: ddd
> # owner: root
> # group: wheel
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:-di---:allow
-> group:42:--------------:------:deny
-> group:42:----D---------:------:allow
-> group:43:-w--D---------:-di---:deny
-> group:43:-w--D---------:------:deny
-> group@:-----da-------:------:allow
-> group:44:r-------------:------:deny
-> group:44:r----da-------:------:allow
-> owner@:--------------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:--------------:------:deny
-> group@:--------------:------:allow
-> everyone@:-------A-W-Co-:------:deny
-> everyone@:-w-p--a-R-c--s:f-i---:allow
-> owner@:rw-p----------:------:deny
-> owner@:--x----A-W-Co-:------:allow
-> group@:r-x-----------:------:deny
-> group@:-w-p----------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-di----:allow
+> group:42:--------------:-------:deny
+> group:42:----D---------:-------:allow
+> group:43:-w--D---------:-di----:deny
+> group:43:-w--D---------:-------:deny
+> group@:-----da-------:-------:allow
+> group:44:r-------------:-------:deny
+> group:44:r----da-------:-------:allow
+> owner@:--------------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:--------------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:-------A-W-Co-:-------:deny
+> everyone@:-w-p--a-R-c--s:f-i----:allow
+> owner@:rw-p----------:-------:deny
+> owner@:--x----A-W-Co-:-------:allow
+> group@:r-x-----------:-------:deny
+> group@:-w-p----------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ rmdir ddd
$ mkdir ddd
@@ -453,29 +453,29 @@ $ getfacl -n ddd
> # file: ddd
> # owner: root
> # group: wheel
-> user:42:r-------------:------:deny
-> user:42:r-x-----------:------:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:-di---:allow
-> group:42:-w------------:------:deny
-> group:42:-w--D---------:------:allow
-> group:43:-w--D---------:-di---:deny
-> group:43:-w--D---------:------:deny
-> group@:-----da-------:------:allow
-> group:44:rw-p----------:------:deny
-> group:44:rw-p-da-------:------:allow
-> owner@:--------------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:--------------:------:deny
-> group@:--------------:------:allow
-> everyone@:-------A-W-Co-:------:deny
-> everyone@:-w-p--a-R-c--s:f-i---:allow
-> owner@:-wxp----------:------:deny
-> owner@:r------A-W-Co-:------:allow
-> group@:rw-p----------:------:deny
-> group@:--x-----------:------:allow
-> everyone@:r-x----A-W-Co-:------:deny
-> everyone@:-w-p--a-R-c--s:------:allow
+> user:42:r-------------:-------:deny
+> user:42:r-x-----------:-------:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-di----:allow
+> group:42:-w------------:-------:deny
+> group:42:-w--D---------:-------:allow
+> group:43:-w--D---------:-di----:deny
+> group:43:-w--D---------:-------:deny
+> group@:-----da-------:-------:allow
+> group:44:rw-p----------:-------:deny
+> group:44:rw-p-da-------:-------:allow
+> owner@:--------------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:--------------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:-------A-W-Co-:-------:deny
+> everyone@:-w-p--a-R-c--s:f-i----:allow
+> owner@:-wxp----------:-------:deny
+> owner@:r------A-W-Co-:-------:allow
+> group@:rw-p----------:-------:deny
+> group@:--x-----------:-------:allow
+> everyone@:r-x----A-W-Co-:-------:deny
+> everyone@:-w-p--a-R-c--s:-------:allow
$ rmdir ddd
$ mkdir ddd
@@ -489,29 +489,29 @@ $ getfacl -n ddd
> # file: ddd
> # owner: 42
> # group: wheel
-> user:42:--x-----------:------:deny
-> user:42:r-x-----------:------:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:-di---:allow
-> group:42:-w------------:------:deny
-> group:42:-w--D---------:------:allow
-> group:43:-w--D---------:-di---:deny
-> group:43:-w--D---------:------:deny
-> group@:-----da-------:------:allow
-> group:44:rw-p----------:------:deny
-> group:44:rw-p-da-------:------:allow
-> owner@:--------------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:--------------:------:deny
-> group@:--------------:------:allow
-> everyone@:-------A-W-Co-:------:deny
-> everyone@:-w-p--a-R-c--s:f-i---:allow
-> owner@:-wxp----------:------:deny
-> owner@:r------A-W-Co-:------:allow
-> group@:rw-p----------:------:deny
-> group@:--x-----------:------:allow
-> everyone@:r-x----A-W-Co-:------:deny
-> everyone@:-w-p--a-R-c--s:------:allow
+> user:42:--x-----------:-------:deny
+> user:42:r-x-----------:-------:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-di----:allow
+> group:42:-w------------:-------:deny
+> group:42:-w--D---------:-------:allow
+> group:43:-w--D---------:-di----:deny
+> group:43:-w--D---------:-------:deny
+> group@:-----da-------:-------:allow
+> group:44:rw-p----------:-------:deny
+> group:44:rw-p-da-------:-------:allow
+> owner@:--------------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:--------------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:-------A-W-Co-:-------:deny
+> everyone@:-w-p--a-R-c--s:f-i----:allow
+> owner@:-wxp----------:-------:deny
+> owner@:r------A-W-Co-:-------:allow
+> group@:rw-p----------:-------:deny
+> group@:--x-----------:-------:allow
+> everyone@:r-x----A-W-Co-:-------:deny
+> everyone@:-w-p--a-R-c--s:-------:allow
# Test applying ACL to mode.
$ rmdir ddd
@@ -557,137 +557,137 @@ $ setfacl -a0 user:42:write_acl/write_owner:fi:allow ddd
$ setfacl -a0 group:41:read_data/read_attributes:dni:allow ddd
$ setfacl -a0 user:41:write_data/write_attributes:fn:allow ddd
$ getfacl -qn ddd
-> user:41:-w-----A------:f--n--:allow
-> group:41:r-----a-------:-din--:allow
-> user:42:-----------Co-:f-i---:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:-d-n--:deny
-> group:43:-w---------C--:f-in--:deny
-> user:43:rwxp----------:------:allow
-> owner@:--------------:------:deny
-> owner@:rwxp---A-W-Co-:------:allow
-> group@:-w-p----------:------:deny
-> group@:r-x-----------:------:allow
-> everyone@:-w-p---A-W-Co-:------:deny
-> everyone@:r-x---a-R-c--s:------:allow
+> user:41:-w-----A------:f--n---:allow
+> group:41:r-----a-------:-din---:allow
+> user:42:-----------Co-:f-i----:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-d-n---:deny
+> group:43:-w---------C--:f-in---:deny
+> user:43:rwxp----------:-------:allow
+> owner@:--------------:-------:deny
+> owner@:rwxp---A-W-Co-:-------:allow
+> group@:-w-p----------:-------:deny
+> group@:r-x-----------:-------:allow
+> everyone@:-w-p---A-W-Co-:-------:deny
+> everyone@:r-x---a-R-c--s:-------:allow
$ cd ddd
$ touch xxx
$ getfacl -qn xxx
-> user:41:-w------------:------:deny
-> user:41:-w-----A------:------:allow
-> user:42:--------------:------:deny
-> user:42:--------------:------:allow
-> user:42:--x-----------:------:deny
-> user:42:r-x-----------:------:allow
-> group:43:-w---------C--:------:deny
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> user:41:-w------------:-------:deny
+> user:41:-w-----A------:-------:allow
+> user:42:--------------:-------:deny
+> user:42:--------------:-------:allow
+> user:42:--x-----------:-------:deny
+> user:42:r-x-----------:-------:allow
+> group:43:-w---------C--:-------:deny
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ rm xxx
$ umask 077
$ touch xxx
$ getfacl -qn xxx
-> user:41:-w------------:------:deny
-> user:41:-w-----A------:------:allow
-> user:42:--------------:------:deny
-> user:42:--------------:------:allow
-> user:42:r-x-----------:------:deny
-> user:42:r-x-----------:------:allow
-> group:43:-w---------C--:------:deny
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:rwxp----------:------:deny
-> group@:--------------:------:allow
-> everyone@:rwxp---A-W-Co-:------:deny
-> everyone@:------a-R-c--s:------:allow
+> user:41:-w------------:-------:deny
+> user:41:-w-----A------:-------:allow
+> user:42:--------------:-------:deny
+> user:42:--------------:-------:allow
+> user:42:r-x-----------:-------:deny
+> user:42:r-x-----------:-------:allow
+> group:43:-w---------C--:-------:deny
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:rwxp----------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:rwxp---A-W-Co-:-------:deny
+> everyone@:------a-R-c--s:-------:allow
$ rm xxx
$ umask 770
$ touch xxx
$ getfacl -qn xxx
-> user:41:-w------------:------:deny
-> user:41:-w-----A------:------:allow
-> user:42:--------------:------:deny
-> user:42:--------------:------:allow
-> user:42:r-x-----------:------:deny
-> user:42:r-x-----------:------:allow
-> group:43:-w---------C--:------:deny
-> owner@:rwxp----------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:rwxp----------:------:deny
-> group@:--------------:------:allow
-> everyone@:--x----A-W-Co-:------:deny
-> everyone@:rw-p--a-R-c--s:------:allow
+> user:41:-w------------:-------:deny
+> user:41:-w-----A------:-------:allow
+> user:42:--------------:-------:deny
+> user:42:--------------:-------:allow
+> user:42:r-x-----------:-------:deny
+> user:42:r-x-----------:-------:allow
+> group:43:-w---------C--:-------:deny
+> owner@:rwxp----------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:rwxp----------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:--x----A-W-Co-:-------:deny
+> everyone@:rw-p--a-R-c--s:-------:allow
$ rm xxx
$ umask 707
$ touch xxx
$ getfacl -qn xxx
-> user:41:--------------:------:deny
-> user:41:-w-----A------:------:allow
-> user:42:--------------:------:deny
-> user:42:--------------:------:allow
-> user:42:--x-----------:------:deny
-> user:42:r-x-----------:------:allow
-> group:43:-w---------C--:------:deny
-> owner@:rwxp----------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:--x-----------:------:deny
-> group@:rw-p----------:------:allow
-> everyone@:rwxp---A-W-Co-:------:deny
-> everyone@:------a-R-c--s:------:allow
+> user:41:--------------:-------:deny
+> user:41:-w-----A------:-------:allow
+> user:42:--------------:-------:deny
+> user:42:--------------:-------:allow
+> user:42:--x-----------:-------:deny
+> user:42:r-x-----------:-------:allow
+> group:43:-w---------C--:-------:deny
+> owner@:rwxp----------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:--x-----------:-------:deny
+> group@:rw-p----------:-------:allow
+> everyone@:rwxp---A-W-Co-:-------:deny
+> everyone@:------a-R-c--s:-------:allow
$ umask 077
$ mkdir yyy
$ getfacl -qn yyy
-> group:41:r-------------:------:deny
-> group:41:r-----a-------:------:allow
-> user:42:-----------Co-:f-i---:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:------:deny
-> owner@:--------------:------:deny
-> owner@:rwxp---A-W-Co-:------:allow
-> group@:rwxp----------:------:deny
-> group@:--------------:------:allow
-> everyone@:rwxp---A-W-Co-:------:deny
-> everyone@:------a-R-c--s:------:allow
+> group:41:r-------------:-------:deny
+> group:41:r-----a-------:-------:allow
+> user:42:-----------Co-:f-i----:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-------:deny
+> owner@:--------------:-------:deny
+> owner@:rwxp---A-W-Co-:-------:allow
+> group@:rwxp----------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:rwxp---A-W-Co-:-------:deny
+> everyone@:------a-R-c--s:-------:allow
$ rmdir yyy
$ umask 770
$ mkdir yyy
$ getfacl -qn yyy
-> group:41:r-------------:------:deny
-> group:41:r-----a-------:------:allow
-> user:42:-----------Co-:f-i---:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:------:deny
-> owner@:rwxp----------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:rwxp----------:------:deny
-> group@:--------------:------:allow
-> everyone@:-------A-W-Co-:------:deny
-> everyone@:rwxp--a-R-c--s:------:allow
+> group:41:r-------------:-------:deny
+> group:41:r-----a-------:-------:allow
+> user:42:-----------Co-:f-i----:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-------:deny
+> owner@:rwxp----------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:rwxp----------:-------:deny
+> group@:--------------:-------:allow
+> everyone@:-------A-W-Co-:-------:deny
+> everyone@:rwxp--a-R-c--s:-------:allow
$ rmdir yyy
$ umask 707
$ mkdir yyy
$ getfacl -qn yyy
-> group:41:--------------:------:deny
-> group:41:------a-------:------:allow
-> user:42:-----------Co-:f-i---:allow
-> user:42:r-x-----------:f-i---:allow
-> group:42:-w--D---------:------:deny
-> owner@:rwxp----------:------:deny
-> owner@:-------A-W-Co-:------:allow
-> group@:--------------:------:deny
-> group@:rwxp----------:------:allow
-> everyone@:rwxp---A-W-Co-:------:deny
-> everyone@:------a-R-c--s:------:allow
+> group:41:--------------:-------:deny
+> group:41:------a-------:-------:allow
+> user:42:-----------Co-:f-i----:allow
+> user:42:r-x-----------:f-i----:allow
+> group:42:-w--D---------:-------:deny
+> owner@:rwxp----------:-------:deny
+> owner@:-------A-W-Co-:-------:allow
+> group@:--------------:-------:deny
+> group@:rwxp----------:-------:allow
+> everyone@:rwxp---A-W-Co-:-------:deny
+> everyone@:------a-R-c--s:-------:allow
# There is some complication regarding how write_acl and write_owner flags
# get inherited. Make sure we got it right.
@@ -708,60 +708,60 @@ $ umask 022
$ rm xxx
$ touch xxx
$ getfacl -nq xxx
-> user:53:--------------:------:deny
-> user:53:--------------:------:allow
-> user:51:--------------:------:deny
-> user:51:--------------:------:allow
-> user:50:--------------:------:deny
-> user:50:--------------:------:allow
-> user:48:--------------:------:deny
-> user:48:--------------:------:allow
-> user:47:--------------:------:deny
-> user:47:--------------:------:allow
-> user:45:--------------:------:deny
-> user:45:--------------:------:allow
-> user:44:--------------:------:deny
-> user:44:--------------:------:allow
-> user:42:--------------:------:deny
-> user:42:--------------:------:allow
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> user:53:--------------:-------:deny
+> user:53:--------------:-------:allow
+> user:51:--------------:-------:deny
+> user:51:--------------:-------:allow
+> user:50:--------------:-------:deny
+> user:50:--------------:-------:allow
+> user:48:--------------:-------:deny
+> user:48:--------------:-------:allow
+> user:47:--------------:-------:deny
+> user:47:--------------:-------:allow
+> user:45:--------------:-------:deny
+> user:45:--------------:-------:allow
+> user:44:--------------:-------:deny
+> user:44:--------------:-------:allow
+> user:42:--------------:-------:deny
+> user:42:--------------:-------:allow
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ rmdir yyy
$ mkdir yyy
$ getfacl -nq yyy
-> user:53:--------------:------:deny
-> user:53:--------------:------:allow
-> user:52:--------------:------:deny
-> user:52:--------------:------:allow
-> user:50:--------------:------:deny
-> user:50:--------------:------:allow
-> user:49:--------------:------:deny
-> user:49:--------------:------:allow
-> user:47:-----------Co-:fdi---:allow
-> user:47:--------------:------:deny
-> user:47:--------------:------:allow
-> user:46:-----------Co-:-di---:allow
-> user:46:--------------:------:deny
-> user:46:--------------:------:allow
-> user:45:-----------Co-:f-i---:allow
-> user:44:-----------Co-:fdi---:allow
-> user:44:--------------:------:deny
-> user:44:--------------:------:allow
-> user:43:-----------Co-:-di---:allow
-> user:43:--------------:------:deny
-> user:43:--------------:------:allow
-> user:42:-----------Co-:f-i---:allow
-> owner@:--------------:------:deny
-> owner@:rwxp---A-W-Co-:------:allow
-> group@:-w-p----------:------:deny
-> group@:r-x-----------:------:allow
-> everyone@:-w-p---A-W-Co-:------:deny
-> everyone@:r-x---a-R-c--s:------:allow
+> user:53:--------------:-------:deny
+> user:53:--------------:-------:allow
+> user:52:--------------:-------:deny
+> user:52:--------------:-------:allow
+> user:50:--------------:-------:deny
+> user:50:--------------:-------:allow
+> user:49:--------------:-------:deny
+> user:49:--------------:-------:allow
+> user:47:-----------Co-:fdi----:allow
+> user:47:--------------:-------:deny
+> user:47:--------------:-------:allow
+> user:46:-----------Co-:-di----:allow
+> user:46:--------------:-------:deny
+> user:46:--------------:-------:allow
+> user:45:-----------Co-:f-i----:allow
+> user:44:-----------Co-:fdi----:allow
+> user:44:--------------:-------:deny
+> user:44:--------------:-------:allow
+> user:43:-----------Co-:-di----:allow
+> user:43:--------------:-------:deny
+> user:43:--------------:-------:allow
+> user:42:-----------Co-:f-i----:allow
+> owner@:--------------:-------:deny
+> owner@:rwxp---A-W-Co-:-------:allow
+> group@:-w-p----------:-------:deny
+> group@:r-x-----------:-------:allow
+> everyone@:-w-p---A-W-Co-:-------:deny
+> everyone@:r-x---a-R-c--s:-------:allow
$ setfacl -b .
$ setfacl -a0 u:42:Co:f:deny .
@@ -780,44 +780,44 @@ $ umask 022
$ rm xxx
$ touch xxx
$ getfacl -nq xxx
-> user:53:-----------Co-:------:deny
-> user:51:-----------Co-:------:deny
-> user:50:-----------Co-:------:deny
-> user:48:-----------Co-:------:deny
-> user:47:-----------Co-:------:deny
-> user:45:-----------Co-:------:deny
-> user:44:-----------Co-:------:deny
-> user:42:-----------Co-:------:deny
-> owner@:--x-----------:------:deny
-> owner@:rw-p---A-W-Co-:------:allow
-> group@:-wxp----------:------:deny
-> group@:r-------------:------:allow
-> everyone@:-wxp---A-W-Co-:------:deny
-> everyone@:r-----a-R-c--s:------:allow
+> user:53:-----------Co-:-------:deny
+> user:51:-----------Co-:-------:deny
+> user:50:-----------Co-:-------:deny
+> user:48:-----------Co-:-------:deny
+> user:47:-----------Co-:-------:deny
+> user:45:-----------Co-:-------:deny
+> user:44:-----------Co-:-------:deny
+> user:42:-----------Co-:-------:deny
+> owner@:--x-----------:-------:deny
+> owner@:rw-p---A-W-Co-:-------:allow
+> group@:-wxp----------:-------:deny
+> group@:r-------------:-------:allow
+> everyone@:-wxp---A-W-Co-:-------:deny
+> everyone@:r-----a-R-c--s:-------:allow
$ rmdir yyy
$ mkdir yyy
$ getfacl -nq yyy
-> user:53:-----------Co-:------:deny
-> user:52:-----------Co-:------:deny
-> user:50:-----------Co-:------:deny
-> user:49:-----------Co-:------:deny
-> user:47:-----------Co-:fdi---:deny
-> user:47:-----------Co-:------:deny
-> user:46:-----------Co-:-di---:deny
-> user:46:-----------Co-:------:deny
-> user:45:-----------Co-:f-i---:deny
-> user:44:-----------Co-:fdi---:deny
-> user:44:-----------Co-:------:deny
-> user:43:-----------Co-:-di---:deny
-> user:43:-----------Co-:------:deny
-> user:42:-----------Co-:f-i---:deny
-> owner@:--------------:------:deny
-> owner@:rwxp---A-W-Co-:------:allow
-> group@:-w-p----------:------:deny
-> group@:r-x-----------:------:allow
-> everyone@:-w-p---A-W-Co-:------:deny
-> everyone@:r-x---a-R-c--s:------:allow
+> user:53:-----------Co-:-------:deny
+> user:52:-----------Co-:-------:deny
+> user:50:-----------Co-:-------:deny
+> user:49:-----------Co-:-------:deny
+> user:47:-----------Co-:fdi----:deny
+> user:47:-----------Co-:-------:deny
+> user:46:-----------Co-:-di----:deny
+> user:46:-----------Co-:-------:deny
+> user:45:-----------Co-:f-i----:deny
+> user:44:-----------Co-:fdi----:deny
+> user:44:-----------Co-:-------:deny
+> user:43:-----------Co-:-di----:deny
+> user:43:-----------Co-:-------:deny
+> user:42:-----------Co-:f-i----:deny
+> owner@:--------------:-------:deny
+> owner@:rwxp---A-W-Co-:-------:allow
+> group@:-w-p----------:-------:deny
+> group@:r-x-----------:-------:allow
+> everyone@:-w-p---A-W-Co-:-------:deny
+> everyone@:r-x---a-R-c--s:-------:allow
$ rmdir yyy
$ rm xxx
diff --git a/tools/regression/lib/libc/gen/test-wordexp.c b/tools/regression/lib/libc/gen/test-wordexp.c
index 069190f..68b1578 100644
--- a/tools/regression/lib/libc/gen/test-wordexp.c
+++ b/tools/regression/lib/libc/gen/test-wordexp.c
@@ -206,6 +206,15 @@ main(int argc, char *argv[])
assert(strcmp(we.we_wordv[0], "\\") == 0);
assert(we.we_wordv[1] == NULL);
wordfree(&we);
+ /* Two syntax errors that are not detected by the current we_check(). */
+ r = wordexp("${IFS:+'}", &we, 0);
+ assert(r == WRDE_SYNTAX);
+ r = wordexp("${IFS:+'}", &we, WRDE_UNDEF);
+ assert(r == WRDE_SYNTAX);
+ r = wordexp("$(case)", &we, 0);
+ assert(r == WRDE_SYNTAX);
+ r = wordexp("$(case)", &we, WRDE_UNDEF);
+ assert(r == WRDE_SYNTAX);
/* With a SIGCHLD handler that reaps all zombies. */
sa.sa_flags = 0;
diff --git a/tools/regression/lib/msun/test-cexp.c b/tools/regression/lib/msun/test-cexp.c
index 69897d3..6be71ad 100644
--- a/tools/regression/lib/msun/test-cexp.c
+++ b/tools/regression/lib/msun/test-cexp.c
@@ -31,6 +31,8 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
+#include <sys/param.h>
+
#include <assert.h>
#include <complex.h>
#include <fenv.h>
@@ -40,8 +42,6 @@ __FBSDID("$FreeBSD$");
#include "test-utils.h"
-#define N(i) (sizeof(i) / sizeof((i)[0]))
-
#pragma STDC FENV_ACCESS ON
#pragma STDC CX_LIMITED_RANGE OFF
@@ -116,7 +116,7 @@ test_nan()
/* cexp(x + NaNi) = NaN + NaNi and optionally raises invalid */
/* cexp(NaN + yi) = NaN + NaNi and optionally raises invalid (|y|>0) */
- for (i = 0; i < N(finites); i++) {
+ for (i = 0; i < nitems(finites); i++) {
printf("# Run %d..\n", i);
testall(CMPLXL(finites[i], NAN), CMPLXL(NAN, NAN),
ALL_STD_EXCEPT & ~FE_INVALID, 0, 0);
@@ -148,7 +148,7 @@ test_inf(void)
int i;
/* cexp(x + inf i) = NaN + NaNi and raises invalid */
- for (i = 0; i < N(finites); i++) {
+ for (i = 0; i < nitems(finites); i++) {
printf("# Run %d..\n", i);
testall(CMPLXL(finites[i], INFINITY), CMPLXL(NAN, NAN),
ALL_STD_EXCEPT, FE_INVALID, 1);
@@ -189,7 +189,7 @@ test_reals(void)
{
int i;
- for (i = 0; i < N(finites); i++) {
+ for (i = 0; i < nitems(finites); i++) {
/* XXX could check exceptions more meticulously */
printf("# Run %d..\n", i);
test(cexp, CMPLXL(finites[i], 0.0),
@@ -212,7 +212,7 @@ test_imaginaries(void)
{
int i;
- for (i = 0; i < N(finites); i++) {
+ for (i = 0; i < nitems(finites); i++) {
printf("# Run %d..\n", i);
test(cexp, CMPLXL(0.0, finites[i]),
CMPLXL(cos(finites[i]), sin(finites[i])),
@@ -244,7 +244,7 @@ test_small(void)
double x, y;
int i;
- for (i = 0; i < N(tests); i += 4) {
+ for (i = 0; i < nitems(tests); i += 4) {
printf("# Run %d..\n", i);
a = tests[i];
b = tests[i + 1];
diff --git a/tools/regression/lib/msun/test-csqrt.c b/tools/regression/lib/msun/test-csqrt.c
index bc1817f..aa119d1 100644
--- a/tools/regression/lib/msun/test-csqrt.c
+++ b/tools/regression/lib/msun/test-csqrt.c
@@ -31,6 +31,8 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
+#include <sys/param.h>
+
#include <assert.h>
#include <complex.h>
#include <float.h>
@@ -39,8 +41,6 @@ __FBSDID("$FreeBSD$");
#include "test-utils.h"
-#define N(i) (sizeof(i) / sizeof((i)[0]))
-
/*
* This is a test hook that can point to csqrtl(), _csqrt(), or to _csqrtf().
* The latter two convert to float or double, respectively, and test csqrtf()
@@ -127,8 +127,8 @@ test_finite()
double x, y;
int i, j;
- for (i = 0; i < N(tests); i += 4) {
- for (j = 0; j < N(mults); j++) {
+ for (i = 0; i < nitems(tests); i += 4) {
+ for (j = 0; j < nitems(mults); j++) {
a = tests[i] * mults[j] * mults[j];
b = tests[i + 1] * mults[j] * mults[j];
x = tests[i + 2] * mults[j];
@@ -169,7 +169,7 @@ test_infinities()
int i;
- for (i = 0; i < N(vals); i++) {
+ for (i = 0; i < nitems(vals); i++) {
if (isfinite(vals[i])) {
assert_equal(t_csqrt(CMPLXL(-INFINITY, vals[i])),
CMPLXL(0.0, copysignl(INFINITY, vals[i])));
diff --git a/tools/regression/lib/msun/test-invtrig.c b/tools/regression/lib/msun/test-invtrig.c
index 2523d59..9b41fd5 100644
--- a/tools/regression/lib/msun/test-invtrig.c
+++ b/tools/regression/lib/msun/test-invtrig.c
@@ -41,8 +41,6 @@ __FBSDID("$FreeBSD$");
#include "test-utils.h"
-#define LEN(a) (sizeof(a) / sizeof((a)[0]))
-
#pragma STDC FENV_ACCESS ON
/*
diff --git a/tools/regression/lib/msun/test-trig.c b/tools/regression/lib/msun/test-trig.c
index 80f1aef..1dcce1f 100644
--- a/tools/regression/lib/msun/test-trig.c
+++ b/tools/regression/lib/msun/test-trig.c
@@ -36,6 +36,8 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
+#include <sys/param.h>
+
#include <assert.h>
#include <fenv.h>
#include <float.h>
@@ -44,8 +46,6 @@ __FBSDID("$FreeBSD$");
#include "test-utils.h"
-#define LEN(a) (sizeof(a) / sizeof((a)[0]))
-
#pragma STDC FENV_ACCESS ON
/*
@@ -155,7 +155,7 @@ run_reduction_tests(void)
int i;
- for (i = 0; i < LEN(f_pi_odd); i++) {
+ for (i = 0; i < nitems(f_pi_odd); i++) {
assert(fabs(sinf(f_pi_odd[i])) < FLT_EPSILON);
assert(cosf(f_pi_odd[i]) == -1.0);
assert(fabs(tan(f_pi_odd[i])) < FLT_EPSILON);
@@ -173,7 +173,7 @@ run_reduction_tests(void)
assert(fabs(tanf(-f_pi_odd[i] * 2)) < FLT_EPSILON);
}
- for (i = 0; i < LEN(d_pi_odd); i++) {
+ for (i = 0; i < nitems(d_pi_odd); i++) {
assert(fabs(sin(d_pi_odd[i])) < 2 * DBL_EPSILON);
assert(cos(d_pi_odd[i]) == -1.0);
assert(fabs(tan(d_pi_odd[i])) < 2 * DBL_EPSILON);
@@ -192,7 +192,7 @@ run_reduction_tests(void)
}
#if LDBL_MANT_DIG > 53
- for (i = 0; i < LEN(ld_pi_odd); i++) {
+ for (i = 0; i < nitems(ld_pi_odd); i++) {
assert(fabsl(sinl(ld_pi_odd[i])) < LDBL_EPSILON);
assert(cosl(ld_pi_odd[i]) == -1.0);
assert(fabsl(tanl(ld_pi_odd[i])) < LDBL_EPSILON);
diff --git a/tools/regression/p1003_1b/main.c b/tools/regression/p1003_1b/main.c
index 23c3b02..5cf3183 100644
--- a/tools/regression/p1003_1b/main.c
+++ b/tools/regression/p1003_1b/main.c
@@ -1,4 +1,7 @@
/* $FreeBSD$ */
+
+#include <sys/param.h>
+
#include <stdio.h>
#include <string.h>
@@ -20,8 +23,6 @@ static struct {
{ "yield", yield, 1 },
};
-#define N(T) (sizeof (T)/ sizeof(T[0]))
-
static int usage(int argc, char *argv[])
{
int i;
@@ -47,14 +48,14 @@ int main(int argc, char *argv[])
" (my notes say \"because things detach\");\n"
"meanwhile do these individual tests and look"
" for a non-zero exit code:\n");
- for (i = 0; i < N(tab); i++)
+ for (i = 0; i < nitems(tab); i++)
if (tab[i].works)
fprintf(stderr, "p1003_1b %s\n", tab[i].t);
return -1;
#else
{
int r;
- for (i = 0; i < N(tab); i++) {
+ for (i = 0; i < nitems(tab); i++) {
if (tab[i].works) {
if ( (r =
(*tab[i].f)(argc - 1, argv + 1)) ) {
@@ -70,7 +71,7 @@ int main(int argc, char *argv[])
}
if (argc > 1) {
- for (i = 0; i < N(tab); i++)
+ for (i = 0; i < nitems(tab); i++)
if (strcmp(tab[i].t, argv[1]) == 0)
return (*tab[i].f)(argc - 1, argv + 1);
}
diff --git a/tools/tools/ath/athaggrstats/athaggrstats.c b/tools/tools/ath/athaggrstats/athaggrstats.c
index dde0fb8..345ff9a 100644
--- a/tools/tools/ath/athaggrstats/athaggrstats.c
+++ b/tools/tools/ath/athaggrstats/athaggrstats.c
@@ -29,6 +29,8 @@
* $FreeBSD$
*/
+#include <sys/param.h>
+
#include "opt_ah.h"
/*
@@ -368,13 +370,12 @@ BSDSTAT_DEFINE_BOUNCE(athaggrstatfoo)
struct athaggrstatfoo *
athaggrstats_new(const char *ifname, const char *fmtstring)
{
-#define N(a) (sizeof(a) / sizeof(a[0]))
struct athaggrstatfoo_p *wf;
wf = calloc(1, sizeof(struct athaggrstatfoo_p));
if (wf != NULL) {
bsdstat_init(&wf->base.base, "athaggrstats",
- athaggrstats, N(athaggrstats));
+ athaggrstats, nitems(athaggrstats));
/* override base methods */
wf->base.base.collect_cur = ath_collect_cur;
wf->base.base.collect_tot = ath_collect_tot;
@@ -400,5 +401,4 @@ athaggrstats_new(const char *ifname, const char *fmtstring)
wf->base.setfmt(&wf->base, fmtstring);
}
return &wf->base;
-#undef N
}
diff --git a/tools/tools/ath/athaggrstats/main.c b/tools/tools/ath/athaggrstats/main.c
index 75e5dbd..95e7917 100644
--- a/tools/tools/ath/athaggrstats/main.c
+++ b/tools/tools/ath/athaggrstats/main.c
@@ -42,12 +42,14 @@
* print a list of all possible statistics for use with the -o option.
*/
+#include <sys/param.h>
+
+#include <err.h>
+#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
-#include <signal.h>
-#include <unistd.h>
#include <string.h>
-#include <err.h>
+#include <unistd.h>
#include "athaggrstats.h"
@@ -63,13 +65,11 @@ static struct {
static const char *
getfmt(const char *tag)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(tags); i++)
+ for (i = 0; i < nitems(tags); i++)
if (strcasecmp(tags[i].tag, tag) == 0)
return tags[i].fmt;
return tag;
-#undef N
}
static int signalled;
diff --git a/tools/tools/ath/athdebug/athdebug.c b/tools/tools/ath/athdebug/athdebug.c
index b118939..bcdbcc8 100644
--- a/tools/tools/ath/athdebug/athdebug.c
+++ b/tools/tools/ath/athdebug/athdebug.c
@@ -33,21 +33,20 @@
* athdebug [-i interface] flags
* (default interface is ath0).
*/
-#include <sys/types.h>
+
+#include <sys/param.h>
#include <sys/file.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <sys/sysctl.h>
-#include <stdio.h>
#include <ctype.h>
+#include <err.h>
#include <getopt.h>
+#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <strings.h>
-#include <err.h>
-
-#define N(a) (sizeof(a)/sizeof(a[0]))
const char *progname;
@@ -115,7 +114,7 @@ getflag(const char *name, int len)
{
int i;
- for (i = 0; i < N(flags); i++)
+ for (i = 0; i < nitems(flags); i++)
if (strncasecmp(flags[i].name, name, len) == 0)
return flags[i].bit;
return 0;
@@ -126,7 +125,7 @@ getflagname(u_int flag)
{
int i;
- for (i = 0; i < N(flags); i++)
+ for (i = 0; i < nitems(flags); i++)
if (flags[i].bit == flag)
return flags[i].name;
return "???";
@@ -139,7 +138,7 @@ usage(void)
fprintf(stderr, "usage: %s [-i device] [flags]\n", progname);
fprintf(stderr, "where flags are:\n");
- for (i = 0; i < N(flags); i++)
+ for (i = 0; i < nitems(flags); i++)
printf("%s\n", flags[i].name);
exit(-1);
}
@@ -221,7 +220,7 @@ main(int argc, char *argv[])
} else
printf("%s: 0x%llx", oid, (long long) debug);
sep = "<";
- for (i = 0; i < N(flags); i++)
+ for (i = 0; i < nitems(flags); i++)
if (debug & flags[i].bit) {
printf("%s%s", sep, flags[i].name);
sep = ",";
diff --git a/tools/tools/ath/athrd/athrd.c b/tools/tools/ath/athrd/athrd.c
index c4fc40c..feb020e 100644
--- a/tools/tools/ath/athrd/athrd.c
+++ b/tools/tools/ath/athrd/athrd.c
@@ -32,18 +32,20 @@
#include "ah.h"
+#include <sys/param.h>
+
#include <net80211/_ieee80211.h>
#include <net80211/ieee80211_regdomain.h>
#include "ah_internal.h"
#include "ah_eeprom_v3.h" /* XXX */
+#include <ctype.h>
+#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
-#include <stdarg.h>
#include <string.h>
#include <unistd.h>
-#include <ctype.h>
int ath_hal_debug = 0;
HAL_CTRY_CODE cc = CTRY_DEFAULT;
@@ -535,43 +537,37 @@ static struct {
static HAL_BOOL
rdlookup(const char *name, HAL_REG_DOMAIN *rd)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(domains); i++)
+ for (i = 0; i < nitems(domains); i++)
if (strcasecmp(domains[i].name, name) == 0) {
*rd = domains[i].rd;
return AH_TRUE;
}
return AH_FALSE;
-#undef N
}
static const char *
getrdname(HAL_REG_DOMAIN rd)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(domains); i++)
+ for (i = 0; i < nitems(domains); i++)
if (domains[i].rd == rd)
return domains[i].name;
return NULL;
-#undef N
}
static void
rdlist()
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
printf("\nRegulatory domains:\n\n");
- for (i = 0; i < N(domains); i++)
+ for (i = 0; i < nitems(domains); i++)
printf("%-15s%s", domains[i].name,
((i+1)%5) == 0 ? "\n" : "");
printf("\n");
-#undef N
}
typedef struct {
@@ -728,10 +724,9 @@ static COUNTRY_CODE_TO_ENUM_RD allCountries[] = {
static HAL_BOOL
cclookup(const char *name, HAL_REG_DOMAIN *rd, HAL_CTRY_CODE *cc)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(allCountries); i++)
+ for (i = 0; i < nitems(allCountries); i++)
if (strcasecmp(allCountries[i].isoName, name) == 0 ||
strcasecmp(allCountries[i].name, name) == 0) {
*rd = allCountries[i].regDmnEnum;
@@ -739,49 +734,42 @@ cclookup(const char *name, HAL_REG_DOMAIN *rd, HAL_CTRY_CODE *cc)
return AH_TRUE;
}
return AH_FALSE;
-#undef N
}
static const char *
getccname(HAL_CTRY_CODE cc)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(allCountries); i++)
+ for (i = 0; i < nitems(allCountries); i++)
if (allCountries[i].countryCode == cc)
return allCountries[i].name;
return NULL;
-#undef N
}
static const char *
getccisoname(HAL_CTRY_CODE cc)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(allCountries); i++)
+ for (i = 0; i < nitems(allCountries); i++)
if (allCountries[i].countryCode == cc)
return allCountries[i].isoName;
return NULL;
-#undef N
}
static void
cclist()
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
printf("\nCountry codes:\n");
- for (i = 0; i < N(allCountries); i++)
+ for (i = 0; i < nitems(allCountries); i++)
printf("%2s %-15.15s%s",
allCountries[i].isoName,
allCountries[i].name,
((i+1)%4) == 0 ? "\n" : " ");
printf("\n");
-#undef N
}
static HAL_BOOL
diff --git a/tools/tools/ath/athstats/athstats.c b/tools/tools/ath/athstats/athstats.c
index 82b5620..bffc512 100644
--- a/tools/tools/ath/athstats/athstats.c
+++ b/tools/tools/ath/athstats/athstats.c
@@ -34,20 +34,22 @@
/*
* ath statistics class.
*/
-#include <sys/types.h>
+
+#include <sys/param.h>
#include <sys/file.h>
#include <sys/sockio.h>
#include <sys/socket.h>
+
#include <net/if.h>
#include <net/if_media.h>
#include <net/if_var.h>
+#include <err.h>
+#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
-#include <signal.h>
#include <string.h>
#include <unistd.h>
-#include <err.h>
#include "ah.h"
#include "ah_desc.h"
@@ -1058,12 +1060,12 @@ BSDSTAT_DEFINE_BOUNCE(athstatfoo)
struct athstatfoo *
athstats_new(const char *ifname, const char *fmtstring)
{
-#define N(a) (sizeof(a) / sizeof(a[0]))
struct athstatfoo_p *wf;
wf = calloc(1, sizeof(struct athstatfoo_p));
if (wf != NULL) {
- bsdstat_init(&wf->base.base, "athstats", athstats, N(athstats));
+ bsdstat_init(&wf->base.base, "athstats", athstats,
+ nitems(athstats));
/* override base methods */
wf->base.base.collect_cur = ath_collect_cur;
wf->base.base.collect_tot = ath_collect_tot;
@@ -1089,5 +1091,4 @@ athstats_new(const char *ifname, const char *fmtstring)
wf->base.setfmt(&wf->base, fmtstring);
}
return &wf->base;
-#undef N
}
diff --git a/tools/tools/ath/athstats/main.c b/tools/tools/ath/athstats/main.c
index 489c0bd..bf0323d 100644
--- a/tools/tools/ath/athstats/main.c
+++ b/tools/tools/ath/athstats/main.c
@@ -41,12 +41,14 @@
* print a list of all possible statistics for use with the -o option.
*/
+#include <sys/param.h>
+
+#include <err.h>
+#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
-#include <signal.h>
-#include <unistd.h>
#include <string.h>
-#include <err.h>
+#include <unistd.h>
#include "athstats.h"
@@ -68,13 +70,11 @@ static struct {
static const char *
getfmt(const char *tag)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(tags); i++)
+ for (i = 0; i < nitems(tags); i++)
if (strcasecmp(tags[i].tag, tag) == 0)
return tags[i].fmt;
return tag;
-#undef N
}
static int signalled;
diff --git a/tools/tools/ath/common/ah_osdep.h b/tools/tools/ath/common/ah_osdep.h
index 0d57633..93b0185 100644
--- a/tools/tools/ath/common/ah_osdep.h
+++ b/tools/tools/ath/common/ah_osdep.h
@@ -35,6 +35,8 @@
*/
#include <sys/param.h>
+#include <strings.h>
+
/*
* Bus i/o type definitions.
*/
diff --git a/tools/tools/ath/common/dumpregs_5210.c b/tools/tools/ath/common/dumpregs_5210.c
index f7b273b..ac6e804 100644
--- a/tools/tools/ath/common/dumpregs_5210.c
+++ b/tools/tools/ath/common/dumpregs_5210.c
@@ -28,6 +28,9 @@
*
* $FreeBSD$
*/
+
+#include <sys/param.h>
+
#include "diag.h"
#include "ah.h"
@@ -37,8 +40,6 @@
#include "dumpregs.h"
-#define N(a) (sizeof(a) / sizeof(a[0]))
-
static struct dumpreg ar5210regs[] = {
DEFBASIC(AR_TXDP0, "TXDP0"),
DEFBASIC(AR_TXDP1, "TXDP1"),
@@ -118,7 +119,7 @@ static __constructor void
ar5210_ctor(void)
{
#define MAC5210 SREV(1,0), SREV(2,0)
- register_regs(ar5210regs, N(ar5210regs), MAC5210, PHYANY);
+ register_regs(ar5210regs, nitems(ar5210regs), MAC5210, PHYANY);
register_keycache(64, MAC5210, PHYANY);
register_range(0x9800, 0x9840, DUMP_BASEBAND, MAC5210, PHYANY);
diff --git a/tools/tools/ath/common/dumpregs_5211.c b/tools/tools/ath/common/dumpregs_5211.c
index 17ecbce..ae8e232 100644
--- a/tools/tools/ath/common/dumpregs_5211.c
+++ b/tools/tools/ath/common/dumpregs_5211.c
@@ -28,6 +28,9 @@
*
* $FreeBSD$
*/
+
+#include <sys/param.h>
+
#include "diag.h"
#include "ah.h"
@@ -37,8 +40,6 @@
#include "dumpregs.h"
-#define N(a) (sizeof(a) / sizeof(a[0]))
-
static struct dumpreg ar5211regs[] = {
DEFBASICfmt(AR_CR, "CR", AR_CR_BITS),
DEFBASIC(AR_RXDP, "RXDP"),
@@ -284,7 +285,7 @@ static __constructor void
ar5211_ctor(void)
{
#define MAC5211 SREV(2,0), SREV(4,5)
- register_regs(ar5211regs, N(ar5211regs), MAC5211, PHYANY);
+ register_regs(ar5211regs, nitems(ar5211regs), MAC5211, PHYANY);
register_keycache(128, MAC5211, PHYANY);
register_range(0x9800, 0x987c, DUMP_BASEBAND, MAC5211, PHYANY);
diff --git a/tools/tools/ath/common/dumpregs_5212.c b/tools/tools/ath/common/dumpregs_5212.c
index 8d129ec..33f67d4 100644
--- a/tools/tools/ath/common/dumpregs_5212.c
+++ b/tools/tools/ath/common/dumpregs_5212.c
@@ -28,6 +28,9 @@
*
* $FreeBSD$
*/
+
+#include <sys/param.h>
+
#include "diag.h"
#include "ah.h"
@@ -37,8 +40,6 @@
#include "dumpregs.h"
-#define N(a) (sizeof(a) / sizeof(a[0]))
-
#define MAC5212 SREV(4,5), SREV(16,0)
#define MAC5213 SREV(5,9), SREV(16,0)
@@ -421,7 +422,7 @@ static struct dumpreg ar5212regs[] = {
static __constructor void
ar5212_ctor(void)
{
- register_regs(ar5212regs, N(ar5212regs), MAC5212, PHYANY);
+ register_regs(ar5212regs, nitems(ar5212regs), MAC5212, PHYANY);
register_keycache(128, MAC5212, PHYANY);
register_range(0x9800, 0x987c, DUMP_BASEBAND, MAC5212, PHYANY);
diff --git a/tools/tools/ath/common/dumpregs_5416.c b/tools/tools/ath/common/dumpregs_5416.c
index 2ef8e7b..31bf21c 100644
--- a/tools/tools/ath/common/dumpregs_5416.c
+++ b/tools/tools/ath/common/dumpregs_5416.c
@@ -28,6 +28,9 @@
*
* $FreeBSD$
*/
+
+#include <sys/param.h>
+
#include "diag.h"
#include "ah.h"
@@ -37,8 +40,6 @@
#include "dumpregs.h"
-#define N(a) (sizeof(a) / sizeof(a[0]))
-
#define MAC5416 SREV(13,8), SREV(0xffff,0xffff) /* XXX */
static struct dumpreg ar5416regs[] = {
@@ -406,7 +407,7 @@ static struct dumpreg ar5416regs[] = {
static __constructor void
ar5416_ctor(void)
{
- register_regs(ar5416regs, N(ar5416regs), MAC5416, PHYANY);
+ register_regs(ar5416regs, nitems(ar5416regs), MAC5416, PHYANY);
register_keycache(128, MAC5416, PHYANY);
register_range(0x9800, 0x987c, DUMP_BASEBAND, MAC5416, PHYANY);
diff --git a/tools/tools/crypto/cryptostats.c b/tools/tools/crypto/cryptostats.c
index d1c6115..b69938d 100644
--- a/tools/tools/crypto/cryptostats.c
+++ b/tools/tools/crypto/cryptostats.c
@@ -30,15 +30,19 @@
* Little program to dump the crypto statistics block and, optionally,
* zero all the stats or just the timing stuff.
*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <strings.h>
#include <sys/types.h>
#include <sys/sysctl.h>
#include <sys/time.h>
+
#include <crypto/cryptodev.h>
+#include <err.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <strings.h>
+
static void
printt(const char* tag, struct cryptotstat *ts)
{
diff --git a/tools/tools/crypto/cryptotest.c b/tools/tools/crypto/cryptotest.c
index 5f5e450..c13d3a45 100644
--- a/tools/tools/crypto/cryptotest.c
+++ b/tools/tools/crypto/cryptotest.c
@@ -82,25 +82,25 @@
* Expect ~400 Mb/s for a Broadcom 582x for 8K buffers on a reasonable CPU
* (64-bit PCI helps). Hifn 7811 parts top out at ~110 Mb/s.
*/
-#include <sys/types.h>
+
#include <sys/param.h>
-#include <sys/time.h>
#include <sys/ioctl.h>
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <sys/wait.h>
#include <sys/mman.h>
+#include <sys/sysctl.h>
+#include <sys/time.h>
+#include <sys/wait.h>
+
+#include <err.h>
+#include <fcntl.h>
#include <paths.h>
+#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
-#include <sys/sysctl.h>
-#include <sys/time.h>
#include <crypto/cryptodev.h>
#define CHUNK 64 /* how much to display */
-#define N(a) (sizeof (a) / sizeof (a[0]))
#define streq(a,b) (strcasecmp(a,b) == 0)
void hexdump(char *, int);
@@ -164,7 +164,7 @@ getalgbycode(int cipher)
{
int i;
- for (i = 0; i < N(algorithms); i++)
+ for (i = 0; i < nitems(algorithms); i++)
if (cipher == algorithms[i].code)
return &algorithms[i];
return NULL;
@@ -175,7 +175,7 @@ getalgbyname(const char* name)
{
int i;
- for (i = 0; i < N(algorithms); i++)
+ for (i = 0; i < nitems(algorithms); i++)
if (streq(name, algorithms[i].name))
return &algorithms[i];
return NULL;
@@ -239,7 +239,7 @@ rdigit(void)
0x10,0x54,0x11,0x48,0x45,0x12,0x4f,0x13,0x49,0x53,0x14,0x41,
0x15,0x16,0x4e,0x55,0x54,0x17,0x18,0x4a,0x4f,0x42,0x19,0x01
};
- return 0x20+a[random()%N(a)];
+ return 0x20+a[random()%nitems(a)];
}
static void
@@ -298,7 +298,7 @@ runtest(struct alg *alg, int count, int size, u_long cmd, struct timeval *tv)
for (i = 0; i < size; i++)
cleartext[i] = rdigit();
memcpy(originaltext, cleartext, size);
- for (i = 0; i < N(iv); i++)
+ for (i = 0; i < nitems(iv); i++)
iv[i] = rdigit();
if (verbose) {
@@ -569,7 +569,7 @@ main(int argc, char **argv)
count = atoi(argv[0]);
while (argc > 1) {
int s = atoi(argv[1]);
- if (nsizes < N(sizes)) {
+ if (nsizes < nitems(sizes)) {
sizes[nsizes++] = s;
} else {
printf("Too many sizes, ignoring %u\n", s);
@@ -590,7 +590,7 @@ main(int argc, char **argv)
}
if (testall) {
- for (i = 0; i < N(algorithms); i++) {
+ for (i = 0; i < nitems(algorithms); i++) {
int j;
alg = &algorithms[i];
for (j = 0; j < nsizes; j++)
diff --git a/tools/tools/crypto/hifnstats.c b/tools/tools/crypto/hifnstats.c
index 1f40cd5..f073d86 100644
--- a/tools/tools/crypto/hifnstats.c
+++ b/tools/tools/crypto/hifnstats.c
@@ -25,8 +25,13 @@
*
* $FreeBSD$
*/
-#include <stdio.h>
+
#include <sys/types.h>
+#include <sys/sysctl.h>
+
+#include <err.h>
+#include <stdio.h>
+
#include "../../../sys/dev/hifn/hifn7751var.h"
/*
@@ -39,7 +44,7 @@ main(int argc, char *argv[])
size_t slen;
slen = sizeof (stats);
- if (sysctlbyname("hw.hifn.stats", &stats, &slen, NULL, NULL) < 0)
+ if (sysctlbyname("hw.hifn.stats", &stats, &slen, NULL, 0) < 0)
err(1, "kern.hifn.stats");
printf("input %llu bytes %u packets\n",
diff --git a/tools/tools/crypto/ipsecstats.c b/tools/tools/crypto/ipsecstats.c
index 9f98ea8..3556ce5 100644
--- a/tools/tools/crypto/ipsecstats.c
+++ b/tools/tools/crypto/ipsecstats.c
@@ -25,10 +25,15 @@
*
* $FreeBSD$
*/
-#include <sys/types.h>
+
+#include <sys/param.h>
+#include <sys/sysctl.h>
+
#include <netipsec/ipsec.h>
#include <netipsec/ah_var.h>
#include <netipsec/esp_var.h>
+
+#include <err.h>
#include <stdint.h>
#include <stdio.h>
@@ -62,7 +67,6 @@ static const struct alg ipcompalgs[] = {
{ SADB_X_CALG_DEFLATE, "deflate", },
{ SADB_X_CALG_LZS, "lzs", },
};
-#define N(a) (sizeof(a)/sizeof(a[0]))
static const char*
algname(int a, const struct alg algs[], int nalgs)
@@ -91,13 +95,13 @@ main(int argc, char *argv[])
int i;
slen = sizeof (ips);
- if (sysctlbyname("net.inet.ipsec.ipsecstats", &ips, &slen, NULL, NULL) < 0)
+ if (sysctlbyname("net.inet.ipsec.ipsecstats", &ips, &slen, NULL, 0) < 0)
err(1, "net.inet.ipsec.ipsecstats");
slen = sizeof (ahs);
- if (sysctlbyname("net.inet.ah.stats", &ahs, &slen, NULL, NULL) < 0)
+ if (sysctlbyname("net.inet.ah.stats", &ahs, &slen, NULL, 0) < 0)
err(1, "net.inet.ah.stats");
slen = sizeof (esps);
- if (sysctlbyname("net.inet.esp.stats", &esps, &slen, NULL, NULL) < 0)
+ if (sysctlbyname("net.inet.esp.stats", &esps, &slen, NULL, 0) < 0)
err(1, "net.inet.esp.stats");
#define AHSTAT(x,fmt) if (x) printf("ah " fmt ": %ju\n", (uintmax_t)x)
@@ -121,7 +125,7 @@ main(int argc, char *argv[])
for (i = 0; i < AH_ALG_MAX; i++)
if (ahs.ahs_hist[i])
printf("ah packets with %s: %ju\n"
- , algname(i, aalgs, N(aalgs))
+ , algname(i, aalgs, nitems(aalgs))
, (uintmax_t)ahs.ahs_hist[i]
);
AHSTAT(ahs.ahs_ibytes, "bytes received");
@@ -150,7 +154,7 @@ main(int argc, char *argv[])
for (i = 0; i < ESP_ALG_MAX; i++)
if (esps.esps_hist[i])
printf("esp packets with %s: %ju\n"
- , algname(i, espalgs, N(espalgs))
+ , algname(i, espalgs, nitems(espalgs))
, (uintmax_t)esps.esps_hist[i]
);
ESPSTAT(esps.esps_ibytes, "bytes received");
diff --git a/tools/tools/crypto/safestats.c b/tools/tools/crypto/safestats.c
index ea7601a..acaab6e 100644
--- a/tools/tools/crypto/safestats.c
+++ b/tools/tools/crypto/safestats.c
@@ -25,8 +25,13 @@
*
* $FreeBSD$
*/
-#include <stdio.h>
+
#include <sys/types.h>
+#include <sys/sysctl.h>
+
+#include <err.h>
+#include <stdio.h>
+
#include "../../../sys/dev/safe/safevar.h"
/*
@@ -39,7 +44,7 @@ main(int argc, char *argv[])
size_t slen;
slen = sizeof (stats);
- if (sysctlbyname("hw.safe.stats", &stats, &slen, NULL, NULL) < 0)
+ if (sysctlbyname("hw.safe.stats", &stats, &slen, NULL, 0) < 0)
err(1, "hw.safe.stats");
printf("input %llu bytes %u packets\n",
diff --git a/tools/tools/crypto/ubsecstats.c b/tools/tools/crypto/ubsecstats.c
index 736f783..9ce9892 100644
--- a/tools/tools/crypto/ubsecstats.c
+++ b/tools/tools/crypto/ubsecstats.c
@@ -25,8 +25,13 @@
*
* $FreeBSD$
*/
-#include <stdio.h>
+
#include <sys/types.h>
+#include <sys/sysctl.h>
+
+#include <err.h>
+#include <stdio.h>
+
#include "../../../sys/dev/ubsec/ubsecvar.h"
/*
@@ -39,7 +44,7 @@ main(int argc, char *argv[])
size_t slen;
slen = sizeof (stats);
- if (sysctlbyname("hw.ubsec.stats", &stats, &slen, NULL, NULL) < 0)
+ if (sysctlbyname("hw.ubsec.stats", &stats, &slen, NULL, 0) < 0)
err(1, "kern.ubsec_stats");
printf("input %llu bytes %u packets\n",
diff --git a/tools/tools/cxgbetool/cxgbetool.c b/tools/tools/cxgbetool/cxgbetool.c
index bb27cdb..da04099 100644
--- a/tools/tools/cxgbetool/cxgbetool.c
+++ b/tools/tools/cxgbetool/cxgbetool.c
@@ -28,29 +28,30 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <stdint.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <ctype.h>
-#include <errno.h>
-#include <err.h>
-#include <fcntl.h>
-#include <string.h>
-#include <stdio.h>
+#include <sys/param.h>
#include <sys/ioctl.h>
-#include <limits.h>
#include <sys/mman.h>
-#include <sys/types.h>
#include <sys/socket.h>
#include <sys/stat.h>
-#include <net/ethernet.h>
-#include <netinet/in.h>
+
#include <arpa/inet.h>
+#include <net/ethernet.h>
#include <net/sff8472.h>
+#include <netinet/in.h>
+
+#include <ctype.h>
+#include <err.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <limits.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
#include "t4_ioctl.h"
-#define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
#define in_range(val, lo, hi) ( val < 0 || (val <= hi && val >= lo))
#define max(x, y) ((x) > (y) ? (x) : (y))
@@ -345,7 +346,7 @@ dump_regs_t4(int argc, const char *argv[], const uint32_t *regs)
T4_MODREGS(xgmac)
};
- return dump_regs_table(argc, argv, regs, t4_mod, ARRAY_SIZE(t4_mod));
+ return dump_regs_table(argc, argv, regs, t4_mod, nitems(t4_mod));
}
#undef T4_MODREGS
@@ -360,8 +361,7 @@ dump_regs_t4vf(int argc, const char *argv[], const uint32_t *regs)
{ "cim", t4vf_cim_regs },
};
- return dump_regs_table(argc, argv, regs, t4vf_mod,
- ARRAY_SIZE(t4vf_mod));
+ return dump_regs_table(argc, argv, regs, t4vf_mod, nitems(t4vf_mod));
}
#define T5_MODREGS(name) { #name, t5_##name##_regs }
@@ -398,7 +398,7 @@ dump_regs_t5(int argc, const char *argv[], const uint32_t *regs)
{ "hma", t5_hma_t5_regs }
};
- return dump_regs_table(argc, argv, regs, t5_mod, ARRAY_SIZE(t5_mod));
+ return dump_regs_table(argc, argv, regs, t5_mod, nitems(t5_mod));
}
#undef T5_MODREGS
diff --git a/tools/tools/ioat/Makefile b/tools/tools/ioat/Makefile
new file mode 100644
index 0000000..a3f4968
--- /dev/null
+++ b/tools/tools/ioat/Makefile
@@ -0,0 +1,8 @@
+# $FreeBSD$
+
+PROG= ioatcontrol
+MAN= ioatcontrol.8
+CFLAGS+= -I${.CURDIR:H:H:H}/sys/dev/ioat
+WARNS?= 6
+
+.include <bsd.prog.mk>
diff --git a/tools/tools/ioat/ioatcontrol.8 b/tools/tools/ioat/ioatcontrol.8
new file mode 100644
index 0000000..762ce14
--- /dev/null
+++ b/tools/tools/ioat/ioatcontrol.8
@@ -0,0 +1,75 @@
+.\" Copyright (c) 2015 EMC / Isilon Storage Division
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd August 24, 2015
+.Dt IOATCONTROL 8
+.Os
+.Sh NAME
+.Nm ioatcontrol
+.Nd Userspace tool to test
+.Xr ioat 4
+.Sh SYNOPSIS
+.Nm
+.Ar channel_number
+.Ar num_loops
+.Sh DESCRIPTION
+.Nm
+allows one to issue some number of test operations to the
+.Xr ioat 4
+driver on a specific hardware channel.
+.Pp
+Each loop will allocate two chunks of memory, write data patterns to them,
+submit a DMA request to copy one buffer to the other, and compare the contents
+in the callback.
+If the contents are not as expected, an error is reported.
+.Sh FILES
+.Pa /dev/ioat_test
+.Pp
+The interface between
+.Nm
+and
+.Xr ioat 4 .
+.Nm
+exposes it with
+.Cd hw.ioat.enable_ioat_test=1 .
+.Sh SEE ALSO
+.Xr ioat 4
+.Sh HISTORY
+The
+.Xr ioat 4
+driver first appeared in
+.Fx 11.0 .
+.Sh AUTHORS
+The
+.Xr ioat 4
+driver and
+.Nm
+tool were developed by
+.An \&Jim Harris Aq Mt jimharris@FreeBSD.org ,
+and
+.An \&Carl Delsey Aq Mt carl.r.delsey@intel.com .
+This manual page was written by
+.An \&Conrad Meyer Aq Mt cem@FreeBSD.org .
diff --git a/tools/tools/ioat/ioatcontrol.c b/tools/tools/ioat/ioatcontrol.c
new file mode 100644
index 0000000..7cfb816
--- /dev/null
+++ b/tools/tools/ioat/ioatcontrol.c
@@ -0,0 +1,70 @@
+/*-
+ * Copyright (C) 2012 Intel Corporation
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <sys/ioctl.h>
+
+#include <fcntl.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <sysexits.h>
+#include <unistd.h>
+
+#include "ioat_test.h"
+
+int
+main(int argc, char **argv)
+{
+ struct ioat_test t;
+ int fd;
+
+ if (argc < 3) {
+ printf("Usage: %s <channel #> <num_loops>\n", argv[0]);
+ return (EX_USAGE);
+ }
+
+ t.channel_index = atoi(argv[1]);
+ if (t.channel_index > 8) {
+ printf("Channel number must be between 0 and 7.\n");
+ return (EX_USAGE);
+ }
+
+ t.num_loops = atoi(argv[2]);
+
+ fd = open("/dev/ioat_test", O_RDWR);
+ if (fd < 0) {
+ printf("Cannot open /dev/ioat_test\n");
+ return (EX_UNAVAILABLE);
+ }
+
+ (void)ioctl(fd, IOAT_DMATEST, &t);
+ close(fd);
+
+ return (t.status);
+}
diff --git a/tools/tools/iwn/iwnstats/iwn_ioctl.c b/tools/tools/iwn/iwnstats/iwn_ioctl.c
index 97b2a91..4446886 100644
--- a/tools/tools/iwn/iwnstats/iwn_ioctl.c
+++ b/tools/tools/iwn/iwnstats/iwn_ioctl.c
@@ -63,28 +63,24 @@
#include "iwn_ioctl.h"
void
-iwn_setifname(struct iwnstats *is, const char *ifname)
-{
-
- strncpy(is->ifr.ifr_name, ifname, sizeof (is->ifr.ifr_name));
-}
-
-void
iwn_zerostats(struct iwnstats *is)
{
- if (ioctl(is->s, SIOCZIWNSTATS, &is->ifr) < 0)
- err(-1, "ioctl: %s", is->ifr.ifr_name);
+ if (ioctl(is->s, SIOCZIWNSTATS, NULL) < 0)
+ err(-1, "ioctl");
}
int
iwn_collect(struct iwnstats *is)
{
int err;
+ struct iwn_ioctl_data d;
- is->ifr.ifr_data = (caddr_t) &is->st;
- err = ioctl(is->s, SIOCGIWNSTATS, &is->ifr);
+ printf("st: %p\n", &is->st);
+ d.dst_addr = &is->st;
+ d.dst_len = sizeof(is->st);
+ err = ioctl(is->s, SIOCGIWNSTATS, (caddr_t) &d);
if (err < 0)
- warn("ioctl: %s", is->ifr.ifr_name);
+ warn("ioctl");
return (err);
}
diff --git a/tools/tools/iwn/iwnstats/iwn_ioctl.h b/tools/tools/iwn/iwnstats/iwn_ioctl.h
index b07ddb5..bc368ee 100644
--- a/tools/tools/iwn/iwnstats/iwn_ioctl.h
+++ b/tools/tools/iwn/iwnstats/iwn_ioctl.h
@@ -31,7 +31,6 @@
#ifndef __IWN_IOCTL_H__
#define __IWN_IOCTL_H__
-extern void iwn_setifname(struct iwnstats *is, const char *ifname);
extern void iwn_zerostats(struct iwnstats *is);
extern int iwn_collect(struct iwnstats *is);
diff --git a/tools/tools/iwn/iwnstats/iwnstats.h b/tools/tools/iwn/iwnstats/iwnstats.h
index 6443ca1..372a2aa 100644
--- a/tools/tools/iwn/iwnstats/iwnstats.h
+++ b/tools/tools/iwn/iwnstats/iwnstats.h
@@ -33,7 +33,6 @@
struct iwnstats {
int s;
- struct ifreq ifr;
struct iwn_stats st;
};
diff --git a/tools/tools/iwn/iwnstats/main.c b/tools/tools/iwn/iwnstats/main.c
index 590c178..b047e11 100644
--- a/tools/tools/iwn/iwnstats/main.c
+++ b/tools/tools/iwn/iwnstats/main.c
@@ -33,6 +33,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
+#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <err.h>
@@ -56,16 +57,17 @@ static struct iwnstats *
iwnstats_new(const char *ifname)
{
struct iwnstats *is;
+ char buf[128];
is = calloc(1, sizeof(struct iwnstats));
if (is == NULL)
return (NULL);
- is->s = socket(AF_INET, SOCK_DGRAM, 0);
+ snprintf(buf, sizeof(buf), "/dev/%s", ifname);
+ is->s = open(buf, O_RDWR);
if (is->s < 0)
- err(1, "socket");
+ err(1, "open");
- iwn_setifname(is, ifname);
return (is);
}
@@ -290,19 +292,6 @@ main(int argc, char *argv[])
if (ifname)
free(ifname);
ifname = strdup(optarg);
- if (strncmp(ifname, "wlan", 4) == 0) {
- free(ifname);
- len = 0;
- asprintf(&sysctlname, "net.wlan.%s.%%parent", ifname + 4);
- ret = sysctlbyname(sysctlname, NULL, &len, NULL, 0);
- if (ret != 0)
- err(1, "sysctl failed");
- ifname = calloc(len, 1);
- ret = sysctlbyname(sysctlname, ifname, &len, NULL, 0);
- if (ret != 0)
- err(1, "sysctl failed");
- free(sysctlname);
- }
break;
default:
case '?':
diff --git a/tools/tools/mwl/mwldebug/mwldebug.c b/tools/tools/mwl/mwldebug/mwldebug.c
index 4e97b6d..4080053 100644
--- a/tools/tools/mwl/mwldebug/mwldebug.c
+++ b/tools/tools/mwl/mwldebug/mwldebug.c
@@ -33,21 +33,19 @@
* mwldebug [-i interface] flags
* (default interface is mwl0).
*/
-#include <sys/types.h>
+
#include <sys/param.h>
#include <sys/file.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <sys/sysctl.h>
-#include <stdlib.h>
-#include <stdio.h>
#include <ctype.h>
+#include <err.h>
#include <getopt.h>
+#include <stdio.h>
+#include <stdlib.h>
#include <string.h>
-#include <err.h>
-
-#define N(a) (sizeof(a)/sizeof(a[0]))
const char *progname;
@@ -100,7 +98,7 @@ getflag(const char *name, int len)
{
int i;
- for (i = 0; i < N(flags); i++)
+ for (i = 0; i < nitems(flags); i++)
if (strncasecmp(flags[i].name, name, len) == 0)
return flags[i].bit;
return 0;
@@ -112,7 +110,7 @@ getflagname(u_int flag)
{
int i;
- for (i = 0; i < N(flags); i++)
+ for (i = 0; i < nitems(flags); i++)
if (flags[i].bit == flag)
return flags[i].name;
return "???";
@@ -126,7 +124,7 @@ usage(void)
fprintf(stderr, "usage: %s [-i device] [flags]\n", progname);
fprintf(stderr, "where flags are:\n");
- for (i = 0; i < N(flags); i++)
+ for (i = 0; i < nitems(flags); i++)
printf("%s\n", flags[i].name);
exit(-1);
}
@@ -202,7 +200,7 @@ main(int argc, char *argv[])
} else
printf("%s: 0x%x", oid, debug);
sep = "<";
- for (i = 0; i < N(flags); i++)
+ for (i = 0; i < nitems(flags); i++)
if (debug & flags[i].bit) {
printf("%s%s", sep, flags[i].name);
sep = ",";
diff --git a/tools/tools/mwl/mwlstats/mwlstats.c b/tools/tools/mwl/mwlstats/mwlstats.c
index 50eb94f..00d0c75 100644
--- a/tools/tools/mwl/mwlstats/mwlstats.c
+++ b/tools/tools/mwl/mwlstats/mwlstats.c
@@ -32,20 +32,22 @@
/*
* mwl statistics class.
*/
-#include <sys/types.h>
+
+#include <sys/param.h>
#include <sys/file.h>
+#include <sys/ioctl.h>
#include <sys/sockio.h>
#include <sys/socket.h>
-#include <sys/ioctl.h>
+
#include <net/if.h>
#include <net/if_media.h>
-#include <stdlib.h>
-#include <stdio.h>
+#include <err.h>
#include <signal.h>
+#include <stdio.h>
+#include <stdlib.h>
#include <string.h>
#include <unistd.h>
-#include <err.h>
#include "../../../../sys/net80211/ieee80211_ioctl.h"
#include "../../../../sys/net80211/ieee80211_radiotap.h"
@@ -544,12 +546,12 @@ BSDSTAT_DEFINE_BOUNCE(mwlstatfoo)
struct mwlstatfoo *
mwlstats_new(const char *ifname, const char *fmtstring)
{
-#define N(a) (sizeof(a) / sizeof(a[0]))
struct mwlstatfoo_p *wf;
wf = calloc(1, sizeof(struct mwlstatfoo_p));
if (wf != NULL) {
- bsdstat_init(&wf->base.base, "mwlstats", mwlstats, N(mwlstats));
+ bsdstat_init(&wf->base.base, "mwlstats", mwlstats,
+ nitems(mwlstats));
/* override base methods */
wf->base.base.collect_cur = mwl_collect_cur;
wf->base.base.collect_tot = mwl_collect_tot;
@@ -574,5 +576,4 @@ mwlstats_new(const char *ifname, const char *fmtstring)
wf->base.setfmt(&wf->base, fmtstring);
}
return &wf->base;
-#undef N
}
diff --git a/tools/tools/nanobsd/defaults.sh b/tools/tools/nanobsd/defaults.sh
index a556e1b..57e9cfc 100755
--- a/tools/tools/nanobsd/defaults.sh
+++ b/tools/tools/nanobsd/defaults.sh
@@ -45,7 +45,7 @@ NANO_SRC=/usr/src
# Where nanobsd additional files live under the source tree
NANO_TOOLS=tools/tools/nanobsd
-# Where cust_pkg() finds packages to install
+# Where cust_pkgng() finds packages to install
NANO_PACKAGE_DIR=${NANO_SRC}/${NANO_TOOLS}/Pkg
NANO_PACKAGE_LIST="*"
@@ -762,55 +762,6 @@ cust_install_files () (
#######################################################################
# Install packages from ${NANO_PACKAGE_DIR}
-cust_pkg () (
-
- # If the package directory doesn't exist, we're done.
- if [ ! -d ${NANO_PACKAGE_DIR} ]; then
- echo "DONE 0 packages"
- return 0
- fi
-
- # Copy packages into chroot
- mkdir -p ${NANO_WORLDDIR}/Pkg ${NANO_WORLDDIR}/${NANO_PKG_META_BASE}/pkg
- (
- cd ${NANO_PACKAGE_DIR}
- find ${NANO_PACKAGE_LIST} -print |
- cpio -Ldumpv ${NANO_WORLDDIR}/Pkg
- )
-
- # Count & report how many we have to install
- todo=`ls ${NANO_WORLDDIR}/Pkg | wc -l`
- echo "=== TODO: $todo"
- ls ${NANO_WORLDDIR}/Pkg
- echo "==="
- while true
- do
- # Record how many we have now
- have=`ls ${NANO_WORLDDIR}/${NANO_PKG_META_BASE}/pkg | wc -l`
-
- # Attempt to install more packages
- # ...but no more than 200 at a time due to pkg_add's internal
- # limitations.
- CR0 'ls Pkg/*tbz | xargs -n 200 env PKG_DBDIR='${NANO_PKG_META_BASE}'/pkg pkg_add -v -F'
-
- # See what that got us
- now=`ls ${NANO_WORLDDIR}/${NANO_PKG_META_BASE}/pkg | wc -l`
- echo "=== NOW $now"
- ls ${NANO_WORLDDIR}/${NANO_PKG_META_BASE}/pkg
- echo "==="
-
-
- if [ $now -eq $todo ] ; then
- echo "DONE $now packages"
- break
- elif [ $now -eq $have ] ; then
- echo "FAILED: Nothing happened on this pass"
- exit 2
- fi
- done
- nano_rm -rf ${NANO_WORLDDIR}/Pkg
-)
-
cust_pkgng () (
# If the package directory doesn't exist, we're done.
diff --git a/tools/tools/nanobsd/pcengines/common.conf b/tools/tools/nanobsd/pcengines/common.conf
index e1179bd..40275dd 100644
--- a/tools/tools/nanobsd/pcengines/common.conf
+++ b/tools/tools/nanobsd/pcengines/common.conf
@@ -66,7 +66,7 @@ cust_boot_cfg () (
echo "hint.acpi.0.disabled=\"1\"" >> boot/loader.conf
)
customize_cmd cust_boot_cfg
-customize_cmd cust_pkg
+customize_cmd cust_pkgng
cust_etc_cfg () (
cd ${NANO_WORLDDIR}
mkdir -pv z/scratch
diff --git a/tools/tools/nanobsd/rescue/common b/tools/tools/nanobsd/rescue/common
index 908455e..d2a8a6d 100644
--- a/tools/tools/nanobsd/rescue/common
+++ b/tools/tools/nanobsd/rescue/common
@@ -65,7 +65,7 @@ customize_cmd cust_ld32_cfg
#)
#customize_cmd cust_boot_cfg
-customize_cmd cust_pkg
+customize_cmd cust_pkgng
cust_etc_cfg () (
cd ${NANO_WORLDDIR}
diff --git a/tools/tools/net80211/wlanstats/main.c b/tools/tools/net80211/wlanstats/main.c
index 1210fd1..34d939f 100644
--- a/tools/tools/net80211/wlanstats/main.c
+++ b/tools/tools/net80211/wlanstats/main.c
@@ -34,17 +34,18 @@
* (default interface is wlan0).
*/
-#include <sys/types.h>
+#include <sys/param.h>
#include <sys/socket.h>
+
#include <net/ethernet.h>
#include <net80211/_ieee80211.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <signal.h>
-#include <unistd.h>
#include <err.h>
+#include <signal.h>
+#include <stdio.h>
+#include <stdlib.h>
#include <strings.h>
+#include <unistd.h>
#include "wlanstats.h"
@@ -65,13 +66,11 @@ static struct {
static const char *
getfmt(const char *tag)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(tags); i++)
+ for (i = 0; i < nitems(tags); i++)
if (strcasecmp(tags[i].tag, tag) == 0)
return tags[i].fmt;
return tag;
-#undef N
}
static int signalled;
diff --git a/tools/tools/net80211/wlanstats/wlanstats.c b/tools/tools/net80211/wlanstats/wlanstats.c
index 9cee61a..ef83470 100644
--- a/tools/tools/net80211/wlanstats/wlanstats.c
+++ b/tools/tools/net80211/wlanstats/wlanstats.c
@@ -32,23 +32,25 @@
/*
* net80211 statistics class.
*/
-#include <sys/types.h>
+
+#include <sys/param.h>
#include <sys/file.h>
#include <sys/sockio.h>
#include <sys/socket.h>
+
#include <net/if.h>
#include <net/if_dl.h>
#include <net/if_media.h>
#include <net/if_var.h>
#include <net/ethernet.h>
+#include <err.h>
+#include <ifaddrs.h>
+#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
-#include <signal.h>
#include <string.h>
#include <unistd.h>
-#include <err.h>
-#include <ifaddrs.h>
#include "../../../../sys/net80211/ieee80211_ioctl.h"
@@ -558,7 +560,6 @@ wlan_update_tot(struct bsdstat *sf)
void
setreason(char b[], size_t bs, int v)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
static const char *reasons[] = {
[IEEE80211_REASON_UNSPECIFIED] = "unspecified",
[IEEE80211_REASON_AUTH_EXPIRE] = "auth expire",
@@ -584,17 +585,15 @@ setreason(char b[], size_t bs, int v)
[IEEE80211_REASON_802_1X_AUTH_FAILED] = "802.1x auth failed",
[IEEE80211_REASON_CIPHER_SUITE_REJECTED]= "cipher suite rejected",
};
- if (v < N(reasons) && reasons[v] != NULL)
+ if (v < nitems(reasons) && reasons[v] != NULL)
snprintf(b, bs, "%s (%u)", reasons[v], v);
else
snprintf(b, bs, "%u", v);
-#undef N
}
void
setstatus(char b[], size_t bs, int v)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
static const char *status[] = {
[IEEE80211_STATUS_SUCCESS] = "success",
[IEEE80211_STATUS_UNSPECIFIED] = "unspecified",
@@ -623,11 +622,10 @@ setstatus(char b[], size_t bs, int v)
[IEEE80211_STATUS_INVALID_RSN_IE_CAP] = "invalid rsn ie cap",
[IEEE80211_STATUS_CIPHER_SUITE_REJECTED]= "cipher suite rejected",
};
- if (v < N(status) && status[v] != NULL)
+ if (v < nitems(status) && status[v] != NULL)
snprintf(b, bs, "%s (%u)", status[v], v);
else
snprintf(b, bs, "%u", v);
-#undef N
}
static int
@@ -999,12 +997,12 @@ BSDSTAT_DEFINE_BOUNCE(wlanstatfoo)
struct wlanstatfoo *
wlanstats_new(const char *ifname, const char *fmtstring)
{
-#define N(a) (sizeof(a) / sizeof(a[0]))
struct wlanstatfoo_p *wf;
wf = calloc(1, sizeof(struct wlanstatfoo_p));
if (wf != NULL) {
- bsdstat_init(&wf->base.base, "wlanstats", wlanstats, N(wlanstats));
+ bsdstat_init(&wf->base.base, "wlanstats", wlanstats,
+ nitems(wlanstats));
/* override base methods */
wf->base.base.collect_cur = wlan_collect_cur;
wf->base.base.collect_tot = wlan_collect_tot;
@@ -1030,5 +1028,4 @@ wlanstats_new(const char *ifname, const char *fmtstring)
wf->base.setfmt(&wf->base, fmtstring);
}
return &wf->base;
-#undef N
}
diff --git a/tools/tools/net80211/wlantxtime/wlantxtime.c b/tools/tools/net80211/wlantxtime/wlantxtime.c
index 2db88d4..90c5c8f 100644
--- a/tools/tools/net80211/wlantxtime/wlantxtime.c
+++ b/tools/tools/net80211/wlantxtime/wlantxtime.c
@@ -31,7 +31,6 @@ __FBSDID("$FreeBSD$");
*/
#include <sys/param.h>
-#include <sys/types.h>
#include <net/if_llc.h>
@@ -228,13 +227,12 @@ static struct ieee80211_rate_table ieee80211_turboa_table = {
static void
ieee80211_setup_ratetable(struct ieee80211_rate_table *rt)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
#define WLAN_CTRL_FRAME_SIZE \
(sizeof(struct ieee80211_frame_ack) + IEEE80211_CRC_LEN)
int i;
- for (i = 0; i < N(rt->rateCodeToIndex); i++)
+ for (i = 0; i < nitems(rt->rateCodeToIndex); i++)
rt->rateCodeToIndex[i] = (uint8_t) -1;
for (i = 0; i < rt->rateCount; i++) {
uint8_t code = rt->info[i].dot11Rate;
@@ -267,14 +265,12 @@ ieee80211_setup_ratetable(struct ieee80211_rate_table *rt)
}
#undef WLAN_CTRL_FRAME_SIZE
-#undef N
}
/* Setup all rate tables */
static void
ieee80211_phy_init(void)
{
-#define N(arr) (int)(sizeof(arr) / sizeof(arr[0]))
static struct ieee80211_rate_table * const ratetables[] = {
&ieee80211_half_table,
&ieee80211_quarter_table,
@@ -287,12 +283,11 @@ ieee80211_phy_init(void)
&ieee80211_11g_table,
&ieee80211_11b_table
};
- int i;
+ unsigned int i;
- for (i = 0; i < N(ratetables); ++i)
+ for (i = 0; i < nitems(ratetables); ++i)
ieee80211_setup_ratetable(ratetables[i]);
-#undef N
}
#define CCK_SIFS_TIME 10
#define CCK_PREAMBLE_BITS 144
diff --git a/tools/tools/npe/npestats/main.c b/tools/tools/npe/npestats/main.c
index 3517aab..8ffcbc3 100644
--- a/tools/tools/npe/npestats/main.c
+++ b/tools/tools/npe/npestats/main.c
@@ -29,12 +29,14 @@
* $FreeBSD$
*/
+#include <sys/param.h>
+
+#include <err.h>
+#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
-#include <signal.h>
#include <strings.h>
#include <unistd.h>
-#include <err.h>
#include "npestats.h"
@@ -50,13 +52,11 @@ static struct {
static const char *
getfmt(const char *tag)
{
-#define N(a) (sizeof(a)/sizeof(a[0]))
int i;
- for (i = 0; i < N(tags); i++)
+ for (i = 0; i < nitems(tags); i++)
if (strcasecmp(tags[i].tag, tag) == 0)
return tags[i].fmt;
return tag;
-#undef N
}
static int signalled;
diff --git a/tools/tools/npe/npestats/npestats.c b/tools/tools/npe/npestats/npestats.c
index 6f42065..8fb5bc5 100644
--- a/tools/tools/npe/npestats/npestats.c
+++ b/tools/tools/npe/npestats/npestats.c
@@ -32,15 +32,15 @@
/*
* npe statistics class.
*/
-#include <sys/types.h>
+#include <sys/param.h>
#include <sys/sysctl.h>
+#include <err.h>
+#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
-#include <signal.h>
#include <string.h>
#include <unistd.h>
-#include <err.h>
#include "npestats.h"
@@ -251,12 +251,12 @@ BSDSTAT_DEFINE_BOUNCE(npestatfoo)
struct npestatfoo *
npestats_new(const char *ifname, const char *fmtstring)
{
-#define N(a) (sizeof(a) / sizeof(a[0]))
struct npestatfoo_p *wf;
wf = calloc(1, sizeof(struct npestatfoo_p));
if (wf != NULL) {
- bsdstat_init(&wf->base.base, "npestats", npestats, N(npestats));
+ bsdstat_init(&wf->base.base, "npestats", npestats,
+ nitems(npestats));
/* override base methods */
wf->base.base.collect_cur = npe_collect_cur;
wf->base.base.collect_tot = npe_collect_tot;
@@ -274,5 +274,4 @@ npestats_new(const char *ifname, const char *fmtstring)
wf->base.setfmt(&wf->base, fmtstring);
}
return &wf->base;
-#undef N
}
diff --git a/tools/tools/sysbuild/sysbuild.sh b/tools/tools/sysbuild/sysbuild.sh
index d95b8df..67cd61c 100644
--- a/tools/tools/sysbuild/sysbuild.sh
+++ b/tools/tools/sysbuild/sysbuild.sh
@@ -80,6 +80,8 @@ fi
# serial console ?
SERCONS=false
+PKG_DIR=/usr/ports/packages/All
+
# Remotely mounted distfiles
# REMOTEDISTFILES=fs:/rdonly/distfiles
@@ -174,6 +176,7 @@ log_it() (
ports_recurse() (
+ cd /usr/ports
t=$1
shift
if [ "x$t" = "x." ] ; then
@@ -191,6 +194,7 @@ ports_recurse() (
echo "Missing port $d" 1>&2
continue
fi
+ d=`cd /usr/ports && cd $d && /bin/pwd`
if [ ! -f $d/Makefile ] ; then
echo "Missing port $d" 1>&2
continue
@@ -205,7 +209,16 @@ ports_recurse() (
else
(
cd $d
- ports_recurse $d `make -V _DEPEND_DIRS ${PORTS_OPTS}`
+ l=""
+ for a in `make -V _UNIFIED_DEPENDS ${PORTS_OPTS}`
+ do
+ x=`expr "$a" : '.*:\(.*\)'`
+ l="${l} ${x}"
+ done
+ ports_recurse $d $l
+ # -> _UNIFIED_DEPENDS
+ #ports_recurse $d `make -V _DEPEND_DIRS ${PORTS_OPTS}`
+ #ports_recurse $d `make all-depends-list`
)
echo "$d" >> /tmp/_.plist
fi
@@ -223,11 +236,12 @@ ports_build() (
mkdir -p ${PKG_DIR}
fi
+ pd=`cd /usr/ports && /bin/pwd`
# Now build & install them
for p in `cat /tmp/_.plist`
do
b=`echo $p | tr / _`
- t=`echo $p | sed 's,/usr/ports/,,'`
+ t=`echo $p | sed "s,${pd},,"`
pn=`cd $p && make package-name`
if [ "x`basename $p`" == "xpkg" ] ; then
@@ -471,10 +485,13 @@ fi
for i in ${PORTS_WE_WANT}
do
+ (
+ cd /usr/ports
if [ ! -d $i ] ; then
echo "Port $i not found" 1>&2
exit 2
fi
+ )
done
export PORTS_WE_WANT
OpenPOWER on IntegriCloud