X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=cli%2Fcom_password.c;h=0303b2b3c902abd53f1f4c1e2fa161a1b79a99ec;hb=1b72c10a906e2060054e84943f241614d857e236;hp=92e96c6067c22c61c8ad2cb89351aa4564fe0a4a;hpb=1f4248859d9d0f51d628df6686d09c3aef09bc90;p=ngadmin diff --git a/cli/com_password.c b/cli/com_password.c index 92e96c6..0303b2b 100644 --- a/cli/com_password.c +++ b/cli/com_password.c @@ -2,71 +2,64 @@ #include "commands.h" - -bool do_password_change (int nb, const char **com, struct ngadmin *nga) { - - int i; - const struct swi_attr *sa; - - - if ( nb!=1 ) { - printf("Usage: password change \n"); - return false; - } - - if ( (sa=ngadmin_getCurrentSwitch(nga))==NULL ) { - printf("must be logged\n"); - return false; - } - - i=ngadmin_changePassword(nga, com[0]); - printErrCode(i); - - - return true; - +int do_password_change (int argc, const char **argv, struct ngadmin *nga) +{ + int i; + const struct swi_attr *sa; + + + if (argc != 1) { + printf("usage: password change \n"); + return 1; + } + + sa = ngadmin_getCurrentSwitch(nga); + if (sa == NULL) { + printf("must be logged\n"); + return 1; + } + + i = ngadmin_changePassword(nga, argv[0]); + printErrCode(i); + + + return 0; } - -bool do_password_set (int nb, const char **com, struct ngadmin *nga) { - - int i; - char buf[64]; - const char *pass; - - - if ( nb>1 ) { - printf("Usage: password set []\n"); - return false; - } - - - if ( nb==0 ) { - printf("Enter password: "); - fflush(stdout); - current_term.c_lflag&=~ECHO; - tcsetattr(STDIN_FILENO, TCSANOW, ¤t_term); - pass=fgets(buf, sizeof(buf), stdin); - trim(buf, strlen(buf)); - current_term.c_lflag|=ECHO; - tcsetattr(STDIN_FILENO, TCSANOW, ¤t_term); - putchar('\n'); - } else { - pass=com[0]; - } - - - if ( pass!=NULL ) { - i=ngadmin_setPassword(nga, pass); - printErrCode(i); - } - - - - return true; - +int do_password_set (int argc, const char **argv, struct ngadmin *nga) +{ + int i; + char buf[64]; + const char *pass; + + + if (argc > 1) { + printf("usage: password set []\n"); + return 1; + } + + if (argc == 0) { + printf("Enter password: "); + fflush(stdout); + current_term.c_lflag &= ~ECHO; + tcsetattr(STDIN_FILENO, TCSANOW, ¤t_term); + pass = fgets(buf, sizeof(buf), stdin); + trim(buf, strlen(buf)); + current_term.c_lflag |= ECHO; + tcsetattr(STDIN_FILENO, TCSANOW, ¤t_term); + putchar('\n'); + } else { + pass = argv[0]; + } + + if (pass != NULL) { + i = ngadmin_setPassword(nga, pass); + printErrCode(i); + } + + + return 0; } -