CURLOPT_SSH_PUBLIC_KEYFILE - public key file for SSH auth
#include <curl/curl.h> CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_PUBLIC_KEYFILE, char *filename);
curl_easy_setopt options CURLOPT_SSH_PUBLIC_KEYFILE(3)
NAME
CURLOPT_SSH_PUBLIC_KEYFILE - public key file for SSH auth
SYNOPSIS
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_PUBLIC_KEYFILE,
char *filename);
DESCRIPTION
Pass a char * pointing to a filename for your public key. If not used,
libcurl defaults to $HOME/.ssh/id_dsa.pub if the HOME environment vari-
able is set, and just "id_dsa.pub" in the current directory if HOME is
not set.
If NULL (or an empty string) is passed, libcurl will pass no public key
to libssh2, which then tries to compute it from the private key. This
is known to work with libssh2 1.4.0+ linked against OpenSSL.
The application does not have to keep the string around after setting
this option.
DEFAULT
NULL
PROTOCOLS
SFTP and SCP
EXAMPLE
CURL *curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "sftp://example.com/file");
curl_easy_setopt(curl, CURLOPT_SSH_PUBLIC_KEYFILE,
"/home/clarkkent/.ssh/id_rsa.pub");
ret = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
AVAILABILITY
The "" trick was added in 7.26.0
RETURN VALUE
Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if
not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+------------------+
|Availability | web/curl |
+---------------+------------------+
|Stability | Uncommitted |
+---------------+------------------+
SEE ALSO
CURLOPT_SSH_PRIVATE_KEYFILE(3), CURLOPT_SSH_AUTH_TYPES(3),
NOTES
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from https://curl.se/down-
load/curl-7.83.1.tar.bz2.
Further information about this software can be found on the open source
community website at http://curl.haxx.se/.
libcurl 7.83.1 September 08, 2021
CURLOPT_SSH_PUBLIC_KEYFILE(3)