From 41ea5dccde740475b8287c0c6ee8160027765311 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Wilfried=20G=C3=B6esgens?= Date: Sun, 20 Jun 2010 21:44:24 +0000 Subject: [PATCH] * check_get(): fix dict_tcp module; we just care for the first 4 chars * check_get(): send an error if we don't get what we expect --- citadel/modules/vcard/serv_vcard.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/citadel/modules/vcard/serv_vcard.c b/citadel/modules/vcard/serv_vcard.c index da6418c57..fcfd5f3d8 100644 --- a/citadel/modules/vcard/serv_vcard.c +++ b/citadel/modules/vcard/serv_vcard.c @@ -1124,8 +1124,9 @@ void check_get(void) { } CtdlLogPrintf(CTDL_INFO, ": %s\n", cmdbuf); while (strlen(cmdbuf) < 3) strcat(cmdbuf, " "); - - if (strcasecmp(cmdbuf, "GET ")==0) + CtdlLogPrintf(CTDL_INFO, "[ %s]\n", cmdbuf); + + if (strncasecmp(cmdbuf, "GET ", 4)==0) { struct recptypes *rcpt; char *argbuf = &cmdbuf[4]; @@ -1148,7 +1149,14 @@ void check_get(void) { CtdlLogPrintf(CTDL_INFO, "sending 500 REJECT noone here by that name: %s\n", internet_addr); } - if (rcpt != NULL) free_recipients(rcpt); + if (rcpt != NULL) + free_recipients(rcpt); + } + else + { + cprintf("500 REJECT invalid Query.\n"); + + CtdlLogPrintf(CTDL_INFO, "sending 500 REJECT invalid Query: %s\n", internet_addr); } } -- 2.30.2