Libcurl支持多播文件传输?

时间:2012-04-27 16:50:00

标签: linux libcurl file-transfer

我想知道libcurl是否支持多播文件传输。

1 个答案:

答案 0 :(得分:0)

curl是一个命令行工具,用于使用URL语法传输数据,支持DICT,FILE,FTP,FTPS,Gopher,HTTP,HTTPS,IMAP,IMAPS,LDAP,LDAPS,POP3,POP3S,RTMP,RTSP,SCP,SFTP ,SMTP,SMTPS,Telnet和TFTP。 curl支持SSL证书,HTTP POST,HTTP PUT,FTP上传,基于HTTP表单的上传,代理,cookie,用户+密码验证(基本,摘要,NTLM,协商,kerberos ......),文件传输恢复,代理隧道和< / p>

FEATURES

curl tool
 - config file support
 - multiple URLs in a single command line
 - range "globbing" support: [0-13], {one,two,three}
 - multiple file upload on a single command line
 - custom maximum transfer rate
 - redirectable stderr

libcurl supports
 - full URL syntax with no length limit
 - custom maximum download time
 - custom least download speed acceptable
 - custom output result after completion
 - guesses protocol from host name unless specified
 - uses .netrc
 - progress bar/time specs while downloading
 - "standard" proxy environment variables support
 - compiles on win32 (reported builds on 40+ operating systems)
 - selectable network interface for outgoing traffic
 - IPv6 support on unix and Windows
 - persistant connections
 - socks5 support
 - supports user name + password in proxy environment variables
 - operations through proxy "tunnel" (using CONNECT)
 - supports large files (>2GB and >4GB) both upload/download
 - replacable memory functions (malloc, free, realloc, etc)
 - asynchronous name resolving (*6)
 - both a push and a pull style interface

HTTP
 - HTTP/1.1 compliant (optionally uses 1.0)
 - GET
 - PUT
 - HEAD
 - POST
 - Pipelining
 - multipart formpost (RFC1867-style)
 - authentication: Basic, Digest, NTLM(*9), GSS-Negotiate/Negotiate(*3) and
   SPNEGO (*4) to server and proxy
 - resume (both GET and PUT)
 - follow redirects
 - maximum amount of redirects to follow
 - custom HTTP request
 - cookie get/send fully parsed
 - reads/writes the netscape cookie file format
 - custom headers (replace/remove internally generated headers)
 - custom user-agent string
 - custom referer string
 - range
 - proxy authentication
 - time conditions
 - via http-proxy
 - retrieve file modification date
 - Content-Encoding support for deflate and gzip
 - "Transfer-Encoding: chunked" support for "uploads"

HTTPS (*1)
 - (all the HTTP features)
 - using client certificates
 - verify server certificate
 - via http-proxy
 - select desired encryption
 - force usage of a specific SSL version (SSLv2(*7), SSLv3 or TLSv1)

FTP
 - download
 - authentication
 - kerberos4 (*5), kerberos5 (*3)
 - active/passive using PORT, EPRT, PASV or EPSV
 - single file size information (compare to HTTP HEAD)
 - 'type=' URL support
 - dir listing
 - dir listing names-only
 - upload
 - upload append
 - upload via http-proxy as HTTP PUT
 - download resume
 - upload resume
 - custom ftp commands (before and/or after the transfer)
 - simple "range" support
 - via http-proxy
 - all operations can be tunneled through a http-proxy
 - customizable to retrieve file modification date
 - no dir depth limit

FTPS (*1)
 - implicit ftps:// support that use SSL on both connections
 - explicit "AUTH TSL" and "AUTH SSL" usage to "upgrade" plain ftp://
   connection to use SSL for both or one of the connections

SCP (*8)
 - both password and public key auth

SFTP (*8)
 - both password and public key auth
 - with custom commands sent before/after the transfer

TFTP
 - download / upload

TELNET
 - connection negotiation
 - custom telnet options
 - stdin/stdout I/O

LDAP (*2)
 - full LDAP URL support

DICT
 - extended DICT URL support

FILE
 - URL support
 - "uploads"
 - resume

FOOTNOTES
=========

  *1 = requires OpenSSL, GnuTLS, NSS, yassl, axTLS or PolarSSL
  *2 = requires OpenLDAP
  *3 = requires a GSSAPI-compliant library, such as Heimdal or similar.
  *4 = requires FBopenssl
  *5 = requires a krb4 library, such as the MIT one or similar.
  *6 = requires c-ares
  *7 = requires OpenSSL or NSS, as GnuTLS only supports SSLv3 and TLSv1
  *8 = requires libssh2
  *9 = requires OpenSSL, GnuTLS, NSS or yassl