libcurl - 保持连接“打开”以上载多个文件(FTP)

时间:2015-09-25 16:12:17

标签: curl multiple-file-upload

是的,this question已在多年前被问及并在此处得到解答。

我唯一的问题是答案与现实不符。 FTP连接应该重用,但事实并非如此。我的curl版本是7.44.0 32/64位,OS:linux / AIX。 verbose模式和tcpdump都证明为每个文件上传打开了一个新连接。 另外, url.c

中有这一部分
/*
 * IsPipeliningPossible() returns TRUE if the options set would allow
 * pipelining/multiplexing and the connection is using a HTTP protocol.
 */
static bool IsPipeliningPossible(const struct SessionHandle *handle,
                                 const struct connectdata *conn)
  /* If a HTTP protocol and pipelining is enabled */
  if(conn->handler->protocol & PROTO_FAMILY_HTTP) {

阻止FTP协议重用相同的连接。

1 个答案:

答案 0 :(得分:2)

正如您引用源代码所指出的那样,您只需修复libcurl;因为你已经找到了开始的地方,为什么不这样做呢?添加自己需要的功能是免费和开源软件模型的强大优势之一。