diff options
Diffstat (limited to 'lib/log.cc')
-rw-r--r-- | lib/log.cc | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/lib/log.cc b/lib/log.cc new file mode 100644 index 0000000..7932e84 --- /dev/null +++ b/lib/log.cc @@ -0,0 +1,25 @@ +//#include <iostream.h> +//#include <iomanip.h> + +#include "log.h" + +logbuf::logbuf(int _level) { + ptr = buf; + len = 0; + level = _level; +} + +int logbuf::overflow(int c) { + if (c == '\n') { + *ptr++ = '\n'; + *ptr = '\0'; + syslog(level, buf); + ptr = buf; + return 0; + } + if ((len + 2) >= sizeof(buf)) + return EOF; + *ptr++ = c; + len++; + return 0; +} |