1
0
mirror of git://git.gnupg.org/gnupg.git synced 2025-02-12 18:23:04 +01:00

kbx: Fix for building without keyboxd.

* kbx/keybox-fwddecl.h: New.
* kbx/keybox.h: Replace typedef for KEYBOX_HANDLE by including the new
file.
* g10/keydb-private.h: Ditto.
--

The duplicated typedef was a bit ugly and will fail, depending on
compiler, iof for example building without keyboxd.  Fix only tested
in the standard case but the fix is obvious.
This commit is contained in:
Werner Koch 2025-02-06 15:46:15 +01:00
parent 3a523b43d4
commit da9fb6bd16
No known key found for this signature in database
GPG Key ID: E3FDFF218E45B72B
4 changed files with 33 additions and 10 deletions

View File

@ -23,13 +23,7 @@
#include <assuan.h>
#include "../common/membuf.h"
/* Ugly forward declarations. */
struct keyring_handle;
typedef struct keyring_handle *KEYRING_HANDLE;
struct keybox_handle;
typedef struct keybox_handle *KEYBOX_HANDLE;
#include "../kbx/keybox-fwddecl.h"
/* This is for keydb.c and only used in non-keyboxd mode. */

View File

@ -44,7 +44,7 @@ common_libs = $(libcommon)
commonpth_libs = $(libcommonpth)
common_sources = \
keybox.h keybox-defs.h keybox-search-desc.h \
keybox.h keybox-defs.h keybox-search-desc.h keybox-fwddecl.h \
keybox-util.c \
keybox-init.c \
keybox-blob.c \

30
kbx/keybox-fwddecl.h Normal file
View File

@ -0,0 +1,30 @@
/* keybox-fwddecl.h - Keybox specific forward declarations and definitions.
* Copyright (C) 2025 g10 Code GmbH
*
* This file is part of GnuPG.
*
* GnuPG 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 of the License, or
* (at your option) any later version.
*
* GnuPG 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 this program; if not, see <https://www.gnu.org/licenses/>.
* SPDX-License-Identifier: GPL-3.0-or-later
*/
#ifndef KEYBOX_FWDDECL_H
#define KEYBOX_FWDDECL_H 1
struct keyring_handle;
typedef struct keyring_handle *KEYRING_HANDLE;
struct keybox_handle;
typedef struct keybox_handle *KEYBOX_HANDLE;
#endif /*KEYBOX_FWDDECL_H*/

View File

@ -28,13 +28,12 @@ extern "C" {
#include "../common/iobuf.h"
#include "keybox-search-desc.h"
#include "keybox-fwddecl.h"
#ifdef KEYBOX_WITH_X509
# include <ksba.h>
#endif
typedef struct keybox_handle *KEYBOX_HANDLE;
typedef enum
{