From 8bd2218151fa06cd6209a575e3000b74616c4f02 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Mon, 5 Mar 2018 23:10:22 +0100 Subject: adding missing/forgotten files --- src/gns/gns_api.h | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/gns/gns_api.h (limited to 'src/gns/gns_api.h') diff --git a/src/gns/gns_api.h b/src/gns/gns_api.h new file mode 100644 index 000000000..e4912338f --- /dev/null +++ b/src/gns/gns_api.h @@ -0,0 +1,76 @@ +/* + This file is part of GNUnet. + Copyright (C) 2009-2013, 2016, 2018 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 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. + + 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. +*/ +/** + * @file gns/gns_api.h + * @brief shared data structures of libgnunetgns + * @author Martin Schanzenbach + * @author Christian Grothoff + */ +#ifndef GNS_API_H +#define GNS_API_H + +#include "gnunet_gns_service.h" + + +/** + * Connection to the GNS service. + */ +struct GNUNET_GNS_Handle +{ + + /** + * Configuration to use. + */ + const struct GNUNET_CONFIGURATION_Handle *cfg; + + /** + * Connection to service (if available). + */ + struct GNUNET_MQ_Handle *mq; + + /** + * Head of linked list of active lookup requests. + */ + struct GNUNET_GNS_LookupRequest *lookup_head; + + /** + * Tail of linked list of active lookup requests. + */ + struct GNUNET_GNS_LookupRequest *lookup_tail; + + /** + * Reconnect task + */ + struct GNUNET_SCHEDULER_Task *reconnect_task; + + /** + * How long do we wait until we try to reconnect? + */ + struct GNUNET_TIME_Relative reconnect_backoff; + + /** + * Request Id generator. Incremented by one for each request. + */ + uint32_t r_id_gen; + +}; + + +#endif -- cgit v1.2.3