# HG changeset patch # User Tero Marttila # Date 1235865768 -7200 # Node ID c339c020fd3344785562663d4cdc7b1c928f9e9f # Parent 0911d0b828d4212e08c0608f820466c22f948a11 add missing irc_cmd.h, and modify line_proto/irc_conn to use log diff -r 0911d0b828d4 -r c339c020fd33 src/irc_cmd.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/irc_cmd.h Sun Mar 01 02:02:48 2009 +0200 @@ -0,0 +1,10 @@ +#ifndef IRC_CMD_H +#define IRC_CMD_H + +/* + * IRC command numerics + */ +#define IRC_RPL_WELCOME "001" + + +#endif /* IRC_CMD_H */ diff -r 0911d0b828d4 -r c339c020fd33 src/irc_conn.c --- a/src/irc_conn.c Sun Mar 01 01:48:14 2009 +0200 +++ b/src/irc_conn.c Sun Mar 01 02:02:48 2009 +0200 @@ -1,6 +1,7 @@ #include "irc_conn.h" #include "irc_cmd.h" +#include "log.h" #include #include @@ -12,6 +13,8 @@ { // update state conn->registered = true; + + log_info("registered"); } /* @@ -49,7 +52,7 @@ int err; // log - printf("<<< %s\n", line_buf); + log_debug("%s", line_buf); // parse if ((err = irc_line_parse(&line, line_buf))) { @@ -104,7 +107,7 @@ return err; // log - printf(">>> %s\n", line_buf); + log_debug("%s", line_buf); // add CRLF strcat(line_buf, "\r\n"); diff -r 0911d0b828d4 -r c339c020fd33 src/line_proto.c --- a/src/line_proto.c Sun Mar 01 01:48:14 2009 +0200 +++ b/src/line_proto.c Sun Mar 01 02:02:48 2009 +0200 @@ -1,12 +1,11 @@ #include "line_proto.h" +#include "log.h" #include #include #include -#include - /* * Our state */ @@ -54,8 +53,8 @@ do { // attempt to read a line if (line_proto_recv(lp, &line)) - // XXX: fail - errx(1, "line_proto_recv: %s", error_msg(&lp->err)); + // XXX: un-fatalize + FATAL_ERROR(&lp->err, "line_proto_recv"); // got a line? if (line) @@ -65,7 +64,7 @@ // reschedule if (line_proto_schedule_events(lp, EV_READ)) - errx(1, "line_proto_schedule_events: %s", error_msg(&lp->err)); + FATAL_ERROR(&lp->err, "line_proto_schedule_events"); } /* @@ -78,7 +77,7 @@ // just flush if ((err = line_proto_flush(lp)) < 0) - errx(1, "line_proto_flush: %s", error_name(err)); + FATAL_ERR(err, "line_proto_flush"); } /* diff -r 0911d0b828d4 -r c339c020fd33 src/log.c --- a/src/log.c Sun Mar 01 01:48:14 2009 +0200 +++ b/src/log.c Sun Mar 01 02:02:48 2009 +0200 @@ -22,7 +22,7 @@ */ void _log_header (enum log_level level, const char *func) { - printf("[%5s] %s: ", log_level_name(level), func); + printf("[%5s] %20s : ", log_level_name(level), func); } void log_msg (enum log_level level, const char *func, const char *format, ...) @@ -40,12 +40,12 @@ printf("\n"); } -void _log_err (err_t err, const char *func, const char *format, ...) +void _log_err (enum log_level level, err_t err, const char *func, const char *format, ...) { va_list vargs; // header - _log_header(LOG_ERROR, func); + _log_header(level, func); // formatted output va_start(vargs, format); @@ -56,12 +56,12 @@ printf(": %s\n", error_name(err)); } -void _log_err_info (struct error_info *err, const char *func, const char *format, ...) +void _log_err_info (enum log_level level, struct error_info *err, const char *func, const char *format, ...) { va_list vargs; // header - _log_header(LOG_ERROR, func); + _log_header(level, func); // formatted output va_start(vargs, format); diff -r 0911d0b828d4 -r c339c020fd33 src/log.h --- a/src/log.h Sun Mar 01 01:48:14 2009 +0200 +++ b/src/log.h Sun Mar 01 02:02:48 2009 +0200 @@ -38,14 +38,14 @@ /** * Log a message with LOG_ERROR, appending the formatted error code */ -void _log_err (err_t err, const char *func, const char *format, ...) - __attribute__ ((format (printf, 3, 4))); +void _log_err (enum log_level level, err_t err, const char *func, const char *format, ...) + __attribute__ ((format (printf, 4, 5))); -void _log_err_info (struct error_info *err, const char *func, const char *format, ...) - __attribute__ ((format (printf, 3, 4))); +void _log_err_info (enum log_level level, struct error_info *err, const char *func, const char *format, ...) + __attribute__ ((format (printf, 4, 5))); -#define log_err(err, ...) _log_err(err, __func__, __VA_ARGS__) -#define log_err_info(err_info, ...) _log_err_info(err_info, __func__, __VA_ARGS__) +#define log_err(err, ...) _log_err(LOG_ERROR, err, __func__, __VA_ARGS__) +#define log_err_info(err_info, ...) _log_err_info(LOG_ERROR, err_info, __func__, __VA_ARGS__) /* * log_fatal + exit failure @@ -53,8 +53,13 @@ #define FATAL(...) do { log_fatal(__VA_ARGS__); exit(EXIT_FAILURE); } while (0) /* + * log_err + exit failure + */ +#define FATAL_ERR(err_code, ...) do { _log_err(LOG_FATAL, err_code, __func__, __VA_ARGS__); exit(EXIT_FAILURE); } while (0) + +/* * log_err_info + exit failure */ -#define FATAL_ERROR(err, ...) do { log_err_info(err, __VA_ARGS__); exit(EXIT_FAILURE); } while (0) +#define FATAL_ERROR(err_info, ...) do { _log_err_info(LOG_FATAL, err_info, __func__, __VA_ARGS__); exit(EXIT_FAILURE); } while (0) #endif /* LOG_H */ diff -r 0911d0b828d4 -r c339c020fd33 src/nexus.c --- a/src/nexus.c Sun Mar 01 01:48:14 2009 +0200 +++ b/src/nexus.c Sun Mar 01 02:02:48 2009 +0200 @@ -91,15 +91,21 @@ // over-simplified connect if (ssl) { + log_info("SSL connecting to [%s]:%s", hostname, portname); + if (sock_ssl_connect(&sock, hostname, portname, &err)) FATAL_ERROR(&err, "sock_ssl_connect(%s, %s)", hostname, portname); } else { + log_info("connecting to [%s]:%s", hostname, portname); + if (sock_tcp_connect(&sock, hostname, portname, &err)) FATAL_ERROR(&err, "sock_tcp_connect(%s, %s)", hostname, portname); } + log_info("connected, registering"); + // create the irc connection state if (irc_conn_create(&conn, sock, &conn_config, &err)) FATAL_ERROR(&err, "irc_conn_create");