Неизвестная ошибка протокола SSL

Я использую offlineimap для извлечения почты с нескольких серверов IMAP. Это работало, но сегодня offlineimap не удалось получить почту, offlineimap следующие ошибки:

 *** Processing account example Establishing connection to imap.gmail.com:993 ERROR: Unknown SSL protocol connecting to host 'imap.gmail.com' for repository '<redacted>'. OpenSSL responded: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) *** Finished account 'example' in 0:00 

Соответствующими частями моей конфигурации являются:

 [Account example] localrepository = local-example remoterepository = remote-example [Repository local-example] type = Maildir localfolders = ~/mail/example [Repository remote-example] maxconnections = 1 type = Gmail remotehost = imap.gmail.com remoteuser = example@gmail.com remotepasseval = get_keychain_pass(account="example@sexpression.org.uk", server="imap.gmail.com") ssl = yes sslcacertfile = /usr/local/etc/openssl/certs/dummycert.pem 

Конфигурация sslcacertfile была создана в ответ на этот ответ SO . Функция get_keychain_pass из этой конфигурации offlineimap .

Я использую offlineimap 6.5.7, созданный с помощью Homebrew на OS X 10.10.4.

Проблема возникла, когда я установил версию python для домашней версии, а не версию Apple. Ошибка была решена путем запуска

 brew uninstall python 

Я обнаружил, что это было решение, прочитав о подобной ошибке, созданной другой программой Python для OS X.

У меня есть необходимость в версиях Python для Apple и Homebrew. Некоторые пакеты, которые мне нужно установить из pip, и у меня нет административного доступа к этому выпущенному MacBook Pro. Таким образом, единственный доступный для меня вариант – для Homebrew. В результате я установил следующий PYTHONPATH перед запуском сценария offlineimap.py:

 PYTHONPATH="/Library/Python/2.7/site-packages" exec "/Users/tblancher/homebrew/Cellar/offlineimap/7.0.7/libexec/offlineimap.py" "$@" 

Я также изменил сам скрипт offlineimap.py. Я изменил первую строку, из этого:

 #!/usr/bin/env python 

К этому:

 #!/usr/bin/python 

По-видимому, env собирал, что это было в Homebrew, и поэтому пытается использовать питомник Homebrew. Offlineimap теперь работает правильно, и мой пакет Python, установленный на Homebrew-pip, (mutt-ics, если вам интересно).