|
|
@ -223,12 +223,13 @@ void LP_queuesend(uint32_t crc32,int32_t pubsock,char *base,char *rel,uint8_t *m |
|
|
|
// first 2 bytes == (crc32 & 0xffff) if encrypted, then nonce is next crypto_box_NONCEBYTES
|
|
|
|
// GENESIS_PRIVKEY is always the sender
|
|
|
|
|
|
|
|
void LP_broadcast_finish(int32_t pubsock,char *base,char *rel,uint8_t *msg,cJSON *argjson) |
|
|
|
void LP_broadcast_finish(int32_t pubsock,char *base,char *rel,uint8_t *msg,cJSON *argjson,uint32_t crc32) |
|
|
|
{ |
|
|
|
int32_t msglen; uint32_t crc32; |
|
|
|
int32_t msglen; |
|
|
|
msg = (void *)jprint(argjson,0); |
|
|
|
msglen = (int32_t)strlen((char *)msg) + 1; |
|
|
|
crc32 = calc_crc32(0,&msg[2],msglen - 2); |
|
|
|
if ( crc32 == 0 ) |
|
|
|
crc32 = calc_crc32(0,&msg[2],msglen - 2); |
|
|
|
if ( IAMLP == 0 ) |
|
|
|
{ |
|
|
|
free(msg); |
|
|
@ -275,7 +276,7 @@ void LP_broadcast_message(int32_t pubsock,char *base,char *rel,bits256 destpub25 |
|
|
|
jaddstr(argjson,"method2",method); |
|
|
|
jaddstr(argjson,"method",method); |
|
|
|
//printf("CRC32.%u (%s)\n",crc32,(char *)msg);
|
|
|
|
LP_broadcast_finish(pubsock,base,rel,msg,argjson); |
|
|
|
LP_broadcast_finish(pubsock,base,rel,msg,argjson,0); |
|
|
|
} // else printf("no valid method in (%s)\n",msgstr);
|
|
|
|
free_json(argjson); |
|
|
|
} else printf("couldnt parse (%s)\n",msgstr); |
|
|
@ -287,7 +288,7 @@ void LP_broadcast_message(int32_t pubsock,char *base,char *rel,bits256 destpub25 |
|
|
|
jaddstr(argjson,"cipher",cipherstr); |
|
|
|
jaddstr(argjson,"method2","encrypted"); |
|
|
|
jaddstr(argjson,"method","encrypted"); |
|
|
|
LP_broadcast_finish(pubsock,base,rel,msg,argjson); |
|
|
|
LP_broadcast_finish(pubsock,base,rel,msg,argjson,crc32); |
|
|
|
free_json(argjson); |
|
|
|
} |
|
|
|
if ( msgstr != 0 ) |
|
|
|