[BACK]Return to cgi.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / mandoc

Diff for /src/usr.bin/mandoc/cgi.c between version 1.24 and 1.25

version 1.24, 2014/07/25 16:43:05 version 1.25, 2014/07/25 16:55:40
Line 38 
Line 38 
         char            *manpath; /* desired manual directory */          char            *manpath; /* desired manual directory */
         char            *arch; /* architecture */          char            *arch; /* architecture */
         char            *sec; /* manual section */          char            *sec; /* manual section */
         char            *expr; /* unparsed expression string */          char            *query; /* unparsed query expression */
         int              equal; /* match whole names, not substrings */          int              equal; /* match whole names, not substrings */
 };  };
   
Line 72 
Line 72 
 static  void             resp_end_html(void);  static  void             resp_end_html(void);
 static  void             resp_searchform(const struct req *);  static  void             resp_searchform(const struct req *);
 static  void             resp_show(const struct req *, const char *);  static  void             resp_show(const struct req *, const char *);
   static  void             set_query_attr(char **, char **);
   static  int              validate_filename(const char *);
   static  int              validate_manpath(const struct req *, const char *);
   static  int              validate_urifrag(const char *);
   
 static  const char       *scriptname; /* CGI script name */  static  const char       *scriptname; /* CGI script name */
   
Line 152 
Line 156 
                 printf("&arch=");                  printf("&arch=");
                 http_print(req->q.arch);                  http_print(req->q.arch);
         }          }
         if (NULL != req->q.expr) {          if (NULL != req->q.query) {
                 printf("&query=");                  printf("&query=");
                 http_print(req->q.expr);                  http_print(req->q.query);
         }          }
         if (0 == req->q.equal)          if (0 == req->q.equal)
                 printf("&apropos=1");                  printf("&apropos=1");
Line 176 
Line 180 
                 printf("&arch=");                  printf("&arch=");
                 html_print(req->q.arch);                  html_print(req->q.arch);
         }          }
         if (NULL != req->q.expr) {          if (NULL != req->q.query) {
                 printf("&query=");                  printf("&query=");
                 html_print(req->q.expr);                  html_print(req->q.query);
         }          }
         if (0 == req->q.equal)          if (0 == req->q.equal)
                 printf("&apropos=1");                  printf("&apropos=1");
Line 238 
Line 242 
         req->q.manpath  = NULL;          req->q.manpath  = NULL;
         req->q.arch     = NULL;          req->q.arch     = NULL;
         req->q.sec      = NULL;          req->q.sec      = NULL;
         req->q.expr     = NULL;          req->q.query    = NULL;
         req->q.equal    = 1;          req->q.equal    = 1;
   
         key = val = NULL;          key = val = NULL;
Line 266 
Line 270 
                 /* Handle key-value pairs. */                  /* Handle key-value pairs. */
   
                 if ( ! strcmp(key, "query"))                  if ( ! strcmp(key, "query"))
                         set_query_attr(&req->q.expr, &val);                          set_query_attr(&req->q.query, &val);
   
                 else if ( ! strcmp(key, "apropos"))                  else if ( ! strcmp(key, "apropos"))
                         req->q.equal = !strcmp(val, "0");                          req->q.equal = !strcmp(val, "0");
Line 433 
Line 437 
   
         printf( "<TABLE><TR><TD>\n"          printf( "<TABLE><TR><TD>\n"
                 "<INPUT TYPE=\"text\" NAME=\"query\" VALUE=\"");                  "<INPUT TYPE=\"text\" NAME=\"query\" VALUE=\"");
         if (NULL != req->q.expr)          if (NULL != req->q.query)
                 html_print(req->q.expr);                  html_print(req->q.query);
         puts("\" SIZE=\"40\">");          puts("\" SIZE=\"40\">");
   
         /* Write submission and reset buttons. */          /* Write submission and reset buttons. */
Line 994 
Line 998 
          * Yes, this is half-ass.  But it works for now.           * Yes, this is half-ass.  But it works for now.
          */           */
   
         ep = req->q.expr;          ep = req->q.query;
         while (ep && isspace((unsigned char)*ep))          while (ep && isspace((unsigned char)*ep))
                 ep++;                  ep++;
   
Line 1097 
Line 1101 
   
         if ('\0' != *path)          if ('\0' != *path)
                 pg_show(&req, path);                  pg_show(&req, path);
         else if (NULL != req.q.expr)          else if (NULL != req.q.query)
                 pg_search(&req);                  pg_search(&req);
         else          else
                 pg_index(&req);                  pg_index(&req);
Line 1105 
Line 1109 
         free(req.q.manpath);          free(req.q.manpath);
         free(req.q.arch);          free(req.q.arch);
         free(req.q.sec);          free(req.q.sec);
         free(req.q.expr);          free(req.q.query);
         for (i = 0; i < (int)req.psz; i++)          for (i = 0; i < (int)req.psz; i++)
                 free(req.p[i]);                  free(req.p[i]);
         free(req.p);          free(req.p);

Legend:
Removed from v.1.24  
changed lines
  Added in v.1.25