Browse Source

readability code clean-up (#544)

pull/554/head
Francesco Carli 4 years ago
committed by GitHub
parent
commit
24b2f2762f
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 185
      src/wire.c

185
src/wire.c

@ -31,68 +31,79 @@
int encode_uint8 (uint8_t * base, int encode_uint8 (uint8_t * base,
size_t * idx, size_t * idx,
const uint8_t v ) const uint8_t v) {
{
*(base + (*idx)) = (v & 0xff); *(base + (*idx)) = (v & 0xff);
++(*idx); ++(*idx);
return 1; return 1;
} }
int decode_uint8 (uint8_t * out, int decode_uint8 (uint8_t * out,
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
if (*rem < 1 ) { return 0; } if(*rem < 1) {
return 0;
}
*out = ( base[*idx] & 0xff ); *out = ( base[*idx] & 0xff );
++(*idx); ++(*idx);
--(*rem); --(*rem);
return 1; return 1;
} }
int encode_uint16 (uint8_t * base, int encode_uint16 (uint8_t * base,
size_t * idx, size_t * idx,
const uint16_t v ) const uint16_t v) {
{
*(base + (*idx)) = ( v >> 8) & 0xff; *(base + (*idx)) = ( v >> 8) & 0xff;
*(base + (1 + *idx)) = ( v & 0xff ); *(base + (1 + *idx)) = ( v & 0xff );
*idx += 2; *idx += 2;
return 2; return 2;
} }
int decode_uint16 (uint16_t * out, int decode_uint16 (uint16_t * out,
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
if (*rem < 2 ) { return 0; } if (*rem < 2) {
return 0;
}
*out = ( base[*idx] & 0xff ) << 8; *out = ( base[*idx] & 0xff ) << 8;
*out |= ( base[1 + *idx] & 0xff ); *out |= ( base[1 + *idx] & 0xff );
*idx += 2; *idx += 2;
*rem -= 2; *rem -= 2;
return 2; return 2;
} }
int encode_uint32 (uint8_t * base, int encode_uint32 (uint8_t * base,
size_t * idx, size_t * idx,
const uint32_t v ) const uint32_t v) {
{
*(base + (0 + *idx)) = ( v >> 24) & 0xff; *(base + (0 + *idx)) = ( v >> 24) & 0xff;
*(base + (1 + *idx)) = ( v >> 16) & 0xff; *(base + (1 + *idx)) = ( v >> 16) & 0xff;
*(base + (2 + *idx)) = ( v >> 8) & 0xff; *(base + (2 + *idx)) = ( v >> 8) & 0xff;
*(base + (3 + *idx)) = ( v & 0xff ); *(base + (3 + *idx)) = ( v & 0xff );
*idx += 4; *idx += 4;
return 4; return 4;
} }
int decode_uint32 (uint32_t * out, int decode_uint32 (uint32_t * out,
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
if (*rem < 4 ) { return 0; } if (*rem < 4) {
return 0;
}
*out = ( base[0 + *idx] & 0xff ) << 24; *out = ( base[0 + *idx] & 0xff ) << 24;
*out |= ( base[1 + *idx] & 0xff ) << 16; *out |= ( base[1 + *idx] & 0xff ) << 16;
@ -100,38 +111,44 @@ int decode_uint32( uint32_t * out,
*out |= ( base[3 + *idx] & 0xff ); *out |= ( base[3 + *idx] & 0xff );
*idx += 4; *idx += 4;
*rem -= 4; *rem -= 4;
return 4; return 4;
} }
int encode_uint64 (uint8_t * base, int encode_uint64 (uint8_t * base,
size_t * idx, size_t * idx,
const uint64_t v ) const uint64_t v) {
{
*(uint64_t*)(base + *idx) = htobe64(v); *(uint64_t*)(base + *idx) = htobe64(v);
*idx += 8; *idx += 8;
return 8; return 8;
} }
int decode_uint64 (uint64_t * out, int decode_uint64 (uint64_t * out,
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
if (*rem < 8 ) { return 0; } if (*rem < 8) {
return 0;
}
*out = be64toh(*(uint64_t*)base + *idx); *out = be64toh(*(uint64_t*)base + *idx);
*idx += 8; *idx += 8;
*rem -= 8; *rem -= 8;
return 8; return 8;
} }
int encode_buf (uint8_t * base, int encode_buf (uint8_t * base,
size_t * idx, size_t * idx,
const void * p, const void * p,
size_t s) size_t s) {
{
memcpy((base + (*idx)), p, s); memcpy((base + (*idx)), p, s);
*idx += s; *idx += s;
return s; return s;
} }
@ -140,13 +157,16 @@ int decode_buf( uint8_t * out,
size_t bufsize, size_t bufsize,
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
if (*rem < bufsize ) { return 0; } if (*rem < bufsize) {
return 0;
}
memcpy(out, (base + *idx), bufsize); memcpy(out, (base + *idx), bufsize);
*idx += bufsize; *idx += bufsize;
*rem -= bufsize; *rem -= bufsize;
return bufsize; return bufsize;
} }
@ -154,16 +174,16 @@ int decode_buf( uint8_t * out,
int encode_mac (uint8_t * base, int encode_mac (uint8_t * base,
size_t * idx, size_t * idx,
const n2n_mac_t m ) const n2n_mac_t m) {
{
return encode_buf(base, idx, m, N2N_MAC_SIZE); return encode_buf(base, idx, m, N2N_MAC_SIZE);
} }
int decode_mac (uint8_t * out, /* of size N2N_MAC_SIZE. This clearer than passing a n2n_mac_t */ int decode_mac (uint8_t * out, /* of size N2N_MAC_SIZE. This clearer than passing a n2n_mac_t */
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
return decode_buf(out, N2N_MAC_SIZE, base, rem, idx); return decode_buf(out, N2N_MAC_SIZE, base, rem, idx);
} }
@ -171,9 +191,10 @@ int decode_mac( uint8_t * out, /* of size N2N_MAC_SIZE. This clearer than passin
int encode_common (uint8_t * base, int encode_common (uint8_t * base,
size_t * idx, size_t * idx,
const n2n_common_t * common ) const n2n_common_t * common) {
{
uint16_t flags = 0; uint16_t flags = 0;
encode_uint8(base, idx, N2N_PKT_VERSION); encode_uint8(base, idx, N2N_PKT_VERSION);
encode_uint8(base, idx, common->ttl); encode_uint8(base, idx, common->ttl);
@ -189,14 +210,14 @@ int encode_common( uint8_t * base,
int decode_common (n2n_common_t * out, int decode_common (n2n_common_t * out,
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
size_t idx0 = *idx; size_t idx0 = *idx;
uint8_t dummy = 0; uint8_t dummy = 0;
decode_uint8(&dummy, base, rem, idx); decode_uint8(&dummy, base, rem, idx);
if ( N2N_PKT_VERSION != dummy ) if (N2N_PKT_VERSION != dummy) {
{
return -1; return -1;
} }
@ -213,29 +234,28 @@ int decode_common( n2n_common_t * out,
int encode_sock (uint8_t * base, int encode_sock (uint8_t * base,
size_t * idx, size_t * idx,
const n2n_sock_t * sock ) const n2n_sock_t * sock) {
{
int retval = 0; int retval = 0;
uint16_t f; uint16_t f;
switch (sock->family) switch(sock->family) {
{ case AF_INET: {
case AF_INET:
{
f = 0; f = 0;
retval += encode_uint16(base, idx, f); retval += encode_uint16(base, idx, f);
retval += encode_uint16(base, idx, sock->port); retval += encode_uint16(base, idx, sock->port);
retval += encode_buf(base, idx, sock->addr.v4, IPV4_SIZE); retval += encode_buf(base, idx, sock->addr.v4, IPV4_SIZE);
break; break;
} }
case AF_INET6:
{ case AF_INET6: {
f = 0x8000; f = 0x8000;
retval += encode_uint16(base, idx, f); retval += encode_uint16(base, idx, f);
retval += encode_uint16(base, idx, sock->port); retval += encode_uint16(base, idx, sock->port);
retval += encode_buf(base, idx, sock->addr.v6, IPV6_SIZE); retval += encode_buf(base, idx, sock->addr.v6, IPV6_SIZE);
break; break;
} }
default: default:
retval = -1; retval = -1;
} }
@ -247,22 +267,20 @@ int encode_sock( uint8_t * base,
int decode_sock (n2n_sock_t * sock, int decode_sock (n2n_sock_t * sock,
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
size_t * idx0 = idx; size_t * idx0 = idx;
uint16_t f = 0; uint16_t f = 0;
decode_uint16(&f, base, rem, idx); decode_uint16(&f, base, rem, idx);
if( f & 0x8000 ) if(f & 0x8000) {
{
/* IPv6 */ /* IPv6 */
sock->family = AF_INET6; sock->family = AF_INET6;
decode_uint16(&(sock->port), base, rem, idx); decode_uint16(&(sock->port), base, rem, idx);
decode_buf(sock->addr.v6, IPV6_SIZE, base, rem, idx); decode_buf(sock->addr.v6, IPV6_SIZE, base, rem, idx);
} } else {
else
{
/* IPv4 */ /* IPv4 */
sock->family = AF_INET; sock->family = AF_INET;
decode_uint16(&(sock->port), base, rem, idx); decode_uint16(&(sock->port), base, rem, idx);
@ -278,7 +296,9 @@ int encode_REGISTER(uint8_t *base,
size_t *idx, size_t *idx,
const n2n_common_t *common, const n2n_common_t *common,
const n2n_REGISTER_t *reg) { const n2n_REGISTER_t *reg) {
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_buf(base, idx, reg->cookie, N2N_COOKIE_SIZE); retval += encode_buf(base, idx, reg->cookie, N2N_COOKIE_SIZE);
retval += encode_mac(base, idx, reg->srcMac); retval += encode_mac(base, idx, reg->srcMac);
@ -299,12 +319,13 @@ int decode_REGISTER(n2n_REGISTER_t *reg,
const uint8_t *base, const uint8_t *base,
size_t *rem, size_t *rem,
size_t *idx) { size_t *idx) {
size_t retval = 0; size_t retval = 0;
memset(reg, 0, sizeof(n2n_REGISTER_t)); memset(reg, 0, sizeof(n2n_REGISTER_t));
retval += decode_buf(reg->cookie, N2N_COOKIE_SIZE, base, rem, idx); retval += decode_buf(reg->cookie, N2N_COOKIE_SIZE, base, rem, idx);
retval += decode_mac(reg->srcMac, base, rem, idx); retval += decode_mac(reg->srcMac, base, rem, idx);
retval += decode_mac(reg->dstMac, base, rem, idx); retval += decode_mac(reg->dstMac, base, rem, idx);
if(cmn->flags & N2N_FLAGS_SOCKET) { if(cmn->flags & N2N_FLAGS_SOCKET) {
retval += decode_sock(&(reg->sock), base, rem, idx); retval += decode_sock(&(reg->sock), base, rem, idx);
} }
@ -320,7 +341,9 @@ int encode_REGISTER_SUPER(uint8_t *base,
size_t *idx, size_t *idx,
const n2n_common_t *common, const n2n_common_t *common,
const n2n_REGISTER_SUPER_t *reg) { const n2n_REGISTER_SUPER_t *reg) {
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_buf(base, idx, reg->cookie, N2N_COOKIE_SIZE); retval += encode_buf(base, idx, reg->cookie, N2N_COOKIE_SIZE);
retval += encode_mac(base, idx, reg->edgeMac); retval += encode_mac(base, idx, reg->edgeMac);
@ -343,8 +366,10 @@ int decode_REGISTER_SUPER(n2n_REGISTER_SUPER_t *reg,
const uint8_t *base, const uint8_t *base,
size_t *rem, size_t *rem,
size_t *idx) { size_t *idx) {
size_t retval = 0; size_t retval = 0;
memset(reg, 0, sizeof(n2n_REGISTER_SUPER_t)); memset(reg, 0, sizeof(n2n_REGISTER_SUPER_t));
retval += decode_buf(reg->cookie, N2N_COOKIE_SIZE, base, rem, idx); retval += decode_buf(reg->cookie, N2N_COOKIE_SIZE, base, rem, idx);
retval += decode_mac(reg->edgeMac, base, rem, idx); retval += decode_mac(reg->edgeMac, base, rem, idx);
if(cmn->flags & N2N_FLAGS_SOCKET) { if(cmn->flags & N2N_FLAGS_SOCKET) {
@ -356,6 +381,7 @@ int decode_REGISTER_SUPER(n2n_REGISTER_SUPER_t *reg,
retval += decode_uint16(&(reg->auth.scheme), base, rem, idx); retval += decode_uint16(&(reg->auth.scheme), base, rem, idx);
retval += decode_uint16(&(reg->auth.toksize), base, rem, idx); retval += decode_uint16(&(reg->auth.toksize), base, rem, idx);
retval += decode_buf(reg->auth.token, reg->auth.toksize, base, rem, idx); retval += decode_buf(reg->auth.token, reg->auth.toksize, base, rem, idx);
return retval; return retval;
} }
@ -364,7 +390,9 @@ int encode_UNREGISTER_SUPER(uint8_t *base,
size_t *idx, size_t *idx,
const n2n_common_t *common, const n2n_common_t *common,
const n2n_UNREGISTER_SUPER_t *unreg) { const n2n_UNREGISTER_SUPER_t *unreg) {
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_uint16(base, idx, unreg->auth.scheme); retval += encode_uint16(base, idx, unreg->auth.scheme);
retval += encode_uint16(base, idx, unreg->auth.toksize); retval += encode_uint16(base, idx, unreg->auth.toksize);
@ -380,8 +408,10 @@ int decode_UNREGISTER_SUPER(n2n_UNREGISTER_SUPER_t *unreg,
const uint8_t *base, const uint8_t *base,
size_t *rem, size_t *rem,
size_t *idx) { size_t *idx) {
size_t retval = 0; size_t retval = 0;
memset(unreg, 0, sizeof(n2n_UNREGISTER_SUPER_t)); memset(unreg, 0, sizeof(n2n_UNREGISTER_SUPER_t));
retval += decode_uint16(&(unreg->auth.scheme), base, rem, idx); retval += decode_uint16(&(unreg->auth.scheme), base, rem, idx);
retval += decode_uint16(&(unreg->auth.toksize), base, rem, idx); retval += decode_uint16(&(unreg->auth.toksize), base, rem, idx);
retval += decode_buf(unreg->auth.token, unreg->auth.toksize, base, rem, idx); retval += decode_buf(unreg->auth.token, unreg->auth.toksize, base, rem, idx);
@ -395,7 +425,9 @@ int encode_REGISTER_ACK(uint8_t *base,
size_t *idx, size_t *idx,
const n2n_common_t *common, const n2n_common_t *common,
const n2n_REGISTER_ACK_t *reg) { const n2n_REGISTER_ACK_t *reg) {
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_buf(base, idx, reg->cookie, N2N_COOKIE_SIZE); retval += encode_buf(base, idx, reg->cookie, N2N_COOKIE_SIZE);
retval += encode_mac(base, idx, reg->dstMac); retval += encode_mac(base, idx, reg->dstMac);
@ -417,8 +449,10 @@ int decode_REGISTER_ACK(n2n_REGISTER_ACK_t *reg,
const uint8_t *base, const uint8_t *base,
size_t *rem, size_t *rem,
size_t *idx) { size_t *idx) {
size_t retval = 0; size_t retval = 0;
memset(reg, 0, sizeof(n2n_REGISTER_ACK_t)); memset(reg, 0, sizeof(n2n_REGISTER_ACK_t));
retval += decode_buf(reg->cookie, N2N_COOKIE_SIZE, base, rem, idx); retval += decode_buf(reg->cookie, N2N_COOKIE_SIZE, base, rem, idx);
retval += decode_mac(reg->dstMac, base, rem, idx); retval += decode_mac(reg->dstMac, base, rem, idx);
retval += decode_mac(reg->srcMac, base, rem, idx); retval += decode_mac(reg->srcMac, base, rem, idx);
@ -439,7 +473,9 @@ int encode_REGISTER_SUPER_ACK(uint8_t *base,
const n2n_common_t *common, const n2n_common_t *common,
const n2n_REGISTER_SUPER_ACK_t *reg, const n2n_REGISTER_SUPER_ACK_t *reg,
uint8_t *tmpbuf) { uint8_t *tmpbuf) {
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_buf(base, idx, reg->cookie, N2N_COOKIE_SIZE); retval += encode_buf(base, idx, reg->cookie, N2N_COOKIE_SIZE);
retval += encode_mac(base, idx, reg->edgeMac); retval += encode_mac(base, idx, reg->edgeMac);
@ -460,9 +496,10 @@ int decode_REGISTER_SUPER_ACK(n2n_REGISTER_SUPER_ACK_t *reg,
size_t *rem, size_t *rem,
size_t *idx, size_t *idx,
uint8_t *tmpbuf) { uint8_t *tmpbuf) {
size_t retval = 0;
size_t retval = 0;
memset(reg, 0, sizeof(n2n_REGISTER_SUPER_ACK_t)); memset(reg, 0, sizeof(n2n_REGISTER_SUPER_ACK_t));
retval += decode_buf(reg->cookie, N2N_COOKIE_SIZE, base, rem, idx); retval += decode_buf(reg->cookie, N2N_COOKIE_SIZE, base, rem, idx);
retval += decode_mac(reg->edgeMac, base, rem, idx); retval += decode_mac(reg->edgeMac, base, rem, idx);
retval += decode_uint32(&(reg->dev_addr.net_addr), base, rem, idx); retval += decode_uint32(&(reg->dev_addr.net_addr), base, rem, idx);
@ -484,7 +521,9 @@ int encode_REGISTER_SUPER_NAK(uint8_t *base,
size_t *idx, size_t *idx,
const n2n_common_t *common, const n2n_common_t *common,
const n2n_REGISTER_SUPER_NAK_t *nak) { const n2n_REGISTER_SUPER_NAK_t *nak) {
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_buf(base, idx, nak->cookie, N2N_COOKIE_SIZE); retval += encode_buf(base, idx, nak->cookie, N2N_COOKIE_SIZE);
retval += encode_mac(base, idx, nak->srcMac); retval += encode_mac(base, idx, nak->srcMac);
@ -498,8 +537,10 @@ int decode_REGISTER_SUPER_NAK(n2n_REGISTER_SUPER_NAK_t *nak,
const uint8_t *base, const uint8_t *base,
size_t *rem, size_t *rem,
size_t *idx) { size_t *idx) {
size_t retval = 0; size_t retval = 0;
memset(nak, 0, sizeof(n2n_REGISTER_SUPER_NAK_t)); memset(nak, 0, sizeof(n2n_REGISTER_SUPER_NAK_t));
retval += decode_buf(nak->cookie, N2N_COOKIE_SIZE, base, rem, idx); retval += decode_buf(nak->cookie, N2N_COOKIE_SIZE, base, rem, idx);
retval += decode_mac(nak->srcMac, base, rem, idx); retval += decode_mac(nak->srcMac, base, rem, idx);
@ -509,14 +550,12 @@ int decode_REGISTER_SUPER_NAK(n2n_REGISTER_SUPER_NAK_t *nak,
int fill_sockaddr (struct sockaddr * addr, int fill_sockaddr (struct sockaddr * addr,
size_t addrlen, size_t addrlen,
const n2n_sock_t * sock ) const n2n_sock_t * sock) {
{
int retval = -1; int retval = -1;
if ( AF_INET == sock->family ) if(AF_INET == sock->family) {
{ if(addrlen >= sizeof(struct sockaddr_in)) {
if ( addrlen >= sizeof(struct sockaddr_in) )
{
struct sockaddr_in * si = (struct sockaddr_in *)addr; struct sockaddr_in * si = (struct sockaddr_in *)addr;
si->sin_family = sock->family; si->sin_family = sock->family;
si->sin_port = htons(sock->port); si->sin_port = htons(sock->port);
@ -532,14 +571,14 @@ int fill_sockaddr( struct sockaddr * addr,
int encode_PACKET (uint8_t * base, int encode_PACKET (uint8_t * base,
size_t * idx, size_t * idx,
const n2n_common_t * common, const n2n_common_t * common,
const n2n_PACKET_t * pkt ) const n2n_PACKET_t * pkt) {
{
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_mac(base, idx, pkt->srcMac); retval += encode_mac(base, idx, pkt->srcMac);
retval += encode_mac(base, idx, pkt->dstMac); retval += encode_mac(base, idx, pkt->dstMac);
if ( 0 != pkt->sock.family ) if(0 != pkt->sock.family) {
{
retval += encode_sock(base, idx, &(pkt->sock)); retval += encode_sock(base, idx, &(pkt->sock));
} }
retval += encode_uint8(base, idx, pkt->compression); retval += encode_uint8(base, idx, pkt->compression);
@ -553,15 +592,15 @@ int decode_PACKET( n2n_PACKET_t * pkt,
const n2n_common_t * cmn, /* info on how to interpret it */ const n2n_common_t * cmn, /* info on how to interpret it */
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
size_t retval = 0; size_t retval = 0;
memset(pkt, 0, sizeof(n2n_PACKET_t)); memset(pkt, 0, sizeof(n2n_PACKET_t));
retval += decode_mac(pkt->srcMac, base, rem, idx); retval += decode_mac(pkt->srcMac, base, rem, idx);
retval += decode_mac(pkt->dstMac, base, rem, idx); retval += decode_mac(pkt->dstMac, base, rem, idx);
if ( cmn->flags & N2N_FLAGS_SOCKET ) if(cmn->flags & N2N_FLAGS_SOCKET) {
{
retval += decode_sock(&(pkt->sock), base, rem, idx); retval += decode_sock(&(pkt->sock), base, rem, idx);
} }
@ -576,7 +615,9 @@ int encode_PEER_INFO(uint8_t *base,
size_t *idx, size_t *idx,
const n2n_common_t *common, const n2n_common_t *common,
const n2n_PEER_INFO_t *pkt) { const n2n_PEER_INFO_t *pkt) {
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_uint16(base, idx, pkt->aflags); retval += encode_uint16(base, idx, pkt->aflags);
retval += encode_mac(base, idx, pkt->srcMac); retval += encode_mac(base, idx, pkt->srcMac);
@ -593,8 +634,10 @@ int decode_PEER_INFO(n2n_PEER_INFO_t *pkt,
const uint8_t *base, const uint8_t *base,
size_t *rem, size_t *rem,
size_t *idx) { size_t *idx) {
size_t retval = 0; size_t retval = 0;
memset(pkt, 0, sizeof(n2n_PEER_INFO_t)); memset(pkt, 0, sizeof(n2n_PEER_INFO_t));
retval += decode_uint16(&(pkt->aflags), base, rem, idx); retval += decode_uint16(&(pkt->aflags), base, rem, idx);
retval += decode_mac(pkt->srcMac, base, rem, idx); retval += decode_mac(pkt->srcMac, base, rem, idx);
retval += decode_mac(pkt->mac, base, rem, idx); retval += decode_mac(pkt->mac, base, rem, idx);
@ -608,9 +651,10 @@ int decode_PEER_INFO(n2n_PEER_INFO_t *pkt,
int encode_QUERY_PEER (uint8_t * base, int encode_QUERY_PEER (uint8_t * base,
size_t * idx, size_t * idx,
const n2n_common_t * common, const n2n_common_t * common,
const n2n_QUERY_PEER_t * pkt ) const n2n_QUERY_PEER_t * pkt) {
{
int retval = 0; int retval = 0;
retval += encode_common(base, idx, common); retval += encode_common(base, idx, common);
retval += encode_mac(base, idx, pkt->srcMac); retval += encode_mac(base, idx, pkt->srcMac);
retval += encode_mac(base, idx, pkt->targetMac); retval += encode_mac(base, idx, pkt->targetMac);
@ -622,10 +666,11 @@ int decode_QUERY_PEER( n2n_QUERY_PEER_t * pkt,
const n2n_common_t * cmn, /* info on how to interpret it */ const n2n_common_t * cmn, /* info on how to interpret it */
const uint8_t * base, const uint8_t * base,
size_t * rem, size_t * rem,
size_t * idx ) size_t * idx) {
{
size_t retval = 0; size_t retval = 0;
memset(pkt, 0, sizeof(n2n_QUERY_PEER_t)); memset(pkt, 0, sizeof(n2n_QUERY_PEER_t));
retval += decode_mac(pkt->srcMac, base, rem, idx); retval += decode_mac(pkt->srcMac, base, rem, idx);
retval += decode_mac(pkt->targetMac, base, rem, idx); retval += decode_mac(pkt->targetMac, base, rem, idx);

Loading…
Cancel
Save