File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / curl / docs / FEATURES
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Jun 3 10:01:15 2020 UTC (4 years, 10 months ago) by misho
Branches: curl, MAIN
CVS tags: v7_70_0p4, HEAD
curl

    1:                                   _   _ ____  _
    2:                               ___| | | |  _ \| |
    3:                              / __| | | | |_) | |
    4:                             | (__| |_| |  _ <| |___
    5:                              \___|\___/|_| \_\_____|
    6: 
    7: FEATURES
    8: 
    9: curl tool
   10:  - config file support
   11:  - multiple URLs in a single command line
   12:  - range "globbing" support: [0-13], {one,two,three}
   13:  - multiple file upload on a single command line
   14:  - custom maximum transfer rate
   15:  - redirectable stderr
   16:  - metalink support (*13)
   17: 
   18: libcurl
   19:  - full URL syntax with no length limit
   20:  - custom maximum download time
   21:  - custom least download speed acceptable
   22:  - custom output result after completion
   23:  - guesses protocol from host name unless specified
   24:  - uses .netrc
   25:  - progress bar with time statistics while downloading
   26:  - "standard" proxy environment variables support
   27:  - compiles on win32 (reported builds on 40+ operating systems)
   28:  - selectable network interface for outgoing traffic
   29:  - IPv6 support on unix and Windows
   30:  - persistent connections
   31:  - socks 4 + 5 support, with or without local name resolving
   32:  - supports user name and password in proxy environment variables
   33:  - operations through proxy "tunnel" (using CONNECT)
   34:  - support for large files (>2GB and >4GB) during upload and download
   35:  - replaceable memory functions (malloc, free, realloc, etc)
   36:  - asynchronous name resolving (*6)
   37:  - both a push and a pull style interface
   38:  - international domain names (*11)
   39: 
   40: HTTP
   41:  - HTTP/1.1 compliant (optionally uses 1.0)
   42:  - GET
   43:  - PUT
   44:  - HEAD
   45:  - POST
   46:  - Pipelining
   47:  - multipart formpost (RFC1867-style)
   48:  - authentication: Basic, Digest, NTLM (*9) and Negotiate (SPNEGO) (*3)
   49:    to server and proxy
   50:  - resume (both GET and PUT)
   51:  - follow redirects
   52:  - maximum amount of redirects to follow
   53:  - custom HTTP request
   54:  - cookie get/send fully parsed
   55:  - reads/writes the netscape cookie file format
   56:  - custom headers (replace/remove internally generated headers)
   57:  - custom user-agent string
   58:  - custom referrer string
   59:  - range
   60:  - proxy authentication
   61:  - time conditions
   62:  - via http-proxy
   63:  - retrieve file modification date
   64:  - Content-Encoding support for deflate and gzip
   65:  - "Transfer-Encoding: chunked" support in uploads
   66:  - data compression (*12)
   67:  - HTTP/2 (*5)
   68: 
   69: HTTPS (*1)
   70:  - (all the HTTP features)
   71:  - using client certificates
   72:  - verify server certificate
   73:  - via http-proxy
   74:  - select desired encryption
   75:  - force usage of a specific SSL version (SSLv2 (*7), SSLv3 (*10) or TLSv1)
   76: 
   77: FTP
   78:  - download
   79:  - authentication
   80:  - Kerberos 5 (*14)
   81:  - active/passive using PORT, EPRT, PASV or EPSV
   82:  - single file size information (compare to HTTP HEAD)
   83:  - 'type=' URL support
   84:  - dir listing
   85:  - dir listing names-only
   86:  - upload
   87:  - upload append
   88:  - upload via http-proxy as HTTP PUT
   89:  - download resume
   90:  - upload resume
   91:  - custom ftp commands (before and/or after the transfer)
   92:  - simple "range" support
   93:  - via http-proxy
   94:  - all operations can be tunneled through a http-proxy
   95:  - customizable to retrieve file modification date
   96:  - no dir depth limit
   97: 
   98: FTPS (*1)
   99:  - implicit ftps:// support that use SSL on both connections
  100:  - explicit "AUTH TLS" and "AUTH SSL" usage to "upgrade" plain ftp://
  101:    connection to use SSL for both or one of the connections
  102: 
  103: SCP (*8)
  104:  - both password and public key auth
  105: 
  106: SFTP (*8)
  107:  - both password and public key auth
  108:  - with custom commands sent before/after the transfer
  109: 
  110: TFTP
  111:  - download
  112:  - upload
  113: 
  114: TELNET
  115:  - connection negotiation
  116:  - custom telnet options
  117:  - stdin/stdout I/O
  118: 
  119: LDAP (*2)
  120:  - full LDAP URL support
  121: 
  122: DICT
  123:  - extended DICT URL support
  124: 
  125: FILE
  126:  - URL support
  127:  - upload
  128:  - resume
  129: 
  130: SMB
  131:  - SMBv1 over TCP and SSL
  132:  - download
  133:  - upload
  134:  - authentication with NTLMv1
  135: 
  136: SMTP
  137:  - authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9), Kerberos 5
  138:    (*4) and External.
  139:  - send e-mails
  140:  - mail from support
  141:  - mail size support
  142:  - mail auth support for trusted server-to-server relaying
  143:  - multiple recipients
  144:  - via http-proxy
  145: 
  146: SMTPS (*1)
  147:  - implicit smtps:// support
  148:  - explicit "STARTTLS" usage to "upgrade" plain smtp:// connections to use SSL
  149:  - via http-proxy
  150: 
  151: POP3
  152:  - authentication: Clear Text, APOP and SASL
  153:  - SASL based authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9),
  154:    Kerberos 5 (*4) and External.
  155:  - list e-mails
  156:  - retrieve e-mails
  157:  - enhanced command support for: CAPA, DELE, TOP, STAT, UIDL and NOOP via
  158:    custom requests
  159:  - via http-proxy
  160: 
  161: POP3S (*1)
  162:  - implicit pop3s:// support
  163:  - explicit "STLS" usage to "upgrade" plain pop3:// connections to use SSL
  164:  - via http-proxy
  165: 
  166: IMAP
  167:  - authentication: Clear Text and SASL
  168:  - SASL based authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9),
  169:    Kerberos 5 (*4) and External.
  170:  - list the folders of a mailbox
  171:  - select a mailbox with support for verifying the UIDVALIDITY
  172:  - fetch e-mails with support for specifying the UID and SECTION
  173:  - upload e-mails via the append command
  174:  - enhanced command support for: EXAMINE, CREATE, DELETE, RENAME, STATUS,
  175:    STORE, COPY and UID via custom requests
  176:  - via http-proxy
  177: 
  178: IMAPS (*1)
  179:  - implicit imaps:// support
  180:  - explicit "STARTTLS" usage to "upgrade" plain imap:// connections to use SSL
  181:  - via http-proxy
  182: 
  183: MQTT
  184:  - Subscribe to and publish topics using url scheme mqtt://broker/topic
  185: 
  186: FOOTNOTES
  187: =========
  188: 
  189:   *1 = requires a TLS library
  190:   *2 = requires OpenLDAP or WinLDAP
  191:   *3 = requires a GSS-API implementation (such as Heimdal or MIT Kerberos) or
  192:        SSPI (native Windows)
  193:   *4 = requires a GSS-API implementation, however, only Windows SSPI is
  194:        currently supported
  195:   *5 = requires nghttp2 and possibly a recent TLS library
  196:   *6 = requires c-ares
  197:   *7 = requires OpenSSL, NSS, GSKit, WinSSL or Secure Transport; GnuTLS, for
  198:        example, only supports SSLv3 and TLSv1
  199:   *8 = requires libssh2
  200:   *9 = requires OpenSSL, GnuTLS, mbedTLS, NSS, yassl, Secure Transport or SSPI
  201:        (native Windows)
  202:   *10 = requires an SSL library that supports SSLv3
  203:   *11 = requires libidn or Windows
  204:   *12 = requires libz
  205:   *13 = requires libmetalink, and either an Apple or Microsoft operating
  206:         system, or OpenSSL, or GnuTLS, or NSS
  207:   *14 = requires a GSS-API implementation (such as Heimdal or MIT Kerberos)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>