This commit is contained in:
Your Name 2025-06-23 21:32:59 +00:00
parent 8d3ad289dd
commit 613d371a58

23
main.c
View file

@ -14,7 +14,7 @@
#endif
#define bool char
#define VERSION "2.0"
#define VERSION "2.0.1"
typedef struct {
char *dir;
@ -62,7 +62,13 @@ char *GetFilename(void) {
die("%s: localtime(): %s\n", prog_name, strerror(errno));
static char filename[PATH_MAX + 1];
snprintf(filename, PATH_MAX, "%s_%d-%d-%d%s", ircbot.irc_channel, tm->tm_mday, tm->tm_mon, 1900 + tm->tm_year, cfg.ext);
snprintf(filename, PATH_MAX, "%s_%d-%d-%d%s",
ircbot.irc_channel,
tm->tm_mday,
tm->tm_mon,
1900 + tm->tm_year,
cfg.ext);
return filename;
}
@ -79,7 +85,6 @@ void WriteToFile(void) {
}
fprintf(fp, cfg.fmt, ircbot.irc_nick, ircbot.irc_msg);
fputs("\n", fp);
fclose(fp);
}
@ -173,7 +178,7 @@ int main(int argc, char **argv) {
die("%s: chdir(): %s\n", prog_name, strerror(errno));
int status = IRCC_connect(&ircbot, cfg.host, cfg.port);
if (status == IRCC_ERROR)
if (status < 0)
die("%s: connect(): %s\n", prog_name, strerror(errno));
if (cfg.usessl) {
@ -184,7 +189,7 @@ int main(int argc, char **argv) {
}
/* Register and skip MOTD */
if (IRCC_register(&ircbot, cfg.nick) == IRCC_DISCONNECTED)
if (IRCC_register(&ircbot, cfg.nick) < 0)
die("%s: irc register: %s\n", prog_name, strerror(errno));
sleep(5);
@ -206,14 +211,14 @@ int main(int argc, char **argv) {
/* Logging */
while (1) {
int irc_status = IRCC_recv(&ircbot);
if (irc_status == IRCC_DISCONNECTED)
if (irc_status < 0)
die("%s: irc recv: %s\n", prog_name, strerror(errno));
if (cfg.debug)
printf("\033[32m%s\033[0m", ircbot.irc_raw);
irc_status = IRCC_parse(&ircbot);
if (ircbot.irc_nick != NULL && ircbot.irc_channel != NULL && ircbot.irc_msg != NULL && irc_status == IRCC_PRIVMSG)
WriteToFile();
if (cfg.debug)
printf("\033[32m%s\033[0m", ircbot.irc_raw);
}
}