uncrustify as demanded.
[oweals/gnunet.git] / src / set / gnunet-service-set_protocol.h
index b96ea0889925d4e0c0295bb60d3d69b965d5f29e..529fed64c3f3a6858f787b2ae1bfc1bc8ce45ab6 100644 (file)
@@ -1,22 +1,22 @@
 /*
      This file is part of GNUnet.
-     Copyright (C) 2013, 2014 Christian Grothoff (and other contributing authors)
+     Copyright (C) 2013, 2014 GNUnet e.V.
 
-     GNUnet is free software; you can redistribute it and/or modify
-     it under the terms of the GNU General Public License as published
-     by the Free Software Foundation; either version 3, or (at your
-     option) any later version.
+     GNUnet is free software: you can redistribute it and/or modify it
+     under the terms of the GNU Affero General Public License as published
+     by the Free Software Foundation, either version 3 of the License,
+     or (at your option) any later version.
 
      GNUnet is distributed in the hope that it will be useful, but
      WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     General Public License for more details.
+     Affero General Public License for more details.
 
-     You should have received a copy of the GNU General Public License
-     along with GNUnet; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-     Boston, MA 02110-1301, USA.
-*/
+     You should have received a copy of the GNU Affero General Public License
+     along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+     SPDX-License-Identifier: AGPL3.0-or-later
+ */
 /**
  * @author Florian Dold
  * @author Christian Grothoff
@@ -32,8 +32,7 @@
 
 GNUNET_NETWORK_STRUCT_BEGIN
 
-struct OperationRequestMessage
-{
+struct OperationRequestMessage {
   /**
    * Type: #GNUNET_MESSAGE_TYPE_SET_P2P_OPERATION_REQUEST
    */
@@ -52,7 +51,7 @@ struct OperationRequestMessage
   /**
    * Application-specific identifier of the request.
    */
-  struct GNUNET_HashCode app_id;
+  struct GNUNET_HashCode app_idX;
 
   /* rest: optional message */
 };
@@ -64,8 +63,7 @@ struct OperationRequestMessage
  * If an IBF has too many buckets for an IBF message,
  * it is split into multiple messages.
  */
-struct IBFMessage
-{
+struct IBFMessage {
   /**
    * Type: #GNUNET_MESSAGE_TYPE_SET_UNION_P2P_IBF
    */
@@ -80,12 +78,17 @@ struct IBFMessage
   /**
    * Padding, must be 0.
    */
-  uint8_t reserved;
+  uint8_t reserved1;
+
+  /**
+   * Padding, must be 0.
+   */
+  uint16_t reserved2 GNUNET_PACKED;
 
   /**
    * Offset of the strata in the rest of the message
    */
-  uint16_t offset GNUNET_PACKED;
+  uint32_t offset GNUNET_PACKED;
 
   /**
    * Salt used when hashing elements for this IBF.
@@ -96,8 +99,7 @@ struct IBFMessage
 };
 
 
-struct InquiryMessage
-{
+struct InquiryMessage {
   /**
    * Type: #GNUNET_MESSAGE_TYPE_SET_UNION_P2P_IBF
    */
@@ -122,8 +124,7 @@ struct InquiryMessage
  * send it the number of elements in the set, to allow the peers
  * to decide who should start with the Bloom filter.
  */
-struct IntersectionElementInfoMessage
-{
+struct IntersectionElementInfoMessage {
   /**
    * Type: #GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_ELEMENT_INFO
    */
@@ -133,15 +134,13 @@ struct IntersectionElementInfoMessage
    * mutator used with this bloomfilter.
    */
   uint32_t sender_element_count GNUNET_PACKED;
-
 };
 
 
 /**
  * Bloom filter messages exchanged for set intersection calculation.
  */
-struct BFMessage
-{
+struct BFMessage {
   /**
    * Type: #GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_BF
    */
@@ -185,8 +184,7 @@ struct BFMessage
  * by getting the empty set, which in that case also needs to be
  * communicated.
  */
-struct IntersectionDoneMessage
-{
+struct IntersectionDoneMessage {
   /**
    * Type: #GNUNET_MESSAGE_TYPE_SET_INTERSECTION_P2P_DONE
    */
@@ -203,6 +201,19 @@ struct IntersectionDoneMessage
   struct GNUNET_HashCode element_xor_hash;
 };
 
+
+/**
+ * Strata estimator together with the peer's overall set size.
+ */
+struct StrataEstimatorMessage {
+  /**
+   * Type: #GNUNET_MESSAGE_TYPE_SET_UNION_P2P_SE(C)
+   */
+  struct GNUNET_MessageHeader header;
+
+  uint64_t set_size;
+};
+
 GNUNET_NETWORK_STRUCT_END
 
 #endif