#include "common.h" #include "log.h" #include void pdb_msg_dbg(struct pdb_msg msg) { int i; LERR("version = %d\n", msg.hdr.version); LERR("type = %d\n", msg.hdr.type); LERR("code = %d\n", msg.hdr.code); LERR("id = %d\n", msg.hdr.id); LERR("len = %d\n", msg.hdr.length); LERR("payload = "); if(msg.hdr.length > sizeof(msg.hdr)) { for (i = 0; i < msg.hdr.length - sizeof(msg.hdr); i++) { LERR("%02X ", msg.bdy.payload[i]); } } else { LERR("Incorrect value in msg.hdr.length \n"); } LERR("\n"); return ; } int pdb_msg_format_send(struct pdb_msg *msg, uint8_t version, uint8_t type, uint8_t code, uint16_t id, char *payload, uint16_t payload_len) { msg->hdr.version = version; msg->hdr.type = type; msg->hdr.code = code; msg->hdr.id = id; if (payload == NULL) { /* just ignore the NULL buff (called when just want to set the len) */ msg->hdr.length = sizeof(struct pdb_hdr); return 0; } else { msg->hdr.length = sizeof(struct pdb_hdr) + payload_len; memcpy(msg->bdy.payload, payload, payload_len); return 0; } return 0; }