25/04/2016
Bereits am 08.04.2016 ist der dritte Teil der Artikelserie zu TLS/SSL-Netzwerkprogrammierung in C++ mit dem Framework Boost.Asio erschienen.
Nachdem der erste Teil auf die Grundlagen und Software-Architektur von Boost.Asio einging, behandelte der zweite Beitrag die praktische Programmierung von Servern in C++ mit Boost.Asio. Der dritte Beitrag geht nun auf die Programmierung von Client-Programmen ein. Zur Verschlüsselung der Netzwerkkommunikation mit TLS/SSL kommt auch in den Clients OpenSSL zum Einsatz.
Obwohl Boost.Asio die Plattformunabhängigkeit von Netzwerkprogrammen fördert, zeigt der Beitrag am praktischen Beispiel die Grenzen der Portabilität auf. Strategien zur Begegnung des Problems zeigt der Artikel auf. Ein weiteres Augenmerk legt der Beitrag auf die praktische Fehlerbehandlung.
Wie auch schon im zweiten Beitrag der Artikelserie zuvor setzt auch dieser dritte Teil auf ein praktisches Beispiel. Auch das Client-Beispielprogramm ist hoch-portabel angelegt und unterstützt eine Reihe von Systemplattformen, darunter UNIX (AIX, Solaris, HP/UX, OpenBSD, NetBSD, FreeBSD), Linux (Debian, Red Hat, SuSE) auf ARM und x86/AMD64, z/Linux (IBM Mainframe), Mac OS X sowie Windows (nativ mit Visual Studio und mit der UNIX/POSIX-Umgebung Cygwin).
http://heise.de/-3161904
Boost.Asio bietet plattformübergreifende Ansätze zur Netzwerkprogrammierung in C++, inklusive der Implementierung von SSL/TLS. Die Portabilität hat jedoch einige Grenzen, wie das Beispiel eines Clients zeigt.