[source] nvram: improve argument check when program start

LEDE Commits lede-commits at lists.infradead.org
Thu Dec 14 09:45:04 PST 2017


jow pushed a commit to source.git, branch lede-17.01:
https://git.lede-project.org/118a2ea0bcdfb3895dfdec9fe4b98be5325d6386

commit 118a2ea0bcdfb3895dfdec9fe4b98be5325d6386
Author: BangLang Huang <banglang.huang at foxmail.com>
AuthorDate: Fri Feb 24 10:52:52 2017 +0800

    nvram: improve argument check when program start
    
    print help message when argument count is less
    than 2.
    
    Signed-off-by: BangLang Huang <banglang.huang at foxmail.com>
    (cherry picked from commit c7e2a6fe923dc86bab14d94ead322a045efca4c9)
---
 package/utils/nvram/src/cli.c | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/package/utils/nvram/src/cli.c b/package/utils/nvram/src/cli.c
index 149d307..538bdce 100644
--- a/package/utils/nvram/src/cli.c
+++ b/package/utils/nvram/src/cli.c
@@ -155,15 +155,16 @@ int main( int argc, const char *argv[] )
 	int done = 0;
 	int i;
 
+	if( argc < 2 ) {
+		usage();
+		return 1;
+	}
+
 	/* Ugly... iterate over arguments to see whether we can expect a write */
-	for( i = 1; i < argc; i++ )
-		if( ( !strcmp(argv[i], "set")   && ++i < argc ) ||
-			( !strcmp(argv[i], "unset") && ++i < argc ) ||
-			!strcmp(argv[i], "commit") )
-		{
-			write = 1;
-			break;
-		}
+	if( ( !strcmp(argv[1], "set")  && 2 < argc ) ||
+		( !strcmp(argv[1], "unset") && 2 < argc ) ||
+		!strcmp(argv[1], "commit") )
+		write = 1;
 
 
 	nvram = write ? nvram_open_staging() : nvram_open_rdonly();



More information about the lede-commits mailing list