<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpgme/src/conversion.c, branch gpgme-2.1.2</title>
<subtitle>GnuPG Made Easy.</subtitle>
<id>http://git.bktus.com/gpgfrontend/gpgme/atom?h=gpgme-2.1.2</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/gpgme/atom?h=gpgme-2.1.2'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/'/>
<updated>2026-02-05T14:16:59Z</updated>
<entry>
<title>Don't cap ISO dates beyond year 2037 on Windows</title>
<updated>2026-02-05T14:16:59Z</updated>
<author>
<name>Ingo Klöcker</name>
<email>dev@ingo-kloecker.de</email>
</author>
<published>2026-02-05T13:44:34Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=021927f2f7be962d2549c978c262edd3f5c2da58'/>
<id>urn:sha1:021927f2f7be962d2549c978c262edd3f5c2da58</id>
<content type='text'>
* src/conversion.c (_gpgme_parse_timestamp): On Windows, disable hack
for 32-bit time_t.
--

On Windows, SystemTimeToFileTime is used for converting the timestamp
to seconds since epoch and this API doesn't have a year 2038 problem.

GnuPG-bug-id: 8088
</content>
</entry>
<entry>
<title>Support the Kyber algorithm in key listings.</title>
<updated>2024-11-14T11:31:21Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2024-11-14T11:31:21Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=62b6c1f16ae0ed7b0eb1b095ee383aa0910314bb'/>
<id>urn:sha1:62b6c1f16ae0ed7b0eb1b095ee383aa0910314bb</id>
<content type='text'>
* src/gpgme.h.in (GPGME_PK_KYBER): New.
* src/conversion.c (_gpgme_map_pk_algo): Handle Kyber.
* src/gpgme.c (gpgme_pubkey_algo_string): Support Kyber.
(gpgme_pubkey_algo_name): Add Kyber.
</content>
</entry>
<entry>
<title>core: Add new helper _gpgme_strtokenize.</title>
<updated>2024-10-29T11:00:11Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2024-10-29T09:37:15Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=c835676f7dfe39830d5b0500ad2cb809832428d1'/>
<id>urn:sha1:c835676f7dfe39830d5b0500ad2cb809832428d1</id>
<content type='text'>
* src/conversion.c (spacep): New.
(_gpgme_strtokenize): New.
--

Function taken from GnuPG and license changed to LGPL 2.1.  The
version in GnuPG was entirely written by the author.
</content>
</entry>
<entry>
<title>core,w32: Pass file names with forward slashes to gpg and gpgtar</title>
<updated>2024-06-04T14:52:24Z</updated>
<author>
<name>Ingo Klöcker</name>
<email>dev@ingo-kloecker.de</email>
</author>
<published>2024-06-04T14:52:24Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=25dd284b0c42ba4ad434ce43f6ac93f24acd6498'/>
<id>urn:sha1:25dd284b0c42ba4ad434ce43f6ac93f24acd6498</id>
<content type='text'>
src/conversion.c, src/util.h (_gpgme_replace_backslashes): New.
src/engine-gpg.c (_add_arg): Add argument file_name. On Windows, replace
backslashes in file name arguments with forward slashes.
(add_arg_ext, add_arg_with_locp, add_arg, add_arg_pfx, add_gpg_arg,
add_gpg_arg_with_value, add_arg_len): Adjust call of _add_arg.
(add_file_name_arg, add_file_name_arg_len, add_gpg_arg_with_file_name):
New.
(add_file_name_arg_or_data): Call add_file_name_arg for file name.
(gpg_new): Call add_gpg_arg_with_file_name for home directory.
(gpg_decrypt): Call add_file_name_arg for output directory and output
file name.
(append_args_from_recipients_string): Call add_file_name_arg_len for
recipients file name.
(gpg_encrypt): Call add_file_name_arg for output file name, base
directory and input file name. Call add_gpg_arg_with_file_name to set
file name stored in message.
(gpg_encrypt_sign): Call add_file_name_arg for output file name, base
directory and input file name. Call add_gpg_arg_with_file_name to set
file name stored in message.
(gpg_sign): Call add_file_name_arg for output file name, base directory
and input file name. Call add_gpg_arg_with_file_name to set file name
stored in message.
(gpg_verify): Call add_file_name_arg for output directory and output
file name.
--

By passing all file names with forward slashes to gpg and gpgtar we
avoid problems caused by the quoting of backslashes.

GnuPG-bug-id: 7141
</content>
</entry>
<entry>
<title>core: Use 64 bit instead of gpgme_off_t for some internal functions.</title>
<updated>2023-06-15T09:01:46Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2023-06-15T08:58:57Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=eb68948c438814b99b81adf44b674738d0b1be34'/>
<id>urn:sha1:eb68948c438814b99b81adf44b674738d0b1be34</id>
<content type='text'>
* src/conversion.c (_gpgme_string_to_off): Return an u64 value.
* src/data.c (_gpgme_data_get_size_hint): Ditto.
(gpgme_data_set_flag): Use u64 for io-buffer-size due to string_to_off
change.
* src/data.h (struct gpgme_data): Change size_hint to u64.
* src/engine-gpg.c (add_input_size_hint): Replace gpgme_off_t by u64.
--

GnuPG-bug-id: 6534
</content>
</entry>
<entry>
<title>core: New data flags "io-buffer-size" and "sensitive".</title>
<updated>2021-06-14T17:51:28Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2021-06-14T17:51:28Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=fde20940b5ca6986dc12215209e8858601bb0c2e'/>
<id>urn:sha1:fde20940b5ca6986dc12215209e8858601bb0c2e</id>
<content type='text'>
* src/data.c (_gpgme_data_release): Free buffers.
(gpgme_data_seek): Adjust from renamed fields.
(gpgme_data_set_flag): Implement new flags.
(_gpgme_data_inbound_handler): Allow the use of a malloced buffer.
(_gpgme_data_outbound_handler): Ditto.
* src/data.h (BUFFER_SIZE): Move out of the struct definition.
(struct gpgme_data): Remove pending filed and introduce inbound and
outbound fields.

* src/conversion.c (_gpgme_wipememory): New.  Taken from GnuPG.
* src/cJSON.c (wipememory): Use this here too.

* tests/run-decrypt.c (main): Add options "--large-buffers" and
"--sensitive".
--

GnuPG-bug-id: 5478
Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>Add SPDX identifiers to most source files</title>
<updated>2018-11-16T12:27:33Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-11-16T12:27:33Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=8d91c0f4cdcc26679067ae681ae12600fb450200'/>
<id>urn:sha1:8d91c0f4cdcc26679067ae681ae12600fb450200</id>
<content type='text'>
--

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>core: Extend decryption result with symkey_algo.</title>
<updated>2018-04-17T11:48:56Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2018-04-17T11:48:56Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=01435da498af9f7538d7ee810392d7eaa407957e'/>
<id>urn:sha1:01435da498af9f7538d7ee810392d7eaa407957e</id>
<content type='text'>
* src/gpgme.h.in (gpgme_op_decrypt_result_t): Add field 'symkey_algo'.
* src/decrypt.c (release_op_data): Free SYMKEY_ALGO.
(gpgme_op_decrypt_result): Make sure SYMKEY_ALGO is not NULL.
(parse_decryption_info): New.
(_gpgme_decrypt_status_handler): Parse DECRYPTION_INFO status.
* src/conversion.c (_gpgme_cipher_algo_name): New.
(_gpgme_cipher_mode_name): New.

* tests/run-decrypt.c (print_result): Print SYMKEY_ALGO

* src/util.h (_gpgme_map_gnupg_error): Remove obsolete prototype.
--

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>core: Simplify parsing of STATUS_ERROR in decrypt.c</title>
<updated>2017-07-12T13:59:12Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2017-07-12T13:59:12Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=87703dbb86ac8fd8abd23170f8038ea6e3dbde28'/>
<id>urn:sha1:87703dbb86ac8fd8abd23170f8038ea6e3dbde28</id>
<content type='text'>
* src/decrypt.c (_gpgme_decrypt_status_handler): Factor some code out
to ...
(parse_status_error): new.  Modernize parsing.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
<entry>
<title>core: Prepare for new key listing data send by gpg.</title>
<updated>2017-03-28T09:41:30Z</updated>
<author>
<name>Werner Koch</name>
<email>wk@gnupg.org</email>
</author>
<published>2017-03-28T09:40:44Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=813ae5fa2d712aa9679b791c67c9c1c43d36ffe4'/>
<id>urn:sha1:813ae5fa2d712aa9679b791c67c9c1c43d36ffe4</id>
<content type='text'>
* src/gpgme.h.in (gpgme_user_id_t): New fields 'origin' and
'last_update'.
(gpgme_key_t): New fields 'origin' and 'last_update'.
* src/conversion.c (_gpgme_parse_timestamp_ul): New.
* src/keylist.c (keylist_colon_handler): Parse fields 19 and 20.

* tests/run-keylist.c (main): Print new fields.

Signed-off-by: Werner Koch &lt;wk@gnupg.org&gt;
</content>
</entry>
</feed>
