X-Git-Url: http://git.pk910.de/?p=NextIRCd.git;a=blobdiff_plain;f=src%2Fircd_parse.c;h=0a72a2af9c681cbc6f0227f3baa9c965ec4090bc;hp=3a23335d05e4b1fa11403ecaf4c1008e6d759b32;hb=878d4152c9e550c5c418832c305d99a305de330d;hpb=2d694e116e0f9c5bf9f72c78d12892266cfa8288 diff --git a/src/ircd_parse.c b/src/ircd_parse.c index 3a23335..0a72a2a 100644 --- a/src/ircd_parse.c +++ b/src/ircd_parse.c @@ -90,9 +90,9 @@ static char *parse_irc_token(char **data) { //find next " " int i; char *token = *data; - for(i = 0; *data[i]; i++) { - if(*data[i] != ' ') { - *data[i] = '\0'; + for(i = 0; (*data)[i]; i++) { + if((*data)[i] == ' ') { + (*data)[i] = '\0'; *data += i+1; break; } @@ -101,10 +101,9 @@ static char *parse_irc_token(char **data) { } static char **parse_irc_params(char *data, int *argc, int maxargs) { - if(maxargs == 0) { - *argc = 0; + *argc = 0; + if(maxargs == 0) return NULL; - } char **argv = calloc(maxargs, sizeof(*argv)); while(*data) { //skip leading spaces @@ -115,7 +114,7 @@ static char **parse_irc_params(char *data, int *argc, int maxargs) { argv[*argc++] = data + 1; break; } - argv[*argc++] = data; + argv[(*argc)++] = data; if (*argc >= maxargs) break; while (*data != ' ' && *data) @@ -132,7 +131,7 @@ void parse_client_data(struct Client *client, char *data) { int found = 0; int i; for(i = 0; (parse_command_list[i].tokens.client || parse_command_list[i].tokens.server); i++) { - if(stricmp(parse_command_list[i].tokens.client, token)) { + if(stricmp(parse_command_list[i].tokens.client, token) == 0) { found = 1; break; } @@ -162,7 +161,7 @@ void parse_unauth_data(struct Auth *auth, char *data) { int found = 0; int i; for(i = 0; (parse_command_list[i].tokens.client || parse_command_list[i].tokens.server); i++) { - if(stricmp(parse_command_list[i].tokens.client, token)) { + if(stricmp(parse_command_list[i].tokens.client, token) == 0) { found = 1; break; }