cURL 是一个开源且免费分发的软件项目,这是一个命令行实用程序,可帮助您使用URL语法轻松传输任何类型的数据。它支持广泛或文件传输协议,可以集成到各种应用程序中。
支持多种文件传输协议
目前,cURL支持多种文件传输协议,包括HTTP,HTTPS,FTP,FTPS,SFTP,DICT,TELNET,TFTP,LDAP,LDAPS,FILE,IMAP,IMAPS,POP3,POP3S,RTMP, RTSP,SCP,SMTP,SMTPS以及GOPHER。
支持用户和密码验证
cURL还支持HTTP POST,HTTP PUT,FTP上传,基于HTTP表单的上传,代理,文件传输恢复,HTTP代理隧道,cookie,以及用户和密码验证,包括Basic,Digest,NTLM,Negotiate和Kerberos的。
包括libcurl库
除了cURL之外,该项目还包括libcurl库,它为开发人员提供了一个快速,线程安全且兼容IPv6的库,该库可以集成到使用其中一种受支持的编程语言(包括C,C ++)编写的任何应用程序中。 Python,Java或PHP。
libcurl的功能
在libcurl库的功能中,我们可以提到通过GnuTLS,OpenSSL,CyaSSL,PolarSSL,QSOSSL,axTLS或NSS,Secure Transport和SChannel支持SSL和TLS。
它是用C编写的命令行应用程序
cURL和libcurl项目都是用C编程语言编写的,这意味着它们是跨平台的,可以在主流操作系统上成功运行。目前支持32位和64位架构。
支持广泛的操作系统
cURL在设计时考虑了可移植性,这意味着它支持广泛的操作系统,包括GNU / Linux,Microsoft Windows,BSD,Solaris,Darwin,HP UX,AIX,IRIX,Tru64,Unix Ware ,Symbian,Amiga OS,IMB OS / 2,HURD,BeOS,iOS,Android,QNX Neutrino,Ultrix,BlackBerry,OpenVMS,RISC OS,DOS,Novell NetWare和Mac OS X。
这个版本中有什么新功能:
- 的变化:
- getinfo:为七个时间间隔添加微秒精确计时器
- curl:以粗体显示标题,使用--no-styled-output 关闭
- httpauth:添加对Bearer令牌的支持
- 添加CURLOPT_TLS13_CIPHERS和CURLOPT_PROXY_TLS13_CIPHERS
- curl: - tls13-ciphers和--proxy-tls13-ciphers
- 添加CURLOPT_DISALLOW_USERNAME_IN_URL
- curl:--disallow-username-in-url
- 错误修正:
- CVE-2018-0500:smtp:修复SMTP发送缓冲区溢出
- schannel:如果API不可用,则禁用客户端证书选项
- schannel:禁用手动验证API是否不可用
- tests / libtest / Makefile:不要无条件地添加gcc特定的标志
- openssl:确认--tls-max默认版本
- stub_gssapi:修复'unused parameter'警告
- examples / progressfunc:使其在新旧libcurls上构建
- docs:提到它是HA代理协议“版本1”
- curl_fnmatch:只允许两个星号进行匹配
- docs:澄清CURLOPT_HTTPGET
- configure:用CURL_RUN_IFELSE 替换AC_TRY_RUN
- configure:执行编译时SIZEOF检查而不是运行时
- checksrc:确保使用sizeof()* with * parentheses
- CURLOPT_ACCEPT_ENCODING.3:添加brotli并澄清一点
- schannel:使CAinfo解析对CR / LF具有弹性
- tftp:确保在打印错误之前将错误终止
- http resume:如果忽略http代码416(范围错误),则跳过正文
- configure:添加--with-ssl前缀的基本测试
- cmake:set -d postfix for debug builds
- multi:在Curl_protocol_getsock 中提供一个等待的套接字
- content_encoding:处理zlib版本太旧而不适合Z_BLOCK
- winbuild:只删除OUTFILE(如果存在)
- winbuild:在MakefileBuild.vc修复拼写错误DISTDIR-> DIRDIST
- schannel:为客户端证书失败添加failf调用
- cmake:修复fsetxattr和strerror_r 的测试
- curl.1:修复cmdline-opts引用错误
- cmdline-opts / gen.pl:警告是否为互斥:或者参见:列出不存在的选项
- cmake:检查getpwuid_r
- configure:使用静态mbedtls构建时修复ssh2链接
- psl:使用最新的psl并定期刷新
- fnmatch:坚持使用转义括号来匹配
- KNOWN_BUGS:恢复有关#2101 的文字
- INSTALL:LDFLAGS = -Wl,-R / usr / local / ssl / lib
- configure:覆盖AR_FLAGS以静音警告
- os400:实现mime api EBCDIC包装器
- curl.rc:嵌入清单以进行正确的Windows版本检测
- 严格:纠正{infof,failf}格式说明符
- 测试:更新.gitignore for libtests
- configure:检查getpwuid_r的声明
- fnmatch:使用系统中的一个
- CURLOPT_RESOLVE:始终先清除旧条目
- multi:删除可能不好的DEBUGF()
- curl_addrinfo:在源代码中使用相同的#ifdef条件作为标题
- build:删除Borland特定的makefile
- axTLS:不适合使用
- cmdline-opts / cert-type.d:提及“p12”作为公认的类型
- system.h:添加对IBM xlc C编译器的支持
- tests / libtest:将lib1521添加到nodist_SOURCES
- mk-ca-bundle.pl:保持证书名称不变
- boringssl + schannel:lib / schannel.h中的undef X509_NAME
- openssl:假设1.0.1或更高版本中的引擎支持
- cppcheck:修复警告
- 测试46:在2025年之后进行测试通过
- schannel:支持选择密码
- Curl_debug:删除死的printhost代码
- test 1455:unflakified
- Curl_init_do:处理 中传递的NULL连接指针
- 进度:删除一组未使用的定义
- mk-ca-bundle.pl:如果发现未更改,请将-u删除certdata.txt
- GOVERNANCE.md:解释该项目的运作方式
- configure:使用pkg-config进行c-ares检测
- configure:增强使用static openssl构建的能力
- maketgz:解决OSX上的sed问题
- multi:在名称解析期间停止时修复内存泄漏
- CURLOPT_INTERFACE.3:Windows不支持的接口名称
- url:修复悬空conn->数据指针
- cmake:允许多个SSL后端
- system.h:修复32位OpenServer上的gcc
- ConnectionExists:确保在“take”时设置conn->数据连接
- multi:修复因连接待处理列表中的悬空条目导致的崩溃
- CURLOPT_SSL_VERIFYPEER.3:添加效果记录
- netrc:使用更大的缓冲区来支持更长的密码
- url:检查Curl_conncache_add_conn返回代码
- configure:在crypto之后添加依赖库
- easy_perform:使用* multi_timeout() 解析更快的本地名称
- getnameinfo:未使用,删除了所有配置检查
- travis:使用同步名称解析器添加构建
- CURLINFO_TLS_SSL_PTR.3:改进示例
- openssl:默认允许TLS 1.3
- openssl:将请求的TLS版本设为* minimum * wanted
- openssl:删除一些死代码
- telnet:修复clang警告
- DEPRECATE:描述计划项目删除的新文档
- example / crawler.c:基于libxml2的简单爬虫
- libssh:转到错误的DISCONNECT状态,而不是SESSION_FREE
- CMake:删除未使用的功能
- darwinssl:允许High Sierra用户使用GCC构建代码
- 脚本:包括_curl作为CLEANFILES的一部分
版本7.60.0中的新功能:
- 的变化:
- 添加CURLOPT_HAPROXYPROTOCOL,支持HAProxy PROXY协议
- 为命令行工具添加--haproxy-protocol
- 添加CURLOPT_DNS_SHUFFLE_ADDRESSES,随机播放返回的IP地址
- 错误修正:
- FTP:关机响应缓冲区溢出CVE-2018-1000300
- RTSP:错误的标头缓冲区过度读取CVE-2018-1000301
- FTP:在寻求 的递归回调检测中修复拼写错误
- test1208:标记为片状
- HTTP:使无标题响应仍然计算正确的正文大小
- user-agent.d ::提及--proxy-header以及
- http2:修复拼写错误
- 清理:字符串和注释中的错误拼写错误
- 限速:使用三秒窗口以更好地处理高速
- examples / hiperfifo.c:改进
- 暂停:更改暂停状态时,更新套接字状态
- multi:改进的待处理转移处理=>提高绩效
- curl_version_info.3:修复ssl_version说明
- add_handle / easy_perform:如果设置 ,则在启动时清除错误缓冲
- darwinssl:修复iOS版本
- cmake:添加对brotli的支持
- 解析:支持UT时区
- vauth / ntlm.h:修复#ifdef标题保护
- lib / curl_path.h:添加了#ifdef header guard
- vauth / cleartext:修复整数溢出检查
- CURLINFO_COOKIELIST.3:使示例不泄漏内存
- cookie.d:提到“ - ” as filename表示stdin
- CURLINFO_SSL_VERIFYRESULT.3:修复了示例
- http2:在连接检查中读取挂起的帧(包括GOAWAY)
- timeval:通过投射删除编译警告
- cmake:在配置检查期间避免警告错误
- travis-ci:启用CMake构建的错误
- openldap:修复从ldap_get_attribute_ber() 返回的NULL
- 线程解析器:跟踪解析器时间并设置合适的超时值
- cmake:将advapi32添加为win32的显式链接库
- docs:修复CURLINFO _ * _ T示例使用CURL_FORMAT_CURL_OFF_T
- test1148:为测试设置固定的语言环境
- cookies:从文件中读取时,只删除一次
- cookie:按顶级域特定的哈希表存储cookie
- openssl:使用LibreSSL 2.7修复构建
- tls:修复mbedTLS 2.7.0 build +处理sha256失败
- openssl:当verifypeer == 0 时,RESTORED验证位置
- file:恢复file://// foo / bar URL 的旧行为
- FTP:在使用代理时允许PASV进行IPv6连接
- build-openssl.bat:允许VS和perl的自定义路径
- winbuild:使清洁目标无需构建类型
- build-openssl.bat:将VS2017称为VC14.1而不是VC15
- curl:在FTP 4xx上重试,忽略其他协议
- configure:detect(和use)sa_family_t
- examples / sftpuploadresume:修复Windows大文件搜索
- 构建:清理以修复clang警告/错误
- winbuild:更新了文档
- lib:沉默null-dereference warnings
- travis:碰到clang 6和gcc 7
- travis:构建libpsl并使构建使用它
- proxy:在详细输出中显示getenv代理使用
- duphandle:确保CURLOPT_RESOLVE重复
- all:重构malloc + memset以使用calloc
- checksrc:修正拼写错误
- system.h:将sparcv8plus添加到oracle / sunpro 32位检测
- vauth:修复拼写错误
- ssh:关闭失败时显示libSSH2错误代码
- test1148:更好地容忍进度更新
- urldata:使服务名称无条件
- configure:keep LD_LIBRARY_PATH change local
- ntlm_sspi:使用凭据管理器修复身份验证
- schannel:添加客户端证书身份验证
- winbuild:支持每个依赖项的自定义开发路径
- schannel:添加对CURLOPT_CAINFO的支持
- http2:处理on_begin_headers()多次调用
- openssl:支持OpenSSL 1.1.1详细模式跟踪消息
- openssl:修复非ASCII平台上的subjectAltName检查
- http2:避免数据上的strstr()不是零终止
- http2:清除“排水计数器”当一个流关闭时
- http2:正确处理GOAWAY
- tool_help:澄清--max-time时间单位是秒
- curl.1:澄清选项和网址可以混合使用
- http2:将断言转换为运行时检查
- curl_global_sslset:始终提供可用的后端
- ftplistparser:在调用之间保持状态
- Curl_memchr:零长度输入无法匹配
- examples / sftpuploadresume:to long 的类型转换fseek参数
- examples / http2-upload:展开缓冲区以避免愚蠢警告
- ctype:恢复非ASCII平台的字符分类
- mime:避免NULL指针取消引用风险
- cookies:在写jar之前确保我们有cookies
- os400.c:修复checksrc警告
- configure:提供--with-wolfssl作为--with-cyassl的别名
- cyassl:适应没有内置TLS 1.0支持的库
- http2:摆脱另一个strstr
- checksrc:在else 之后强制缩进行
- cookies:删除未使用的宏
- CURLINFO_PROTOCOL.3:提及现有的已定义名称
- 测试:提供“手动”作为可选择的功能
- travis:在macos和Linux上启用libssh2
- CURLOPT_URL.3:添加了ENCODING部分
- wolfssl:修复非阻塞连接
- vtls:不要为wolfssl定义MD5_DIGEST_LENGTH
- docs:删除手册页中无关的逗号
- URL:修复strcpy_url和strlen_url 中的ASCII依赖关系
- ssh-libssh.c:修复左移编译器警告
- configure:仅检查CA bundle for file-using SSL backends
- travis:添加mbedtls build
- http:不要设置“倒带”不上传任何内容时标记
- configure:将CURLDEBUG和DEBUGBUILD放在lib / curl_config.h中
- transfer:不要在设置多路复用conns时取消设置writockfd
- vtls:使用统一的“支持”后端的位域成员
- 网址:再修一个http网址
- travis:使用WolfSSL添加构建
- openssl:将FILE操作更改为BIO操作
- travis:使用NSS添加构建
- smb:拒绝负文件大小
- cookies:接受参数名称作为cookie名称
- http2:上传的getsock修复
- 遍布:固定格式说明符
- http2:使用正确的函数指针typedef
版本中的新功能:
- 的变化:
- auth:添加对RFC7616的支持 - HTTP摘要访问身份验证
- share:添加对共享连接缓存的支持
- HTTP:实施Brotli内容编码
- 错误修正:
- CVE-2017-8816:NTLM缓冲区溢出通过整数溢出
- CVE-2017-8817:FTP通配符超出范围阅读
- CVE-2017-8818:SSL缓存访问
- curl_mime_filedata.3:修复拼写错误
- libtest:为lib1552和lib1553添加必需的测试库
- 使用unsigned time_t 修复系统的时间差异
- ftplistparser:内存泄漏修复:永久免费临时内存
- multi:允许覆盖表句柄大小
- 通配符:不要与不支持的协议一起使用
- curl_fnmatch:非法通配符模式返回错误
- transfer:修复chunked-encoding上传过早退出
- curl_setup:改进CURL_WINDOWS_APP 的检测
- 解析器:只在需要时包含任何内容
- setopt:修复CURLOPT_SSH_AUTH_TYPES选项读取
- appveyor:添加win32 build
- Curl_timeleft:将返回类型更改为timediff_t
- cmake:导出libcurl和curl目标以供其他cmake项目使用
- curl:in -F选项arg,逗号是仅文件的分隔符
- curl:improved&quot ;; type ="处理-F选项参数
- timeval:在MacOS上使用mach_absolute_time()
- curlx:时间函数不再以curlx _ * 的形式提供
- mkhelp.pl:不要使用当前日期生成评论
- memdebug:对curl_dosend / curl_dorecv使用send / recv签名
- cookie:避免NULL取消引用
- url:修复CURLOPT_POSTFIELDSIZE arg值检查以允许-1
- include:从不需要的地方删除conncache.h包含
- CURLOPT_MAXREDIRS:允许-1作为值
- 测试:修复了测试556和650的酷刑测试
- http2:修正升级请求中的OOM处理
- url:修复CURLOPT_DNS_CACHE_TIMEOUT arg值检查以允许-1
- CURLOPT_INFILESIZE:接受-1
- curl:在URL中传递[]而不是调用globbing错误
- curl:加快处理多个网址
- ntlm:避免malloc(0)为零长度密码
- url:从CURLOPT_SSH_AUTH_TYPES中删除错误的arg值检查
- HTTP:支持多个Content-Encodings
- travis:添加启用了brotli的作业
- url:删除unncessary NULL-check
- fnmatch:删除死代码
- connect:在有效连接后存储IPv6连接状态
- imap:处理不区分大小写的命令
- - interface:添加对Linux VRF的支持
- content_encoding:修复inflate_stream,无可用字节
- cmake:在Windows版本中正确包含curl.rc
- cmake:添加缺少的setmode检查
- connect.c:删除文件上的可执行位
- SMB:修复未初始化的本地变量
- zlib / brotli:仅在需要它们的模块中包含头文件
- 网址:在IPv6括号 后使用垃圾网格格式错误的网址返回错误
- openssl:修复过多使用HAVE_OPAQUE_EVP_PKEY
- macOS:使用早于9.0的Xcode版本修复缺少的connectx函数
- - 解析:允许[]括号内的IP地址
- examples / curlx:修复代码样式
- ntlm:删除不必要的NULL检查以请扫描构建
- Curl_llist_remove:修复潜在的NULL指针deref
- mime:fix“存储到'sz'的值永远不会被读取”扫描构建错误
- openssl:fix“存储到'rc'的值永远不会被读取”扫描构建错误
- http2:fix“存储到'hdbuf'的值永远不会被读取”扫描构建错误
- http2:fix“存储到'end'的值永远不会被读取”扫描构建错误
- Curl_open:正确修复OOM返回错误
- url:拒绝主机名中的ASCII控制字符和空格
- examples / rtsp:使用后再次清除RANGE
- connect:改进绑定错误消息
- make:fix“make distclean”
- connect:在Linux上添加对新的TCP Fast Open API的支持
- metalink:修复内存泄漏和NULL指针解除引用
- 网址:更新"文件:"网址处理
- ssh:删除检查空指针
- global_init:忽略CURL_GLOBAL_SSL的缺席
版本7.56.1中的新功能:
- 错误修正:
- imap:如果FETCH响应没有大小,则不要调用write callback
- ftp:UBsan fixup'指针索引表达式溢出
- failf:如果没有消费者,则跳过sprintf()
- fuzzer:转向使用外部curl-fuzzer
- lib / Makefile.m32:允许自定义dll后缀
- docs:修复curl_mime_data_cb手册页中的拼写错误
- darwinssl:添加对TLSv1.3的支持
- build:fix --disable-crypto-auth
- lib / config-win32.h:让SMB / SMBS启用OpenSSL / NSS
- openssl:修复没有HAVE_OPAQUE_EVP_PKEY的构建
- strtoofft:删除无关的空检查
- multi_cleanup:在从未获得 的句柄上调用DONE
- 测试:在测试587和644 中添加了片状关键字
- pingpong:尝试无连接发送时返回错误
- remove_handle:首先调用multi_done(),然后清除dns缓存指针
- mime:容忍在部分中设置两次相同的标题列表
- mime:改善unbinding top multipart from easy handle
- mime:避免在部件内容发生变化时重置部件的编码器
- mime:拒绝将子部分添加到他们自己的后代之一
- RTSP:避免有趣的RTSP响应中的整数溢出
- curl:解析Content-Disposition时不要传递分号
- openssl:启用PKCS12支持!BoringSSL
- 常见问题:s / CURLOPT_PROGRESSFUNCTION / CURLOPT_XFERINFOFUNCTION
- CURLOPT_NOPROGRESS.3:也可参考xferinfofunction
- CURLOPT_XFERINFODATA.3:修复副本另见
- test298:使用URL编码路径验证--ftp-method nowcwd
- FTP:以nocwd模式列出目录的URL解码路径
- smtp_done:修复发送失败时的内存泄漏
- ftpserver:支持不区分大小写的命令
- test950;使用自定义请求验证SMTP
- openssl:不要使用旧的BORINGSSL_YYYYMM宏
- setopt:update current connection SSL verify params
- winbuild / BUILD.WINDOWS.txt:提及WITH_NGHTTP2
- curl:在-F选项中重新实现stdin缓冲
- mime:keep" text / plain"内容类型,如果用户指定
- mime:修复内容阅读器以正确处理> 16K数据
- configure:删除C ++编译器检查
- memdebug:trace send,recv和socket
- runtests:使用valgrind进行酷刑
- ldap:沉默铿锵警告
- makefile.m32:允许覆盖gcc,ar和ranlib
- setopt:设置millsecond值时避免整数溢出
- setopt:范围检查大多数长选项
- ftp:拒绝PASV 227响应中的非法IP /端口
- mime:不要重复使用先前计算的多部分大小
- vtls:将struct Curl_ssl“close”字段名改为“close_one”
- os400:在配置文件中添加缺少的符号
- mime:将bas64编码的行长度限制为76个字符
- mk-ca-bundle:删除极光的网址
- mk-ca-bundle:修复NSS的网址
版本7.55.0中的新功能:
- 的变化:
- curl:允许--header和--proxy-header从文件中读取
- getinfo:提供尺寸为curl_off_t
- curl:防止二进制输出发送到终端
- curl:添加--request-target
- libcurl:添加了CURLOPT_REQUEST_TARGET
- curl:添加--socks5- {basic,gssapi}:control socks5 auth
- libcurl:添加了CURLOPT_SOCKS5_AUTH
- 错误修正:
- glob:在strtoul()溢出范围之后不解析(CVE-2017-1000101)
- tftp:拒绝不适合的文件名长度(CVE-2017-1000100)
- file:向用户输出正确的缓冲区(CVE-2017-1000099)
- 包括:remove curl / curlbuild.h和curl / curlrules.h
- dist:make hugehelp.c不会不必要地重新生成
- 计时器:将内部时间戳存储为time_t而不是双打
- 进展:让“当前速度”结合UL + DL速度
- http-proxy:完全无阻塞的HTTP CONNECT流程
- lib / curl_setup.h:删除CURL_WANTS_CA_BUNDLE_ENV
- 模糊:将oss-fuzz初始代码转换为C89
- configure:如果已禁用HTTP,则禁用nghttp2
- mk-ca-bundle.pl:在certdata下载后检查curl的退出代码
- test1148:验证 - #progressbar
- 测试:稳定测试2032和2033
- HTTPS代理:不为https代理连接提供h2
- http-proxy:仅尝试基于HTTP代理的FTP
- curl-compilers.m4:为clang启用vla警告
- curl-compilers.m4:启用双重促销警告
- curl-compilers.m4:启用missing-variable-declarations clang warning
- curl-compilers.m4:启用逗号分组警告
- Makefile.m32:为MinGW32构建启用-W
- CURLOPT_PREQUOTE:SFTP不支持
- http2:修复OOM崩溃
- PIPELINING_SERVER_BL:清理内部列表
- mkhelp.pl:修改使用文本中的脚本名称
- lib1521:将curl_easy_getinfo调用添加到测试集
- travis:也可以在树外进行distcheck测试
- if2ip:修复ISO C90模式下的编译器警告
- lib:修复djgpp build
- typecheck-gcc:添加对CURLINFO_OFF_T的支持
- travis:启用typecheck-gcc警告
- maketgz:切换到xz而不是lzma
- CURLINFO_REDIRECT_URL.3:提及CURLOPT_MAXREDIRS案例
- curl-compilers.m4:修复Apple clang上的unknown-warning-option
- winbuild:修复boringssl build
- curl / system.h:为32位gcc添加XTENSA检查
- test1537:OOM上的固定内存泄漏
- test1521:修复编译器警告
- curl:修复测试1147 OOM上的内存泄漏
- libtest / make:在构建时动态生成lib1521.c
- curl_strequal.3:修正大纲中的拼写错误
- 进度:阻止重置t_starttransfer
- openssl:使用基于时间的哈希改进PRNG的后备种子
- http2:改进的PING帧处理
- test1450:为DICT添加简单测试
- make:仅在src 中构建docs subdir
- cmake:为旧版Windows添加了兼容性选项
- gtls:修复buildof sizeof(long)< sizeof(void *)
- url:让原始字符串在后续传输中使用
- timeval.c:使用长long常量类型进行时间分配
- tool_sleep:typecast以避免macos编译器警告
- travis.yml:在调试版本中使用--enable-werror
- test1451:向测试平台添加SMB支持
- configure:删除对未使用的5个功能的检查
- configure:首先按相反的顺序尝试ldap / lber
- smb:修复djgpp / MSDOS的构建
- travis:在linux版本上安装nghttp2
- smb:添加对CURLOPT_FILETIME的支持
- cmake:修复windows的发送/接收参数扫描程序
- inet_pton:修复包含在windows上以获取原型
- select.h:避免宏重新定义更难
- cmake:如果使用inet_pton,请忽略_WIN32_WINNT
- asyn-thread.c:修复macOS上未使用的变量警告
- runtests:support" threaded-resolver"作为一项功能
- test506:skip if threaded-resolver
- cmake:remove spurious" -l"来自链接器标志
- cmake:添加CURL_WERROR以启用“警告为错误”
- memdebug:如果文件打开失败,请不要setbuf()
- curl_easy_escape.3:提及(缺少)编码
- test1452:添加telnet协商
- CURLOPT_POSTFIELDS.3:更好地解释100-continue magic
- cmake:使用MSVC构建时提供CMAKE_DEBUG_POSTFIX
- tests / valgrind.supp:在travis上看到OpenSSL误报
- curl_setup_once:删除ERRNO / SET_ERRNO宏
- curl-compilers.m4:使用Cygwin的clang禁用警告垃圾邮件
- ldap:修复MinGW编译器警告
- make:修复基于OpenBSD的文档
- curl_setup:始终在Windows上定义WIN32_LEAN_AND_MEAN
- system.h:在windows.h之前包含winsock2.h
- winbuild:使用警告级别4构建
- rtspd:修复MSVC 4级警告
- sockfilt:使用显式转换来抑制转换警告
- libtest:修复MSVC警告C4706
- darwinssl:修复pinnedpubkey构建错误
- tests / server / resolve.c:修复弃用警告
- nss:在SelectClientCert() 中修复可能的use-after-free
- checksrc:在正则表达式中转义打开大括号
- multi:如果使用>提及整数溢出风险5亿个插座
- darwinssl:fix --tlsv1.2 regression
- timeval:struct curltime是一个struct timeval替换
- curl_rtmp:修复编译器警告
- include.d:澄清它涉及响应标题
- cmake:support make uninstall
- include.d:clarify --include仅适用于响应标头
- libcurl:停止使用CURL_NO_OLDIES 下定义的错误代码
- http:修复响应代码解析器以避免整数溢出
- configure:修复IdnToUnicode的检查
- multi:修复请求计时器管理
- curl_threads:修复MSVC编译器警告
- travis:使用openssl构建在osx上
- travis:使用libressl构建在osx上
- CURLOPT_NETRC.3:在Windows上提及文件名
- cmake:将MSVC警告级别设置为4
- netrc:跳过以'#'开头的行
- darwinssl:修复第一个参数的curlssl_sha256sum()编译器警告
- BUILD.WINDOWS:提及buildconf.bat for builds off git
- darwinssl:沉默编译器警告
- travis:使用darwinssl构建在osx上
- FTP:在nocwd模式下跳过不必要的CWD
- gssapi:修复多轮上下文中输出令牌的内存泄漏
- getparameter:避免返回未初始化的'usedarg'
- curl(调试版本)easy_events:使事件数据静态
- curl:在参数整数溢出的早期检测并挽救
- 配置:修复Android上的recv / send / select detection
版本7.54.1中的新功能:
- 的变化:
- curl:在--version output 中显示libcurl发布日期
- 错误修正:
- CVE-2017-9502:默认协议驱动器号缓冲区溢出
- openssl:修复servercert中的内存泄漏
- 测试:从tarball中删除html和PDF版本
- mbedtls:即使MD4支持不可用,也启用NTLM(& SMB)
- typecheck-gcc:正确处理函数指针
- llist:不再使用malloc
- gnutls:在配置了--disable-verbose时删除了一些代码
- lib:修复可能未初始化的警告
- multi:澄清curl_multi_wait中的条件
- schannel:不要将加密的部分记录视为待处理数据
- configure:修复-ldl检查openssl,添加-lpthread检查
- configure:accept -Og和-Ofast GCC标志
- Makefile:避免使用GNU特定形式的$<
- if2ip:fix -Wcast-align warning
- configure:停止前置LDFLAGS,CPPFLAGS
- curl:默认设置100K缓冲区大小
- typecheck-gcc:fix _curl_is_slist_info
- nss:加载密钥时不要泄漏PKCS#11插槽
- nss:如果没有指定其他信任,则加载libnssckbi.so
- 示例:ftpuploadfrommem.c
- url:声明get_protocol_family()static
- examples / cookie_interface.c:已更改为example.com
- test1443:test --remote-time
- 卷曲:使用时而不是过时的过时时间
- url:在设置CURLOPT_BUFFERSIZE 时修复了OOM上的内存泄漏
- curl_rtmp:修复missing-variable-declarations warnings
- 测试:修复OOM处理单元测试以中止测试
- curl_setup:确保启用的IDN lib不超过一个
- 工具:修复CURL_DOES_CONVERSIONS 缺少的原型警告
- CURLOPT_BUFFERSIZE:1024字节现在是最小尺寸
- curl:非布尔命令行args reject --no- prefixes
- telnet:写入完整缓冲区而不是逐字节
- typecheck-gcc:添加缺少的字符串选项
- typecheck-gcc:添加对CURLINFO_SOCKET 的支持
- 选择手册页:他们现在都有例子
- curl_setup_once:使用SEND_QUAL_ARG2进行swrite
- test557:设置已知良好的数字区域设置
- schannel:返回SEC_E_UNTRUSTED_ROOT 的更具体的错误代码
- tests / server:make string literals const
- runtests:使用-R作为随机顺序
- unit1305:修复编译器警告
- curl_slist_append.3:澄清NULL输入创建新列表
- tests / server:默认情况下在debug-builds中运行checksrc
- 测试:修复-Wcast-qual警告
- runtests.pl:简化datacheck阅读部分
- curl:remove --environment and tool_writeenv.c
- buildconf:修复挂起IRIX
- tftp:沉默bad-function-cast warning
- asyn-thread:修复未使用的宏警告
- tool_parsecfg:fix -Wcast-qual warning
- sendrecv:修复MinGW-w64警告
- test537:使用正确的变量类型
- rand:无论字节顺序如何,对待假熵都是一样的
- curl:生成--help输出
- 测试:删除冗余--trace-ascii参数
- multi:为所有计时器分配ID并使每个计时器单独使用
- multi:使用固定数组的计时器而不是malloc
- mbedtls:支持服务器重新协商请求
- 管道:修错误尝试管道POST
- lib510:如果缓冲区太小,请不要写入缓冲区的末尾
- CURLOPT_HTTPPROXYTUNNEL.3:澄清,添加示例
- SecureTransport / DarwinSSL:实施公钥固定
- curl.1:澄清--config
- curl_sasl:使用CURL_DISABLE_CRYPTO_AUTH + USE_NTLM修复构建错误
- darwinssl:处理客户端证书时修复异常
- curl.1:提及--oauth2-bearer的论点
- mkhelp.pl:不要将当前时间添加到curl二进制文件
- asiohiper.cpp / evhiperfifo.c:处理负计时器功能输入
- ssh:修复由于超时导致的断开内存泄漏
- 测试:稳定测试1034
- cmake:自动检测CURL_CA_BUNDLE / CURL_CA_PATH
- 断言:避免,改为使用DEBUGASSERT
- LDAP:在Windows上使用带有方法的ldap_bind_s
- 重定向:在达到最大红色时存储“将重定向到”网址
- winbuild:修复nghttp2 build
- 示例:修复-Wimplicit-fallthrough warnings
- 时间:修复类型转换和编译器警告
- mbedtls:修复变量阴影警告
- test557:由于int left shift修复了ubsan运行时错误
- 转移:从postfields初始化infilesize
- docs:进一步澄清NO_PROXY
- build-wolfssl:与wolfSSL 3.11同步配置
- curl-compilers.m4:为clang启用-Wshift-sign-overflow
- example / externalsocket.c:使它也使用CLOSESOCKETFUNCTION
- lib574.c:使用正确的回调协议
- lib583:修复编译器警告
- curl-compilers.m4:修复了compileng for clang
- typecheck-gcc.h:从其他指针单独的getinfo slist检查
- typecheck-gcc.h:检查CURLINFO_TLS_SSL_PTR和CURLINFO_TLS_SESSION
- typecheck-gcc.h:检查CURLINFO_CERTINFO
- build:提供简单的代码覆盖率测量
- test1537:URL(un)转义API调用的专用测试
- curl_endian:删除未使用的函数
- test1538:验证libcurl strerror API调用
- MD(4 | 5):沉默演员对齐警告
- dedotdot:“..”和“。”的固定输出。只输入
- cyassl:在包含ssl.h之前定义构建宏
- updatemanpages.pl:太旧的git版本错误
- curl_sasl:修复unused-variable warning
- x509asn1:使用GCC 7修复隐式 - 通过警告
- libtest:使用GCC 7修复隐式 - 通过警告
- BINDINGS:添加Ring binding
- curl_ntlm_core:将unsigned char传递给toupper
- test1262:使用-z验证ftp下载“如果年龄大于此”
- test1521:测试所有curl_easy_setopt选项
- typecheck-gcc:允许CURLOPT_STDERR也为NULL
- metalink:删除未使用的printf()参数
- file:make speedcheck使用当前时间进行检查
- configure:指定路径时修复与librtmp的链接
- examples / multi-uv.c:fix deprecated symbol
- cmake:修复有关mbed TLS包含目录 的不一致性
- setopt:检查CURLOPT_ADDRESS_SCOPE选项范围
- gitignore:忽略所有vim交换文件
- urlglob:修复除零
- libressl:不再需要OCSP和中间证书解决方法
版本7.54.0中的
新功能:
- 的变化:
- 将CURL_SSLVERSION_MAX_ *常量添加到CURLOPT_SSLVERSION
- 添加--max-tls
- 添加CURLOPT_SUPPRESS_CONNECT_HEADERS
- 添加--suppress-connect-headers
- 错误修正:
- CVE-2017-7468:使用客户端证书时关闭SSL会话ID
- cmake:替换无效的UTF-8字节序列
- 测试:使用一致的环境变量来设置charset
- proxy:修复OOM上的内存泄漏
- ftp:删除了OOM路径中的错误空闲
- docs:在Makefile中删除文件列表
- ftp:修复了OOM上的NULL指针解除引用
- gopher:修复了Curl_urldecode 中错误条件的检测
- url:修复unix-socket支持代理禁用版本
- test1139:允许手册页未被重建
- cyassl:在运行时获取库版本字符串
- digest_sspi:修复编译警告
- 测试:启用HTTP / 2测试以使用非默认端口号运行
- warnless:压制编译器警告
- darwinssl:禁用主机验证的警告也会禁用SNI
- configure:fix for --enable-pthreads
- checksrc.bat:忽略curl_config.h.in,curl_config.h
- no-keepalive.d:修复拼写错误
- configure:在指定路径时修复--with-zlib
- build:修复gcc7隐式fallthrough警告
- 修正未初始化变量的潜在用途
- CURLOPT_SSL_CTX_FUNCTION.3:修复示例格式错误
- CMake:重新组织SSL支持,单独的WinSSL和SSPI
- CMake:添加DarwinSSL支持
- CMake:添加mbedTLS支持
- ares:如果在名称解析开始之前超时,则立即返回错误
- BINDINGS:添加了C ++,perl,go和Scilab绑定
- 网址:在端口号 后使用垃圾邮件的格式错误的网址上返回错误
- KNOWN_BUGS:添加DarwinSSL不会导入没有密码的PKCS#12
- http2:使用CL = 0 修复重定向时的断言错误
- updatemanpages.pl:更新手册页以使用当前日期和版本
- - 不安全:澄清此选项适用于服务器连接
- mkhelp:简化了gzip代码
- build:在out-of-tree tarball版本中修复制作手册页
- 测试:由于剥落而被禁用1903
- openssl:添加两个/ * FALLTHROUGH * /以满足覆盖率
- cmdline-opts:修正了一些拼写错误
- authneg:在http_done 上清除auth.multi标志
- curl_easy_reset:同时重置身份验证状态
- proxy:跳过已关闭连接的SSL初始化
- http_proxy:忽略CONNECT 2xx响应中的TE和CL
- tool_writeout:修复了--write-out 上的缓冲区读取溢出
- make:通过运行make in docs 重新生成docs / curl.1
- winbuild:添加对OpenSSL 1.1.x的基本支持
- build:从makefile中删除多余的DEPENDENCIES
- CURLINFO_LOCAL_PORT.3:添加了示例
- curl:在CURLE_SSL_CACERT 上显示HTTPS代理选项
- 测试:从非HTTP --libcurl测试中删除更多选项
- 测试:修复了记录的测试服务器端口号
- runtests.pl:固定显示Gopher IPv6端口号
- multi:修复streamclose()在调试模式下崩溃
- cmake:构建手册页
- cmake:添加对构建HTML和PDF文档的支持
- mbedtls:添加对CURLOPT_SSL_CTX_FUNCTION 的支持
- make:介绍'test-nonflaky'目标
- CURLINFO_PRIMARY_IP.3:添加示例
- tests / README:提及nroff for --manual tests
- mkhelp:如果perl gzip模块不可用,则禁用压缩
- openssl:在没有错误明细 时回退到SSL_ERROR_ *字符串
- asiohiper:确保在event_cb 中打开套接字
- tests / README:将“运行”部分设为万无一失
- curl:检查写入反斜杠处理中的输入结束
- .gitattributes:关闭* .am 的CRLF
- multi:修复MinGW-w64编译器警告
- schannel:修复变量阴影警告
- openssl:在定义OPENSSL_NO_DSA时排除DSA代码
- http:使用basic-auth修复代理连接重用
- 暂停:暂停时处理混合类型的数据
- http:不要将FTP上的FTPS视为HTTPS
- conncache:make hashkey avoid malloc
- make:使用变量MAKE进行递归调用
- curl:修复回调参数不一致
- NTLM:使用#ifdef而不是#if 检查功能
- cmake:将几个丢失的文件添加到dist
- 选择:使用正确的SIZEOF_常量
- connect:修复未引用的参数警告
- schannel:修复未使用的变量警告
- gcc7:fix‘ *'in boolean context
- http2:沉默未使用的参数警告
- ssh:修复缩小转化警告
- telnet:(win32)修复读回调返回变量
- docs:解释--fail-early并不暗示--fail
- docs:为CURLINFO_FILETIME.3和CURLOPT_FILETIME.3添加了示例
- tests / server / util:删除in6addr_any以获取最近的MinGW
- multi:make curl_multi_wait在典型情况下避免使用malloc
- include:curl / system.h是curlbuild.h的运行时版本。
- easy:沉默编译器警告
- llist:将Curl_llist_alloc替换为Curl_llist_init
- hash:将键移动到哈希结构中以减少mallocs
- url:不要在连接重用上免费推迟数据
- curl_sasl:声明mechtable static
- curl:修复Windows Unicode构建
- multi:修复待处理简易句柄的排队
- tool_operate:修复MinGW编译器警告
- low_speed_limit:更长时间段的改进功能
- gtls:修复编译器警告
- sspi:打印出InitializeSecurityContext()错误消息
- schannel:修复编译器警告
- vtls:修复未引用的变量警告
- INSTALL.md:修复安全传输配置参数
- CURLINFO_SCHEME.3:修复变量类型
- libcurl-thread.3:还提到了线程解析器
- nss:使用--insecure 加载CA证书
- openssl:修复此声明可能会落空
- 民意调查:偏爱
- polarssl:unbreak build with versions< 1.3.8
- Curl_expire_latest:忽略已过期的计时器
- configure:将隐式函数声明转换为错误
- mbedtls:修复错误路径中的内存泄漏
- http2:修复错误路径中的句柄泄漏
- .gitattributes:强制shell脚本到LF
- configure.ac:在版本号 之后忽略CR
- extern-scan.pl:strip trailing CR
- openssl:使SSL_ERROR_to_str更具未来性
- openssl:修复错误处理中的线程安全错误
- openssl:不要尝试打印不存在的对等私钥
- nss:修复MinGW编译器警告
版本7.53.1中的
新功能:
- 错误修正:
- cyassl:修复拼写错误
- url:改进CURLOPT_PROXY_CAPATH错误处理
- urldata:启用Windows SSPI时包含curl_sspi.h
- formdata:从stdin读取时检查EOF
- 测试:设置CHARSET& LANG到1035年,2046年和2047年的UTF-8
- url:默认代理CA捆绑位置为CURL_CA_BUNDLE
- rand:在fcntl.h标题附近缺少#ifdef HAVE_FCNTL_H
版本7.52.1中的新功能:
- 错误修正:
- CVE-2016-9594:unititialized random
- lib557:修复checksrc警告
- lib:修复MSVC编译器警告
- lib557.c:使用较短的MAXIMIZE表示
- 测试:在调试版本上运行checksrc
版本7.51.0中的新功能:
- 的变化:
- nss:CURLOPT_SSL_CIPHER_LIST现在接受了额外的密码套件
- 新选项:CURLOPT_KEEP_SENDING_ON_ERROR
- 错误修正:
- CVE-2016-8615:其他服务器的cookie注入
- CVE-2016-8616:不区分大小写的密码比较
- CVE-2016-8617:OOB通过未经检查的乘法写入
- CVE-2016-8618:curl_maprintf中的双重免费
- CVE-2016-8619:krb5代码中的双倍免费
- CVE-2016-8620:glob解析器写/读出界限
- CVE-2016-8621:curl_getdate读出界限
- CVE-2016-8622:通过整数截断的URL unescape堆溢出
- CVE-2016-8623:通过共享Cookie免费使用
- CVE-2016-8624:使用“#” 解析无效的网址
- CVE-2016-8625:IDNA 2003使curl使用错误的主机
- openssl:使用1.0.1或1.0.2修复每线程内存泄漏
- http:接受HTTP / 2的“Transfer-Encoding:chunked”
- LICENSE-MIXING.md:使用mbedTLS双重许可进行更新
- examples / imap-append:设置要上传的数据大小
- test2048:修复网址
- darwinssl:禁用RC4密码套件支持
- CURLOPT_PINNEDPUBLICKEY.3:修复AVAILABILITY格式
- openssl:不要调用CRYTPO_cleanup_all_ex_data
- libressl:修复版本输出
- easy:重置curl_easy_reset 中的所有统计会话信息
- curl_global_cleanup.3:不要使用运行 的子线程卸载lib
- dist:将CurlSymbolHiding.cmake添加到tarball
- docs:删除--proto仅用于初始检索
- configure:使用自定义位置的libssh2修复构建
- curl.1: - trace支持%发送到stderr!
- Cookie:更改了相同的域名处理以匹配浏览器行为
- formpost:尝试附加目录不再崩溃
- CURLOPT_DEBUGFUNCTION.3:修复未使用的参数警告
- formpost:避免静默snprintf()截断
- ftp:修复Curl_ftpsendf
- mprintf:太多参数返回错误
- smb:正确检查传入的数据包边界
- GIT-INFO:删除Mac 10.1特定的详细信息
- resolve:使用SIGALRM解析时添加错误消息
- cmake:添加nghttp2支持
- dist:从发布中删除PDF和HTML转换的文档
- configure:在macOS版本中禁用poll()
- vtls:仅使用相同的方案重用会话ID
- 管道传输:在管道传输时跳过要关闭的连接
- win:修复通用Windows平台构建
- curl:不要自动将CURLOPT_SSLENGINE设置为DEFAULT
- maketgz:支持“仅”生成版本信息
- Curl_socket_check:添加额外检查以避免整数溢出
- gopher:正确返回轮询失败的错误
- curl:设置INTERLEAVEDATA
- polarssl:init 中的clear thread array
- polarssl:修复未对齐的SSL会话ID锁定
- polarssl:使用宏 减少#ifdef madness
- curl_multi_add_handle:在闭包句柄中设置超时
- configure:为mac 上的构建设置最小版本标志
- INSTALL:转换为markdown => INSTALL.md
- curl_multi_remove_handle:修复双重免费
- multi:修复curl_multi_cleanup() 中的inifinte循环
- nss:通过代理 修复非阻塞TLS handhsake中的紧密循环
- mk-ca-bundle:默认情况下,将URL检索更改为仅限HTTPS
- mbedtls:停止使用已弃用的包含文件
- docs:修复req-> multi-uv示例中的数据
- configure:修复monotonic clock_gettime的测试语法
- CURLMOPT_MAX_PIPELINE_LENGTH.3:澄清它不适用于HTTP / 2
版本7.50.3中的新功能:
- 错误修正:
- CVE-2016-7167:escape和unescape integer overflows
- mk-ca-bundle.pl:使用SHA256而不是SHA1
- checksrc:detect strtok()使用
- 错误:新别名CURLE_WEIRD_SERVER_REPLY
- http2:support> 64位大小的上传
- openssl:修复坏内存(回归)
- CMake:隐藏私人图书馆符号
- http:拒绝在设置NO_NODY时传递响应正文
- cmake:修复curl-config --static-libs
- mbedtls:如果md4不可用,请在构建中关闭NTLM
- curl: - 在窗户上创建dirs-dirs,向前和向后斜杠
1 注释
Donald Morrison 6 Nov 18
God dag,Er du en forretningsmann eller kvinne? Er du i noe økonomisk rot, eller trenger du penger til å starte opp din egen bedrift? Har du behov for lån for å betale inn gjeld eller betale for regningene dine eller starte en fin bedrift? Har du lav kreditt score, og du finner det vanskelig å skaffe kapitallån fra lokale banker / andre finansinstitusjoner? Har du behov for et lån eller finansiering av en eller annen grunn, for eksempel: Kontakt vår lånesjef Donald Morrison e-post: easy.financial@yandex.com
Personlig lån
Bedriftslån
Home Equity Loan
Gjeldskonsolideringer
Takk og Gud salige
Donald Morrison