X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/1fc3f034191d3eec78b4d5da343e282092a221be..d0cf10edbc8c08f8d93c1475f4dd667b0f78d4b3:/IkiWiki/Receive.pm diff --git a/IkiWiki/Receive.pm b/IkiWiki/Receive.pm index 5908e09f9..f985f560b 100644 --- a/IkiWiki/Receive.pm +++ b/IkiWiki/Receive.pm @@ -26,6 +26,8 @@ sub genwrapper () { my $ret=<<"EOF"; { int u=getuid(); + /* 3 characters per byte is certainly enough */ + char uid_string[sizeof(u) * 3 + 1]; EOF $ret.="\t\tif ( ". join("&&", map { @@ -46,8 +48,8 @@ EOF while (read(0, &buf, 256) != 0) {} exit(0); } - asprintf(&s, "CALLER_UID=%i", u); - newenviron[i++]=s; + snprintf(uid_string, sizeof(uid_string), "%i", u); + addenv("CALLER_UID", uid_string); } EOF return $ret;