quark

quark web server
git clone git://git.suckless.org/quark
Log | Files | Refs | LICENSE

commit 15edad07bb9c43895df23be34a49fbd96efa45fa
parent 4b8f562095a60510f6fde7102cac2ba42dcbddba
Author: Anselm R Garbe <anselm@garbe.us>
Date:   Sat, 15 Aug 2009 22:59:41 +0100

sanity check
Diffstat:
Mquark.c | 17++++++++---------
1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/quark.c b/quark.c @@ -279,22 +279,21 @@ request(void) { for(p = reqbuf; p < reqbuf + MAXREQLEN && *p != '\r' && *p != '\n'; p++); if(*p == '\r' || *p == '\n') { *p = 0; - /* parse command */ - if(strncmp(reqbuf, "GET ", 4)) { - fprintf(stderr, "%s: %s performs unsupported request %s\n", tstamp(), name, reqbuf); - return -1; - } - if(reqbuf[4] != '/') { - fprintf(stderr, "%s: %s performs invalid request %s\n", tstamp(), name, reqbuf); - return -1; - } + /* check command */ + if(strncmp(reqbuf, "GET ", 4) || reqbuf[4] != '/') + goto invalid_request; } + else + goto invalid_request; /* determine path */ for(res = reqbuf + 4; *res && *(res + 1) == '/'; res++); for(p = res; *p && *p != ' '; p++); *p = 0; memmove(reqbuf, res, (p - res) + 1); return 0; +invalid_request: + fprintf(stderr, "%s: %s performs invalid request %s\n", tstamp(), name, reqbuf); + return -1; } void