Соединение TLS было разорвано неправильно

17

При запуске package-list-packagesя получаю следующие ошибки:

Failed to download `gnu' archive.
gnutls.c: [0] (Emacs) fatal error: The TLS connection was non-properly terminated.

Я использую Emacs 24.4 на Windows. До этой недели загрузка пакетов происходила нормально.

Я пробовал это руководство по настройке Emacs-GnuTLS-Windows. Я попытался запустить этот код из раздела « Смотри, работает ли он »:

(condition-case e
    (delete-process
     (gnutls-negotiate
      :process (open-network-stream "test" nil "www.google.com" 443)
      :hostname "www.google.com"
      :verify-error t))
  (error e))

Я nilвставляюсь в буфер без ошибки проверки, что, согласно статье, является признаком успеха. Однако, если я (setq gnutls-log-level 2)снова установлю и запустлю код, я получу следующий вывод.

gnutls.c: [1] (Emacs) allocating credentials
gnutls.c: [2] (Emacs) allocating x509 credentials
gnutls.c: [2] (Emacs) using default verification flags
gnutls.c: [1] (Emacs) setting the trustfile:  c:/gnutls/cacert.pem
gnutls.c: [1] (Emacs) gnutls callbacks
gnutls.c: [1] (Emacs) gnutls_init
gnutls.c: [1] (Emacs) got non-default priority string: NORMAL
gnutls.c: [1] (Emacs) setting the priority string
gnutls.c: [audit] Note that the security level of the Diffie-Hellman key exchange has been lowered to 256 bits and this may allow decryption of the session data

gnutls.c: [1] (Emacs) non-fatal error: Resource temporarily unavailable, try again. [1428 times]
gnutls.c: [2] (Emacs) Deallocating x509 credentials

Так что это кажется немного странным. Согласно этому списку рассылки , ошибка обычно не вредна. Тем не менее, я все еще не могу скачать gnu.

Как я могу восстановить нормальную загрузку пакетов?

Июньское обновление

Хотя на GitHub есть некоторые предположения, что сообщение об ошибке является ложным, его gnuвсе равно не удается получить. Я подтвердил это, проверив локальные версии пакетов с недавними обновлениями в онлайн-хранилище .

24.5 обновление

Я больше не могу воспроизвести проблему после обновления до Emacs 24.5.

Мэтью Пизиак
источник
Это выглядит так, как будто хранилище не работает (сервер, обслуживающий пакеты, был отключен). Можете ли вы получить доступ к серверу другими способами? (например, через браузер).
wvxvw
Да. Это хранилище: elpa.gnu.org/packages
Мэтью Пизиак
Я получаю такой же вывод, предполагая, что это не признак ошибки.
политза
Это тоже мое впечатление, но я решил опубликовать его для полноты.
Мэтью Пизиак
Я тоже получаю эту ошибку, но, похоже, не причиняю вреда. Пакетные выборки работают нормально.
Каушал Моди

Ответы:

4

Это похоже на ошибку при взаимодействии некоторых версий emacs с некоторыми версиями gnutls:

https://github.com/nicferrier/elmarmalade/issues/55#issuecomment-75377455

Джейд Фауст
источник
Я могу принять этот ответ, если соответствующая информация извлечена из ссылки в соответствии с meta.stackexchange.com/a/8259 , и если полученного ответа достаточно, чтобы дать пользователям с той же проблемой приличный шанс ее исправить.
Мэтью Пизиак,
2

Я больше не могу воспроизвести проблему после обновления до последней стабильной версии Emacs (в настоящее время 24.5). C-h Nпоказывает, что в подписи пакетов в этой версии был внесен ряд изменений.

Мэтью Пизиак
источник