Top | ![]() |
![]() |
![]() |
![]() |
ESourceWebdavESourceWebdav — ESource extension for WebDAV settings |
The ESourceWebdav extension tracks settings for accessing resources on a remote WebDAV server.
This class exists in libedataserver because we have several WebDAV-based backends. Each of these backends is free to use this class directly or subclass it with additional settings. Subclasses should override the extension name.
The
Access the extension as follows:
#include <libedataserver/libedataserver.h> ESourceWebdav *extension; extension = e_source_get_extension (source, E_SOURCE_EXTENSION_WEBDAV_BACKEND);
gboolean e_source_webdav_get_avoid_ifmatch (ESourceWebdav *extension
);
This setting works around a
bug in older Apache mod_dav versions.We may deprecate this once Apache 2.2.8 or newer becomes sufficiently ubiquitous, or we figure out a way to detect and work around the bug automatically.
Since: 3.6
void e_source_webdav_set_avoid_ifmatch (ESourceWebdav *extension
,);
gboolean avoid_ifmatch
This setting works around a
bug in older Apache mod_dav versions.We may deprecate this once Apache 2.2.8 or newer becomes sufficiently ubiquitous, or we figure out a way to detect and work around the bug automatically.
Since: 3.6
gboolean e_source_webdav_get_calendar_auto_schedule (ESourceWebdav *extension
);
FIXME Document me!
Since: 3.6
void e_source_webdav_set_calendar_auto_schedule (ESourceWebdav *extension
,);
gboolean calendar_auto_schedule
FIXME Document me!
extension |
||
calendar_auto_schedule |
whether the server supports the "calendar-auto-schedule" feature of CalDAV |
Since: 3.6
constgchar * e_source_webdav_get_display_name (ESourceWebdav *extension
);
Returns the last known display name of a WebDAV resource, which may
differ from the extension
belongs.
Since: 3.6
gchar * e_source_webdav_dup_display_name (ESourceWebdav *extension
);
Thread-safe variation of e_source_webdav_get_display_name()
.
Use this function when accessing extension
from multiple threads.
The returned string should be freed with g_free()
Since: 3.6
void e_source_webdav_set_display_name (ESourceWebdav *extension
,const
);gchar *display_name
Updates the last known display name of a WebDAV resource, which may
differ from the extension
belongs.
The internal copy of display_name
is automatically stripped of leading
and trailing whitespace. If the resulting string is empty, NULL
Since: 3.6
constgchar * e_source_webdav_get_email_address (ESourceWebdav *extension
);
Returns the user's email address which can be passed to a CalDAV server if the user wishes to receive scheduling messages.
Since: 3.6
gchar * e_source_webdav_dup_email_address (ESourceWebdav *extension
);
Thread-safe variation of e_source_webdav_get_email_address()
.
Use this function when accessing extension
from multiple threads.
The returned string should be freed with g_free()
Since: 3.6
void e_source_webdav_set_email_address (ESourceWebdav *extension
,const
);gchar *email_address
Sets the user's email address which can be passed to a CalDAV server if the user wishes to receive scheduling messages.
The internal copy of email_address
is automatically stripped of leading
and trailing whitespace. If the resulting string is empty, NULL
Since: 3.6
constgchar * e_source_webdav_get_resource_path (ESourceWebdav *extension
);
Returns the absolute path to a resource on a WebDAV server.
Since: 3.6
gchar * e_source_webdav_dup_resource_path (ESourceWebdav *extension
);
Thread-safe variation of e_source_webdav_get_resource_path()
.
Use this function when accessing extension
from multiple threads.
The returned string should be freed with g_free()
Since: 3.6
void e_source_webdav_set_resource_path (ESourceWebdav *extension
,const
);gchar *resource_path
Sets the absolute path to a resource on a WebDAV server.
The internal copy of resource_path
is automatically stripped of leading
and trailing whitespace. If the resulting string is empty, NULL
Since: 3.6
constgchar * e_source_webdav_get_resource_query (ESourceWebdav *extension
);
Returns the URI query required to access a resource on a WebDAV server.
This is typically used when the
Since: 3.6
gchar * e_source_webdav_dup_resource_query (ESourceWebdav *extension
);
Thread-safe variation of e_source_webdav_get_resource_query()
.
Use this function when accessing extension
from multiple threads.
The returned string should be freed with g_free()
Since: 3.6
void e_source_webdav_set_resource_query (ESourceWebdav *extension
,const
);gchar *resource_query
Sets the URI query required to access a resource on a WebDAV server.
This is typically used when the
The internal copy of resource_query
is automatically stripped of leading
and trailing whitespace. If the resulting string is empty, NULL
Since: 3.6
constgchar * e_source_webdav_get_ssl_trust (ESourceWebdav *extension
);
Returns an SSL/TLS certificate trust for the extension
.
The value encodes three parameters, divided by a pipe '|',
the first is users preference, can be one of "reject", "accept",
"temporary-reject" and "temporary-accept". The second is a host
name for which the trust was set. Finally the last is a SHA1
hash of the certificate. This is not meant to be changed by a caller,
it is supposed to be manipulated with e_source_webdav_update_ssl_trust()
and e_source_webdav_verify_ssl_trust()
.
Since: 3.8
gchar * e_source_webdav_dup_ssl_trust (ESourceWebdav *extension
);
Thread-safe variation of e_source_webdav_get_ssl_trust()
.
Use this function when accessing extension
from multiple threads.
The returned string should be freed with g_free()
Since: 3.8
void e_source_webdav_set_ssl_trust (ESourceWebdav *extension
,const
);gchar *ssl_trust
Sets the SSL/TLS certificate trust. See e_source_webdav_get_ssl_trust()
for more infomation about its content and how to use it.
Since: 3.8
SoupURI * e_source_webdav_dup_soup_uri (ESourceWebdav *extension
);
This is a convenience function which returns a newly-allocated
extension
itself.
Free the returned soup_uri_free()
Since: 3.6
void e_source_webdav_set_soup_uri (ESourceWebdav *extension
,);
SoupURI *soup_uri
This is a convenience function which propagates the components of
uri
to the ESourceAuthentication extension, the ESourceSecurity
extension, and extension
itself. (The "fragment" component of
uri
is ignored.)
Since: 3.6
void e_source_webdav_update_ssl_trust (ESourceWebdav *extension
,const
,gchar *host,
GTlsCertificate *certETrustPromptResponse response
);
Updates user's response from a trust prompt, thus it is re-used the next time it'll be needed. An E_TRUST_PROMPT_RESPONSE_UNKNOWN is treated as a temporary reject, which means the user will be asked again.
extension |
||
host |
a host name to store the certificate for |
|
cert |
the invalid certificate of the connection over which |
|
response |
user's response from a trust prompt for |
Since: 3.16
ETrustPromptResponse e_source_webdav_verify_ssl_trust (ESourceWebdav *extension
,const
,gchar *host,
GTlsCertificate *cert);
GTlsCertificateFlags cert_errors
Verifies SSL/TLS trust for the given host
and cert
, as previously stored in the extension
with e_source_webdav_update_ssl_trust()
.
void e_source_webdav_unset_temporary_ssl_trust (ESourceWebdav *extension
);
Unsets temporary trust set on this extension
, but keeps
it as is for other values.
Since: 3.8
#define E_SOURCE_EXTENSION_WEBDAV_BACKEND "WebDAV Backend"
Pass this extension name to e_source_get_extension()
to access
ESourceWebdav. This is also used as a group name in key files.
Since: 3.6
struct ESourceWebdav { };
Contains only private data that should be read and manipulated using the functions below.
Since: 3.6