diff options
Diffstat (limited to 'tools')
46 files changed, 1065 insertions, 947 deletions
diff --git a/tools/regression/acltools/tools-crossfs.test b/tools/regression/acltools/tools-crossfs.test index 498fba5f036e..1f596376331c 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 e1e8ffca9da7..9ab0b51eedf5 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 ae490324872a..366b099d86b1 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 72826fb8b235..e2ddc2bb201e 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 069190f54c70..68b1578e4d04 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 69897d32155e..6be71ad43d01 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 bc1817f5ae5c..aa119d158c7c 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 2523d59e4aab..9b41fd578fa8 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 80f1aefa2296..1dcce1f7ac6a 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 23c3b02476de..5cf3183955f8 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 dde0fb820778..345ff9a419c9 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 75e5dbdbb005..95e7917455ba 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 b11893980fd1..bcdbcc8aae47 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 c4fc40c63714..feb020eb9291 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 82b56202e180..bffc512016c9 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 489c0bd796f6..bf0323d8715c 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 0d576335ed67..93b018503def 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 f7b273b0ca38..ac6e8041e08e 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 17ecbced2ef1..ae8e2329f2a7 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 8d129ecd4e30..33f67d41d945 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 2ef8e7b55948..31bf21cdc2c9 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 d1c61153d158..b69938d5ae92 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 5f5e450e3256..c13d3a45b9e1 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 1f40cd55ac0b..f073d86d7395 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 9f98ea897465..3556ce57b629 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 ea7601a8e070..acaab6e1e483 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 736f7839458e..9ce9892bfecd 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 bb27cdbd3b29..da0409974ccf 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 000000000000..a3f496892145 --- /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 000000000000..762ce14fc830 --- /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 000000000000..7cfb816f4346 --- /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 97b2a918d9ec..4446886285d4 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 b07ddb54478d..bc368ee4a34a 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 6443ca19c8e9..372a2aa6eb31 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 590c17854c13..b047e11ce6b8 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 4e97b6d8cdcc..4080053534ca 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 50eb94f62916..00d0c75a2376 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 a556e1b9622a..57e9cfc27971 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 e1179bdbd474..40275dd70cb7 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 908455e5362d..d2a8a6de9e91 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 1210fd1322fd..34d939f00e0c 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 9cee61aee04a..ef834705b6af 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 2db88d417cde..90c5c8f60769 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 3517aabb1f5b..8ffcbc320cf2 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 6f4206562443..8fb5bc5d8f24 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 d95b8dfdc807..67cd61cb0f14 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 |