_choose_id function has changed slightly, run setquota once user is inited.
authorNathan Scott <nathans@sgi.com>
Wed, 11 Apr 2001 06:10:08 +0000 (06:10 +0000)
committerNathan Scott <nathans@sgi.com>
Wed, 11 Apr 2001 06:10:08 +0000 (06:10 +0000)
050
050.gqnoenforce
050.grpquota
050.uqnoenforce
050.usrquota
052
common.quota

diff --git a/050 b/050
index fd94680246bc46fed14bc49695fed47cef5def11..28b350333a81740ac5d362c14c53526d3ff8034f 100755 (executable)
--- a/050
+++ b/050
@@ -85,16 +85,16 @@ _qmount
 # setup exactly what it is we'll be testing
 if src/feature -u $SCRATCH_DEV
 then
-       type=u ; id=`_choose_uid`; ln $seq.usrquota $seq.out
+       type=u ; eval `_choose_uid`; ln $seq.usrquota $seq.out
 elif src/feature -g $SCRATCH_DEV
 then
-       type=g ; id=`_choose_gid`; ln $seq.grpquota $seq.out
+       type=g ; eval `_choose_gid`; ln $seq.grpquota $seq.out
 elif src/feature -U $SCRATCH_DEV
 then
-       type=u ; id=`_choose_uid`; ln $seq.uqnoenforce $seq.out
+       type=u ; eval `_choose_uid`; ln $seq.uqnoenforce $seq.out
 elif src/feature -G $SCRATCH_DEV
 then
-       type=g ; id=`_choose_gid`; ln $seq.gqnoenforce $seq.out
+       type=g ; eval `_choose_gid`; ln $seq.gqnoenforce $seq.out
 else
        _notrun "No quota support at mount time"
 fi
@@ -108,8 +108,8 @@ repquota -$type $SCRATCH_DEV | _filter_repquota
 
 echo
 echo "*** report initial settings" | tee -a $seq.full
-setquota -$type $id 100 500 4 10 $SCRATCH_DEV
 _file_as_id $SCRATCH_MNT/initme $id $type 1024 0
+setquota -$type $id 100 500 4 10 $SCRATCH_DEV
 repquota -$type $SCRATCH_DEV | _filter_repquota
 
 echo
index 112b87b01df06897e70a00d8b8e9a6bfb5afc4ae..86bd2f29553823e0f2cf60ffc2c9f82dc7df2730 100644 (file)
@@ -7,50 +7,68 @@ log      =LDEV bsize=XXX blocks=XXX
 realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
 
 *** report no quota settings
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 
+
+
 *** report initial settings
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    --       0     100     500              1     4    10       
 
+
+
 *** push past the soft inode limit
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    --       0     100     500              3     4    10       
 
+
+
 *** push past the soft block limit
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    +-     140     100     500              4     4    10       
 
+
+
 *** push past the hard inode limit (expect EDQUOT)
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       4       0       0              3     0     0       
 [NAME]    ++     140     100     500             16     4    10       
 
+
+
 *** push past the hard block limit (expect EDQUOT)
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       4       0       0              3     0     0       
 [NAME]    ++     540     100     500             16     4    10       
 
+
+
 *** unmount
index 8603f31a2683176eceb1ce9cb0c35ba6a8011e16..ca68ed248ae1562ffa8626ed245ba1555f99add4 100644 (file)
@@ -7,50 +7,68 @@ log      =LDEV bsize=XXX blocks=XXX
 realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
 
 *** report no quota settings
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 
+
+
 *** report initial settings
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    --       0     100     500              1     4    10       
 
+
+
 *** push past the soft inode limit
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    --       0     100     500              3     4    10       
 
+
+
 *** push past the soft block limit
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    +-     140     100     500  7days       4     4    10  7days
 
+
+
 *** push past the hard inode limit (expect EDQUOT)
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    ++     140     100     500  7days      10     4    10  7days
 
+
+
 *** push past the hard block limit (expect EDQUOT)
-*** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+*** Report for group quotas on device [DEVICE]
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    ++     448     100     500  7days      10     4    10  7days
 
+
+
 *** unmount
index 112b87b01df06897e70a00d8b8e9a6bfb5afc4ae..0febbbca99f527cbda4a5f677563c6b68248199c 100644 (file)
@@ -8,49 +8,67 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
 
 *** report no quota settings
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 
+
+
 *** report initial settings
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    --       0     100     500              1     4    10       
 
+
+
 *** push past the soft inode limit
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    --       0     100     500              3     4    10       
 
+
+
 *** push past the soft block limit
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    +-     140     100     500              4     4    10       
 
+
+
 *** push past the hard inode limit (expect EDQUOT)
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       4       0       0              3     0     0       
 [NAME]    ++     140     100     500             16     4    10       
 
+
+
 *** push past the hard block limit (expect EDQUOT)
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       4       0       0              3     0     0       
 [NAME]    ++     540     100     500             16     4    10       
 
+
+
 *** unmount
index 8603f31a2683176eceb1ce9cb0c35ba6a8011e16..4c17f4fd45381bfe054cee761097efed8da90600 100644 (file)
@@ -8,49 +8,67 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX
 
 *** report no quota settings
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 
+
+
 *** report initial settings
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    --       0     100     500              1     4    10       
 
+
+
 *** push past the soft inode limit
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    --       0     100     500              3     4    10       
 
+
+
 *** push past the soft block limit
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    +-     140     100     500  7days       4     4    10  7days
 
+
+
 *** push past the hard inode limit (expect EDQUOT)
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    ++     140     100     500  7days      10     4    10  7days
 
+
+
 *** push past the hard block limit (expect EDQUOT)
 *** Report for user quotas on device [DEVICE]
-Block grace time: 7days Inode grace time: 7days
-                        Block limits               File limits
+Block grace time: 7days; Inode grace time: 7days
+                        Block limits                File limits
 User            used    soft    hard  grace    used  soft  hard  grace
+----------------------------------------------------------------------
 [NAME]    --       0       0       0              3     0     0       
 [NAME]    ++     448     100     500  7days      10     4    10  7days
 
+
+
 *** unmount
diff --git a/052 b/052
index 2603e4f494dd51747002cc0fece49165d80f3f66..b1f74b748e1c67f6bb3d72b200d6d5ada1ffbe8c 100755 (executable)
--- a/052
+++ b/052
@@ -60,7 +60,7 @@ _cleanup()
        rm -f $tmp.*
 }
 trap "_cleanup; exit \$status" 0 1 2 3 15
-rm -f $seq.full $seq.out
+rm -f $seq.full
 
 _require_scratch
 _require_quota
@@ -82,9 +82,9 @@ _qmount
 
 # setup user/group to test
 if src/feature -U $SCRATCH_DEV ; then
-       type=u ; id=`_choose_uid`
+       type=u ; eval `_choose_uid`
 elif src/feature -G $SCRATCH_DEV ; then
-       type=g ; id=`_choose_gid`
+       type=g ; eval `_choose_gid`
 else
        _notrun "No quota support at mount time"
 fi
@@ -94,14 +94,19 @@ _file_as_id $SCRATCH_MNT/foo $id $type $dbsize 220
 sync
 
 # set limit at 1001 (1k) blocks
-setquota -n -$type $id $SCRATCH_DEV 1001 1001 10 10
+setquota -$type $id 1001 1001 10 10 $SCRATCH_DEV
 
 # cross check blks, softblks, hardblks <-> quota, xfs_db
-quota $type -n $id | tee -a $seq.full | perl -ne '
-       if (m,^\s*'$SCRATCH_DEV'\s+(\d+)\s+(\d+)\s+(\d+),) {
+quota -$type $id | tee -a $seq.full | perl -ne '
+       if (m,^\s*'$SCRATCH_DEV'\s+(\d+)\s+(\d+)\s+(\d+), ||
+               ($next == 1 && m,^\s+(\d+)\s+(\d+)\s+(\d+),)) {
                print "used_blocks=", $1, "\n";
                print "soft_blocks=", $2, "\n";
                print "hard_blocks=", $3, "\n";
+               $next = 0;
+       }
+       elsif (m,^\s*'$SCRATCH_DEV',) {         # devfs (long) names
+               $next = 1;
        }' | LC_COLLATE=POSIX sort >$tmp.quota
 
 echo ===quota output >> $seq.full
index ccedfc62f0c3dfd777f7bd861695610716b44b2b..ba5d0afe960cf74a44273f5b4c520ddd0df76acb 100644 (file)
@@ -74,12 +74,14 @@ EOF
 
 _choose_uid()
 {
-    perl -ne '@a = split(/:/); END { print $a[2]; }' /etc/passwd
+    perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }' \
+       /etc/passwd
 }
 
 _choose_gid()
 {
-    perl -ne '@a = split(/:/); END { print $a[2]; }' /etc/group
+    perl -ne '@a = split(/:/); END { printf "id=%d name=%s\n", $a[2],$a[0] }' \
+       /etc/group
 }
 
 _filter_repquota()