openbsd-ports/www/cherokee/patches/patch-cherokee_source_interpreter_c
sthen 833e2f8858 - update to 0.99.20
- unbreak group setting; Cherokee assumed a fixed size 1k buffer for
getgrnam_r which is insufficient on some OS, including OpenBSD. symptom
was that group setting resulted in ERANGE. This just bumps the buffer
to 8k which isn't a perfect fix, but serves our purposes for now;
see ports@ archives at http://marc.info/?t=124832494600002&r=1&w=2
for more discussion.

maintainer ok.
2009-07-27 17:06:16 +00:00

24 lines
757 B
Plaintext

$OpenBSD: patch-cherokee_source_interpreter_c,v 1.1 2009/07/27 17:06:16 sthen Exp $
getgrnam_r() needs a larger buffer on OpenBSD (and some other systems).
--- cherokee/source_interpreter.c.orig Mon Jun 29 18:43:26 2009
+++ cherokee/source_interpreter.c Thu Jul 23 23:58:55 2009
@@ -37,6 +37,7 @@
#define ENTRIES "source,src,interpreter"
#define DEFAULT_TIMEOUT 10
+#define GRBUF_SIZE 8192
static void interpreter_free (void *src);
@@ -280,7 +281,7 @@ cherokee_source_interpreter_configure (cherokee_source
} else if (equal_buf_str (&child->key, "group")) {
struct group grp;
- char tmp[1024];
+ char tmp[GRBUF_SIZE];
ret = cherokee_getgrnam (child->val.buf, &grp, tmp, sizeof(tmp));
if (ret != ret_ok) {