From 323292cb8a1191e1c74c7d42c6e54f589d8023d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ram=C5=ABnas=20Ma=C5=BEeikis?= Date: Wed, 22 May 2019 21:29:06 +0300 Subject: Protocol: finished reimplementation. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now protocol only deals with parsing and forming of packets. Signed-off-by: Ramūnas Mažeikis --- src/common/protocol.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/common/protocol.c b/src/common/protocol.c index e71938c..d3317e3 100644 --- a/src/common/protocol.c +++ b/src/common/protocol.c @@ -30,7 +30,7 @@ #include "protocol.h" #include "protocol_private.h" #include "net.h" -#include "util.h" +#include "utils.h" #define READ_AS(type, from) (*((type*)(from))) @@ -41,20 +41,28 @@ int push_tlv(struct tlv_packet *packet, enum tlv_type type, char *data) switch (type) { case TEXT: + size = strlen(data); break; case FPI1: + size = sizeof(fpi1_t); break; case TIMESTAMP: + size = sizeof(time_t); break; case REQUEST: + size = sizeof(msg_idx_t); break; case REPLY: + size = sizeof(msg_idx_t) + strlen(data + sizeof(msg_idx_t)); break; case UUID: + size = sizeof(uuid_t); break; default: ret = E_UNKNOWN_TYPE; } + ret |= push_tlv_header(packet, type, size); + ret |= push_bytes(packet, data, size); return ret; } -- cgit v1.2.3