678 |
int |
int |
679 |
irc_cmd_send_join (t_irc_server *server, char *arguments) |
irc_cmd_send_join (t_irc_server *server, char *arguments) |
680 |
{ |
{ |
681 |
char *p, *buffer; |
if (string_is_channel (arguments)) |
682 |
|
server_sendf (server, "JOIN %s\r\n", arguments); |
683 |
buffer = (char *) malloc( (strlen(arguments) + 1) * sizeof (*buffer)); |
else |
684 |
if (!buffer) |
server_sendf (server, "JOIN #%s\r\n", arguments); |
685 |
return 0; |
return 0; |
|
|
|
|
while(arguments != NULL) |
|
|
{ |
|
|
p = strchr(arguments, ','); |
|
|
if (!p) |
|
|
{ |
|
|
strcpy(buffer, arguments); |
|
|
} |
|
|
else |
|
|
{ |
|
|
memcpy(buffer, arguments, p - arguments); |
|
|
buffer[p - arguments] = '\0'; |
|
|
arguments = ++p; |
|
|
} |
|
|
|
|
|
if (string_is_channel (buffer)) |
|
|
server_sendf (server, "JOIN %s\r\n", buffer); |
|
|
else |
|
|
server_sendf (server, "JOIN #%s\r\n", buffer); |
|
|
|
|
|
if (!p) break; |
|
|
} |
|
|
|
|
|
free (buffer); |
|
|
|
|
|
return 0; |
|
686 |
} |
} |
687 |
|
|
688 |
/* |
/* |