]> granicus.if.org Git - shadow/commitdiff
* src/chpasswd.c: Make sure the SHA related variables is not
authornekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
Fri, 13 Mar 2009 22:28:27 +0000 (22:28 +0000)
committernekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
Fri, 13 Mar 2009 22:28:27 +0000 (22:28 +0000)
compiled when disabled at configuration time.
* src/chgpasswd.c: Make sure the SHA related variables is not
compiled when disabled at configuration time.
* src/chgpasswd.c: Fix the test for getlong() failure.

ChangeLog
src/chgpasswd.c
src/chpasswd.c

index d25a82a838a2a37eae293d8e3b243798cc227f1b..8b08a66c5015c5c098fc794acd1513bab154cb24 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,11 @@
        * src/newusers.c: Make sure the SHA related variables are not
        compiled when disabled at configuration time.
        * src/newusers.c: Added FIXME
+       * src/chpasswd.c: Make sure the SHA related variables is not
+       compiled when disabled at configuration time.
+       * src/chgpasswd.c: Make sure the SHA related variables is not
+       compiled when disabled at configuration time.
+       * src/chgpasswd.c: Fix the test for getlong() failure.
 
 2009-03-13  Nicolas François  <nicolas.francois@centraliens.net>
 
index d1ffe3923944181cda30d065aab6607373123c4c..81f4254824c18c2a3115a63e60eaabbc5d64aec9 100644 (file)
@@ -2,7 +2,7 @@
  * Copyright (c) 1990 - 1994, Julianne Frances Haugh
  * Copyright (c) 2006       , Tomasz Kłoczko
  * Copyright (c) 2006       , Jonas Meurer
- * Copyright (c) 2007 - 2008, Nicolas François
+ * Copyright (c) 2007 - 2009, Nicolas François
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -59,10 +59,14 @@ char *Prog;
 static bool cflg   = false;
 static bool eflg   = false;
 static bool md5flg = false;
+#ifdef USE_SHA_CRYPT
 static bool sflg   = false;
+#endif
 
 static const char *crypt_method = NULL;
+#ifdef USE_SHA_CRYPT
 static long sha_rounds = 5000;
+#endif
 
 #ifdef SHADOWGRP
 static bool is_shadow_grp;
@@ -176,7 +180,7 @@ static void process_flags (int argc, char **argv)
 #ifdef USE_SHA_CRYPT
                case 's':
                        sflg = true;
-                       if (getlong(optarg, &sha_rounds) != 0) {
+                       if (getlong(optarg, &sha_rounds) == 0) {
                                fprintf (stderr,
                                         _("%s: invalid numeric argument '%s'\n"),
                                         Prog, optarg);
@@ -204,12 +208,14 @@ static void process_flags (int argc, char **argv)
  */
 static void check_flags (void)
 {
+#ifdef USE_SHA_CRYPT
        if (sflg && !cflg) {
                fprintf (stderr,
                         _("%s: %s flag is only allowed with the %s flag\n"),
                         Prog, "-s", "-c");
                usage ();
        }
+#endif
 
        if ((eflg && (md5flg || cflg)) ||
            (md5flg && cflg)) {
@@ -443,9 +449,11 @@ int main (int argc, char **argv)
                        if (md5flg) {
                                crypt_method = "MD5";
                        } else if (crypt_method != NULL) {
+#ifdef USE_SHA_CRYPT
                                if (sflg) {
                                        arg = &sha_rounds;
                                }
+#endif
                        } else {
                                crypt_method = NULL;
                        }
index 9a6267558c6250fb1efa0bec3627f67ca4554524..697c9fc60fbe9860cd7620e27deae3bfff5f1127 100644 (file)
@@ -2,7 +2,7 @@
  * Copyright (c) 1990 - 1994, Julianne Frances Haugh
  * Copyright (c) 1996 - 2000, Marek Michałkiewicz
  * Copyright (c) 2000 - 2006, Tomasz Kłoczko
- * Copyright (c) 2007 - 2008, Nicolas François
+ * Copyright (c) 2007 - 2009, Nicolas François
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -57,10 +57,14 @@ char *Prog;
 static bool cflg   = false;
 static bool eflg   = false;
 static bool md5flg = false;
+#ifdef USE_SHA_CRYPT
 static bool sflg   = false;
+#endif
 
 static const char *crypt_method = NULL;
+#ifdef USE_SHA_CRYPT
 static long sha_rounds = 5000;
+#endif
 
 static bool is_shadow_pwd;
 static bool pw_locked = false;
@@ -198,12 +202,14 @@ static void process_flags (int argc, char **argv)
  */
 static void check_flags (void)
 {
+#ifdef USE_SHA_CRYPT
        if (sflg && !cflg) {
                fprintf (stderr,
                         _("%s: %s flag is only allowed with the %s flag\n"),
                         Prog, "-s", "-c");
                usage ();
        }
+#endif
 
        if ((eflg && (md5flg || cflg)) ||
            (md5flg && cflg)) {
@@ -434,9 +440,11 @@ int main (int argc, char **argv)
                        if (md5flg) {
                                crypt_method = "MD5";
                        } else if (crypt_method != NULL) {
+#ifdef USE_SHA_CRYPT
                                if (sflg) {
                                        arg = &sha_rounds;
                                }
+#endif
                        } else {
                                crypt_method = NULL;
                        }