GNUnet  0.10.x
gnunet-service-set_union.h
Go to the documentation of this file.
1 
2 /*
3  This file is part of GNUnet
4  Copyright (C) 2013-2017 GNUnet e.V.
5 
6  GNUnet is free software: you can redistribute it and/or modify it
7  under the terms of the GNU Affero General Public License as published
8  by the Free Software Foundation, either version 3 of the License,
9  or (at your option) any later version.
10 
11  GNUnet is distributed in the hope that it will be useful, but
12  WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  Affero General Public License for more details.
15 
16  You should have received a copy of the GNU Affero General Public License
17  along with this program. If not, see <http://www.gnu.org/licenses/>.
18 
19  SPDX-License-Identifier: AGPL3.0-or-later
20 */
27 #ifndef GNUNET_SERVICE_SET_UNION_H
28 #define GNUNET_SERVICE_SET_UNION_H
29 
30 #include "gnunet-service-set.h"
32 
33 
40 int
42  const struct StrataEstimatorMessage *msg);
43 
44 
51 void
53  const struct StrataEstimatorMessage *msg);
54 
55 
66 int
67 check_union_p2p_ibf (void *cls,
68  const struct IBFMessage *msg);
69 
70 
80 void
81 handle_union_p2p_ibf (void *cls,
82  const struct IBFMessage *msg);
83 
84 
91 int
92 check_union_p2p_elements (void *cls,
93  const struct GNUNET_SET_ElementMessage *emsg);
94 
95 
104 void
105 handle_union_p2p_elements (void *cls,
106  const struct GNUNET_SET_ElementMessage *emsg);
107 
108 
115 int
117  const struct GNUNET_SET_ElementMessage *emsg);
118 
119 
126 void
128  const struct GNUNET_SET_ElementMessage *emsg);
129 
130 
138 int
139 check_union_p2p_inquiry (void *cls,
140  const struct InquiryMessage *msg);
141 
142 
150 void
151 handle_union_p2p_inquiry (void *cls,
152  const struct InquiryMessage *msg);
153 
154 
155 
162 void
164  const struct GNUNET_MessageHeader *mh);
165 
166 
167 
174 void
175 handle_union_p2p_full_done (void *cls,
176  const struct GNUNET_MessageHeader *mh);
177 
178 
187 int
188 check_union_p2p_demand (void *cls,
189  const struct GNUNET_MessageHeader *mh);
190 
191 
199 void
200 handle_union_p2p_demand (void *cls,
201  const struct GNUNET_MessageHeader *mh);
202 
203 
211 int
212 check_union_p2p_offer (void *cls,
213  const struct GNUNET_MessageHeader *mh);
214 
215 
223 void
224 handle_union_p2p_offer (void *cls,
225  const struct GNUNET_MessageHeader *mh);
226 
227 
234 void
235 handle_union_p2p_done (void *cls,
236  const struct GNUNET_MessageHeader *mh);
237 
244 void
245 handle_union_p2p_over (void *cls,
246  const struct GNUNET_MessageHeader *mh);
247 
248 
249 #endif
void handle_union_p2p_strata_estimator(void *cls, const struct StrataEstimatorMessage *msg)
Handle a strata estimator from a remote peer.
void handle_union_p2p_full_element(void *cls, const struct GNUNET_SET_ElementMessage *emsg)
Handle an element message from a remote peer.
void handle_union_p2p_elements(void *cls, const struct GNUNET_SET_ElementMessage *emsg)
Handle an element message from a remote peer.
void handle_union_p2p_demand(void *cls, const struct GNUNET_MessageHeader *mh)
Handle a demand by the other peer for elements based on a list of struct GNUNET_HashCodes.
struct GNUNET_MessageHeader * msg
Definition: 005.c:2
Message containing buckets of an invertible bloom filter.
void handle_union_p2p_full_done(void *cls, const struct GNUNET_MessageHeader *mh)
Handle a "full done" message.
static struct GNUNET_CADET_Handle * mh
Cadet handle.
Definition: gnunet-cadet.c:92
int check_union_p2p_offer(void *cls, const struct GNUNET_MessageHeader *mh)
Check offer (of struct GNUNET_HashCodes).
void handle_union_p2p_over(void *cls, const struct GNUNET_MessageHeader *mh)
Handle an over message from a remote peer.
void handle_union_p2p_done(void *cls, const struct GNUNET_MessageHeader *mh)
Handle a done message from a remote peer.
void handle_union_p2p_inquiry(void *cls, const struct InquiryMessage *msg)
Send offers (for GNUNET_Hash-es) in response to inquiries (for IBF_Key-s).
int check_union_p2p_strata_estimator(void *cls, const struct StrataEstimatorMessage *msg)
Handle a strata estimator from a remote peer.
void handle_union_p2p_ibf(void *cls, const struct IBFMessage *msg)
Handle an IBF message from a remote peer.
int check_union_p2p_elements(void *cls, const struct GNUNET_SET_ElementMessage *emsg)
Check an element message from a remote peer.
void handle_union_p2p_request_full(void *cls, const struct GNUNET_MessageHeader *mh)
Handle a request for full set transmission.
void handle_union_p2p_offer(void *cls, const struct GNUNET_MessageHeader *mh)
Handle offers (of struct GNUNET_HashCodes) and respond with demands (of struct GNUNET_HashCodes).
int check_union_p2p_inquiry(void *cls, const struct InquiryMessage *msg)
Send offers (for GNUNET_Hash-es) in response to inquiries (for IBF_Key-s).
int check_union_p2p_ibf(void *cls, const struct IBFMessage *msg)
Check an IBF message from a remote peer.
int check_union_p2p_full_element(void *cls, const struct GNUNET_SET_ElementMessage *emsg)
Check a full element message from a remote peer.
Strata estimator together with the peer&#39;s overall set size.
int check_union_p2p_demand(void *cls, const struct GNUNET_MessageHeader *mh)
Check a demand by the other peer for elements based on a list of struct GNUNET_HashCodes.
common components for the implementation the different set operations
Message sent by client to the service to add or remove an element to/from the set.
Definition: set.h:282
Header for all communications.
Peer-to-Peer messages for gnunet set.