portage-overlay

personal portage ebuild repository
git clone anongit@rnpnr.xyz:portage-overlay.git
Log | Files | Refs | Feed | README

0001-Fix-stub-functions-to-avoid-LTO-linking-bugs.patch (5153B)


      1 https://bugs.gentoo.org/854222
      2 
      3 From 81760cc931d69f37cf2a8ad54616a1af590fd2cf Mon Sep 17 00:00:00 2001
      4 Message-ID: <81760cc931d69f37cf2a8ad54616a1af590fd2cf.1770174575.git.sam@gentoo.org>
      5 From: Werner Koch <wk@gnupg.org>
      6 Date: Wed, 28 Jan 2026 13:45:00 +0100
      7 Subject: [PATCH GnuPG] Fix stub functions to avoid LTO linking bugs.
      8 
      9 --
     10 ---
     11  g10/gpgv.c       | 42 ++++++++++++++++++++++++++++--------------
     12  g10/test-stubs.c | 36 +++++++++++++++++++++++-------------
     13  2 files changed, 51 insertions(+), 27 deletions(-)
     14 
     15 diff --git a/g10/gpgv.c b/g10/gpgv.c
     16 index b65dfa66b..23704e21c 100644
     17 --- a/g10/gpgv.c
     18 +++ b/g10/gpgv.c
     19 @@ -462,10 +462,13 @@ keyserver_any_configured (ctrl_t ctrl)
     20  }
     21  
     22  int
     23 -keyserver_import_keyid (u32 *keyid, void *dummy, unsigned int flags)
     24 +keyserver_import_keyid (ctrl_t ctrl,
     25 +                        u32 *keyid,struct keyserver_spec *keyserver,
     26 +                        unsigned int flags)
     27  {
     28 +  (void)ctrl;
     29    (void)keyid;
     30 -  (void)dummy;
     31 +  (void)keyserver;
     32    (void)flags;
     33    return -1;
     34  }
     35 @@ -493,9 +496,14 @@ keyserver_import_fpr_ntds (ctrl_t ctrl,
     36  }
     37  
     38  int
     39 -keyserver_import_cert (const char *name)
     40 +keyserver_import_cert (ctrl_t ctrl, const char *name, int dane_mode,
     41 +                       unsigned char **fpr,size_t *fpr_len)
     42  {
     43 +  (void)ctrl;
     44    (void)name;
     45 +  (void)dane_mode;
     46 +  (void)fpr;
     47 +  (void)fpr_len;
     48    return -1;
     49  }
     50  
     51 @@ -511,11 +519,17 @@ keyserver_import_wkd (ctrl_t ctrl, const char *name, unsigned int flags,
     52    return GPG_ERR_BUG;
     53  }
     54  
     55 -int
     56 -keyserver_import_mbox (const char *name,struct keyserver_spec *spec)
     57 +gpg_error_t
     58 +keyserver_import_mbox (ctrl_t ctrl, const char *mbox,
     59 +                       unsigned char **fpr, size_t *fprlen,
     60 +                       struct keyserver_spec *keyserver, unsigned int flags)
     61  {
     62 -  (void)name;
     63 -  (void)spec;
     64 +  (void)ctrl;
     65 +  (void)mbox;
     66 +  (void)fpr;
     67 +  (void)fprlen;
     68 +  (void)keyserver;
     69 +  (void)flags;
     70    return -1;
     71  }
     72  
     73 @@ -647,14 +661,11 @@ parse_preferred_keyserver(PKT_signature *sig)
     74    return NULL;
     75  }
     76  
     77 -struct keyserver_spec *
     78 -parse_keyserver_uri (const char *uri, int require_scheme,
     79 -                     const char *configname, unsigned int configlineno)
     80 +keyserver_spec_t
     81 +parse_keyserver_uri (const char *string, int require_scheme)
     82  {
     83 -  (void)uri;
     84 +  (void)string;
     85    (void)require_scheme;
     86 -  (void)configname;
     87 -  (void)configlineno;
     88    return NULL;
     89  }
     90  
     91 @@ -666,11 +677,14 @@ free_keyserver_spec (struct keyserver_spec *keyserver)
     92  
     93  /* Stubs to avoid linking to photoid.c */
     94  void
     95 -show_photos (const struct user_attribute *attrs, int count, PKT_public_key *pk)
     96 +show_photos (ctrl_t ctrl, const struct user_attribute *attrs, int count,
     97 +             PKT_public_key *pk, PKT_user_id *uid)
     98  {
     99 +  (void)ctrl;
    100    (void)attrs;
    101    (void)count;
    102    (void)pk;
    103 +  (void)uid;
    104  }
    105  
    106  int
    107 diff --git a/g10/test-stubs.c b/g10/test-stubs.c
    108 index 9b41c8929..16d10972d 100644
    109 --- a/g10/test-stubs.c
    110 +++ b/g10/test-stubs.c
    111 @@ -193,10 +193,13 @@ keyserver_any_configured (ctrl_t ctrl)
    112  }
    113  
    114  int
    115 -keyserver_import_keyid (u32 *keyid, void *dummy, unsigned int flags)
    116 +keyserver_import_keyid (ctrl_t ctrl,
    117 +                        u32 *keyid,struct keyserver_spec *keyserver,
    118 +                        unsigned int flags)
    119  {
    120 +  (void)ctrl;
    121    (void)keyid;
    122 -  (void)dummy;
    123 +  (void)keyserver;
    124    (void)flags;
    125    return -1;
    126  }
    127 @@ -224,9 +227,14 @@ keyserver_import_fpr_ntds (ctrl_t ctrl,
    128  }
    129  
    130  int
    131 -keyserver_import_cert (const char *name)
    132 +keyserver_import_cert (ctrl_t ctrl, const char *name, int dane_mode,
    133 +                       unsigned char **fpr,size_t *fpr_len)
    134  {
    135 +  (void)ctrl;
    136    (void)name;
    137 +  (void)dane_mode;
    138 +  (void)fpr;
    139 +  (void)fpr_len;
    140    return -1;
    141  }
    142  
    143 @@ -242,15 +250,17 @@ keyserver_import_wkd (ctrl_t ctrl, const char *name, unsigned int flags,
    144    return GPG_ERR_BUG;
    145  }
    146  
    147 -int
    148 -keyserver_import_mbox (ctrl_t ctrl, const char *mbox, unsigned char **fpr,
    149 -                       size_t *fprlen, struct keyserver_spec *keyserver)
    150 +gpg_error_t
    151 +keyserver_import_mbox (ctrl_t ctrl, const char *mbox,
    152 +                       unsigned char **fpr, size_t *fprlen,
    153 +                       struct keyserver_spec *keyserver, unsigned int flags)
    154  {
    155    (void)ctrl;
    156    (void)mbox;
    157    (void)fpr;
    158    (void)fprlen;
    159    (void)keyserver;
    160 +  (void)flags;
    161    return -1;
    162  }
    163  
    164 @@ -381,14 +391,11 @@ parse_preferred_keyserver(PKT_signature *sig)
    165    return NULL;
    166  }
    167  
    168 -struct keyserver_spec *
    169 -parse_keyserver_uri (const char *uri, int require_scheme,
    170 -                     const char *configname, unsigned int configlineno)
    171 +keyserver_spec_t
    172 +parse_keyserver_uri (const char *string, int require_scheme)
    173  {
    174 -  (void)uri;
    175 +  (void)string;
    176    (void)require_scheme;
    177 -  (void)configname;
    178 -  (void)configlineno;
    179    return NULL;
    180  }
    181  
    182 @@ -400,11 +407,14 @@ free_keyserver_spec (struct keyserver_spec *keyserver)
    183  
    184  /* Stubs to avoid linking to photoid.c */
    185  void
    186 -show_photos (const struct user_attribute *attrs, int count, PKT_public_key *pk)
    187 +show_photos (ctrl_t ctrl, const struct user_attribute *attrs, int count,
    188 +             PKT_public_key *pk, PKT_user_id *uid)
    189  {
    190 +  (void)ctrl;
    191    (void)attrs;
    192    (void)count;
    193    (void)pk;
    194 +  (void)uid;
    195  }
    196  
    197  int
    198 -- 
    199 2.53.0
    200