linux-cifs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] smb2-quota: Simplify code logic for quota entries.
@ 2019-11-21 15:10 Kenneth D'souza
  2019-12-13  0:29 ` Pavel Shilovsky
  0 siblings, 1 reply; 2+ messages in thread
From: Kenneth D'souza @ 2019-11-21 15:10 UTC (permalink / raw)
  To: linux-cifs; +Cc: piastryyy, smfrench, lsahlber

This patch changes the program name from smb2quota to
smb2-quota and uses a simple code logic for quota entries.

Signed-off-by: Kenneth D'souza <kdsouza@redhat.com>
Signed-off-by: Ronnie Sahlberg <lsahlberg@redhat.com>
---
 smb2quota.py => smb2-quota.py   | 19 +++++++------------
 smb2quota.rst => smb2-quota.rst |  8 ++++----
 2 files changed, 11 insertions(+), 16 deletions(-)
 rename smb2quota.py => smb2-quota.py (91%)
 rename smb2quota.rst => smb2-quota.rst (89%)

diff --git a/smb2quota.py b/smb2-quota.py
similarity index 91%
rename from smb2quota.py
rename to smb2-quota.py
index 21bf4ff..6d0b8a3 100755
--- a/smb2quota.py
+++ b/smb2-quota.py
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 # coding: utf-8
 #
-# smb2quota is a cmdline tool to display quota information for the
+# smb2-quota is a cmdline tool to display quota information for the
 # Linux SMB client file system (CIFS)
 #
 # Copyright (C) Ronnie Sahlberg (lsahlberg@redhat.com) 2019
@@ -34,7 +34,7 @@ ENDC = '\033[m'   # Rest to defaults
 
 def usage():
     print("Usage: %s [-h] <options> <filename>" % sys.argv[0])
-    print("Try 'smb2quota -h' for more information")
+    print("Try 'smb2-quota -h' for more information")
     sys.exit()
 
 
@@ -120,18 +120,13 @@ class QuotaEntry:
 class Quota:
     def __init__(self, buf, flag):
         self.quota = []
-        s = struct.unpack_from('<I', buf, 0)[0]
-        while s:
-            qe = QuotaEntry(buf[0:s], flag)
+        while buf:
+            qe = QuotaEntry(buf, flag)
             self.quota.append(qe)
-            buf = buf[s:]
-            a = s
             s = struct.unpack_from('<I', buf, 0)[0]
             if s == 0:
-                s = a   # Use the last value of s and process it.
-                qe = QuotaEntry(buf[0:s], flag)
-                self.quota.append(qe)
                 break
+            buf = buf[s:]
 
     def __str__(self):
         s = ''
@@ -158,7 +153,7 @@ def parser_check(path, flag):
         fcntl.ioctl(f, CIFS_QUERY_INFO, buf, 1)
         os.close(f)
         if flag == 0:
-            print(BBOLD + " %-7s | %-7s | %-7s | %-7s | %-12s | %s " + ENDC) % (titleused, titlelim, titlethr, titlepercent, titlestatus, titlesid)
+            print((BBOLD + " %-7s | %-7s | %-7s | %-7s | %-12s | %s " + ENDC) % (titleused, titlelim, titlethr, titlepercent, titlestatus, titlesid))
         q = Quota(buf[24:24 + struct.unpack_from('<I', buf, 16)[0]], flag)
         print(q)
     except IOError as reason:
@@ -171,7 +166,7 @@ def main():
     if len(sys.argv) < 2:
         usage()
 
-    parser = argparse.ArgumentParser(description="Please specify an action to perform.", prog="smb2quota")
+    parser = argparse.ArgumentParser(description="Please specify an action to perform.", prog="smb2-quota")
     parser.add_argument("-t", "--tabular", action="store_true", help="print quota information in tabular format")
     parser.add_argument("-c", "--csv",  action="store_true", help="print quota information in csv format")
     parser.add_argument("-l", "--list", action="store_true", help="print quota information in list format")
diff --git a/smb2quota.rst b/smb2-quota.rst
similarity index 89%
rename from smb2quota.rst
rename to smb2-quota.rst
index 24caca8..508b874 100644
--- a/smb2quota.rst
+++ b/smb2-quota.rst
@@ -1,5 +1,5 @@
 ============
-smb2quota
+smb2-quota
 ============
 
 -----------------------------------------------------------------------------------------------------
@@ -11,7 +11,7 @@ Userspace helper to display quota information for the Linux SMB client file syst
 SYNOPSIS
 ********
 
-  smb2quota [-h] {options} {file system object}
+  smb2-quota [-h] {options} {file system object}
 
 ***********
 DESCRIPTION
@@ -19,7 +19,7 @@ DESCRIPTION
 
 This tool is part of the cifs-utils suite.
 
-`smb2quota` is a userspace helper program for the Linux SMB
+`smb2-quota` is a userspace helper program for the Linux SMB
 client file system (CIFS).
 
 This tool works by making an CIFS_QUERY_INFO IOCTL call to the Linux
@@ -49,7 +49,7 @@ SID,Amount Used,Quota Limit,Warning Level
 NOTES
 *****
 
-Kernel support for smb2quota requires the CIFS_QUERY_INFO
+Kernel support for smb2-quota requires the CIFS_QUERY_INFO
 IOCTL which was initially introduced in the 4.20 kernel and is only
 implemented for mount points using SMB2 or above (see mount.cifs(8)
 `vers` option).
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-12-13  0:29 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-21 15:10 [PATCH] smb2-quota: Simplify code logic for quota entries Kenneth D'souza
2019-12-13  0:29 ` Pavel Shilovsky

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).