Moim zdaniem obsługa błędów przy próbie połączenia z ustawioną flagą
tls jest nie do końca spójna:
- jeżeli wsparcie nie zostało w ogóle wkompilowane, zostaje tylko
rzucony warning do logu i nic więcej, połączenie zostaje nawiązane
- jeżeli wystąpi błąd związany z tls (np. na laptopie mi rzuca
GNUTLS_E_INTERNAL_ERROR), połączenie nie zostanie nawiązane

Problem się pojawia, gdy chcę zrobić obsługę szyfrowania z trzema opcjami:
- wymagane: połączenie na pewno nie zostanie nawiązane plaintextem
- jeżeli możliwe: jeżeli się da, używamy szyfrowania; jeżeli
połączenie szyfrowane się nie uda, nie używamy
- bez szyfrowania: nie próbujemy używać szyfrowania

"Jeżeli możliwe" można zrobić po prostu próbując się połączyć przez
tls, a jeżeli się nie uda - łącząc się normalnie. Niestety "wymagane"
w opisanej sytuacji może być trudne do zaimplementowania.


Czy jest szansa na uspójnienie tego? A może coś źle rozumiem i da się
to zrobić inaczej?

Pozdrawiam,
Tomek
_______________________________________________
libgadu-devel mailing list
libgadu-devel@lists.ziew.org
http://lists.ziew.org/mailman/listinfo/libgadu-devel

Reply via email to