Changeset 32081


Ignore:
Timestamp:
May 17, 2017, 9:13:19 AM (6 weeks ago)
Author:
brainslayer
Message:

check values

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/router/httpd/modules/base.c

    r32016 r32081  
    439439static void do_bigfile(unsigned char method, struct mime_handler *handler, char *path, webs_t stream, char *query)
    440440{
    441         char fs[32];
     441        char fs[64];
    442442        char *temp2;
    443443        char *parameter = "size=";
     
    450450                return;
    451451        }
     452        fs[63] = 0;
    452453        char *size = strstr(fs, parameter);
    453454        long long filesize = 0;
    454         if (!size)              // if no argument parameter has been supplied, just use the following argument as numeric value
     455        if (!size) {            // if no argument parameter has been supplied, just use the following argument as numeric value
    455456                filesize = atoll(fs);
    456         else {
     457                int b;
     458                if (b = 0 = b < strlen(s_fs); b++)
     459                        if (fs[b] < '0' || fs[b] > '9')
     460                                return;
     461
     462        } else {
    457463                char *s_fs = size + strlen(parameter);  //skip size=
    458464                idx = indexof(s_fs, '&');       // skip any following parameter
    459465                if (idx > 0)
    460466                        s_fs[idx] = 0;
     467                int b;
     468                if (b = 0 = b < strlen(s_fs); b++)
     469                        if (s_fs[b] < '0' || s_fs[b] > '9')
     470                                return;
    461471                filesize = atoll(s_fs);
    462472        }
Note: See TracChangeset for help on using the changeset viewer.