Bug #1722 ยป lighttpd-1.4.19-env_add.patch
src/mod_fastcgi.c | ||
---|---|---|
static int env_add(char_array *env, const char *key, size_t key_len, const char *val, size_t val_len) {
|
||
char *dst;
|
||
size_t i;
|
||
if (!key || !val) return -1;
|
||
... | ... | |
dst[key_len] = '=';
|
||
/* add the \0 from the value */
|
||
memcpy(dst + key_len + 1, val, val_len + 1);
|
||
for (i = 0; i < env->used; i++)
|
||
if (strlen(env->ptr[i]) >= key_len + 1 &&
|
||
memcmp(dst, env->ptr[i], key_len + 1) == 0) {
|
||
free(env->ptr[i]);
|
||
env->ptr[i] = dst;
|
||
return 0;
|
||
}
|
||
if (env->size == 0) {
|
||
env->size = 16;
|
src/mod_scgi.c | ||
---|---|---|
static int env_add(char_array *env, const char *key, size_t key_len, const char *val, size_t val_len) {
|
||
char *dst;
|
||
size_t i;
|
||
if (!key || !val) return -1;
|
||
... | ... | |
dst[key_len] = '=';
|
||
/* add the \0 from the value */
|
||
memcpy(dst + key_len + 1, val, val_len + 1);
|
||
for (i = 0; i < env->used; i++)
|
||
if (strlen(env->ptr[i]) >= key_len + 1 &&
|
||
memcmp(dst, env->ptr[i], key_len + 1) == 0) {
|
||
free(env->ptr[i]);
|
||
env->ptr[i] = dst;
|
||
return 0;
|
||
}
|
||
if (env->size == 0) {
|
||
env->size = 16;
|