Linux-CIFS Archive on lore.kernel.org
 help / color / 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	[flat|nested] 2+ messages in thread

* Re: [PATCH] smb2-quota: Simplify code logic for quota entries.
  2019-11-21 15:10 [PATCH] smb2-quota: Simplify code logic for quota entries Kenneth D'souza
@ 2019-12-13  0:29 ` Pavel Shilovsky
  0 siblings, 0 replies; 2+ messages in thread
From: Pavel Shilovsky @ 2019-12-13  0:29 UTC (permalink / raw)
  To: Kenneth D'souza; +Cc: linux-cifs, Steve French, Ronnie Sahlberg

чт, 21 нояб. 2019 г. в 07:11, Kenneth D'souza <kdsouza@redhat.com>:
>
> 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
>

Merged, thanks.

--
Best regards,
Pavel Shilovsky

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

end of thread, back to index

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

Linux-CIFS Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-cifs/0 linux-cifs/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-cifs linux-cifs/ https://lore.kernel.org/linux-cifs \
		linux-cifs@vger.kernel.org
	public-inbox-index linux-cifs

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-cifs


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git