consolidate reclaim attribute lib
[oweals/gnunet.git] / src / pq / pq.h
1 /*
2    This file is part of GNUnet
3    Copyright (C) 2017, 2019 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  * @file pq/pq.h
22  * @brief shared internal data structures of libgnunetpq
23  * @author Christian Grothoff
24  */
25 #ifndef PQ_H
26 #define PQ_H
27
28 #include "gnunet_util_lib.h"
29 #include "gnunet_pq_lib.h"
30
31 /**
32  * Handle to Postgres database.
33  */
34 struct GNUNET_PQ_Context
35 {
36   /**
37    * Actual connection.
38    */
39   PGconn *conn;
40
41   /**
42    * Statements to execute upon connection.
43    */
44   struct GNUNET_PQ_ExecuteStatement *es;
45
46   /**
47    * Prepared statements.
48    */
49   struct GNUNET_PQ_PreparedStatement *ps;
50
51   /**
52    * Configuration to use to connect to the DB.
53    */
54   char *config_str;
55
56   /**
57    * Path to load SQL files from.
58    */
59   char *load_path;
60 };
61
62 #endif