about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/tipideed/cgi.c1
-rw-r--r--src/tipideed/tipideed.c6
2 files changed, 4 insertions, 3 deletions
diff --git a/src/tipideed/cgi.c b/src/tipideed/cgi.c
index 14da139..a2554f5 100644
--- a/src/tipideed/cgi.c
+++ b/src/tipideed/cgi.c
@@ -381,6 +381,7 @@ int respond_cgi (tipidee_rql *rql, char const *docroot, char const *fn, size_t d
   char const *envp[envmax] ;
   modify_env(rql, docroot, hdr, bodylen, fn + docrootlen, infopath) ;
   env_merge(envp, envmax, (char const *const *)environ, g.envlen, g.sa.s + g.cwdlen + 1, g.sa.len - (g.cwdlen+1)) ;
+
   g.sa.len = sabase ;
   return ra->flags & TIPIDEE_RA_FLAG_NPH ?
     do_nph(rql, docroot, argv, envp, body, bodylen) :
diff --git a/src/tipideed/tipideed.c b/src/tipideed/tipideed.c
index 69280f6..75a8195 100644
--- a/src/tipideed/tipideed.c
+++ b/src/tipideed/tipideed.c
@@ -125,8 +125,8 @@ static inline void prep_env (size_t *remoteip, size_t *remotehost)
 
     memcpy(var + protolen, "REMOTEHOST", 11) ;
     x = getenv(var) ;
-    if ((x && !stralloc_catb(&g.sa, var, protolen + 11))
-     || !stralloc_catb(&g.sa, "REMOTE_HOST=", 12)) dienomem() ;
+    if (x && !stralloc_catb(&g.sa, var, protolen + 11)) dienomem() ;
+    if (!stralloc_catb(&g.sa, "REMOTE_HOST=", 12)) dienomem() ;
     *remotehost = g.sa.len ;
     if (x)
     {
@@ -136,7 +136,7 @@ static inline void prep_env (size_t *remoteip, size_t *remotehost)
     {
       if (!stralloc_readyplus(&g.sa, m + 2)) dienomem() ;
       if (ip46_is6(&ip)) stralloc_catb(&g.sa, "[", 1) ;
-      stralloc_catb(&g.sa, g.sa.s + *remoteip, m) ;
+      stralloc_catb(&g.sa, g.sa.s + *remoteip, m-1) ;
       if (ip46_is6(&ip)) stralloc_catb(&g.sa, "]", 1) ;
     }
     if (!stralloc_0(&g.sa)) dienomem() ;