aboutsummaryrefslogtreecommitdiff
path: root/src/psyc
diff options
context:
space:
mode:
authorGabor X Toth <*@tg-x.net>2015-09-08 01:36:44 +0000
committerGabor X Toth <*@tg-x.net>2015-09-08 01:36:44 +0000
commitb5e08fdd9c1663e81afef784a6e3bd6b4552e23e (patch)
treecae60510ffa95f024e63327734f809dd3d929b02 /src/psyc
parenta86a539258282bedabd24919e8af9bd113a6538a (diff)
downloadgnunet-b5e08fdd9c1663e81afef784a6e3bd6b4552e23e.tar.gz
gnunet-b5e08fdd9c1663e81afef784a6e3bd6b4552e23e.zip
social: guest_enter_by_name(); zone_add_pkey(); join_msg fixes
Diffstat (limited to 'src/psyc')
-rw-r--r--src/psyc/gnunet-service-psyc.c6
-rw-r--r--src/psyc/psyc_api.c11
2 files changed, 8 insertions, 9 deletions
diff --git a/src/psyc/gnunet-service-psyc.c b/src/psyc/gnunet-service-psyc.c
index 070fd8e47..1f7e7c23c 100644
--- a/src/psyc/gnunet-service-psyc.c
+++ b/src/psyc/gnunet-service-psyc.c
@@ -1792,9 +1792,11 @@ client_recv_slave_join (void *cls, struct GNUNET_SERVER_Client *client,
1792 if (sizeof (*req) + relay_size + sizeof (struct GNUNET_MessageHeader) 1792 if (sizeof (*req) + relay_size + sizeof (struct GNUNET_MessageHeader)
1793 <= req_size) 1793 <= req_size)
1794 { 1794 {
1795 join_msg_size = ntohs (slv->join_msg->header.size); 1795 struct GNUNET_PSYC_Message *
1796 join_msg = (struct GNUNET_PSYC_Message *) (((char *) &req[1]) + relay_size);
1797 join_msg_size = ntohs (join_msg->header.size);
1796 slv->join_msg = GNUNET_malloc (join_msg_size); 1798 slv->join_msg = GNUNET_malloc (join_msg_size);
1797 memcpy (slv->join_msg, ((char *) &req[1]) + relay_size, join_msg_size); 1799 memcpy (slv->join_msg, join_msg, join_msg_size);
1798 } 1800 }
1799 if (sizeof (*req) + relay_size + join_msg_size != req_size) 1801 if (sizeof (*req) + relay_size + join_msg_size != req_size)
1800 { 1802 {
diff --git a/src/psyc/psyc_api.c b/src/psyc/psyc_api.c
index b862eee9c..6128e4d82 100644
--- a/src/psyc/psyc_api.c
+++ b/src/psyc/psyc_api.c
@@ -669,7 +669,7 @@ GNUNET_PSYC_master_start (const struct GNUNET_CONFIGURATION_Handle *cfg,
669 req->channel_key = *channel_key; 669 req->channel_key = *channel_key;
670 req->policy = policy; 670 req->policy = policy;
671 671
672 chn->connect_msg = (struct GNUNET_MessageHeader *) req; 672 chn->connect_msg = &req->header;
673 chn->cfg = cfg; 673 chn->cfg = cfg;
674 chn->is_master = GNUNET_YES; 674 chn->is_master = GNUNET_YES;
675 675
@@ -896,8 +896,7 @@ GNUNET_PSYC_slave_join (const struct GNUNET_CONFIGURATION_Handle *cfg,
896 else 896 else
897 join_msg_size = ntohs (join_msg->header.size); 897 join_msg_size = ntohs (join_msg->header.size);
898 req = GNUNET_malloc (sizeof (*req) + relay_size + join_msg_size); 898 req = GNUNET_malloc (sizeof (*req) + relay_size + join_msg_size);
899 req->header.size = htons (sizeof (*req) 899 req->header.size = htons (sizeof (*req) + relay_size + join_msg_size);
900 + relay_count * sizeof (*relays));
901 req->header.type = htons (GNUNET_MESSAGE_TYPE_PSYC_SLAVE_JOIN); 900 req->header.type = htons (GNUNET_MESSAGE_TYPE_PSYC_SLAVE_JOIN);
902 req->channel_key = *channel_key; 901 req->channel_key = *channel_key;
903 req->slave_key = *slave_key; 902 req->slave_key = *slave_key;
@@ -908,11 +907,9 @@ GNUNET_PSYC_slave_join (const struct GNUNET_CONFIGURATION_Handle *cfg,
908 memcpy (&req[1], relays, relay_size); 907 memcpy (&req[1], relays, relay_size);
909 908
910 if (NULL != join_msg) 909 if (NULL != join_msg)
911 memcpy ((char *) &req[1] + relay_size, 910 memcpy ((char *) &req[1] + relay_size, join_msg, join_msg_size);
912 join_msg,
913 join_msg_size);
914 911
915 chn->connect_msg = (struct GNUNET_MessageHeader *) req; 912 chn->connect_msg = &req->header;
916 chn->cfg = cfg; 913 chn->cfg = cfg;
917 chn->is_master = GNUNET_NO; 914 chn->is_master = GNUNET_NO;
918 915