Loading Makefile +4 −1 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ LIB_DIR = ./src/lib VENDOR = ./vendor PROTOBUFC = $(VENDOR)/protobuf-c SOCKET99 = $(VENDOR)/socket99 ZLOG = $(VENDOR)/zlog VERSION_FILE = ./VERSION VERSION = ${shell head -n1 $(VERSION_FILE)} Loading @@ -33,7 +34,7 @@ KINETIC_LIB = $(BIN_DIR)/lib$(KINETIC_LIB_NAME).a LIB_INCS = -I$(LIB_DIR) -I$(PUB_INC) -I$(PROTOBUFC) -I$(VENDOR) LIB_DEPS = $(PUB_INC)/kinetic_client.h $(PUB_INC)/byte_array.h $(PUB_INC)/kinetic_types.h $(LIB_DIR)/kinetic_connection.h $(LIB_DIR)/kinetic_hmac.h $(LIB_DIR)/kinetic_logger.h $(LIB_DIR)/kinetic_message.h $(LIB_DIR)/kinetic_nbo.h $(LIB_DIR)/kinetic_operation.h $(LIB_DIR)/kinetic_pdu.h $(LIB_DIR)/kinetic_proto.h $(LIB_DIR)/kinetic_socket.h $(LIB_DIR)/kinetic_types_internal.h # LIB_OBJ = $(patsubst %,$(OUT_DIR)/%,$(LIB_OBJS)) LIB_OBJS = $(OUT_DIR)/kinetic_allocator.o $(OUT_DIR)/kinetic_nbo.o $(OUT_DIR)/kinetic_operation.o $(OUT_DIR)/kinetic_pdu.o $(OUT_DIR)/kinetic_proto.o $(OUT_DIR)/kinetic_socket.o $(OUT_DIR)/kinetic_message.o $(OUT_DIR)/kinetic_logger.o $(OUT_DIR)/kinetic_hmac.o $(OUT_DIR)/kinetic_connection.o $(OUT_DIR)/kinetic_types.o $(OUT_DIR)/kinetic_types_internal.o $(OUT_DIR)/byte_array.o $(OUT_DIR)/kinetic_client.o $(OUT_DIR)/socket99.o $(OUT_DIR)/protobuf-c.o LIB_OBJS = $(OUT_DIR)/kinetic_allocator.o $(OUT_DIR)/kinetic_nbo.o $(OUT_DIR)/kinetic_operation.o $(OUT_DIR)/kinetic_pdu.o $(OUT_DIR)/kinetic_proto.o $(OUT_DIR)/kinetic_socket.o $(OUT_DIR)/kinetic_message.o $(OUT_DIR)/kinetic_logger.o $(OUT_DIR)/kinetic_hmac.o $(OUT_DIR)/kinetic_connection.o $(OUT_DIR)/kinetic_types.o $(OUT_DIR)/kinetic_types_internal.o $(OUT_DIR)/byte_array.o $(OUT_DIR)/kinetic_client.o $(OUT_DIR)/socket99.o $(OUT_DIR)/protobuf-c.o $(OUT_DIR)/zlog.o KINETIC_LIB_OTHER_DEPS = Makefile Rakefile $(VERSION_FILE) default: $(KINETIC_LIB) Loading Loading @@ -82,6 +83,8 @@ $(OUT_DIR)/kinetic_types.o: $(LIB_DIR)/kinetic_types.c $(LIB_DEPS) $(CC) -c -o $@ $< $(CFLAGS) $(LIB_INCS) $(OUT_DIR)/byte_array.o: $(LIB_DIR)/byte_array.c $(LIB_DEPS) $(CC) -c -o $@ $< $(CFLAGS) $(LIB_INCS) $(OUT_DIR)/zlog.o: $(ZLOG)/zlog.c $(ZLOG)/zlog.h $(ZLOG)/zlog-config.h $(CC) -c -o $@ $< $(CFLAGS) -I$(ZLOG) $(OUT_DIR)/socket99.o: $(SOCKET99)/socket99.c $(SOCKET99)/socket99.h $(CC) -c -o $@ $< $(CFLAGS) -I$(SOCKET99) $(OUT_DIR)/protobuf-c.o: $(PROTOBUFC)/protobuf-c/protobuf-c.c $(PROTOBUFC)/protobuf-c/protobuf-c.h Loading include/kinetic_client.h +5 −0 Original line number Diff line number Diff line Loading @@ -30,6 +30,11 @@ */ void KineticClient_Init(const char* logFile); /** * @brief Performs shutdown/cleanup of the kinetic-c client lib */ void KineticClient_Shutdown(void); /** * @brief Initializes the Kinetic API, configures logging destination, establishes a * connection to the specified Kinetic Device, and establishes a session. Loading project.yml +1 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ - src/utility/** - vendor/protobuf-c/protobuf-c/protobuf-c.c - vendor/socket99/socket99.c - vendor/zlog/zlog.c :include: - src/** - include/** Loading src/lib/kinetic_client.c +5 −0 Original line number Diff line number Diff line Loading @@ -87,6 +87,11 @@ void KineticClient_Init(const char* logFile) KineticLogger_Init(logFile); } void KineticClient_Shutdown(void) { KineticLogger_Close(); } KineticStatus KineticClient_Connect(const KineticSession* config, KineticSessionHandle* handle) { Loading src/lib/kinetic_logger.c +41 −46 Original line number Diff line number Diff line Loading @@ -19,49 +19,43 @@ */ #include "kinetic_logger.h" // #include "zlog/zlog.h" #include "zlog/zlog.h" #include <stdio.h> #include <string.h> #include <stdlib.h> static char LogFile[256] = ""; bool LogToConsole = true; int LogLevel = 0; FILE* FileDesc = NULL; int LogLevel = -1; void KineticLogger_Init(const char* logFile) { LogToConsole = true; FileDesc = NULL; LogLevel = 0; if (logFile != NULL) { strcpy(LogFile, logFile); if (strcmp(logFile, "NONE") == 0) { if (logFile == NULL) { LogLevel = -1; LogToConsole = false; printf("\nLogging kinetic-c output is disabled!\n"); return; } else { FileDesc = fopen(LogFile, "w"); if (FileDesc == NULL) { fprintf(stderr, "Failed to initialize logger with file: " "fopen('%s') => FileDesc=%zd\n", logFile, (size_t)FileDesc); LogLevel = 0; if (strncmp(logFile, "stdout", 4) == 0 || strncmp(logFile, "STDOUT", 4) == 0) { printf("\nLogging kinetic-c output to console (stdout)\n"); zlog_init_stdout(); } else { fprintf(stderr, "Logging output to %s\n", logFile); LogToConsole = false; } zlog_init(logFile); printf("\nLogging kinetic-c output to %s\n", logFile); } // Create flushing thread to periodically flush the log zlogf("\n"); zlog_init_flush_thread(); zlogf("\n"); } } void KineticLogger_Close(void) { // Don't close std/already-opened streams if (!LogToConsole && strlen(LogFile) > 0 && FileDesc != stdout && FileDesc != stderr && FileDesc != stdin) { fclose(FileDesc); if (LogLevel >= 0) { zlog_finish(); } } Loading @@ -70,33 +64,34 @@ void KineticLogger_Log(const char* message) if (message == NULL || LogLevel < 0) { return; } zlogf(message); zlogf("\n"); } FileDesc = LogToConsole ? stderr : fopen(LogFile, "a"); if (FileDesc != NULL) { fprintf(FileDesc, "%s\n", message); fflush(FileDesc); void KineticLogger_LogPrintf(const char* format, ...) { if (LogLevel < 0 || format == NULL) { return; } char buffer[128]; va_list arg_ptr; va_start(arg_ptr, format); vsnprintf(buffer, sizeof(buffer), format, arg_ptr); va_end(arg_ptr); strcat(buffer, "\n"); zlogf(buffer); } int KineticLogger_LogPrintf(const char* format, ...) void KineticLogger_LogLocation(char* filename, int line, char const * format, ...) { int result = -1; if (LogLevel >= 0) { if (format != NULL) { va_list arg_ptr; char buffer[1024]; va_start(arg_ptr, format); result = vsprintf(buffer, format, arg_ptr); KineticLogger_Log(buffer); zlogf("[@%s:%d] %s\n", filename, line, format, arg_ptr); va_end(arg_ptr); } } return (result); } void KineticLogger_LogHeader(const KineticPDUHeader* header) { if (LogLevel < 0) { Loading Loading
Makefile +4 −1 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ LIB_DIR = ./src/lib VENDOR = ./vendor PROTOBUFC = $(VENDOR)/protobuf-c SOCKET99 = $(VENDOR)/socket99 ZLOG = $(VENDOR)/zlog VERSION_FILE = ./VERSION VERSION = ${shell head -n1 $(VERSION_FILE)} Loading @@ -33,7 +34,7 @@ KINETIC_LIB = $(BIN_DIR)/lib$(KINETIC_LIB_NAME).a LIB_INCS = -I$(LIB_DIR) -I$(PUB_INC) -I$(PROTOBUFC) -I$(VENDOR) LIB_DEPS = $(PUB_INC)/kinetic_client.h $(PUB_INC)/byte_array.h $(PUB_INC)/kinetic_types.h $(LIB_DIR)/kinetic_connection.h $(LIB_DIR)/kinetic_hmac.h $(LIB_DIR)/kinetic_logger.h $(LIB_DIR)/kinetic_message.h $(LIB_DIR)/kinetic_nbo.h $(LIB_DIR)/kinetic_operation.h $(LIB_DIR)/kinetic_pdu.h $(LIB_DIR)/kinetic_proto.h $(LIB_DIR)/kinetic_socket.h $(LIB_DIR)/kinetic_types_internal.h # LIB_OBJ = $(patsubst %,$(OUT_DIR)/%,$(LIB_OBJS)) LIB_OBJS = $(OUT_DIR)/kinetic_allocator.o $(OUT_DIR)/kinetic_nbo.o $(OUT_DIR)/kinetic_operation.o $(OUT_DIR)/kinetic_pdu.o $(OUT_DIR)/kinetic_proto.o $(OUT_DIR)/kinetic_socket.o $(OUT_DIR)/kinetic_message.o $(OUT_DIR)/kinetic_logger.o $(OUT_DIR)/kinetic_hmac.o $(OUT_DIR)/kinetic_connection.o $(OUT_DIR)/kinetic_types.o $(OUT_DIR)/kinetic_types_internal.o $(OUT_DIR)/byte_array.o $(OUT_DIR)/kinetic_client.o $(OUT_DIR)/socket99.o $(OUT_DIR)/protobuf-c.o LIB_OBJS = $(OUT_DIR)/kinetic_allocator.o $(OUT_DIR)/kinetic_nbo.o $(OUT_DIR)/kinetic_operation.o $(OUT_DIR)/kinetic_pdu.o $(OUT_DIR)/kinetic_proto.o $(OUT_DIR)/kinetic_socket.o $(OUT_DIR)/kinetic_message.o $(OUT_DIR)/kinetic_logger.o $(OUT_DIR)/kinetic_hmac.o $(OUT_DIR)/kinetic_connection.o $(OUT_DIR)/kinetic_types.o $(OUT_DIR)/kinetic_types_internal.o $(OUT_DIR)/byte_array.o $(OUT_DIR)/kinetic_client.o $(OUT_DIR)/socket99.o $(OUT_DIR)/protobuf-c.o $(OUT_DIR)/zlog.o KINETIC_LIB_OTHER_DEPS = Makefile Rakefile $(VERSION_FILE) default: $(KINETIC_LIB) Loading Loading @@ -82,6 +83,8 @@ $(OUT_DIR)/kinetic_types.o: $(LIB_DIR)/kinetic_types.c $(LIB_DEPS) $(CC) -c -o $@ $< $(CFLAGS) $(LIB_INCS) $(OUT_DIR)/byte_array.o: $(LIB_DIR)/byte_array.c $(LIB_DEPS) $(CC) -c -o $@ $< $(CFLAGS) $(LIB_INCS) $(OUT_DIR)/zlog.o: $(ZLOG)/zlog.c $(ZLOG)/zlog.h $(ZLOG)/zlog-config.h $(CC) -c -o $@ $< $(CFLAGS) -I$(ZLOG) $(OUT_DIR)/socket99.o: $(SOCKET99)/socket99.c $(SOCKET99)/socket99.h $(CC) -c -o $@ $< $(CFLAGS) -I$(SOCKET99) $(OUT_DIR)/protobuf-c.o: $(PROTOBUFC)/protobuf-c/protobuf-c.c $(PROTOBUFC)/protobuf-c/protobuf-c.h Loading
include/kinetic_client.h +5 −0 Original line number Diff line number Diff line Loading @@ -30,6 +30,11 @@ */ void KineticClient_Init(const char* logFile); /** * @brief Performs shutdown/cleanup of the kinetic-c client lib */ void KineticClient_Shutdown(void); /** * @brief Initializes the Kinetic API, configures logging destination, establishes a * connection to the specified Kinetic Device, and establishes a session. Loading
project.yml +1 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ - src/utility/** - vendor/protobuf-c/protobuf-c/protobuf-c.c - vendor/socket99/socket99.c - vendor/zlog/zlog.c :include: - src/** - include/** Loading
src/lib/kinetic_client.c +5 −0 Original line number Diff line number Diff line Loading @@ -87,6 +87,11 @@ void KineticClient_Init(const char* logFile) KineticLogger_Init(logFile); } void KineticClient_Shutdown(void) { KineticLogger_Close(); } KineticStatus KineticClient_Connect(const KineticSession* config, KineticSessionHandle* handle) { Loading
src/lib/kinetic_logger.c +41 −46 Original line number Diff line number Diff line Loading @@ -19,49 +19,43 @@ */ #include "kinetic_logger.h" // #include "zlog/zlog.h" #include "zlog/zlog.h" #include <stdio.h> #include <string.h> #include <stdlib.h> static char LogFile[256] = ""; bool LogToConsole = true; int LogLevel = 0; FILE* FileDesc = NULL; int LogLevel = -1; void KineticLogger_Init(const char* logFile) { LogToConsole = true; FileDesc = NULL; LogLevel = 0; if (logFile != NULL) { strcpy(LogFile, logFile); if (strcmp(logFile, "NONE") == 0) { if (logFile == NULL) { LogLevel = -1; LogToConsole = false; printf("\nLogging kinetic-c output is disabled!\n"); return; } else { FileDesc = fopen(LogFile, "w"); if (FileDesc == NULL) { fprintf(stderr, "Failed to initialize logger with file: " "fopen('%s') => FileDesc=%zd\n", logFile, (size_t)FileDesc); LogLevel = 0; if (strncmp(logFile, "stdout", 4) == 0 || strncmp(logFile, "STDOUT", 4) == 0) { printf("\nLogging kinetic-c output to console (stdout)\n"); zlog_init_stdout(); } else { fprintf(stderr, "Logging output to %s\n", logFile); LogToConsole = false; } zlog_init(logFile); printf("\nLogging kinetic-c output to %s\n", logFile); } // Create flushing thread to periodically flush the log zlogf("\n"); zlog_init_flush_thread(); zlogf("\n"); } } void KineticLogger_Close(void) { // Don't close std/already-opened streams if (!LogToConsole && strlen(LogFile) > 0 && FileDesc != stdout && FileDesc != stderr && FileDesc != stdin) { fclose(FileDesc); if (LogLevel >= 0) { zlog_finish(); } } Loading @@ -70,33 +64,34 @@ void KineticLogger_Log(const char* message) if (message == NULL || LogLevel < 0) { return; } zlogf(message); zlogf("\n"); } FileDesc = LogToConsole ? stderr : fopen(LogFile, "a"); if (FileDesc != NULL) { fprintf(FileDesc, "%s\n", message); fflush(FileDesc); void KineticLogger_LogPrintf(const char* format, ...) { if (LogLevel < 0 || format == NULL) { return; } char buffer[128]; va_list arg_ptr; va_start(arg_ptr, format); vsnprintf(buffer, sizeof(buffer), format, arg_ptr); va_end(arg_ptr); strcat(buffer, "\n"); zlogf(buffer); } int KineticLogger_LogPrintf(const char* format, ...) void KineticLogger_LogLocation(char* filename, int line, char const * format, ...) { int result = -1; if (LogLevel >= 0) { if (format != NULL) { va_list arg_ptr; char buffer[1024]; va_start(arg_ptr, format); result = vsprintf(buffer, format, arg_ptr); KineticLogger_Log(buffer); zlogf("[@%s:%d] %s\n", filename, line, format, arg_ptr); va_end(arg_ptr); } } return (result); } void KineticLogger_LogHeader(const KineticPDUHeader* header) { if (LogLevel < 0) { Loading