--- _pylibmcmodule.c.orig 2012-03-07 11:00:09.000000000 -0500 +++ _pylibmcmodule.c 2012-03-07 11:03:21.000000000 -0500 @@ -46,6 +46,25 @@ { Py_INCREF(obj); \ PyModule_AddObject(mod, nam, obj); } +/** + * Copy at most @p size characters from @p src, plus a terminating nul. + **/ +char *strndup(const char *src, size_t size); +char *strndup(const char *src, size_t size){ + size_t l = strlen(src); + char *r = NULL; + + if (l < size) + return strdup(src); + + r = (char *) malloc(size+1); + if (r == NULL) + return NULL; + + strncpy(r, src, size); + r[size] ='\0'; + return r; +} /* {{{ Type methods */ static PylibMC_Client *PylibMC_ClientType_new(PyTypeObject *type,