[PATCH 1/5] cpp: expose minimal key export flag from C

Andre Heinecke aheinecke at intevation.de
Wed Jan 31 14:07:28 CET 2018


On Wednesday, January 31, 2018 11:29:46 AM CET Thorsten Behrens wrote:
> Werner Koch wrote:
> > That is an ABI change and thus a no-go.
> >
> Right - needs recompiling all client code. Though for c++, ABI tends
> to break all the time, so how large a problem is that really?

I try to keep ABI changes to a minimum. I don't think its necessary here to 
break ABI. ABI breaks always mean work for packagers and if we can avoid that 
easily we should ;-)

> > Also the use of a dedicated flag for a very special option is not a
> > good idea.  We need a clean design for this.
> >
> I took inspiration from other places in context.h ;)
> More seriously, I only see bad options here. We either:
> - introduce global state
> - duplicate all four exportPublic-functions & add a qualifier to the
>   method names
> - or admit this was an oversight to not expose the gpgme_op_export()
>   flags from c++, and break ABI
> Which one would you prefer?

exportPublicKeys is already overloaded so adding another overload is not an 
ABI Break. Just add another overload with a generic flags parameter and define 
ExportFlags as an enum with the values of gpgme's export flags.

The other patches look ok to me.


Andre Heinecke |  ++49-541-335083-262  | http://www.intevation.de/
Intevation GmbH, Neuer Graben 17, 49074 Osnabrück | AG Osnabrück, HR B 18998
Geschäftsführer: Frank Koormann, Bernhard Reiter, Dr. Jan-Oliver Wagner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.gnupg.org/pipermail/gnupg-devel/attachments/20180131/6c5f8883/attachment.sig>

More information about the Gnupg-devel mailing list