Showing
22 changed files
with
13 additions
and
354 deletions
| @@ -11,7 +11,7 @@ AM_INIT_AUTOMAKE | @@ -11,7 +11,7 @@ AM_INIT_AUTOMAKE | ||
| 11 | AM_SILENT_RULES([yes]) | 11 | AM_SILENT_RULES([yes]) |
| 12 | AC_COPYRIGHT([Copyright © 2014 Georg Hopp]) | 12 | AC_COPYRIGHT([Copyright © 2014 Georg Hopp]) |
| 13 | AC_REVISION([0.0.0]) | 13 | AC_REVISION([0.0.0]) |
| 14 | -AC_CONFIG_SRCDIR([src/stream/stream.c]) | 14 | +AC_CONFIG_SRCDIR([src/stream.c]) |
| 15 | AC_CONFIG_HEADERS([trio.h]) | 15 | AC_CONFIG_HEADERS([trio.h]) |
| 16 | AC_CONFIG_MACRO_DIR([m4]) | 16 | AC_CONFIG_MACRO_DIR([m4]) |
| 17 | 17 | ||
| @@ -61,8 +61,5 @@ AC_CONFIG_FILES([Makefile | @@ -61,8 +61,5 @@ AC_CONFIG_FILES([Makefile | ||
| 61 | docs/Makefile | 61 | docs/Makefile |
| 62 | tests/Makefile | 62 | tests/Makefile |
| 63 | src/Makefile | 63 | src/Makefile |
| 64 | - src/logger/Makefile | ||
| 65 | - src/socket/Makefile | ||
| 66 | - src/stream/Makefile | ||
| 67 | include/Makefile]) | 64 | include/Makefile]) |
| 68 | AC_OUTPUT | 65 | AC_OUTPUT |
include/tr/interface/logger.h
deleted
100644 → 0
| 1 | -/** | ||
| 2 | - * \file | ||
| 3 | - * The logger interface. | ||
| 4 | - * | ||
| 5 | - * \author Georg Hopp | ||
| 6 | - * | ||
| 7 | - * \copyright | ||
| 8 | - * Copyright © 2012 Georg Hopp | ||
| 9 | - * | ||
| 10 | - * This program is free software: you can redistribute it and/or modify | ||
| 11 | - * it under the terms of the GNU General Public License as published by | ||
| 12 | - * the Free Software Foundation, either version 3 of the License, or | ||
| 13 | - * (at your option) any later version. | ||
| 14 | - * | ||
| 15 | - * This program is distributed in the hope that it will be useful, | ||
| 16 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 17 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 18 | - * GNU General Public License for more details. | ||
| 19 | - * | ||
| 20 | - * You should have received a copy of the GNU General Public License | ||
| 21 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 22 | - */ | ||
| 23 | - | ||
| 24 | -#ifndef __TR_INTERFACE_LOGGER_H__ | ||
| 25 | -#define __TR_INTERFACE_LOGGER_H__ | ||
| 26 | - | ||
| 27 | -#include <stdarg.h> | ||
| 28 | - | ||
| 29 | -#include "trbase.h" | ||
| 30 | -#include "tr/logger.h" | ||
| 31 | - | ||
| 32 | -typedef void (* fptr_TR_log)(void *, TR_logger_level, const char * const); | ||
| 33 | - | ||
| 34 | -TR_INTERFACE(TR_Logger) { | ||
| 35 | - TR_IFID; | ||
| 36 | - fptr_TR_log log; | ||
| 37 | -}; | ||
| 38 | - | ||
| 39 | -extern void TR_loggerLog(void *, TR_logger_level, const char * const, ...); | ||
| 40 | - | ||
| 41 | -#endif // __TR_INTERFACE_LOGGER_H__ | ||
| 42 | - | ||
| 43 | -// vim: set ts=4 sw=4: |
include/tr/logger.h
deleted
100644 → 0
| 1 | -/** | ||
| 2 | - * \file | ||
| 3 | - * A generic logger class and two extended classes, One that logs to | ||
| 4 | - * stderr and one that logs to the system syslog. | ||
| 5 | - * | ||
| 6 | - * \author Georg Hopp | ||
| 7 | - * | ||
| 8 | - * \copyright | ||
| 9 | - * Copyright © 2012 Georg Hopp | ||
| 10 | - * | ||
| 11 | - * This program is free software: you can redistribute it and/or modify | ||
| 12 | - * it under the terms of the GNU General Public License as published by | ||
| 13 | - * the Free Software Foundation, either version 3 of the License, or | ||
| 14 | - * (at your option) any later version. | ||
| 15 | - * | ||
| 16 | - * This program is distributed in the hope that it will be useful, | ||
| 17 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 18 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 19 | - * GNU General Public License for more details. | ||
| 20 | - * | ||
| 21 | - * You should have received a copy of the GNU General Public License | ||
| 22 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 23 | - */ | ||
| 24 | - | ||
| 25 | -#ifndef __TR_LOGGER_H__ | ||
| 26 | -#define __TR_LOGGER_H__ | ||
| 27 | - | ||
| 28 | -#include "trbase.h" | ||
| 29 | - | ||
| 30 | -typedef enum { | ||
| 31 | - TR_LOGGER_DEBUG=0, | ||
| 32 | - TR_LOGGER_INFO, | ||
| 33 | - TR_LOGGER_NOTICE, | ||
| 34 | - TR_LOGGER_WARNING, | ||
| 35 | - TR_LOGGER_ERR, | ||
| 36 | - TR_LOGGER_CRIT, | ||
| 37 | - TR_LOGGER_ALERT, | ||
| 38 | - TR_LOGGER_EMERG | ||
| 39 | -} TR_logger_level; | ||
| 40 | - | ||
| 41 | -#include "tr/interface/logger.h" | ||
| 42 | - | ||
| 43 | -extern const char * const TR_logger_level_str[]; | ||
| 44 | - | ||
| 45 | -TR_CLASS(TR_Logger) { | ||
| 46 | - TR_logger_level min_level; | ||
| 47 | -}; | ||
| 48 | - | ||
| 49 | -TR_CLASS(TR_LoggerStderr) { | ||
| 50 | - TR_EXTENDS(TR_Logger); | ||
| 51 | -}; | ||
| 52 | - | ||
| 53 | -TR_CLASS(TR_LoggerSyslog) { | ||
| 54 | - TR_EXTENDS(TR_Logger); | ||
| 55 | -}; | ||
| 56 | - | ||
| 57 | -#endif // __TR_LOGGER_H__ | ||
| 58 | - | ||
| 59 | -// vim: set ts=4 sw=4: |
| @@ -3,14 +3,19 @@ AUTOMAKE_OPTIONS = subdir-objects | @@ -3,14 +3,19 @@ AUTOMAKE_OPTIONS = subdir-objects | ||
| 3 | 3 | ||
| 4 | AM_CFLAGS += -I../include/ | 4 | AM_CFLAGS += -I../include/ |
| 5 | 5 | ||
| 6 | -TRIOLIBS = logger/liblogger.la \ | ||
| 7 | - stream/libstream.la \ | ||
| 8 | - socket/libsocket.la | 6 | +TRIO = stream.c \ |
| 7 | + read.c \ | ||
| 8 | + write.c \ | ||
| 9 | + socket.c \ | ||
| 10 | + accept.c \ | ||
| 11 | + connect.c \ | ||
| 12 | + listen.c \ | ||
| 13 | + nonblock.c \ | ||
| 14 | + i_reader.c \ | ||
| 15 | + i_writer.c | ||
| 9 | 16 | ||
| 10 | lib_LTLIBRARIES = libtrio.la | 17 | lib_LTLIBRARIES = libtrio.la |
| 11 | 18 | ||
| 12 | -libtrio_la_SOURCES = | 19 | +libtrio_la_SOURCES = $(TRIO) |
| 13 | libtrio_la_CFLAGS = $(AM_CFLAGS) | 20 | libtrio_la_CFLAGS = $(AM_CFLAGS) |
| 14 | -libtrio_la_LIBADD = $(TRIOLIBS) | ||
| 15 | - | ||
| 16 | -SUBDIRS = logger socket stream | 21 | +libtrio_la_LIBADD = |
src/logger/Makefile.am
deleted
100644 → 0
src/logger/i_logger.c
deleted
100644 → 0
| 1 | -/** | ||
| 2 | - * \file | ||
| 3 | - * | ||
| 4 | - * \author Georg Hopp | ||
| 5 | - * | ||
| 6 | - * \copyright | ||
| 7 | - * Copyright © 2012 Georg Hopp | ||
| 8 | - * | ||
| 9 | - * This program is free software: you can redistribute it and/or modify | ||
| 10 | - * it under the terms of the GNU General Public License as published by | ||
| 11 | - * the Free Software Foundation, either version 3 of the License, or | ||
| 12 | - * (at your option) any later version. | ||
| 13 | - * | ||
| 14 | - * This program is distributed in the hope that it will be useful, | ||
| 15 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | - * GNU General Public License for more details. | ||
| 18 | - * | ||
| 19 | - * You should have received a copy of the GNU General Public License | ||
| 20 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 21 | - */ | ||
| 22 | - | ||
| 23 | -#include <stdlib.h> | ||
| 24 | -#include <stdio.h> | ||
| 25 | -#include <stdarg.h> | ||
| 26 | - | ||
| 27 | -#include "tr/logger.h" | ||
| 28 | -#include "tr/interface/logger.h" | ||
| 29 | -#include "trbase.h" | ||
| 30 | - | ||
| 31 | -TR_CREATE_INTERFACE(TR_Logger, 1); | ||
| 32 | - | ||
| 33 | -void | ||
| 34 | -TR_loggerLog( | ||
| 35 | - void * _object, | ||
| 36 | - TR_logger_level level, | ||
| 37 | - const char * const fmt, | ||
| 38 | - ...) { | ||
| 39 | - TR_Logger object = _object; | ||
| 40 | - | ||
| 41 | - if (level >= object->min_level) { | ||
| 42 | - char * msg = NULL; | ||
| 43 | - size_t msg_size = 0; | ||
| 44 | - va_list params; | ||
| 45 | - | ||
| 46 | - va_start(params, fmt); | ||
| 47 | - msg_size = vsnprintf(NULL, msg_size, fmt, params); | ||
| 48 | - va_end(params); | ||
| 49 | - | ||
| 50 | - msg = TR_malloc(msg_size + 1); | ||
| 51 | - | ||
| 52 | - va_start(params, fmt); | ||
| 53 | - vsnprintf(msg, msg_size + 1, fmt, params); | ||
| 54 | - va_end(params); | ||
| 55 | - | ||
| 56 | - TR_CALL(_object, TR_Logger, log, level, msg); | ||
| 57 | - | ||
| 58 | - TR_MEM_FREE(msg); | ||
| 59 | - } | ||
| 60 | -} | ||
| 61 | - | ||
| 62 | -// vim: set ts=4 sw=4: |
src/logger/logger.c
deleted
100644 → 0
| 1 | -/** | ||
| 2 | - * \file | ||
| 3 | - * | ||
| 4 | - * \author Georg Hopp | ||
| 5 | - * | ||
| 6 | - * \copyright | ||
| 7 | - * Copyright © 2012 Georg Hopp | ||
| 8 | - * | ||
| 9 | - * This program is free software: you can redistribute it and/or modify | ||
| 10 | - * it under the terms of the GNU General Public License as published by | ||
| 11 | - * the Free Software Foundation, either version 3 of the License, or | ||
| 12 | - * (at your option) any later version. | ||
| 13 | - * | ||
| 14 | - * This program is distributed in the hope that it will be useful, | ||
| 15 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | - * GNU General Public License for more details. | ||
| 18 | - * | ||
| 19 | - * You should have received a copy of the GNU General Public License | ||
| 20 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 21 | - */ | ||
| 22 | - | ||
| 23 | -#include <stdarg.h> | ||
| 24 | - | ||
| 25 | -#include "trbase.h" | ||
| 26 | -#include "tr/logger.h" | ||
| 27 | -#include "tr/interface/logger.h" | ||
| 28 | - | ||
| 29 | -const | ||
| 30 | -char * const | ||
| 31 | -TR_logger_level_str[] = { | ||
| 32 | - "DEBUG", | ||
| 33 | - "INFO", | ||
| 34 | - "NOTICE", | ||
| 35 | - "WARNING", | ||
| 36 | - "ERR", | ||
| 37 | - "CRIT", | ||
| 38 | - "ALERT", | ||
| 39 | - "EMERG" | ||
| 40 | -}; | ||
| 41 | - | ||
| 42 | -static | ||
| 43 | -int | ||
| 44 | -loggerCtor(void * _this, va_list * params) | ||
| 45 | -{ | ||
| 46 | - TR_Logger this = _this; | ||
| 47 | - this->min_level = va_arg(*params, int); | ||
| 48 | - | ||
| 49 | - return 0; | ||
| 50 | -} | ||
| 51 | - | ||
| 52 | -static void loggerDtor(void * _this) {} | ||
| 53 | - | ||
| 54 | -TR_INIT_IFACE(TR_Class, loggerCtor, loggerDtor, NULL); | ||
| 55 | -TR_CREATE_CLASS(TR_Logger, NULL, TR_IF(TR_Class)); | ||
| 56 | - | ||
| 57 | -// vim: set ts=4 sw=4: |
src/logger/stderr.c
deleted
100644 → 0
| 1 | -/** | ||
| 2 | - * \file | ||
| 3 | - * | ||
| 4 | - * \author Georg Hopp | ||
| 5 | - * | ||
| 6 | - * \copyright | ||
| 7 | - * Copyright © 2012 Georg Hopp | ||
| 8 | - * | ||
| 9 | - * This program is free software: you can redistribute it and/or modify | ||
| 10 | - * it under the terms of the GNU General Public License as published by | ||
| 11 | - * the Free Software Foundation, either version 3 of the License, or | ||
| 12 | - * (at your option) any later version. | ||
| 13 | - * | ||
| 14 | - * This program is distributed in the hope that it will be useful, | ||
| 15 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | - * GNU General Public License for more details. | ||
| 18 | - * | ||
| 19 | - * You should have received a copy of the GNU General Public License | ||
| 20 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 21 | - */ | ||
| 22 | - | ||
| 23 | -#include <stdio.h> | ||
| 24 | - | ||
| 25 | -#include "trbase.h" | ||
| 26 | -#include "tr/logger.h" | ||
| 27 | -#include "tr/interface/logger.h" | ||
| 28 | - | ||
| 29 | -static | ||
| 30 | -void | ||
| 31 | -logStderr(void * this, TR_logger_level level, const char * const msg) | ||
| 32 | -{ | ||
| 33 | - fprintf(stderr, "[%s] %s\n", TR_logger_level_str[level], msg); | ||
| 34 | -} | ||
| 35 | - | ||
| 36 | -TR_INIT_IFACE(TR_Logger, logStderr); | ||
| 37 | -TR_CREATE_CLASS(TR_LoggerStderr, TR_Logger, TR_IF(TR_Logger)); | ||
| 38 | - | ||
| 39 | -// vim: set ts=4 sw=4: |
src/logger/syslog.c
deleted
100644 → 0
| 1 | -/** | ||
| 2 | - * \file | ||
| 3 | - * | ||
| 4 | - * \author Georg Hopp | ||
| 5 | - * | ||
| 6 | - * \copyright | ||
| 7 | - * Copyright © 2012 Georg Hopp | ||
| 8 | - * | ||
| 9 | - * This program is free software: you can redistribute it and/or modify | ||
| 10 | - * it under the terms of the GNU General Public License as published by | ||
| 11 | - * the Free Software Foundation, either version 3 of the License, or | ||
| 12 | - * (at your option) any later version. | ||
| 13 | - * | ||
| 14 | - * This program is distributed in the hope that it will be useful, | ||
| 15 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | - * GNU General Public License for more details. | ||
| 18 | - * | ||
| 19 | - * You should have received a copy of the GNU General Public License | ||
| 20 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 21 | - */ | ||
| 22 | - | ||
| 23 | -#include <syslog.h> | ||
| 24 | - | ||
| 25 | -#include "trbase.h" | ||
| 26 | -#include "tr/logger.h" | ||
| 27 | -#include "tr/interface/logger.h" | ||
| 28 | - | ||
| 29 | -static | ||
| 30 | -const | ||
| 31 | -int syslog_priority[] = { | ||
| 32 | - LOG_USER | LOG_DEBUG, | ||
| 33 | - LOG_USER | LOG_INFO, | ||
| 34 | - LOG_USER | LOG_NOTICE, | ||
| 35 | - LOG_USER | LOG_WARNING, | ||
| 36 | - LOG_USER | LOG_ERR, | ||
| 37 | - LOG_USER | LOG_CRIT, | ||
| 38 | - LOG_USER | LOG_ALERT, | ||
| 39 | - LOG_USER | LOG_EMERG | ||
| 40 | -}; | ||
| 41 | - | ||
| 42 | -static | ||
| 43 | -void | ||
| 44 | -logSyslog(void * this, TR_logger_level level, const char * const msg) | ||
| 45 | -{ | ||
| 46 | - syslog(syslog_priority[level], "[%s] %s", TR_logger_level_str[level], msg); | ||
| 47 | -} | ||
| 48 | - | ||
| 49 | -TR_INIT_IFACE(TR_Logger, logSyslog); | ||
| 50 | -TR_CREATE_CLASS(TR_LoggerSyslog, TR_Logger, TR_IF(TR_Logger)); | ||
| 51 | - | ||
| 52 | -// vim: set ts=4 sw=4: |
src/socket/Makefile.am
deleted
100644 → 0
src/stream/Makefile.am
deleted
100644 → 0
Please
register
or
login
to post a comment