summaryrefslogtreecommitdiff
path: root/gio/gtlsclientconnection.c
Commit message (Collapse)AuthorAgeFilesLines
* Rename G_TLS_CERTIFICATE_FLAGS_NONEEmmanuele Bassi2022-07-251-1/+1
| | | | | | The prefix is G_TLS_CERTIFICATE, not G_TLS_CERTIFICATE_FLAGS. Having G_TLS_CERTIFICATE_FLAGS_NONE leads to a FLAGS_NONE nick in the GType, and a FLAGS_NONE member name in the introspection data.
* gioenums: Add G_TLS_CERTIFICATE_FLAGS_NONESimon McVittie2022-06-231-1/+1
| | | | | | | This makes the absence of flags (in other words, a valid certificate) more self-documenting. Signed-off-by: Simon McVittie <smcv@collabora.com>
* gio: Add SPDX license headers automaticallyPhilip Withnall2022-05-181-0/+2
| | | | | | | | | | | | | | Add SPDX license (but not copyright) headers to all files which follow a certain pattern in their existing non-machine-readable header comment. This commit was entirely generated using the command: ``` git ls-files gio/*.[ch] | xargs perl -0777 -pi -e 's/\n \*\n \* This library is free software; you can redistribute it and\/or\n \* modify it under the terms of the GNU Lesser General Public/\n \*\n \* SPDX-License-Identifier: LGPL-2.1-or-later\n \*\n \* This library is free software; you can redistribute it and\/or\n \* modify it under the terms of the GNU Lesser General Public/igs' ``` Signed-off-by: Philip Withnall <pwithnall@endlessos.org> Helps: #1415
* gtlsclientconnection: deprecate validation-flags propertyMichael Catanzaro2021-11-161-1/+28
| | | | | It doesn't work as expected, and you shouldn't be trying to use it anyway.
* gio: Add missing nullable annotationsSebastian Dröge2020-11-111-1/+1
|
* Improve documentation of client connection validation flagsMichael Catanzaro2020-05-051-1/+1
| | | | | | Validation fails if ANY of the flags are set. Not if they're ALL set. This is obvious and no programmer would be confused, but let's fix it anyway.
* Merge branch 'mcatanzaro/copy-session-state' into 'master'Michael Catanzaro2019-11-181-6/+28
|\ | | | | | | | | Improve documentation for footgun function g_tls_client_connection_copy_session_state() See merge request GNOME/glib!1039
| * Improve documentation of g_tls_client_connection_copy_session_state()Michael Catanzaro2019-11-181-6/+28
| | | | | | | | | | | | This function has numerous undocumented limitations. In particular, it is not possible to ensure this function actually does anything. Document these problems.
* | gtlsclientconnection: use-ssl3 is now ignoredMichael Catanzaro2019-11-181-30/+22
|/ | | | | | | | For many years after SSL 3.0 support was removed, we used this function to indicate that we should perform protocol version fallback to the lowest-supported protocol version, to workaround protocol version intolerance. Nowadays this is no longer needed, and support has been removed from glib-networking, so update the documentation.
* Update documentation of g_tls_client_connection_set_use_ssl3()Michael Catanzaro2018-08-041-16/+14
| | | | | | | | | | | | We now send the fallback SCSV, meaning use of this function will cause modern servers to immediately terminate the connection, so let's warn API users to expect that behavior and be crystal clear that this function should only be used as a fallback when a normal connection attempt has already failed. Also, the documentation is mostly duplicated between the property and the function, so let's just reference the function documentation from the property.
* tlsclientconnection: Deprecate ssl3 property and functionsMichael Catanzaro2018-01-081-1/+11
| | | | | | | | | | | | | | | | | | I originally planned to introduce a new property and functions to replace these, with the same behavior but less-confusing names. But that might not be the best approach in the long run. Instead, let's just deprecate them without replacement. TLS 1.2 intolerance is no longer a thing in the wild, and no known GTlsBackend supports TLS 1.3 yet. But you might need to use this property in the future, even though it's deprecated, if your GTlsBackend has added support for TLS 1.3 and you need to talk to a server that is TLS 1.3 intolerant. Independently of all that, these APIs simply no longer do what their names suggest, so deprecation is sensible regardless. https://bugzilla.gnome.org/show_bug.cgi?id=792217
* tlsclientconnection: Update use-ssl3 documentationMichael Catanzaro2018-01-081-16/+19
| | | | | | | | The property documentation correctly indicates how this code works nowadays, but the function documentation is obsolete and misleading. Update it. https://bugzilla.gnome.org/show_bug.cgi?id=792217
* gio/: LGPLv2+ -> LGPLv2.1+Sébastien Wilmet2017-05-291-1/+1
| | | | | | | | | | | | | | | | | Sub-directories inside gio/ already processed in a previous commit: - fam/ - gdbus-2.0/ (which contains only codegen/) - gvdb/ - inotify/ - tests/ - win32/ - xdgmime/ Other sub-directories inside gio/: - completion/: no license headers - kqueue/: not LGPL, BSD-style license https://bugzilla.gnome.org/show_bug.cgi?id=776504
* introspection: use (nullable) or (optional) instead of (allow-none)Christian Hergert2016-11-221-1/+1
| | | | | | | | If we have an input parameter (or return value) we need to use (nullable). However, if it is an (inout) or (out) parameter, (optional) is sufficient. It looks like (nullable) could be used for everything according to the Annotation documentation, but (optional) is more specific.
* gio: Document thread safety of the streams APIPhilip Withnall2016-01-111-0/+4
| | | | | | | | | Specifically, GIOStream and the TLS connection streams. Includes wording adapted from suggestions by Dan Winship <danw@gnome.org>. https://bugzilla.gnome.org/show_bug.cgi?id=735754
* docs: Fix documentation for 95d300eac58eRoss Lagerwall2015-04-071-1/+1
|
* tls: Add support for copying session dataRoss Lagerwall2015-04-061-0/+26
| | | | | | | | | | | | | | | | | | | | | | Add support for copying session data between client connections. This is needed for implementing FTP over SSL. Most servers use a separate session for each control connection and enforce sharing of each control connection's session between the related data connection. Copying session data between two connections is needed for two reasons: 1) The data connection runs on a separate port and so has a different server_identity which means it would not normally share the session with the control connection using the session caching currently implemented. 2) It is typical to have multiple control connections, each of which uses a different session with the same server_identity, so only one of these sessions gets stored in the cache. If a data connection is opened, (ignoring the port issue) it may try and reuse the wrong control connection's session, and fail. This operation is conceptually the same as OpenSSL's SSL_copy_session_id operation. https://bugzilla.gnome.org/show_bug.cgi?id=745255
* gio docs: remote errant colon from docstringRyan Lortie2015-03-121-1/+1
| | | | This does not belong there.
* GTlsClientConnection: loosen the semantics of "use-ssl3"Dan Winship2014-11-221-7/+12
| | | | | | | | | | | | | | | | | | | If SSL 3.0 has been disabled (at the host, application, or library level), then the "use-ssl3" property becomes a "fail-immediately" property. Despite the name, the point of the property wasn't really specifically to use SSL 3.0; it was to allow fallback when talking to broken servers that do SSL/TLS negotiation incorrectly and break when they see unexpectedly-high version numbers. So if we can't fall back to SSL 3.0, then the "use-ssl3" property should fall back to TLS 1.0 instead (since there are hosts that will reject a TLS 1.2 handshake, but accept a TLS 1.0 one). glib-networking is being updated to implement that behavior, so update the documentation here. https://bugzilla.gnome.org/show_bug.cgi?id=738633
* gio: port annotations from the Vala metadata.Evan Nemerson2014-05-231-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=730493
* docs: use "Returns:" consistentlyWilliam Jon McCann2014-02-191-5/+5
| | | | Instead of "Return value:".
* Updated FSF's addressDaniel Mustieles2014-01-311-3/+1
|
* GIO: add lots of annotations for Vala bindingsEvan Nemerson2012-01-111-1/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=667447
* [gi] Add missing Gio transfer annotationsMartin Pitt2011-08-111-1/+1
|
* Stop using glib-genmarshal at build timeColin Walters2011-06-201-1/+0
| | | | | | | | | | | | To help cross compilation, don't use glib-genmarshal in our build. This is easy now that we have g_cclosure_marshal_generic(). In gobject/, add gmarshal.[ch] to git (making the existing entry points stubs). In gio/, simply switch to using g_cclosure_marshal_generic(). https://bugzilla.gnome.org/show_bug.cgi?id=652168
* Add two annotations for g-iDan Winship2011-05-051-1/+1
|
* Drop annotation that break the documentation buildMatthias Clasen2011-01-051-4/+0
|
* Change GTlsClientConnection::accepted-cas to contain DER DNsStef Walter2011-01-051-10/+18
| | | | | | | | | This property is now a GList of GByteArray values. Each GByteArray contains the raw DER DN of the certificate authority. This is far more useful for looking up a certificate (with the relevant issuer) than a string encoded DN. https://bugzilla.gnome.org/show_bug.cgi?id=637262
* tls: Make g_tls_{client|server}_connection_new() return a GIOStreamBenjamin Otte2010-12-071-2/+2
| | | | | The main use case for these objects is as an IO stream, so it makes sense to return them that way from the start.
* tls: Clarify docs for g_tls_client_connection_set_validation_flags()Benjamin Otte2010-12-071-2/+3
| | | | And fix a typo in there.
* Remove GTlsConnection::need-certificateDan Winship2010-12-071-2/+1
| | | | | | | | | | Trying to do this as a signal won't work well with either GTlsCertificateDB (in which case looking up a certificate in the db is a blocking/asynchronous act) or session resumption support (in which case the certificate or lack thereof is part of the session definition and so needs to be known immediately). Make the caller use g_tls_connection_set_certificate() ahead of time (or when retrying) instead.
* Add initial TLS (SSL) support to gioDan Winship2010-11-261-0/+333
This adds an extension point for TLS connections to gio, with a gnutls-based implementation in glib-networking. Full TLS support is still a work in progress; the current API is missing some features, and parts of it may still be changed before 2.28. https://bugzilla.gnome.org/show_bug.cgi?id=588189