The modifications were done such that they fitted in with the way the current http support is implemented. The implementation was straight forward as the code is nicely structured and almost all the reading and writing to the network is in one place.
This adds the support for https ... it is a modified copy of the standard HTTP.c with the usual SSL client modifications.
Simply add the new source module HTTPS.c
Modified the NETCLOSE, NETREAD, and NETWRITE macros to be aware of SSL connections and to use ssl_read(), ssl_write() when appropriate.
Catch a read() loop that wasn't using NETREAD.
Register the support for https.
Forward fitting the patches from Mosaic-2.5 took about 10 minutes as nothing has really changed in this area between the two releases. The introduction of support for mailto to Mosaic-2.6b1 was the main reason that I've upgraded to the current beta release. The other is to finally have the ability to edit the URL in the top header line ... something that once you start using it you will find too painful to live without :-)
If you don't have Mosaic-2.6b1 then I strongly suggest that you get hold of it now.
There are also a number of little changes done when Eric complained that I missed changing HTTP to HTTPS in some of the error messages.
Nothing major here ... see comments for Mosaic-2.6b1 and Mosaic-2.5
Just the normal changes here ... however now that there is a nice interface for indicating the "security" on a page I've made some additions to use it.
Added this icon (simply a padlock with SSL as the text ...)
Load the lock_ssl.xpm into securitySSL.
Added #include "pixmaps/lock_ssl.xpm"
Added an extra enum HTAA_SSL to represent SSL security.
Adding HTAA_SSL stuff ... two little additions for string to enum and enum to string as per the other security enums.
Tie the user interface stuff into the new icon for displaying the right icon at the right time and also including a few details in terms of subject and issuer of the certificate that matches the page.