diff options
| author | Pavel Březina <pbrezina@redhat.com> | 2017-02-28 13:32:31 +0100 |
|---|---|---|
| committer | Lukas Slebodnik <lslebodn@redhat.com> | 2017-03-30 19:07:13 +0200 |
| commit | c2ea75da72b426d98ba489039e220d417bfb4c2a (patch) | |
| tree | 666294bebdd975d7a345cf1f963e616895cd0666 /src/util | |
| parent | 886e0f75e6f4c7877a23a3625f8a20c09109b09d (diff) | |
| download | sssd-c2ea75da72b426d98ba489039e220d417bfb4c2a.tar.gz sssd-c2ea75da72b426d98ba489039e220d417bfb4c2a.tar.xz sssd-c2ea75da72b426d98ba489039e220d417bfb4c2a.zip | |
tcurl: add support for http basic auth
Reviewed-by: Simo Sorce <simo@redhat.com>
Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
Diffstat (limited to 'src/util')
| -rw-r--r-- | src/util/tev_curl.c | 24 | ||||
| -rw-r--r-- | src/util/tev_curl.h | 15 |
2 files changed, 39 insertions, 0 deletions
diff --git a/src/util/tev_curl.c b/src/util/tev_curl.c index c155f4c03..8faf07c71 100644 --- a/src/util/tev_curl.c +++ b/src/util/tev_curl.c @@ -1092,3 +1092,27 @@ errno_t tcurl_req_set_client_cert(struct tcurl_request *tcurl_req, return EOK; } + +errno_t tcurl_req_http_basic_auth(struct tcurl_request *tcurl_req, + const char *username, + const char *password) +{ + errno_t ret; + + ret = tcurl_set_option(tcurl_req, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); + if (ret != EOK) { + return ret; + } + + ret = tcurl_set_option(tcurl_req, CURLOPT_USERNAME, username); + if (ret != EOK) { + return ret; + } + + ret = tcurl_set_option(tcurl_req, CURLOPT_PASSWORD, password); + if (ret != EOK) { + return ret; + } + + return EOK; +} diff --git a/src/util/tev_curl.h b/src/util/tev_curl.h index 933abcb9b..c733127b3 100644 --- a/src/util/tev_curl.h +++ b/src/util/tev_curl.h @@ -243,4 +243,19 @@ errno_t tcurl_req_set_client_cert(struct tcurl_request *tcurl_req, const char *cert, const char *key); +/** + * @brief Force HTTP basic authentication with @username and @password. + * + * @param[in] tcurl_request + * @param[in] username + * @param[in] password + * + * @returns errno code + * + * @see tcurl_http + */ +errno_t tcurl_req_http_basic_auth(struct tcurl_request *tcurl_req, + const char *username, + const char *password); + #endif /* __TEV_CURL_H */ |
