Loading Makefile +124 −28 Original line number Diff line number Diff line OUT_DIR = obj BIN_DIR = bin OBJS = $(OUT_DIR)/protobuf-c.o $(OUT_DIR)/kinetic_proto.o $(OUT_DIR)/kinetic_client.o INCS = -I"./include" -I"./src/lib" -I"./vendor/protobuf=c" -I"./vendor" BIN = $(BIN_DIR)/kinetic_client CC = gcc CFLAGS = $(INCS) -g -Wall LFLAGS = -Wall MKDIRS = mkdir -p RM_ALL = rm -rf # OUT_DIR = obj # BIN_DIR = bin # OBJS = $(OUT_DIR)/protobuf-c.o $(OUT_DIR)/kinetic_proto.o $(OUT_DIR)/kinetic_client.o # INCS = -I"./include" -I"./src/lib" -I"./vendor/protobuf=c" -I"./vendor" # BIN = $(BIN_DIR)/kinetic_client # CC = gcc # CFLAGS = $(INCS) -g -Wall # LFLAGS = -Wall # MKDIRS = mkdir -p # RM_ALL = rm -rf .PHONY: directories run # .PHONY: directories run build: directories $(BIN) # build: directories $(BIN) all: clean build run # all: clean build run directories: $(OUT_DIR) $(BIN_DIR) # directories: $(OUT_DIR) $(BIN_DIR) $(OUT_DIR): $(MKDIRS) $(OUT_DIR) # $(OUT_DIR): # $(MKDIRS) $(OUT_DIR) $(BIN_DIR): $(MKDIRS) $(BIN_DIR) # $(BIN_DIR): # $(MKDIRS) $(BIN_DIR) clean: $(RM_ALL) $(OBJS) $(OUT_DIR) $(BIN) # clean: # $(RM_ALL) $(OBJS) $(OUT_DIR) $(BIN) # $(OUT_DIR)/protobuf-c.o: directories ./vendor/protobuf-c/protobuf-c.c # $(CC) $(CFLAGS) -c ./src/vendor/protobuf-c/protobuf-c.c -o $@ $(OUT_DIR)/protobuf-c.o: directories ./vendor/protobuf-c/protobuf-c.c $(CC) $(CFLAGS) -c ./src/vendor/protobuf-c/protobuf-c.c -o $@ # $(OUT_DIR)/kinetic_proto.o: directories /src/lib/kinetic_proto.c ./vendor/protobuf-c/protobuf-c.c # $(CC) $(CFLAGS) -c ./src/lib/kinetic_proto.c -o $@ $(OUT_DIR)/kinetic_proto.o: directories /src/lib/kinetic_proto.c ./vendor/protobuf-c/protobuf-c.c $(CC) $(CFLAGS) -c ./src/lib/kinetic_proto.c -o $@ # $(OUT_DIR)/kinetic_client.o: directories ./src/lib/kinetic_client.c /src/lib/kinetic_proto.c ./vendor/protobuf-c/protobuf-c.c # $(CC) $(CFLAGS) -c ./src/lib/kinetic_client.c -o $@ $(OUT_DIR)/kinetic_client.o: directories ./src/lib/kinetic_client.c /src/lib/kinetic_proto.c ./vendor/protobuf-c/protobuf-c.c $(CC) $(CFLAGS) -c ./src/lib/kinetic_client.c -o $@ # $(BIN): $(OBJS) # $(CC) $(LFLAGS) $(OBJS) -o $(BIN) LIB_NAME = kinetic_client CC = gcc OUT_DIR = ./build/lib/obj BIN_DIR = ./build/lib/bin PUB_INC = ./include PUB_API = $(PUB_INC)/$(LIB_NAME).h LIB_INC = ./src/lib EX_INC = ./src/utility PBC_INC = ./vendor/protobuf-c SOCKET99 = ./vendor/socket99 VND_INC = ./vendor INCS = -I$(PUB_INC) -I$(LIB_INC) -I$(EX_INC) -I$(PBC_INC) -I$(VND_INC) -I$(SOCKET99) CFLAGS = $(INCS) -g -Wall LIBS = -lm -l crypto BIN = $(BIN_DIR)/kinetic_client $(BIN): $(OBJS) $(CC) $(LFLAGS) $(OBJS) -o $(BIN) _LIB_DEPS = kinetic_connection.h kinetic_hmac.h kinetic_logger.h kinetic_message.h kinetic_nbo.h kinetic_operation.h kinetic_pdu.h kinetic_proto.h kinetic_socket.h kinetic_types.h DEPS = $(PBC_INC)/protobuf-c.h $(SOCKET99)/socket99.h $(patsubst %,$(LIB_INC)/%,$(_LIB_DEPS)) LIB_OBJS = $(LIB_NAME).o kinetic_connection.o kinetic_hmac.o kinetic_logger.o kinetic_message.o kinetic_nbo.o kinetic_operation.o kinetic_pdu.o kinetic_proto.o kinetic_socket.o protobuf-c.o socket99.o OBJ = $(patsubst %,$(OUT_DIR)/%,$(LIB_OBJS)) $(OUT_DIR)/%.o: %.c $(DEPS) $(CC) -c -o $@ $< $(CFLAGS) $(OUT_DIR)/$(LIB_NAME).o: $(LIB_INC)/$(LIB_NAME).c $(CC) -c -o $@ $(INCS) $(CFLAGS) $(LIB_NAME): $(OBJ) $(CC) -o $@ $^ $(CFLAGS) $(LIBS) .PHONY: clean clean: rm -f $(OUT_DIR)/*.o *~ core run: @echo=off; echo "\nRunning Executable $(BIN):" ./$(BIN) PROJECT = kinetic-c-client OPTIMIZE = -O3 WARN = -Wall -Wextra -pedantic #CDEFS += CFLAGS += -std=c99 -g ${WARN} ${CDEFS} ${OPTIMIZE} #LDFLAGS += # A tautological compare is expected in the test suite. # CFLAGS += -Wno-tautological-compare all: lib${PROJECT}.a # all: test_${PROJECT} LIB_OBJS = $(LIB_NAME).o kinetic_connection.o kinetic_hmac.o kinetic_logger.o kinetic_message.o kinetic_nbo.o kinetic_operation.o kinetic_pdu.o kinetic_proto.o kinetic_socket.o protobuf-c.o socket99.o # TEST_OBJS= ${PROJECT}: main.c ${OBJS} ${CC} -o $@ main.c ${OBJS} ${LDFLAGS} lib${PROJECT}.a: ${OBJS} ar -rcs lib${PROJECT}.a ${OBJS} # test_${PROJECT}: test_${PROJECT}.c ${OBJS} ${TEST_OBJS} # ${CC} -o $@ test_${PROJECT}.c ${OBJS} ${TEST_OBJS} ${CFLAGS} ${LDFLAGS} # test: ./test_${PROJECT} # ./test_${PROJECT} clean: rm -f ${PROJECT} test_${PROJECT} *.o *.a *.core # Installation PREFIX ?=/usr/local INSTALL ?= install RM ?=rm install: lib${PROJECT}.a ${INSTALL} -d ${PREFIX}/lib/ ${INSTALL} -c lib${PROJECT}.a ${PREFIX}/lib/lib${PROJECT}.a ${INSTALL} -d ${PREFIX}/include/ ${INSTALL} -c ${PROJECT}.h ${PREFIX}/include/ ${INSTALL} -c ${PROJECT}_types.h ${PREFIX}/include/ uninstall: ${RM} -f ${PREFIX}/lib/lib${PROJECT}.a ${RM} -f ${PREFIX}/include/${PROJECT}.h ${RM} -f ${PREFIX}/include/${PROJECT}_types.h # Other dependencies theft.o: Makefile theft.o: theft.h theft_types.h theft_types_internal.h build.sh 0 → 100755 +55 −0 Original line number Diff line number Diff line #!/usr/bin/env bash echo echo ================================================================================ echo Cleaning out old build artifacts... echo ================================================================================ find src/**/*.o vendor/socket99/*.o vendor/protobuf-c/protobuf-c/*.o | xargs rm $1 rm libkinetic-c-client.a rm src/utility/kinetic-c-util echo DONE! echo echo ================================================================================ echo Building the kinetic-c lib sources and bundled dependencies echo ================================================================================ cd src/lib/ gcc -Wall -c *.c -I. -I../../include/ -I../../vendor/ cd ../../ cd vendor/socket99/ gcc -Wall -std=c99 -c *.c cd ../protobuf-c/protobuf-c gcc -Wall -std=c99 -c *.c cd ../../socket99/ gcc -Wall -std=c99 -c *.c cd ../../ cd src/lib/ gcc -Wall -std=c99 -c *.c -I. -I../../include/ -I../../vendor/ cd ../.. echo DONE! echo echo ================================================================================ echo Assembling kinetic-c-client lib echo ================================================================================ ar -cvq libkinetic-c-client.a src/lib/*.o vendor/protobuf-c/protobuf-c/*.o vendor/socket99/socket99.o ar -t libkinetic-c-client.a echo DONE! echo echo ================================================================================ echo Building kinetic-c-client utility echo ================================================================================ cd src/utility/ gcc -o kinetic-c-util -std=c99 *.c ./examples/*.c ../../libkinetic-c-client.a -I. -I../../include/ -I../lib -I ./examples/ -l crypto -l ssl echo DONE! echo echo ================================================================================ echo Running kinetic-c-client examples echo ================================================================================ ./kinetic-c-util noop cd ../../ echo DONE! echo echo Kinetic-C library and utility build complete! project.yml +1 −1 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ :support: - test/support/** :source: - src/** - src/lib/*.c - vendor/protobuf-c/protobuf-c/protobuf-c.c - vendor/socket99/socket99.c :include: Loading src/lib/kinetic_logger.c +27 −27 Original line number Diff line number Diff line Loading @@ -101,7 +101,6 @@ void KineticLogger_LogHeader(const KineticPDUHeader* header) } #define LOG_PROTO_INIT() \ unsigned int _i; \ char _indent[32] = " "; \ const char* _str_true = "true"; \ const char* _str_false = "false"; Loading @@ -116,7 +115,7 @@ void KineticLogger_LogHeader(const KineticPDUHeader* header) int KineticLogger_u8toa(char* p_buf, uint8_t val) { LOGF("Converting byte=%02u", val); // LOGF("Converting byte=%02u", val); const int width = 2; int i = width; const uint8_t base = 16; Loading @@ -128,7 +127,7 @@ int KineticLogger_u8toa(char* p_buf, uint8_t val) val /= base; if(c >= 10) c += 'A'-'0'-10; c += '0'; LOGF("CH: %c @ %d to 0x%llX", c, i, (long long)(p_buf)); // LOGF("CH: %c @ %d to 0x%llX", c, i, (long long)(p_buf)); *p_buf-- = c; } while (--i); return width; Loading @@ -137,18 +136,18 @@ int KineticLogger_u8toa(char* p_buf, uint8_t val) int KineticLogger_ByteArraySliceToCString(char* p_buf, const ByteArray bytes, const int start, const int count) { LOGF("Converting ByteArray (count=%u)", count); // LOGF("Converting ByteArray (count=%u)", count); int len = 0; for(int i = 0; i < count; i++) { LOGF("BYTE to 0x%llX (prepending '\\')", (long long)(&p_buf[len])); // LOGF("BYTE to 0x%llX (prepending '\\')", (long long)(&p_buf[len])); p_buf[len++] = '\\'; LOGF("BYTE digits to 0x%llX", (long long)(&p_buf[len])); // LOGF("BYTE digits to 0x%llX", (long long)(&p_buf[len])); len += KineticLogger_u8toa(&p_buf[len], bytes.data[start + i]); LOGF("BYTE next @ 0x%llX", (long long)(&p_buf[len])); // LOGF("BYTE next @ 0x%llX", (long long)(&p_buf[len])); } p_buf[len] = '\0'; LOGF("BYTE string terminated @ 0x%llX", (long long)(&p_buf[len])); // LOGF("BYTE string terminated @ 0x%llX", (long long)(&p_buf[len])); return len; } Loading @@ -168,8 +167,6 @@ void KineticLogger_LogProtobuf(const KineticProto* proto) } LOG("Kinetic Protobuf:"); // KineticProto_Command* command; if (proto->command) { LOG_PROTO_LEVEL_START("command"); Loading Loading @@ -246,15 +243,24 @@ void KineticLogger_LogProtobuf(const KineticProto* proto) } if (proto->command->body->keyValue->has_newVersion) { LOGF("%snewVersion: '%s'", _indent, proto->command->body->keyValue->newVersion.data); BYTES_TO_CSTRING(tmpBuf, proto->command->body->keyValue->newVersion, 0, proto->command->body->keyValue->newVersion.len); LOGF("%snewVersion: '%s'", _indent, tmpBuf); } if (proto->command->body->keyValue->has_dbVersion) { LOGF("%sdbVersion: '%s'", _indent, proto->command->body->keyValue->dbVersion.data); BYTES_TO_CSTRING(tmpBuf, proto->command->body->keyValue->dbVersion, 0, proto->command->body->keyValue->dbVersion.len); LOGF("%sdbVersion: '%s'", _indent, tmpBuf); } if (proto->command->body->keyValue->has_tag) { LOGF("%stag: '%s'", _indent, proto->command->body->keyValue->tag.data); BYTES_TO_CSTRING(tmpBuf, proto->command->body->keyValue->tag, 0, proto->command->body->keyValue->tag.len); LOGF("%stag: '%s'", _indent, tmpBuf); } if (proto->command->body->keyValue->has_force) { Loading Loading @@ -306,13 +312,10 @@ void KineticLogger_LogProtobuf(const KineticProto* proto) } if (proto->command->status->has_detailedMessage) { char tmp[8], buf[64] = "detailedMessage: "; for (_i = 0; _i < proto->command->status->detailedMessage.len; _i++) { sprintf(tmp, "%02hhX", proto->command->status->detailedMessage.data[_i]); strcat(buf, tmp); } LOGF("%s%s", _indent, buf); BYTES_TO_CSTRING(tmpBuf, proto->command->status->detailedMessage, 0, proto->command->status->detailedMessage.len); LOGF("%detailedMessage: '%s'", _indent, tmpBuf); } } LOG_PROTO_LEVEL_END(); Loading @@ -322,13 +325,10 @@ void KineticLogger_LogProtobuf(const KineticProto* proto) if (proto->has_hmac) { char tmp[8], buf[64] = "hmac: "; for (_i = 0; _i < proto->hmac.len; _i++) { sprintf(tmp, "%02hhX", proto->hmac.data[_i]); strcat(buf, tmp); } LOGF("%s%s", _indent, buf); BYTES_TO_CSTRING(tmpBuf, proto->hmac, 0, proto->hmac->key.len); LOGF("%shmac: '%s'", _indent, tmpBuf); } } Loading Loading
Makefile +124 −28 Original line number Diff line number Diff line OUT_DIR = obj BIN_DIR = bin OBJS = $(OUT_DIR)/protobuf-c.o $(OUT_DIR)/kinetic_proto.o $(OUT_DIR)/kinetic_client.o INCS = -I"./include" -I"./src/lib" -I"./vendor/protobuf=c" -I"./vendor" BIN = $(BIN_DIR)/kinetic_client CC = gcc CFLAGS = $(INCS) -g -Wall LFLAGS = -Wall MKDIRS = mkdir -p RM_ALL = rm -rf # OUT_DIR = obj # BIN_DIR = bin # OBJS = $(OUT_DIR)/protobuf-c.o $(OUT_DIR)/kinetic_proto.o $(OUT_DIR)/kinetic_client.o # INCS = -I"./include" -I"./src/lib" -I"./vendor/protobuf=c" -I"./vendor" # BIN = $(BIN_DIR)/kinetic_client # CC = gcc # CFLAGS = $(INCS) -g -Wall # LFLAGS = -Wall # MKDIRS = mkdir -p # RM_ALL = rm -rf .PHONY: directories run # .PHONY: directories run build: directories $(BIN) # build: directories $(BIN) all: clean build run # all: clean build run directories: $(OUT_DIR) $(BIN_DIR) # directories: $(OUT_DIR) $(BIN_DIR) $(OUT_DIR): $(MKDIRS) $(OUT_DIR) # $(OUT_DIR): # $(MKDIRS) $(OUT_DIR) $(BIN_DIR): $(MKDIRS) $(BIN_DIR) # $(BIN_DIR): # $(MKDIRS) $(BIN_DIR) clean: $(RM_ALL) $(OBJS) $(OUT_DIR) $(BIN) # clean: # $(RM_ALL) $(OBJS) $(OUT_DIR) $(BIN) # $(OUT_DIR)/protobuf-c.o: directories ./vendor/protobuf-c/protobuf-c.c # $(CC) $(CFLAGS) -c ./src/vendor/protobuf-c/protobuf-c.c -o $@ $(OUT_DIR)/protobuf-c.o: directories ./vendor/protobuf-c/protobuf-c.c $(CC) $(CFLAGS) -c ./src/vendor/protobuf-c/protobuf-c.c -o $@ # $(OUT_DIR)/kinetic_proto.o: directories /src/lib/kinetic_proto.c ./vendor/protobuf-c/protobuf-c.c # $(CC) $(CFLAGS) -c ./src/lib/kinetic_proto.c -o $@ $(OUT_DIR)/kinetic_proto.o: directories /src/lib/kinetic_proto.c ./vendor/protobuf-c/protobuf-c.c $(CC) $(CFLAGS) -c ./src/lib/kinetic_proto.c -o $@ # $(OUT_DIR)/kinetic_client.o: directories ./src/lib/kinetic_client.c /src/lib/kinetic_proto.c ./vendor/protobuf-c/protobuf-c.c # $(CC) $(CFLAGS) -c ./src/lib/kinetic_client.c -o $@ $(OUT_DIR)/kinetic_client.o: directories ./src/lib/kinetic_client.c /src/lib/kinetic_proto.c ./vendor/protobuf-c/protobuf-c.c $(CC) $(CFLAGS) -c ./src/lib/kinetic_client.c -o $@ # $(BIN): $(OBJS) # $(CC) $(LFLAGS) $(OBJS) -o $(BIN) LIB_NAME = kinetic_client CC = gcc OUT_DIR = ./build/lib/obj BIN_DIR = ./build/lib/bin PUB_INC = ./include PUB_API = $(PUB_INC)/$(LIB_NAME).h LIB_INC = ./src/lib EX_INC = ./src/utility PBC_INC = ./vendor/protobuf-c SOCKET99 = ./vendor/socket99 VND_INC = ./vendor INCS = -I$(PUB_INC) -I$(LIB_INC) -I$(EX_INC) -I$(PBC_INC) -I$(VND_INC) -I$(SOCKET99) CFLAGS = $(INCS) -g -Wall LIBS = -lm -l crypto BIN = $(BIN_DIR)/kinetic_client $(BIN): $(OBJS) $(CC) $(LFLAGS) $(OBJS) -o $(BIN) _LIB_DEPS = kinetic_connection.h kinetic_hmac.h kinetic_logger.h kinetic_message.h kinetic_nbo.h kinetic_operation.h kinetic_pdu.h kinetic_proto.h kinetic_socket.h kinetic_types.h DEPS = $(PBC_INC)/protobuf-c.h $(SOCKET99)/socket99.h $(patsubst %,$(LIB_INC)/%,$(_LIB_DEPS)) LIB_OBJS = $(LIB_NAME).o kinetic_connection.o kinetic_hmac.o kinetic_logger.o kinetic_message.o kinetic_nbo.o kinetic_operation.o kinetic_pdu.o kinetic_proto.o kinetic_socket.o protobuf-c.o socket99.o OBJ = $(patsubst %,$(OUT_DIR)/%,$(LIB_OBJS)) $(OUT_DIR)/%.o: %.c $(DEPS) $(CC) -c -o $@ $< $(CFLAGS) $(OUT_DIR)/$(LIB_NAME).o: $(LIB_INC)/$(LIB_NAME).c $(CC) -c -o $@ $(INCS) $(CFLAGS) $(LIB_NAME): $(OBJ) $(CC) -o $@ $^ $(CFLAGS) $(LIBS) .PHONY: clean clean: rm -f $(OUT_DIR)/*.o *~ core run: @echo=off; echo "\nRunning Executable $(BIN):" ./$(BIN) PROJECT = kinetic-c-client OPTIMIZE = -O3 WARN = -Wall -Wextra -pedantic #CDEFS += CFLAGS += -std=c99 -g ${WARN} ${CDEFS} ${OPTIMIZE} #LDFLAGS += # A tautological compare is expected in the test suite. # CFLAGS += -Wno-tautological-compare all: lib${PROJECT}.a # all: test_${PROJECT} LIB_OBJS = $(LIB_NAME).o kinetic_connection.o kinetic_hmac.o kinetic_logger.o kinetic_message.o kinetic_nbo.o kinetic_operation.o kinetic_pdu.o kinetic_proto.o kinetic_socket.o protobuf-c.o socket99.o # TEST_OBJS= ${PROJECT}: main.c ${OBJS} ${CC} -o $@ main.c ${OBJS} ${LDFLAGS} lib${PROJECT}.a: ${OBJS} ar -rcs lib${PROJECT}.a ${OBJS} # test_${PROJECT}: test_${PROJECT}.c ${OBJS} ${TEST_OBJS} # ${CC} -o $@ test_${PROJECT}.c ${OBJS} ${TEST_OBJS} ${CFLAGS} ${LDFLAGS} # test: ./test_${PROJECT} # ./test_${PROJECT} clean: rm -f ${PROJECT} test_${PROJECT} *.o *.a *.core # Installation PREFIX ?=/usr/local INSTALL ?= install RM ?=rm install: lib${PROJECT}.a ${INSTALL} -d ${PREFIX}/lib/ ${INSTALL} -c lib${PROJECT}.a ${PREFIX}/lib/lib${PROJECT}.a ${INSTALL} -d ${PREFIX}/include/ ${INSTALL} -c ${PROJECT}.h ${PREFIX}/include/ ${INSTALL} -c ${PROJECT}_types.h ${PREFIX}/include/ uninstall: ${RM} -f ${PREFIX}/lib/lib${PROJECT}.a ${RM} -f ${PREFIX}/include/${PROJECT}.h ${RM} -f ${PREFIX}/include/${PROJECT}_types.h # Other dependencies theft.o: Makefile theft.o: theft.h theft_types.h theft_types_internal.h
build.sh 0 → 100755 +55 −0 Original line number Diff line number Diff line #!/usr/bin/env bash echo echo ================================================================================ echo Cleaning out old build artifacts... echo ================================================================================ find src/**/*.o vendor/socket99/*.o vendor/protobuf-c/protobuf-c/*.o | xargs rm $1 rm libkinetic-c-client.a rm src/utility/kinetic-c-util echo DONE! echo echo ================================================================================ echo Building the kinetic-c lib sources and bundled dependencies echo ================================================================================ cd src/lib/ gcc -Wall -c *.c -I. -I../../include/ -I../../vendor/ cd ../../ cd vendor/socket99/ gcc -Wall -std=c99 -c *.c cd ../protobuf-c/protobuf-c gcc -Wall -std=c99 -c *.c cd ../../socket99/ gcc -Wall -std=c99 -c *.c cd ../../ cd src/lib/ gcc -Wall -std=c99 -c *.c -I. -I../../include/ -I../../vendor/ cd ../.. echo DONE! echo echo ================================================================================ echo Assembling kinetic-c-client lib echo ================================================================================ ar -cvq libkinetic-c-client.a src/lib/*.o vendor/protobuf-c/protobuf-c/*.o vendor/socket99/socket99.o ar -t libkinetic-c-client.a echo DONE! echo echo ================================================================================ echo Building kinetic-c-client utility echo ================================================================================ cd src/utility/ gcc -o kinetic-c-util -std=c99 *.c ./examples/*.c ../../libkinetic-c-client.a -I. -I../../include/ -I../lib -I ./examples/ -l crypto -l ssl echo DONE! echo echo ================================================================================ echo Running kinetic-c-client examples echo ================================================================================ ./kinetic-c-util noop cd ../../ echo DONE! echo echo Kinetic-C library and utility build complete!
project.yml +1 −1 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ :support: - test/support/** :source: - src/** - src/lib/*.c - vendor/protobuf-c/protobuf-c/protobuf-c.c - vendor/socket99/socket99.c :include: Loading
src/lib/kinetic_logger.c +27 −27 Original line number Diff line number Diff line Loading @@ -101,7 +101,6 @@ void KineticLogger_LogHeader(const KineticPDUHeader* header) } #define LOG_PROTO_INIT() \ unsigned int _i; \ char _indent[32] = " "; \ const char* _str_true = "true"; \ const char* _str_false = "false"; Loading @@ -116,7 +115,7 @@ void KineticLogger_LogHeader(const KineticPDUHeader* header) int KineticLogger_u8toa(char* p_buf, uint8_t val) { LOGF("Converting byte=%02u", val); // LOGF("Converting byte=%02u", val); const int width = 2; int i = width; const uint8_t base = 16; Loading @@ -128,7 +127,7 @@ int KineticLogger_u8toa(char* p_buf, uint8_t val) val /= base; if(c >= 10) c += 'A'-'0'-10; c += '0'; LOGF("CH: %c @ %d to 0x%llX", c, i, (long long)(p_buf)); // LOGF("CH: %c @ %d to 0x%llX", c, i, (long long)(p_buf)); *p_buf-- = c; } while (--i); return width; Loading @@ -137,18 +136,18 @@ int KineticLogger_u8toa(char* p_buf, uint8_t val) int KineticLogger_ByteArraySliceToCString(char* p_buf, const ByteArray bytes, const int start, const int count) { LOGF("Converting ByteArray (count=%u)", count); // LOGF("Converting ByteArray (count=%u)", count); int len = 0; for(int i = 0; i < count; i++) { LOGF("BYTE to 0x%llX (prepending '\\')", (long long)(&p_buf[len])); // LOGF("BYTE to 0x%llX (prepending '\\')", (long long)(&p_buf[len])); p_buf[len++] = '\\'; LOGF("BYTE digits to 0x%llX", (long long)(&p_buf[len])); // LOGF("BYTE digits to 0x%llX", (long long)(&p_buf[len])); len += KineticLogger_u8toa(&p_buf[len], bytes.data[start + i]); LOGF("BYTE next @ 0x%llX", (long long)(&p_buf[len])); // LOGF("BYTE next @ 0x%llX", (long long)(&p_buf[len])); } p_buf[len] = '\0'; LOGF("BYTE string terminated @ 0x%llX", (long long)(&p_buf[len])); // LOGF("BYTE string terminated @ 0x%llX", (long long)(&p_buf[len])); return len; } Loading @@ -168,8 +167,6 @@ void KineticLogger_LogProtobuf(const KineticProto* proto) } LOG("Kinetic Protobuf:"); // KineticProto_Command* command; if (proto->command) { LOG_PROTO_LEVEL_START("command"); Loading Loading @@ -246,15 +243,24 @@ void KineticLogger_LogProtobuf(const KineticProto* proto) } if (proto->command->body->keyValue->has_newVersion) { LOGF("%snewVersion: '%s'", _indent, proto->command->body->keyValue->newVersion.data); BYTES_TO_CSTRING(tmpBuf, proto->command->body->keyValue->newVersion, 0, proto->command->body->keyValue->newVersion.len); LOGF("%snewVersion: '%s'", _indent, tmpBuf); } if (proto->command->body->keyValue->has_dbVersion) { LOGF("%sdbVersion: '%s'", _indent, proto->command->body->keyValue->dbVersion.data); BYTES_TO_CSTRING(tmpBuf, proto->command->body->keyValue->dbVersion, 0, proto->command->body->keyValue->dbVersion.len); LOGF("%sdbVersion: '%s'", _indent, tmpBuf); } if (proto->command->body->keyValue->has_tag) { LOGF("%stag: '%s'", _indent, proto->command->body->keyValue->tag.data); BYTES_TO_CSTRING(tmpBuf, proto->command->body->keyValue->tag, 0, proto->command->body->keyValue->tag.len); LOGF("%stag: '%s'", _indent, tmpBuf); } if (proto->command->body->keyValue->has_force) { Loading Loading @@ -306,13 +312,10 @@ void KineticLogger_LogProtobuf(const KineticProto* proto) } if (proto->command->status->has_detailedMessage) { char tmp[8], buf[64] = "detailedMessage: "; for (_i = 0; _i < proto->command->status->detailedMessage.len; _i++) { sprintf(tmp, "%02hhX", proto->command->status->detailedMessage.data[_i]); strcat(buf, tmp); } LOGF("%s%s", _indent, buf); BYTES_TO_CSTRING(tmpBuf, proto->command->status->detailedMessage, 0, proto->command->status->detailedMessage.len); LOGF("%detailedMessage: '%s'", _indent, tmpBuf); } } LOG_PROTO_LEVEL_END(); Loading @@ -322,13 +325,10 @@ void KineticLogger_LogProtobuf(const KineticProto* proto) if (proto->has_hmac) { char tmp[8], buf[64] = "hmac: "; for (_i = 0; _i < proto->hmac.len; _i++) { sprintf(tmp, "%02hhX", proto->hmac.data[_i]); strcat(buf, tmp); } LOGF("%s%s", _indent, buf); BYTES_TO_CSTRING(tmpBuf, proto->hmac, 0, proto->hmac->key.len); LOGF("%shmac: '%s'", _indent, tmpBuf); } } Loading