Patch by W. Michael Petullo to use autotools for strncpy()
authorJoey Schulze <joey@infodrom.org>
Sun, 11 Jan 2009 21:59:16 +0000 (21:59 +0000)
committerJoey Schulze <joey@infodrom.org>
Sun, 11 Jan 2009 21:59:16 +0000 (21:59 +0000)
AUTHORS
cgi.c
configure.ac

diff --git a/AUTHORS b/AUTHORS
index 0e3af6c..b053dbc 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -2,6 +2,7 @@ This is a list of people who have helped me working on this CGI
 library.
 
 Martin Schulze <joey@infodrom.org>
+
        - Design, Implementation, Maintenance
 
 Mikko Torni <mtorni@mail.freenet.hut.fi>
@@ -24,3 +25,7 @@ Neil Spring <nspring@zarathustra.saavie.org>
 Phil Brooke <pjb@scm.tees.ac.uk>
 
        - Allow cookies without regular CGI POST/GET variables
+
+Michael Petullo <mike@flyn.org>
+
+       - Convert to GNU autotools and wrap strncpy() accordingly
diff --git a/cgi.c b/cgi.c
index c07f931..5782d5b 100644 (file)
--- a/cgi.c
+++ b/cgi.c
 #include <cgi.h>
 #include "aux.h"
 
+#ifndef HAVE_STRNDUP
+char *strndup(const char *s, size_t n);
+#endif
+
 char *cgiHeaderString = NULL;
 char *cgiType = NULL;
 
@@ -857,6 +861,18 @@ void cgiFree (s_cgi *parms)
     }
 }
 
+#ifndef HAVE_STRNDUP
+char *strndup(const char *s, size_t n) {
+    char *fnval;
+
+    if ((fnval = (char *)malloc (n + 1)) == NULL)
+       return NULL;
+    strncpy(fnval, s, n);
+    fnval[n] = '\0';
+    return fnval;
+}
+#endif
+
 /*
  * Local variables:
  *  c-indent-level: 4
index 056be07..672e7af 100644 (file)
@@ -7,4 +7,6 @@ AC_PROG_CC
 AC_PROG_INSTALL
 AC_PROG_LIBTOOL
 
+AC_CHECK_FUNCS(strndup)
+
 AC_OUTPUT(Makefile)