diff options
-rw-r--r-- | support/htpasswd.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/support/htpasswd.c b/support/htpasswd.c index 8175ce7c78..d7c95317b8 100644 --- a/support/htpasswd.c +++ b/support/htpasswd.c @@ -86,6 +86,10 @@ #include "ap_sha1.h" #include <signal.h> +#ifdef HAVE_CRYPT_H +#include <crypt.h> +#endif + #ifdef WIN32 #include <conio.h> #define unlink _unlink @@ -124,6 +128,8 @@ static char *tempfilename; */ #ifdef L_tmpnam static char tname_buf[L_tmpnam]; +#else +static char *tname_buf = NULL; #endif /* @@ -526,12 +532,8 @@ int main(int argc, char *argv[]) * to add or update. Let's do it.. */ errno = 0; -#ifdef L_tmpnam tempfilename = tmpnam(tname_buf); -#else /* def L_tmpnam */ - tempfilename = tmpnam(NULL); -#endif /* def L_tmpnam */ - if ((tempfilename == NULL) || (strlen(tempfilename) == 0)) { + if ((tempfilename == NULL) || (*tempfilename == '\0')) { fprintf(stderr, "%s: unable to generate temporary filename\n", argv[0]); if (errno == 0) { |