CURLOPT_NEW_FILE_PERMS(3) Library Functions Manual CURLOPT_NEW_FILE_PERMS(3)

CURLOPT_NEW_FILE_PERMS - permissions for remotely created files

#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NEW_FILE_PERMS,
                          long mode);

Pass a long as a parameter, containing the value of the permissions that are set on newly created files on the remote server. The default value is 0644. The only protocols that can use this are sftp://, scp://, and file://.

0644

SFTP, SCP and FILE

int main(void)
{
  CURL *curl = curl_easy_init();
  if(curl) {
    CURLcode ret;
    curl_easy_setopt(curl, CURLOPT_URL, "sftp://upload.example.com/file.txt");
    curl_easy_setopt(curl, CURLOPT_NEW_FILE_PERMS, 0664L);
    ret = curl_easy_perform(curl);
  }
}

Added in 7.16.4

Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.

CURLOPT_NEW_DIRECTORY_PERMS(3), CURLOPT_UPLOAD(3)

March 12 2024 libcurl