From: Robert Pluim <rpluim@gmail.com>
To: Nikolaos Chatzikonstantinou <nchatz314@gmail.com>
Cc: 50507@debbugs.gnu.org, Lars Ingebrigtsen <larsi@gnus.org>,
Eli Zaretskii <eliz@gnu.org>
Subject: bug#50507: New function in Emacs GnuTLS implementation
Date: Thu, 29 Sep 2022 16:08:35 +0200 [thread overview]
Message-ID: <875yh6cly4.fsf@gmail.com> (raw)
In-Reply-To: <CAAQmekceNXaHov89sYi=_BgyULwd3WqmKBD86rRWuEK8K1fWPw@mail.gmail.com> (Nikolaos Chatzikonstantinou's message of "Thu, 29 Sep 2022 09:44:09 -0400")
>>>>> On Thu, 29 Sep 2022 09:44:09 -0400, Nikolaos Chatzikonstantinou <nchatz314@gmail.com> said:
>>
>> We have some convenience macros in lisp.h for traversing lists, one of
>> which is FOR_EACH_TAIL. The reason to prefer it is that it will detect
>> circular lists, which is good practice since this list will come from
>> the user level, so it could be anything :-)
Nikolaos> Good point. I opted for FOR_EACH_TAIL_SAFE, which seems even better
Nikolaos> for this case. As documented in ChangeLog.3, it's the right one when
Nikolaos> the operation is idempotent, which an OR of flags is. (repeated flags
Nikolaos> do not alter the result.)
OK
Nikolaos> +The :pass and :flags keys are ignored with old versions of GnuTLS, and
Nikolaos> +:flags is ignored if :pass is not specified.
Nikolaos> +
>>
>> Maybe mention that not specifying :flags or passing :flags nil means
>> passing '0' to the GnuTLS function?
Nikolaos> Yes, and on that note, I discovered two things. One, the value 0 is
Nikolaos> special; it has meaning but it is not an enumeration constant. I
Nikolaos> documented this appropriately. Two, the password may be NULL instead
Nikolaos> of a string.
OK. I guess youʼre mapping ':pass nil' to that?
Nikolaos> How can I differentiate between `:pass nil` and not specifying
Nikolaos> `:pass`? I would like to do this because in the former case I'm
Nikolaos> calling ...key_file2() and in the latter I'm calling the original
Nikolaos> ...key_file().
Youʼd do `plist-member' to check if thereʼs a `:pass' in the plist at
all, and then `plist-get' to extract the value.
Nikolaos> + DEFSYM (Qgnutls_pkcs_plain, "GNUTLS_PKCS_PLAIN");
Nikolaos> <removed a few more such lines>
Nikolaos> + DEFSYM (Qgnutls_pkcs_pbes2_gost_cpd, "GNUTLS_PKCS_PBES2_GOST_CPD");
>>
>> All this is kind of awkward, but apart from doing DEFVAR_LISP Iʼm not
>> aware of how to define a lisp level symbol with a value (it would
>> allow you to simplify `key_file2_aux', since you could just extract
>> the values directly from the symbols).
Nikolaos> I am now comparing against intern("GNUTLS_PKCS_PLAIN") and so on.
I guess thatʼs another option, but itʼs not the preferred
solution. Anyway, letʼs not let the perfect be the enemy of the good.
Thanks
Robert
--
next prev parent reply other threads:[~2022-09-29 14:08 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-10 10:39 bug#50507: New function in Emacs GnuTLS implementation Nikolaos Chatzikonstantinou
2021-09-10 12:39 ` Eli Zaretskii
2021-09-11 15:28 ` Nikolaos Chatzikonstantinou
2021-09-11 15:34 ` Eli Zaretskii
2021-09-11 15:52 ` Eli Zaretskii
2022-08-25 15:07 ` Lars Ingebrigtsen
2022-09-14 15:51 ` Nikolaos Chatzikonstantinou
2022-09-15 7:09 ` Lars Ingebrigtsen
2022-09-26 9:56 ` Nikolaos Chatzikonstantinou
2022-09-26 11:03 ` Lars Ingebrigtsen
2022-09-26 15:43 ` Nikolaos Chatzikonstantinou
2022-09-26 17:19 ` Robert Pluim
2022-09-26 21:39 ` Nikolaos Chatzikonstantinou
2022-09-27 6:29 ` Eli Zaretskii
2022-09-28 12:15 ` Nikolaos Chatzikonstantinou
2022-09-28 13:11 ` Robert Pluim
2022-09-29 3:09 ` Nikolaos Chatzikonstantinou
2022-09-29 8:17 ` Eli Zaretskii
2022-09-29 12:35 ` Nikolaos Chatzikonstantinou
2022-09-29 13:08 ` Eli Zaretskii
2022-09-29 9:02 ` Robert Pluim
2022-09-29 13:44 ` Nikolaos Chatzikonstantinou
2022-09-29 14:08 ` Robert Pluim [this message]
2022-09-30 10:04 ` Nikolaos Chatzikonstantinou
2022-09-30 10:47 ` Eli Zaretskii
2022-09-30 13:01 ` Nikolaos Chatzikonstantinou
2022-09-30 13:37 ` Eli Zaretskii
2022-09-30 13:49 ` Nikolaos Chatzikonstantinou
2022-09-30 14:32 ` Robert Pluim
2022-09-30 16:22 ` Nikolaos Chatzikonstantinou
2022-10-03 7:40 ` Robert Pluim
2022-10-03 13:00 ` Nikolaos Chatzikonstantinou
2022-10-03 13:19 ` Robert Pluim
2022-10-05 14:20 ` Nikolaos Chatzikonstantinou
2022-12-23 15:46 ` Nikolaos Chatzikonstantinou
2022-12-29 9:01 ` Eli Zaretskii
2022-12-29 17:03 ` Robert Pluim
2022-12-29 17:18 ` Eli Zaretskii
2022-12-30 16:41 ` Robert Pluim
2022-12-31 7:33 ` Eli Zaretskii
2023-01-02 10:24 ` Robert Pluim
2022-12-30 20:45 ` Mattias Engdegård
2022-12-30 22:59 ` Nikolaos Chatzikonstantinou
2022-12-31 7:28 ` Eli Zaretskii
2022-12-31 7:25 ` Eli Zaretskii
2022-12-31 8:58 ` Colin Baxter
2022-12-31 9:44 ` Mattias Engdegård
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=875yh6cly4.fsf@gmail.com \
--to=rpluim@gmail.com \
--cc=50507@debbugs.gnu.org \
--cc=eliz@gnu.org \
--cc=larsi@gnus.org \
--cc=nchatz314@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.