Połączenie TLS zostało nieprawidłowo zakończone

17

Podczas pracy package-list-packagesotrzymuję następujące błędy:

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

Używam Emacsa 24.4 w systemie Windows. Do tego tygodnia pobieranie pakietów odbywało się normalnie.

Wypróbowałem ten przewodnik na temat konfigurowania Emacs-GnuTLS-Windows. Próbowałem uruchomić ten kod z sekcji Sprawdź, czy działa :

(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))

Dostaję nilsię do bufora bez błędu sprawdzania poprawności, co według artykułu jest oznaką sukcesu. Jeśli jednak ustawię (setq gnutls-log-level 2)i uruchomię kod ponownie, otrzymam następujące dane wyjściowe.

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

To wydaje się trochę dziwne. Według tej listy mailingowej błąd zwykle nie jest szkodliwy. Niemniej jednak nadal nie mogę pobrać gnu.

Jak mogę przywrócić normalne pobieranie pakietów?

Aktualizacja czerwcowa

Chociaż istnieją pewne sugestie na GitHub, że komunikat o błędzie jest fałszywy, gnunadal nie można go pobrać. Potwierdziłem to, sprawdzając lokalne wersje pakietów z najnowszymi aktualizacjami repozytorium online .

Aktualizacja 24.5

Nie mogę już odtworzyć problemu po aktualizacji do Emacsa 24.5.

Matthew Piziak
źródło
Wygląda to tak, jakby repozytorium było wyłączone (serwer obsługujący pakiety był w trybie offline). Czy możesz uzyskać dostęp do serwera w inny sposób? (np. przez przeglądarkę).
wvxvw
Tak. To jest repozytorium: elpa.gnu.org/packages
Matthew Piziak
Otrzymuję ten sam rodzaj danych wyjściowych, co sugeruje, że nie jest to znak błędu.
politza
Takie jest też moje wrażenie, ale pomyślałem, że powinienem opublikować to dla kompletności.
Matthew Piziak
Ten błąd też pojawia się, ale nie wydaje się, aby powodował jakąkolwiek szkodę. Pobieranie pakietów działa dobrze.
Kaushal Modi

Odpowiedzi:

2

Nie mogę już odtworzyć problemu po aktualizacji do najnowszej stabilnej wersji Emacsa (obecnie 24.5). C-h Npokazuje, że w tej wersji wprowadzono szereg zmian w podpisach pakietów.

Matthew Piziak
źródło