all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Glenn Morris <rgm@gnu.org>
To: Paul Eggert <eggert@cs.ucla.edu>
Cc: Emacs developers <emacs-devel@gnu.org>,
	Noam Postavsky <npostavs@users.sourceforge.net>
Subject: Re: master 583995c: GnuTLS HMAC and symmetric cipher support
Date: Mon, 17 Jul 2017 22:33:23 -0400	[thread overview]
Message-ID: <niwp76pj7w.fsf@fencepost.gnu.org> (raw)
In-Reply-To: <bc2531d3-2249-0a6f-8795-9b130da4b373@cs.ucla.edu> (Paul Eggert's message of "Mon, 17 Jul 2017 17:59:10 -0700")

Paul Eggert wrote:

> looks only at GnuTLS cipher IDs returned by gnutls_cipher_list, and
> GNUTLS_CIPHER_UNKNOWN is not one of those cipher IDs.

I feel like you've missed the first half of the discussion, so I'll
summarize it:

Since 583995c, make check on hydra crashes when loading the gnutls tests.
It uses gnutls 3.2.21. I installed that on my rhel7 system (with
--disable-non-suiteb-curves) and reproduced the crash. The backtrace is
at http://lists.gnu.org/archive/html/emacs-devel/2017-07/msg00716.html .

Specifically, I find it crashes because gnutls_cipher_list returns a list
containing GNUTLS_CIPHER_UNKNOWN.

The following patch fixes it for me:

*** /tmp/uOhC3f_gnutls.c	2017-07-17 19:32:32.851361998 -0700
--- src/gnutls.c	2017-07-17 12:03:27.514906186 -0700
***************
*** 1857,1870 ****
    for (ptrdiff_t pos = 0; gciphers[pos] != GNUTLS_CIPHER_NULL; pos++)
      {
        gnutls_cipher_algorithm_t gca = gciphers[pos];
  
        /* A symbol representing the GnuTLS cipher.  */
!       Lisp_Object cipher_symbol = intern (gnutls_cipher_get_name (gca));
  
!       ptrdiff_t cipher_tag_size = gnutls_cipher_get_tag_size (gca);
  
!       Lisp_Object cp
! 	= listn (CONSTYPE_HEAP, 15, cipher_symbol,
  		 QCcipher_id, make_number (gca),
  		 QCtype, Qgnutls_type_cipher,
  		 QCcipher_aead_capable, cipher_tag_size == 0 ? Qnil : Qt,
--- 1857,1877 ----
    for (ptrdiff_t pos = 0; gciphers[pos] != GNUTLS_CIPHER_NULL; pos++)
      {
        gnutls_cipher_algorithm_t gca = gciphers[pos];
+       const char *cipher_name;
+       Lisp_Object cipher_symbol, cp;
+       ptrdiff_t cipher_tag_size;
+ 
+       cipher_name = gnutls_cipher_get_name (gca);
+ 
+       if (! cipher_name)
+         continue;
  
        /* A symbol representing the GnuTLS cipher.  */
!       cipher_symbol = intern (cipher_name);
  
!       cipher_tag_size = gnutls_cipher_get_tag_size (gca);
  
!       cp = listn (CONSTYPE_HEAP, 15, cipher_symbol,
                    QCcipher_id, make_number (gca),
                    QCtype, Qgnutls_type_cipher,
                    QCcipher_aead_capable, cipher_tag_size == 0 ? Qnil : Qt,



  reply	other threads:[~2017-07-18  2:33 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20170714150706.13106.18905@vcs0.savannah.gnu.org>
     [not found] ` <20170714150707.5E9B322DF8@vcs0.savannah.gnu.org>
2017-07-17  0:05   ` master 583995c: GnuTLS HMAC and symmetric cipher support Glenn Morris
2017-07-17 14:18     ` Ted Zlatanov
2017-07-17 14:30       ` Michael Albinus
2017-07-17 14:50         ` Ted Zlatanov
2017-07-17 18:22           ` Michael Albinus
2017-07-17 17:12       ` Glenn Morris
2017-07-17 17:19         ` Noam Postavsky
2017-07-17 18:20           ` Glenn Morris
2017-07-17 18:45             ` Noam Postavsky
2017-07-17 19:27               ` Glenn Morris
2017-07-17 19:44                 ` Paul Eggert
2017-07-17 21:37                   ` Glenn Morris
2017-07-17 21:58                     ` Paul Eggert
2017-07-17 22:14                       ` Glenn Morris
2017-07-18  0:59                         ` Paul Eggert
2017-07-18  2:33                           ` Glenn Morris [this message]
2017-07-18  7:45                             ` Paul Eggert
2017-07-18 18:44                               ` Glenn Morris
2017-07-18 20:44                                 ` Paul Eggert
2017-07-18 21:02                                   ` Glenn Morris
2017-07-18 21:16                                     ` Paul Eggert
2017-07-18 21:29                                       ` Glenn Morris
2017-07-23 19:18         ` Ted Zlatanov

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=niwp76pj7w.fsf@fencepost.gnu.org \
    --to=rgm@gnu.org \
    --cc=eggert@cs.ucla.edu \
    --cc=emacs-devel@gnu.org \
    --cc=npostavs@users.sourceforge.net \
    /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.