diff options
author | Christian Grothoff <christian@grothoff.org> | 2011-10-13 21:16:04 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2011-10-13 21:16:04 +0000 |
commit | 2e92874cdda169f6337669d1bff9a5772aeae163 (patch) | |
tree | d563a7c4a1fcecf5d1a726805fc2fc95926836f5 /src/ats/gnunet-service-ats_addresses.c | |
parent | 0b66a17293953e905668cc5b5764068b65b9f4c1 (diff) | |
download | gnunet-2e92874cdda169f6337669d1bff9a5772aeae163.tar.gz gnunet-2e92874cdda169f6337669d1bff9a5772aeae163.zip |
more refactoring
Diffstat (limited to 'src/ats/gnunet-service-ats_addresses.c')
-rw-r--r-- | src/ats/gnunet-service-ats_addresses.c | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/ats/gnunet-service-ats_addresses.c b/src/ats/gnunet-service-ats_addresses.c index ff83f4fd8..4f9f877a5 100644 --- a/src/ats/gnunet-service-ats_addresses.c +++ b/src/ats/gnunet-service-ats_addresses.c | |||
@@ -81,6 +81,52 @@ free_address_it (void *cls, | |||
81 | } | 81 | } |
82 | 82 | ||
83 | 83 | ||
84 | void | ||
85 | GAS_address_update (struct GNUNET_SERVER_Client *client, | ||
86 | const struct GNUNET_PeerIdentity *peer, | ||
87 | const char *plugin_name, | ||
88 | const void *plugin_addr, size_t plugin_addr_len, | ||
89 | uint32_t session_id, | ||
90 | const struct GNUNET_TRANSPORT_ATS_Information *atsi, | ||
91 | uint32_t atsi_count) | ||
92 | { | ||
93 | struct ATS_Address * aa; | ||
94 | |||
95 | aa = GNUNET_malloc (sizeof (struct ATS_Address) + | ||
96 | atsi_count * sizeof (struct GNUNET_TRANSPORT_ATS_Information) + | ||
97 | plugin_addr_len); | ||
98 | aa->peer = *peer; | ||
99 | aa->addr_len = plugin_addr_len; | ||
100 | aa->ats_count = atsi_count; | ||
101 | aa->ats = (struct GNUNET_TRANSPORT_ATS_Information *) &aa[1]; | ||
102 | memcpy (&aa->ats, atsi, atsi_count * sizeof (struct GNUNET_TRANSPORT_ATS_Information)); | ||
103 | memcpy (aa->addr, plugin_addr, plugin_addr_len); | ||
104 | aa->plugin = GNUNET_strdup (plugin_name); | ||
105 | aa->session_id = session_id; | ||
106 | |||
107 | GNUNET_assert (GNUNET_OK == | ||
108 | GNUNET_CONTAINER_multihashmap_put(addresses, | ||
109 | &peer->hashPubKey, | ||
110 | aa, | ||
111 | GNUNET_CONTAINER_MULTIHASHMAPOPTION_MULTIPLE)); | ||
112 | } | ||
113 | |||
114 | |||
115 | void | ||
116 | GAS_address_destroyed (struct GNUNET_SERVER_Client *client, | ||
117 | ...) | ||
118 | { | ||
119 | #if 0 | ||
120 | // struct AddressDestroyedMessage * msg = (struct AddressDestroyedMessage *) message; | ||
121 | /* | ||
122 | struct GNUNET_PeerIdentity *peer = &msg->peer; | ||
123 | struct ATS_Address * aa = find_address_by_addr (peer); | ||
124 | GNUNET_CONTAINER_multihashmap_remove(addresses, peer, aa); | ||
125 | GNUNET_free (aa);*/ | ||
126 | #endif | ||
127 | } | ||
128 | |||
129 | |||
84 | /** | 130 | /** |
85 | */ | 131 | */ |
86 | void | 132 | void |