summaryrefslogtreecommitdiff
path: root/source/utils/testparm.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/utils/testparm.c')
-rw-r--r--source/utils/testparm.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source/utils/testparm.c b/source/utils/testparm.c
index 9db6d538d24..d4dc22ec915 100644
--- a/source/utils/testparm.c
+++ b/source/utils/testparm.c
@@ -132,7 +132,8 @@ parameter.\n" );
cannot be executed (error was %s).\n", truncated_prog, strerror(errno) );
ret = 1;
}
- }
+
+ }
#ifdef WITH_PAM
}
@@ -142,6 +143,11 @@ cannot be executed (error was %s).\n", truncated_prog, strerror(errno) );
fprintf(stderr, "ERROR: the 'unix password sync' parameter is set and there is no valid 'passwd chat' \
parameter.\n");
ret = 1;
+ } else
+ /* check if there's a %u parameter present */
+ if(strstr_m(lp_passwd_chat(), "%u") == NULL) {
+ fprintf(stderr, "ERROR: the 'passwd program' (%s) requires a '%%u' parameter.\n", lp_passwd_program());
+ ret = 1;
}
/*
@@ -365,3 +371,4 @@ via the %%o substitution. With encrypted passwords this is not possible.\n", lp_
}
return(ret);
}
+