X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;ds=sidebyside;f=rnet_encode.c;h=3f75a136d6ca7023044860249e238ffe2e279f24;hb=8a8fd11d682ca9a8f6a32105258d38ced19f152f;hp=9800ec6740cc0bf8d5318c290f8d02f7c397ce7b;hpb=61bc9c0c7d5f3b1ac14dde3a44df7e15256bed82;p=cascardo%2Frnetclient.git diff --git a/rnet_encode.c b/rnet_encode.c index 9800ec6..3f75a13 100644 --- a/rnet_encode.c +++ b/rnet_encode.c @@ -39,6 +39,7 @@ int rnet_encode(struct rnet_decfile *decfile, struct rnet_message **msg) char *uf; uint16_t versao_pgd; uint64_t file_len; + char *hash; *msg = rnet_message_new(); if (*msg == NULL) { @@ -46,6 +47,9 @@ int rnet_encode(struct rnet_decfile *decfile, struct rnet_message **msg) } file_len = rnet_decfile_get_file(decfile)->len; + hash = rnet_decfile_get_file_hash(decfile); + if (!hash) + return -1; codigo_recnet = rnet_decfile_get_header_field(decfile, "codigo_recnet"); tp_arq = strtoul(codigo_recnet, NULL, 10); @@ -63,6 +67,8 @@ int rnet_encode(struct rnet_decfile *decfile, struct rnet_message **msg) r = rnet_message_add_u32(msg, "id_dec", id_dec); r = rnet_message_add_ascii(msg, "exercicio", ano); r = rnet_message_add_ascii(msg, "exercicio_pgd", exerc); + r = rnet_message_add_buffer(msg, "hash_arq", hash, 16); + r = rnet_message_add_buffer(msg, "hash_trans", hash, 16); r = rnet_message_add_ascii(msg, "ni", cpf); r = rnet_message_add_ascii(msg, "tipo_ni", "CPF"); r = rnet_message_add_u8(msg, "num_ass", 0); @@ -84,6 +90,8 @@ int rnet_encode(struct rnet_decfile *decfile, struct rnet_message **msg) r = rnet_message_add_u64(msg, "tam_dados_val_chave", 0); r = rnet_message_add_u32(msg, "arquivos_restantes", 0); + free(hash); + if (r < 0) return r; return 0;