Как создать соединение SSL, пользующееся библиотекой Smack XMPP?

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

, Что 9-3 в имени файла означает, что этот драйвер является от марша 2009. Установка такого старого драйвера не будет работать.

6
задан staffan 13 February 2009 в 07:44
поделиться

2 ответа

Взгляните на эту ветку.

http://www.igniterealtime.org/community/thread/37678

По сути, вам нужно добавить эти две строки в свой код :

connConfig.setSecurityMode(ConnectionConfiguration.SecurityMode.enabled);
connConfig.setSocketFactory(new DummySSLSocketFactory());

где connConfig - ваш объект ConnectionConfiguration. Получите DummySSLSocketFactory из репозитория исходного кода Spark. Все, что он делает, это принимает практически любой сертификат. Похоже, это сработало для меня. Удачи!

6
ответ дан 9 December 2019 в 20:50
поделиться

Да, этого довольно легко добиться. Взгляните на класс ConnectionConfiguration и, в частности, на метод setSecurityMode, который принимает перечисление ConnectionConfiguration.SecurityMode в качестве параметра. Установка этого параметра в "обязательный" заставляет Smack использовать TLS.

из Javadoc:

Безопасность через шифрование TLS требуется для подключения. Если сервер не предлагает TLS или если Согласование TLS не удается, соединение к серверу не удастся.

3
ответ дан 9 December 2019 в 20:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: