GNOME Bugzilla – Bug 696671
Gio::Tls*: Ensure their correct functionality.
Last modified: 2013-05-07 09:04:17 UTC
Created attachment 239916 [details] [review] Gio::Tls*: Ensure their correct functionality. This patch is to show that correct functionality of the Gio::Tls* classes is possible. A few changes would be needed to Glib::Interface, the _CLASS_INTERFACE macro and Gio::Tls[Client|Server]Connection sources (particularly the implementation of a custom cast constructor) so that the functionality is correct, but in fact, all the classes prove to work (except for TlsServerConnection which would have to be modified like TlsClientConnection and work similarly). I know the API is new and probably not quite ready. At least this patch shows that it's not really that far from being usable.
How confident are you about all this? Would you like to remove all Gio::Tls* API from git master for glibmm 2.36.0 and add it back to git master after branching? That might take the pressure off.
To be honest, yes, I think that would be best. That would make it possible to make sure that the API is just right and there wont be a need to break API or ABI when a stable release goes out. I've removed the related API from the build for now.
Here's the commit: https://git.gnome.org/browse/glibmm/commit/?id=45511d8e0ffdda76d792174569535a8b7f326d93
I'm pretty sure the patch in this bug to fix TlsClientConnection is necessary for the TlsClientConnection class to work properly so I pushed the patch, however, I split the patch in two parts (one fixing TlsCleintConnection and the other adding the basic test) and edited the commit messages so that it is clear what is being done. I've also fixed TlsServerConnection in similar fashion as TlsClientConnection. They are parallel classes so they would work in a parallel way. These are the commits: https://git.gnome.org/browse/glibmm/commit/?id=ed95a3b5ddfb036e91be5d868e74f23ba304f37b https://git.gnome.org/browse/glibmm/commit/?id=e9d09efcad4b92ac0fd497eeacf96d988c720319 https://git.gnome.org/browse/glibmm/commit/?id=237cdf9553a247f70fd2f94c1338af31270b1a7f The Tls* API should be finished fairly soon.
Comment on attachment 239916 [details] [review] Gio::Tls*: Ensure their correct functionality. Committed in two separate commits with edited commit messages.
I've reviewed the Tls API and can now say that I have confidence that they have been correctly wrapped. I would feel comfortable with the API being included in a stable release.
OK. Well done. Then let's close this bug and just open separate bugs if we find problems. Thanks.