Cyberduck Mountain Duck CLI

#2896 closed defect (fixed)

No fallback for Expectation Failure

Reported by: anonymous Owned by: dkocher
Priority: low Milestone: 4.1
Component: webdav Version: 3.7
Severity: normal Keywords: webdav expected rfc2616
Cc: Architecture:
Platform:

Description (last modified by dkocher)

I am using webdav with popular HTTP servers lighttpd and nginx. Latest version of Cyberduck breaks uploading, giving 417 HTTP error.

In fact lighttpd really does not support "Expect:" field. The problem is that there are no fallback (to HTTP/1.0). Switching to HTTP/1.0 after receiving 417 error would be the best solution.

I/O Error: Upload failed 
/file.html
null (417) 

PUT /file.html HTTP/1.1[\r][\n]
Content-Type: text/html[\r][\n]
User-Agent: Cyberduck/3.1.1 (4457)[\r][\n]
Host: anonymous.host:8080[\r][\n]
Expect: 100-continue[\r][\n]
Content-Length: 889[\r][\n]
[\r][\n]
HTTP/1.1 417 Expectation Failed[\r][\n]
HTTP/1.1 417 Expectation Failed[\r][\n]
Connection: close[\r][\n]
Content-Length: 0[\r][\n]
Date: Wed, 14 Jan 2009 00:04:13 GMT[\r][\n]
Server: lighttpd/1.4.20[\r][\n]
[\r][\n]

Change History (12)

comment:1 Changed on Jan 14, 2009 at 8:35:49 AM by dkocher

  • Description modified (diff)
  • Resolution set to wontfix
  • Status changed from new to closed

See http://redmine.lighttpd.net/issues/show/1017. Apparently this is fixed in the 1.5 branch of lighthttpd.

comment:2 follow-up: Changed on Oct 29, 2010 at 1:34:43 AM by https://www.google.com/accounts/o8/id?id=aitoawkgh5nrdkuu4brr1gol37zddvisyqhuui0

  • Keywords rfc2616 added
  • Milestone 3.1.2 deleted
  • Resolution wontfix deleted
  • Status changed from closed to reopened
  • Version changed from 3.1.1 to 3.7

I strongly disagree with your view here. Older servers, embedded boxes, etc will not be able to upgrade quickly to newer, compliant, http servers. Thus rendering Cyberduck incompatible with any outdated web server.

As per the rfc 2616 8.2.3:

Because of the presence of older implementations, the protocol allows ambiguous situations in which a client may send "Expect: 100- continue" without receiving either a 417 (Expectation Failed) status or a 100 (Continue) status

Cyberduck is awesome, I see no reason if it complies with the above for it not to ignore the 417 lighttpd, or other servers, might return.

Last edited on Oct 29, 2010 at 1:36:12 AM by https://www.google.com/accounts/o8/id?id=aitoawkgh5nrdkuu4brr1gol37zddvisyqhuui0 (previous) (diff)

comment:3 Changed on Nov 20, 2010 at 11:46:42 AM by dkocher

#4384 closed as duplicate.

comment:4 Changed on Nov 20, 2010 at 2:13:34 PM by dkocher

  • Priority changed from high to normal
  • Summary changed from WebDAV upload failed (Expect: 100-continue) to No fallback for Expectation Failure

comment:5 in reply to: ↑ 2 Changed on Nov 20, 2010 at 2:15:42 PM by dkocher

Replying to https://www.google.com/accounts/o8/id?id=aitoawkgh5nrdkuu4brr1gol37zddvisyqhuui0:

I strongly disagree with your view here. Older servers, embedded boxes, etc will not be able to upgrade quickly to newer, compliant, http servers. Thus rendering Cyberduck incompatible with any outdated web server.

As per the rfc 2616 8.2.3:

Because of the presence of older implementations, the protocol allows ambiguous situations in which a client may send "Expect: 100- continue" without receiving either a 417 (Expectation Failed) status or a 100 (Continue) status

Cyberduck is awesome, I see no reason if it complies with the above for it not to ignore the 417 lighttpd, or other servers, might return.

The reason that we require support for continuation is that the user experience for failed uploads is very bad otherwise. All data is transmitted before any error about possible problems is displayed.

comment:6 Changed on Nov 29, 2010 at 9:52:34 PM by dkocher

  • Priority changed from normal to low

comment:7 Changed on Dec 3, 2010 at 4:23:55 PM by dkocher

  • Resolution set to wontfix
  • Status changed from reopened to closed

comment:8 Changed on May 2, 2011 at 8:05:34 AM by dkocher

#5928 closed as duplicate.

comment:9 Changed on Jun 17, 2011 at 9:40:17 AM by dkocher

  • Milestone set to 4.1
  • Resolution wontfix deleted
  • Status changed from closed to reopened

#6012 closed as duplicate.

comment:10 Changed on Jun 17, 2011 at 9:44:12 AM by dkocher

Fixed in Sardine.

comment:11 Changed on Jun 17, 2011 at 9:46:23 AM by dkocher

  • Resolution set to fixed
  • Status changed from reopened to closed

In r8805.

comment:12 Changed on Jun 29, 2011 at 11:35:41 AM by dkocher

Actual fix in r8830.

Note: See TracTickets for help on using tickets.
swiss made software