Diff for /libaitwww/src/tools.c between versions 1.3.2.1 and 1.3.2.2

version 1.3.2.1, 2012/08/06 11:08:08 version 1.3.2.2, 2012/08/06 11:26:23
Line 183  www_unescape(char * __restrict str) Line 183  www_unescape(char * __restrict str)
  * www_undot() - Undotted and clean WWW query filename   * www_undot() - Undotted and clean WWW query filename
  *   *
  * @fname = query filename   * @fname = query filename
 * return: none * @fnlen = filename length
  * return: -1 error, 0 not valid filename or >0 validated filename length
  */   */
voidint
www_undot(const char * __restrict fname)www_undot(const char * __restrict fname, int fnlen)
 {  {
         char *s, *s2;          char *s, *s2;
         int l;          int l;
   
        if (!fname)        if (!fname || !fnlen)
                return;                return -1;
   
         /* collapse / sequences */          /* collapse / sequences */
         if ((s = strstr(fname, "//"))) {          if ((s = strstr(fname, "//"))) {
Line 225  www_undot(const char * __restrict fname) Line 226  www_undot(const char * __restrict fname)
                         break;                          break;
                 *s2 = 0;                  *s2 = 0;
         }          }
   
           /* if filename is empry add current dir */
           if (!*fname)
                   strlcpy((char*) fname, "./", fnlen);
   
           /* check for valid filename */
           if (*fname == '/' || (fname[0] == '.' && fname[1] == '.' && 
                                   (!fname[2] || fname[2] == '/')))
                   return 0;
   
           return strlen(fname);
 }  }

Removed from v.1.3.2.1  
changed lines
  Added in v.1.3.2.2


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>