Mutt не работает из-за "gnutls_handshake: получен пакет TLS с неожиданной длиной."

6

Я ожидаю много проблем с попыткой сделать работу mutt в Ubuntu 12.04. Вот мой .muttrc: Ссылка

Вот ошибка, которую я получаю, когда пытаюсь подключиться. gnutls_handshake: A TLS packet with unexpected length was received.

Кто-нибудь знает обходное решение, чтобы исправить эту ошибку. Если да, предложите это как можно скорее.

Большое спасибо в Advance!

Для отладки здесь выведено сообщение моего mutt -v: Ссылка

    
задан Vinit Kumar 11.10.2012 в 20:59
источник

1 ответ

6

К сожалению, это может быть проблемой с Mutt и его использованием gnutls , как видно из списки рассылки Mutt , однако есть некоторые решения.

Стоит удалить файлы заголовков из .mutt/cache/headers , потому что они могут иногда вызывать проблемы. Я также отмечаю, что в вашем .muttrc у вас нет строки mailboxes . Я использую gmail в Mutt и имею следующее в моем .muttrc (хотя ваш может отличаться):

mailboxes +INBOX +archive +sent +drafts +spam +trash

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

Сравнение вашего .muttrc с моим вообще не выявляет других различий, а Mutt и gmail работают для меня с почти одинаковыми настройками.

Однако , если эти предложения не решают вашу проблему, можно построить Mutt из исходного кода и убедиться, что вы построили его с поддержкой openssl , поэтому вы можете использовать openssl вместо gnutls . Я отмечаю, что в вашем втором Pastebin ваш Mutt действительно был построен с gnutls , поскольку ваш отладочный файл показывает:

-USE_SSL_OPENSSL  +USE_SSL_GNUTLS

Здесь - означает без этого атрибута, а + означает этот атрибут.

Итак, прежде чем мы начнем строить, очистите установленный в настоящий момент mutt :

sudo apt-get purge mutt

, а затем получить зависимости с

sudo apt-get build-dep mutt

Здесь полезно использовать build-dep , так как последняя версия mutt (на данный момент написания) не требует новых библиотек, кроме тех, которые выбраны с помощью build-dep .

Вам также нужно будет убедиться, что вы введете:

sudo apt-get install openssl libsasl2-modules libssl-dev libssl1.0.0

Теперь загрузите последний исходный код с официального сайта (который составляет 1.5.21 на момент написания), а затем проверьте соответствующую подпись gpg и cd к загруженному файлу и распакуйте исходный код с помощью

tar xzvf mutt-1.5.21.tar.gz 

Затем передайте эти дополнительные опции в configure (нам нужно включить другие параметры, а также ssl , как imap и smtp , а другие вещи не скомпилированы по умолчанию):

./configure --enable-pop --enable-imap --enable-smtp --with-ssl --enable-hcache --with-gss --with-sasl --enable-debug --enable-gpgme

Затем перейдите к сборке, а затем установите программу с помощью

make 
sudo make install or sudo checkinstall

Сборка займет всего несколько минут, и она снова позволит вам использовать Mutt . Вероятно, неплохо было бы очистить кеш заголовка (как я подробно остановился выше), прежде чем запускать новую программу. Он будет автоматически использовать ssl, так как теперь нет встроенной поддержки tls.

Снимок экрана из недавно скомпилированной программы (показывающий некоторые старые, не личные письма):

    
ответ дан user76204 17.10.2012 в 17:07
источник