aboutsummaryrefslogtreecommitdiff
path: root/src/multicast/multicast_api.c
diff options
context:
space:
mode:
authorGabor X Toth <*@tg-x.net>2014-05-23 14:41:42 +0000
committerGabor X Toth <*@tg-x.net>2014-05-23 14:41:42 +0000
commitc0d549b6ab07a951380b807f1a1c1a767bfd5be0 (patch)
treeba70cffb14676ea17c3ca6ef302d9ffe6d3fc3f2 /src/multicast/multicast_api.c
parent5fe013c4b7b150533839dbca964ffcd2b3fe80a5 (diff)
downloadgnunet-c0d549b6ab07a951380b807f1a1c1a767bfd5be0.tar.gz
gnunet-c0d549b6ab07a951380b807f1a1c1a767bfd5be0.zip
psyc, multicast: fixes, comments
Diffstat (limited to 'src/multicast/multicast_api.c')
-rw-r--r--src/multicast/multicast_api.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/multicast/multicast_api.c b/src/multicast/multicast_api.c
index 477cb1f2c..501ff4b70 100644
--- a/src/multicast/multicast_api.c
+++ b/src/multicast/multicast_api.c
@@ -676,8 +676,10 @@ GNUNET_MULTICAST_join_decision (struct GNUNET_MULTICAST_JoinHandle *jh,
676 dcsn->member_peer = jh->member_peer; 676 dcsn->member_peer = jh->member_peer;
677 dcsn->is_admitted = is_admitted; 677 dcsn->is_admitted = is_admitted;
678 dcsn->relay_count = relay_count; 678 dcsn->relay_count = relay_count;
679 memcpy (&dcsn[1], relays, relay_size); 679 if (0 < relay_size)
680 memcpy (((char *) &dcsn[1]) + relay_size, join_resp, join_resp_size); 680 memcpy (&dcsn[1], relays, relay_size);
681 if (0 < join_resp_size)
682 memcpy (((char *) &dcsn[1]) + relay_size, join_resp, join_resp_size);
681 683
682 GNUNET_CONTAINER_DLL_insert_tail (grp->tmit_head, grp->tmit_tail, mq); 684 GNUNET_CONTAINER_DLL_insert_tail (grp->tmit_head, grp->tmit_tail, mq);
683 transmit_next (grp); 685 transmit_next (grp);
@@ -997,13 +999,15 @@ GNUNET_MULTICAST_member_join (const struct GNUNET_CONFIGURATION_Handle *cfg,
997 uint16_t join_msg_size = (NULL != join_msg) ? ntohs (join_msg->size) : 0; 999 uint16_t join_msg_size = (NULL != join_msg) ? ntohs (join_msg->size) : 0;
998 struct MulticastMemberJoinMessage * 1000 struct MulticastMemberJoinMessage *
999 join = GNUNET_malloc (sizeof (*join) + relay_size + join_msg_size); 1001 join = GNUNET_malloc (sizeof (*join) + relay_size + join_msg_size);
1000 join->header.type = htons (GNUNET_MESSAGE_TYPE_MULTICAST_MEMBER_JOIN);
1001 join->header.size = htons (sizeof (*join) + relay_size + join_msg_size); 1002 join->header.size = htons (sizeof (*join) + relay_size + join_msg_size);
1003 join->header.type = htons (GNUNET_MESSAGE_TYPE_MULTICAST_MEMBER_JOIN);
1002 join->group_key = *group_key; 1004 join->group_key = *group_key;
1003 join->member_key = *member_key; 1005 join->member_key = *member_key;
1004 join->origin = *origin; 1006 join->origin = *origin;
1005 memcpy (&join[1], relays, relay_size); 1007 if (0 < relay_size)
1006 memcpy (((char *) &join[1]) + relay_size, join_msg, join_msg_size); 1008 memcpy (&join[1], relays, relay_size);
1009 if (0 < join_msg_size)
1010 memcpy (((char *) &join[1]) + relay_size, join_msg, join_msg_size);
1007 1011
1008 grp->reconnect_msg = (struct GNUNET_MessageHeader *) join; 1012 grp->reconnect_msg = (struct GNUNET_MessageHeader *) join;
1009 grp->is_origin = GNUNET_NO; 1013 grp->is_origin = GNUNET_NO;