Authentication support for davix support for client cert x509, login password, S3 tokens.
More...
#include <string>
#include <vector>
#include "../utils/davix_types.hpp"
#include "davixx509cred.hpp"
Authentication support for davix support for client cert x509, login password, S3 tokens.
◆ authCallbackClientCertX509
typedef int(* Davix::authCallbackClientCertX509) (void *userdata, const SessionInfo &info, X509Credential *cert, DavixError **err) |
callback for advanced authentification with client cert X509
- Parameters
-
userdata | : user defined data |
info | : Session info, contains information about server requesting the certificate |
cert | : Client side credential to provide |
err | : error object to set if an error occures |
- Returns
- MUST return 0 if credential if provided with success or != 0 if error occures
◆ authCallbackLoginPasswordBasic
typedef int(* Davix::authCallbackLoginPasswordBasic) (void *userdata, const SessionInfo &info, std::string &login, std::string &password, int count, DavixError **err) |
callback for advanced authentification with client cert X509
- Parameters
-
userdata | : user defined data |
info | : Session info, contains information about server requesting the certificate |
login | : login to use |
password | : password to use |
count | : number of try |
- Returns
- MUST return 0 if success, or !=0 if an error has occures
RequestFlag
Request flag.
Definition: httprequest.hpp:72
@ OK
No Error report.
Definition: davixstatusrequest.hpp:56
@ FileNotFound
File not found (ENOENT )
Definition: davixstatusrequest.hpp:110
GetRequest(Context &context, const Uri &uri, DavixError **err)
Construct a HttpRequest for GET a operation.
const DAVIX_EXPORT std::string & version()
time_t mtime
modification time
Definition: davix_file_types.hpp:117
Definition: davfile.hpp:62
time_t atime
access time
Definition: davix_file_types.hpp:115
@ ParsingError
Generic Parsing Error.
Definition: davixstatusrequest.hpp:144
time_t ctime
creation time
Definition: davix_file_types.hpp:119
Http low level request configured for PUT operation.
Definition: httprequest.hpp:363
@ CredentialNotFound
Impossible to find specified credential.
Definition: davixstatusrequest.hpp:104
@ InvalidHook
Invalid Hook type.
Definition: davixstatusrequest.hpp:147
@ SupportContinue100
Definition: httprequest.hpp:73
uid_t owner
owner UID
Definition: davix_file_types.hpp:121
@ InvalidServerResponse
Server answer problem ( > 500 )
Definition: davixstatusrequest.hpp:125
Code
Definition: davixstatusrequest.hpp:54
@ InvalidFileHandle
Invalid file descriptor.
Definition: davixstatusrequest.hpp:92
gid_t group
group UID
Definition: davix_file_types.hpp:123
PostRequest(Context &context, const Uri &uri, DavixError **err)
Construct a HttpRequest for POST a operation.
@ UriParsingError
Error in the Webdav properties parsing.
Definition: davixstatusrequest.hpp:65
X509 certificate.
Definition: davixx509cred.hpp:46
Error report system of davix.
@ FileExist
File already exist ( EEXIST )
Definition: davixstatusrequest.hpp:119
Uri parser.
Definition: davix_uri.hpp:54
POSIX-like API of Davix.
Definition: davposix.hpp:62
@ OperationNonSupported
this operation is not supported
Definition: davixstatusrequest.hpp:86
@ AlreadyRunning
Request already running.
Definition: davixstatusrequest.hpp:95
utilities for X509 credential
Main handle for Davix.
Definition: davixcontext.hpp:55
@ CredDecryptionError
Impossible to decrypt client credential for usage.
Definition: davixstatusrequest.hpp:131
int(* authCallbackLoginPasswordBasic)(void *userdata, const SessionInfo &info, std::string &login, std::string &password, int count, DavixError **err)
Definition: davixauth.hpp:92
@ TooManyRedirects
Too many redirects.
Definition: davixstatusrequest.hpp:153
StatInfo struct.
Definition: davix_file_types.hpp:102
Http low level request configured for DELETE operation.
Definition: httprequest.hpp:407
Hook (callback) functions of davix.
@ WebDavPropertiesParsingError
Error in the Webdav properties parsing.
Definition: davixstatusrequest.hpp:62
unsigned int DAVIX_EXPORT httpUriGetPort(const Uri &uri)
Main container for Davix request options.
Definition: davixrequestparams.hpp:61
Webdav low level request configured for PROPFIND operation.
Definition: httprequest.hpp:422
URI utilities functions for davix.
@ Canceled
Operation canceled.
Definition: davixstatusrequest.hpp:134
Http low level request configured for GET operation.
Definition: httprequest.hpp:349
Davix Error Handler.
Definition: davixstatusrequest.hpp:178
@ IsADirectory
This file is not a regular file but a directory ( EISDIR )
Definition: davixstatusrequest.hpp:113
C++ Davix configuration API.
server related info
Definition: davixauth.hpp:49
void fromPosixStat(const struct stat &st)
struct converter from POSIX stat
Definition: davix_file_types.hpp:126
Http low level request configured for POST operation.
Definition: httprequest.hpp:377
@ ConnectionProblem
Impossible to connect, host down or network problem.
Definition: davixstatusrequest.hpp:74
@ LoginPasswordError
Wrong Login and/or Password.
Definition: davixstatusrequest.hpp:101
int(* authCallbackClientCertX509)(void *userdata, const SessionInfo &info, X509Credential *cert, DavixError **err)
Definition: davixauth.hpp:81
@ AuthenticationError
Authentication Error.
Definition: davixstatusrequest.hpp:98
@ RemoteError
Definition: davixstatusrequest.hpp:141
Deprecated class / functions of Davix for ABI/ API compatibility.
@ DelegationError
Delegation error.
Definition: davixstatusrequest.hpp:137
@ ConnectionTimeout
Impossible to connect, host down or network problem.
Definition: davixstatusrequest.hpp:80
dav_size_t size
size in bytes of the resource
Definition: davix_file_types.hpp:107
result of vector operations in Davix
Definition: davix_file_types.hpp:58
QuotaInfo struct.
Definition: davix_file_types.hpp:84
DeleteRequest(Context &context, const Uri &uri, DavixError **err)
Construct a HttpRequest forfor a DELETE operation.
@ NameResolutionFailure
DNS resolution failure.
Definition: davixstatusrequest.hpp:71
@ PermissionRefused
Permission deny, Authorisation problem ( EACCESS, EPERM )
Definition: davixstatusrequest.hpp:107
davix file related type declarations
Authentication support for davix support for client cert x509, login password, S3 tokens.
@ TimeoutRedirectionError
Connection timeout during a redirection.
Definition: davixstatusrequest.hpp:150
@ UnknowError
Undefined error.
Definition: davixstatusrequest.hpp:159
HeadRequest(Context &context, const Uri &uri, DavixError **err)
Construct a HttpRequest for a HEAD operation.
Http low level request interface.
Hook definitions of davix.
Gcloud credentials.
Definition: davix_gcloud_utils.hpp:38
Davix Exception class.
Definition: davixstatusrequest.hpp:297
void * diov_buffer
Definition: davix_file_types.hpp:59
struct stat & toPosixStat(struct stat &st)
struct converter to POSIX stat
Definition: davix_file_types.hpp:138
@ SSLError
SSL/TLS layer Error.
Definition: davixstatusrequest.hpp:128
@ SessionCreationError
impossible to create a session
Definition: davixstatusrequest.hpp:68
@ IsNotADirectory
Action impossible, is a directory or a collection.
Definition: davixstatusrequest.hpp:89
Gcloud credential provider.
Definition: davix_gcloud_utils.hpp:66
@ InvalidArgument
Invalid argument from user ( EINVAL )
Definition: davixstatusrequest.hpp:122
bool DAVIX_EXPORT uriCheckError(const Uri &uri, DavixError **err)
@ OperationTimeout
operation timeout
Definition: davixstatusrequest.hpp:83
@ RedirectionNeeded
redirection is needed manually
Definition: davixstatusrequest.hpp:77
Simple NonCopyableProtector.
Definition: davix_nocopy.hpp:29
@ PartialDone
Request executed partially.
Definition: davixstatusrequest.hpp:59
@ InsufficientStorage
Insufficient storage.
Definition: davixstatusrequest.hpp:156
dav_ssize_t nlink
Definition: davix_file_types.hpp:110
Http low level request configured for HEAD operation.
Definition: httprequest.hpp:392
Http low level request interface.
Definition: httprequest.hpp:86
dav_ssize_t(* HttpBodyProvider)(void *userdata, char *buffer, dav_size_t buflen)
Definition: httprequest.hpp:56
Davix File Interface.
Definition: davfile.hpp:57
PutRequest(Context &context, const Uri &uri, DavixError **err)
Construct a HttpRequest for PUT a operation.
@ SystemError
System call related error.
Definition: davixstatusrequest.hpp:116
PropfindRequest(Context &context, const Uri &uri, DavixError **err)
Construct a HttpRequest for a PROPFIND operation.
mode_t mode
Definition: davix_file_types.hpp:113
dav_ssize_t diov_size
Definition: davix_file_types.hpp:60
@ IdempotentRequest
Definition: httprequest.hpp:74