2021-01-17 11:05:29 +00:00
|
|
|
// #include "packet.h"
|
|
|
|
|
|
|
|
// PACKET_GENERATE_ENCODE(1, 2, )
|
2021-05-03 19:53:28 +00:00
|
|
|
//
|
|
|
|
//#include "packet.h"
|
|
|
|
//#include "cwpack/cwpack.h"
|
|
|
|
//
|
|
|
|
//#define PKT_01_WELCOME_ID 1
|
|
|
|
//#define PKT_01_WELCOME_ARGS 2
|
|
|
|
//
|
|
|
|
//
|
|
|
|
//size_t pkt_01_welcome_encode(pkt_01_welcome *table) {
|
|
|
|
//cw_pack_context pc = {0};
|
|
|
|
//cw_pack_context_init(&pc, buffer, 20, 0);
|
|
|
|
//cw_pack_array_size(&pc, 1 + PKT_01_WELCOME_ARGS);
|
|
|
|
//cw_pack_signed(&pc, PKT_01_WELCOME_ID);
|
|
|
|
//
|
|
|
|
//cw_pack_unsigned(&pc, chunk_size);
|
|
|
|
//cw_pack_unsigned(&pc, chunk_amount);
|
|
|
|
//
|
|
|
|
//return pc.current - pc.start; /* length */
|
|
|
|
//}
|
|
|
|
//
|
|
|
|
//int32_t pkt_01_welcome_decode(pkt_01_welcome *table, pkt_header *header) {
|
|
|
|
//cw_unpack_context uc = {0};
|
|
|
|
//cw_unpack_context_init(&uc, header->data, header->datalen, 0);
|
|
|
|
//
|
|
|
|
//cw_unpack_next(&uc);
|
|
|
|
//if (uc.item.type != CWP_ITEM_ARRAY || uc.item.as.array.size != PKT_01_WELCOME_ARGS) {
|
|
|
|
//return -1;//todo: error
|
|
|
|
//}
|
|
|
|
//
|
|
|
|
//cw_unpack_next(&uc);
|
|
|
|
//if (uc.item.type != CWP_ITEM_POSITIVE_INTEGER) return -1; // expected chunk size
|
|
|
|
//table->chunk_size = uc.item.as.u64;
|
|
|
|
//
|
|
|
|
//cw_unpack_next(&uc);
|
|
|
|
//if (uc.item.type != CWP_ITEM_POSITIVE_INTEGER) return -1; // expected chunk amount
|
|
|
|
//table->chunk_amount = uc.item.as.u64;
|
|
|
|
//
|
|
|
|
//if (uc.return_code != CWP_RC_OK) return -1; // unpacking failed somwwhere
|
|
|
|
//cw_unpack_next(&uc);
|
|
|
|
//if (uc.return_code != CWP_RC_END_OF_INPUT) return -1; // not finished yet but should be?
|
|
|
|
//
|
|
|
|
//return 0;
|
|
|
|
//}
|
|
|
|
//
|
|
|
|
//int32_t pkt_01_handler(pkt_header *header) {
|
|
|
|
//pkt_01_welcome table;
|
|
|
|
//pkt_01_welcome_decode(&table, header);
|
|
|
|
//
|
|
|
|
//zpl_printf("we received: chunk_size: %d and chunk_amount: %d\n", table.chunk_size, table.chunk_amount);
|
|
|
|
//
|
2021-01-26 19:16:08 +00:00
|
|
|
// do STUFF
|
2021-05-03 19:53:28 +00:00
|
|
|
//return 0;
|
|
|
|
//}
|
|
|
|
//
|