gnunet-android

GNUnet for Android
Log | Files | Refs | README

block_regex.h (1816B)


      1 /*
      2      This file is part of GNUnet.
      3      Copyright (C) 2012,2013 GNUnet e.V.
      4 
      5      GNUnet is free software: you can redistribute it and/or modify it
      6      under the terms of the GNU Affero General Public License as published
      7      by the Free Software Foundation, either version 3 of the License,
      8      or (at your option) any later version.
      9 
     10      GNUnet is distributed in the hope that it will be useful, but
     11      WITHOUT ANY WARRANTY; without even the implied warranty of
     12      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     13      Affero General Public License for more details.
     14 
     15      You should have received a copy of the GNU Affero General Public License
     16      along with this program.  If not, see <http://www.gnu.org/licenses/>.
     17 
     18      SPDX-License-Identifier: AGPL3.0-or-later
     19  */
     20 
     21 /**
     22  * @file
     23  * regex block formats
     24  *
     25  * @author Bartlomiej Polot
     26  */
     27 #ifndef BLOCK_REGEX_H
     28 #define BLOCK_REGEX_H
     29 
     30 #ifdef __cplusplus
     31 extern "C"
     32 {
     33 #if 0
     34 /* keep Emacsens' auto-indent happy */
     35 }
     36 #endif
     37 #endif
     38 
     39 
     40 #include "gnunet_util_lib.h"
     41 #include <stdint.h>
     42 
     43 
     44 GNUNET_NETWORK_STRUCT_BEGIN
     45 
     46 
     47 /**
     48  * @brief Block to announce a peer accepting a state.
     49  */
     50 struct RegexAcceptBlock
     51 {
     52   /**
     53    * Accept blocks must be signed.  Signature
     54    * goes over expiration time and key.
     55    */
     56   struct GNUNET_CRYPTO_SignaturePurpose purpose;
     57 
     58   /**
     59    * When does the signature expire?
     60    */
     61   struct GNUNET_TIME_AbsoluteNBO expiration_time;
     62 
     63   /**
     64    * The key of the state.
     65    */
     66   struct GNUNET_HashCode key;
     67 
     68   /**
     69    * Public key of the peer signing.
     70    */
     71   struct GNUNET_PeerIdentity peer;
     72 
     73   /**
     74    * The signature.
     75    */
     76   struct GNUNET_CRYPTO_EddsaSignature signature;
     77 };
     78 
     79 
     80 GNUNET_NETWORK_STRUCT_END
     81 
     82 
     83 #if 0                           /* keep Emacsens' auto-indent happy */
     84 {
     85 #endif
     86 #ifdef __cplusplus
     87 }
     88 #endif
     89 
     90 #endif