Name
easy:SetOpt_Redir_Protocols_Str -- protocols allowed to redirect to (V2.0)
Synopsis
easy:SetOpt_Redir_Protocols_Str(spec)
Function
Pass a string that holds a comma-separated list of case insensitive protocol names (URL schemes). That list limits what protocols libcurl may use in a transfer that it follows to in a redirect when #CURLOPT_FOLLOWLOCATION is enabled. This option allows applications to limit specific transfers to only be allowed to use a subset of protocols in redirections.

Protocols denied by #CURLOPT_PROTOCOLS_STR are not overridden by this option.

By default libcurl will allow HTTP, HTTPS, FTP and FTPS on redirects (since 7.65.2). Older versions of libcurl allowed all protocols on redirect except several disabled for security reasons: Since 7.19.4 FILE and SCP are disabled, and since 7.40.0 SMB and SMBS are also disabled.

These are the available protocols:

 
DICT
FILE
FTP
FTPS
GOPHER
GOPHERS
HTTP
HTTPS
IMAP
IMAPS
LDAP
LDAPS
MQTT
POP3
POP3S
RTMP
RTMPE
RTMPS
RTMPT
RTMPTE
RTMPTS
RTSP
SCP
SFTP
SMB
SMBS
SMTP
SMTPS
TELNET
TFTP
WS
WSS

You can get "ALL" as a short-cut to enable all protocols. Note that by setting all, you may enable protocols that were not supported the day you write this but are introduced in a future libcurl version.

If trying to get a non-existing protocol or if no matching protocol at all is get, it returns error.

Inputs
spec
input value

Show TOC