声明

  1. CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROTOCOLS, long bitmask);

概要

设置允许使用的协议。

详情

传入一个long,这个参数持有CURLPROTO_*定义的位掩码。如果使用了该选项,这个位掩码限制了libcurl在传输时能使用的协议。这允许你可以有一个广泛支持各种协议的libcurl构建版本,但仍然可以限制特定的传输只允许使用这些协议的一个子集。默认情况下libcurl会接受所有它支持的协议(CURLPROTO_ALL)。参考CURLOPT_REDIR_PROTOCOLS

下面是可用的协议定义:

  1. CURLPROTO_DICT
  2. CURLPROTO_FILE
  3. CURLPROTO_FTP
  4. CURLPROTO_FTPS
  5. CURLPROTO_GOPHER
  6. CURLPROTO_HTTP
  7. CURLPROTO_HTTPS
  8. CURLPROTO_IMAP
  9. CURLPROTO_IMAPS
  10. CURLPROTO_LDAP
  11. CURLPROTO_LDAPS
  12. CURLPROTO_POP3
  13. CURLPROTO_POP3S
  14. CURLPROTO_RTMP
  15. CURLPROTO_RTMPE
  16. CURLPROTO_RTMPS
  17. CURLPROTO_RTMPT
  18. CURLPROTO_RTMPTE
  19. CURLPROTO_RTMPTS
  20. CURLPROTO_RTSP
  21. CURLPROTO_SCP
  22. CURLPROTO_SFTP
  23. CURLPROTO_SMB
  24. CURLPROTO_SMTP
  25. CURLPROTO_SMTPS
  26. CURLPROTO_TELNET
  27. CURLPROTO_TFTP

默认值

所有内置的协议。

适用协议

所有协议。

可用性

在7.19.4加入。

返回值

如果支持该选项,返回CURLE_OK;否则返回CURLE_UNKNOWN_OPTION