[BACK]Return to lua-bozo.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / libexec / httpd

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/libexec/httpd/lua-bozo.c between version 1.11 and 1.12

version 1.11, 2014/08/15 19:35:28 version 1.12, 2015/07/04 22:39:23
Line 311  bozo_process_lua(bozo_httpreq_t *request
Line 311  bozo_process_lua(bozo_httpreq_t *request
         if (!httpd->process_lua)          if (!httpd->process_lua)
                 return 0;                  return 0;
   
           info = NULL;
           query = NULL;
           prefix = NULL;
         uri = request->hr_oldfile ? request->hr_oldfile : request->hr_file;          uri = request->hr_oldfile ? request->hr_oldfile : request->hr_file;
   
         if (*uri == '/') {          if (*uri == '/') {
                 file = bozostrdup(httpd, uri);                  file = bozostrdup(httpd, uri);
                   if (file == NULL)
                           goto out;
                 prefix = bozostrdup(httpd, &uri[1]);                  prefix = bozostrdup(httpd, &uri[1]);
         } else {          } else {
                   if (asprintf(&file, "/%s", uri) < 0)
                           goto out;
                 prefix = bozostrdup(httpd, uri);                  prefix = bozostrdup(httpd, uri);
                 asprintf(&file, "/%s", uri);  
         }  
         if (file == NULL) {  
                 free(prefix);  
                 return 0;  
         }          }
           if (prefix == NULL)
                   goto out;
   
         if (request->hr_query && strlen(request->hr_query))          if (request->hr_query && request->hr_query[0])
                 query = bozostrdup(httpd, request->hr_query);                  query = bozostrdup(httpd, request->hr_query);
         else  
                 query = NULL;  
   
         p = strchr(prefix, '/');          p = strchr(prefix, '/');
         if (p == NULL){          if (p == NULL)
                 free(prefix);                  goto out;
                 return 0;  
         }  
         *p++ = '\0';          *p++ = '\0';
         handler = p;          handler = p;
         if (!*handler) {          if (!*handler)
                 free(prefix);                  goto out;
                 return 0;  
         }  
         p = strchr(handler, '/');          p = strchr(handler, '/');
         if (p != NULL)          if (p != NULL)
                 *p++ = '\0';                  *p++ = '\0';
   
         info = NULL;  
         command = file + 1;          command = file + 1;
         if ((s = strchr(command, '/')) != NULL) {          if ((s = strchr(command, '/')) != NULL) {
                 info = bozostrdup(httpd, s);                  info = bozostrdup(httpd, s);

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.12

CVSweb <webmaster@jp.NetBSD.org>