aboutsummaryrefslogtreecommitdiff
path: root/src/log.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/log.c')
-rw-r--r--src/log.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/src/log.c b/src/log.c
index 93d6532..06513cf 100644
--- a/src/log.c
+++ b/src/log.c
@@ -1,19 +1,31 @@
#include <stdio.h>
#include <stdlib.h>
+#include <errno.h>
+#include <stdarg.h>
#include "log.h"
+#define LOG_BUFSIZ 128
-static int logfd;
+static FILE* logfile;
-int log_init(char *file)
+
+int log_init(char* file)
{
- logfd = fopen(file, "a+");
- return logfd;
+ logfile = fopen(file, "a+");
+ return (logfile ? 0 : errno);
}
-int logs(char *format, ...)
+int logs(char* format, ...)
{
-
+ int ret;
+ char* buf;
+ va_list vargs;
+
+ buf = (char*) calloc(LOG_BUFSIZ, sizeof(char));
+ va_start(vargs, format);
+ ret = vsnprintf(buf, LOG_BUFSIZ, format, vargs);
+ va_end(vargs);
+ return ret;
}