/* * s_handlers.c * (C) Peter Salanki 2002 */ #include #include #include #include #include #include "settings.h" #include "globals.h" void s_ctcp (); void s_privmsg () { char tail[256]; int i, j; if (strcasecmp (args[0], BOT_NAME) != 0) { strncpy(command, "", 512); for (i = 0; ((args[1][i] != ' ') && (args[1][i] != '\n') && (args[1][i] != '\r') && (args[1][i] != 0) && (i < 512)); i++) { command[i] = args[1][i]; } STR_replace_c(args[1], command, "", tail); strncpy(args[2], "", 512); j = 0; for(i = 1; tail[i] != '\0'; ++i) { args[2][j] = tail[i]; ++j; } return; } if (args[1][0] == 1) { /* We might have a CTCP command */ for (i = 0; i < strlen (args[1]); i++) { if ((args[1][i] == '\n') || (args[1][i] == '\r') || (args[1][i] == 0)) break; } if (args[1][i - 1] == 1) { s_ctcp (); return; } } // Priv command here privscan(args[1]); return; } void s_ctcp () { if (strcasecmp (args[0], BOT_NAME) != 0) { return; } if (strncasecmp (args[1], "\1VERSION", 8) == 0) { ctcpreply (sender, "VERSION " CTCP_VERSION_REPLY); } if (strncasecmp (args[1], "\1PING", 5) == 0) { putserver (":" BOT_NAME " NOTICE "); putserver (sender); putserver (" :\1PING"); puttime (); putserver ("\1\n"); } } void s_ping () { pong (args[0]); return; } void s_join () { return; } void s_targetchange() { printf("Target change to fast.\n"); timenext = time(NULL) + 300; /* reconnect(); timenext = time(NULL); */ --cchannel; return; }