From: <no...@so...> - 2002-09-28 16:43:42
|
Bugs item #604266, was opened at 2002-09-03 17:13 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=111118&aid=604266&group_id=11118 Category: other Group: version 3.0 >Status: Pending Resolution: Fixed Priority: 9 Submitted By: J Greely (jgreely) Assigned to: Andreas Oesterhelt (oes) Summary: Lack of support for OPTIONS and TRACE HTTP methods Initial Comment: Running Mac OS X 10.2, with a default installation of Privoxy 3.0.0, and my proxy settings in the network control panel set to 127.0.0.1 port 8118 for both HTTP and HTTPS, I cannot connect to my iDisk from the Finder's "Go" menu. The exact text of the error dialog is: "Connecting to http://idisk.mac.com/jgreely ... An error has occurred (error = -36)." Nothing appears in the Privoxy log file, and the behavior does not change if I disable Privoxy. Entering "mac.com" into the network control panel's bypass list resolves the problem. I haven't tested this with other platforms or WebDAV servers. -j ---------------------------------------------------------------------- >Comment By: J Greely (jgreely) Date: 2002-09-28 09:43 Message: Logged In: YES user_id=604000 Okay. with the correct branch checked out and built, it works fine with the iDisk WebDAV server. There appears to be a substantial performance penalty, even when Privoxy is disabled, but I haven't done any serious tests yet. ---------------------------------------------------------------------- Comment By: Andreas Oesterhelt (oes) Date: 2002-09-28 04:19 Message: Logged In: YES user_id=78811 Sorry, I forgot to mention that the fix is only in the stable branch. So you'd need to build from a -r v_3_0_branch checkout. I'll probably install davfs for linux and see if I can get it to work with mac.com's iDisk trial access through privoxy. ---------------------------------------------------------------------- Comment By: J Greely (jgreely) Date: 2002-09-27 18:55 Message: Logged In: YES user_id=604000 I built from current today and tried it out, and I still get an "invalid header" error. ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2002-09-26 11:56 Message: Logged In: NO You can also set up WebDAV folders using IIS. Enable the site with Read and Write permissions on a virtual directory. In IE you can use WebDAV by doing File - Open, enter any WebDAV-enabled site location and click the checkbox that says "Open as Web Folder" First thing issued is an OPTIONS request. ---------------------------------------------------------------------- Comment By: J Greely (jgreely) Date: 2002-09-26 09:23 Message: Logged In: YES user_id=604000 Yeah, that auto-open is silly. ---------------------------------------------------------------------- Comment By: J Greely (jgreely) Date: 2002-09-26 09:22 Message: Logged In: YES user_id=604000 My Mac is supposed to be back from the shop on Monday, so I can test it then. ---------------------------------------------------------------------- Comment By: Andreas Oesterhelt (oes) Date: 2002-09-26 06:25 Message: Logged In: YES user_id=78811 Steenking auto-open! ---------------------------------------------------------------------- Comment By: Andreas Oesterhelt (oes) Date: 2002-09-26 06:23 Message: Logged In: YES user_id=78811 There's a "Free Trial" button on http://www.mac.com/ but they probably want you to fill out an inquisitory questionnaire for free access... ---------------------------------------------------------------------- Comment By: David Schmidt (david__schmidt) Date: 2002-09-26 06:17 Message: Logged In: YES user_id=249980 Andreas - I don't have an iDisk account (costs $, AFAIK), so I can't test this myself. I would be more than happy to build a bootleg privoxy to have any of our interested users try it out, though. Any iDisk users out there want to volunteer? Just let me know. - David ---------------------------------------------------------------------- Comment By: Andreas Oesterhelt (oes) Date: 2002-09-26 05:45 Message: Logged In: YES user_id=78811 David, could you test if current CVS really fixes the issue? Thanks! ---------------------------------------------------------------------- Comment By: Andreas Oesterhelt (oes) Date: 2002-09-25 12:20 Message: Logged In: YES user_id=78811 Basic support (i.e. minimum required by rfc) now implemented. Full support will be a 3.1 issue. ---------------------------------------------------------------------- Comment By: David Schmidt (david__schmidt) Date: 2002-09-06 03:56 Message: Logged In: YES user_id=249980 Undoing auto-assign... ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2002-09-06 00:50 Message: Logged In: NO OPTIONS and TRACE should be added to Privoxy -- at least as pass-thru methods. As noted, OPTIONS is very often used to determine a server's support for WebDAV. The OPTIONS request is not expected to fail and is used to validate support for the extension methods which would otherwise fail if they are unsupported. Compliance with issues like Max-Forwards is not significant, but permitting the HTTP method to traverse through the proxy is significant and (for WebDAV) often required. ---------------------------------------------------------------------- Comment By: J Greely (jgreely) Date: 2002-09-04 11:02 Message: Logged In: YES user_id=604000 I'm quite happy working around the problem. However, at a minimum I think the code should be updated to record the error in a useful way at the default logging level. I would also argue that it shouldn't fail when Privoxy is disabled, but I can understand why this specific case is tricky. FYI, under Mac OS X, Mozilla completely ignores the global proxy setting, and IE insists on using it. IMHO, The Right Way is somewhere in between. -j ---------------------------------------------------------------------- Comment By: Andreas Oesterhelt (oes) Date: 2002-09-04 06:55 Message: Logged In: YES user_id=78811 jgreely, thanks for the Log! Privoxy currently lacks support for the obviously very rarely used HTTP/1.1 methods OPTIONS and TRACE. Since this has no influence on normal Web access, you could, as a workaround, remove the proxy setting in the network control panel, and instead tell your browser to use a proxy. For applications like idisk access, this is probably more efficient, anyway. Developers: Does this warrant a fix in 3.0? Implementation is not completely trivial, since: 9.2 OPTIONS [...] The Max-Forwards request-header field MAY be used to target a specific proxy in the request chain. When a proxy receives an OPTIONS request on an absoluteURI for which request forwarding is permitted, the proxy MUST check for a Max-Forwards field. If the Max-Forwards field-value is zero ("0"), the proxy MUST NOT forward the message; instead, the proxy SHOULD respond with its own communication options. If the Max-Forwards field-value is an integer greater than zero, the proxy MUST decrement the field-value when it forwards the request. If no Max-Forwards field is present in the request, then the forwarded request MUST NOT include a Max-Forwards field. AND 9.8 TRACE The TRACE method is used to invoke a remote, application-layer loop- back of the request message. The final recipient of the request SHOULD reflect the message received back to the client as the entity-body of a 200 (OK) response. The final recipient is either the origin server or the first proxy or gateway to receive a Max-Forwards value of zero (0) in the request (see section 14.31). A TRACE request MUST NOT include an entity. The requirement to decrement the Max-forwards header is not repeated here, but we should implement that as well, so as not to violate the RFC. We can skip the optional reflection of the request, though. ---------------------------------------------------------------------- Comment By: J Greely (jgreely) Date: 2002-09-03 21:44 Message: Logged In: YES user_id=604000 Done, results below. Unfortunately it didn't log the request that produced the "invalid header" error. Fortunately, ktrace did, and that output is included as well. Sep 03 21:23:09 Privoxy(-1610609172) Info: Privoxy version 3.0.0 Sep 03 21:23:09 Privoxy(-1610609172) Info: Program name: //Library/Privoxy/privoxy ... (lots of Re-Filter: lines deleted) ... Sep 03 21:23:09 Privoxy(-1610609172) Info: Listening on port 8118 for local connections only Sep 03 21:23:09 Privoxy(-1610609172) Connect: accept connection ... Sep 03 21:23:45 Privoxy(-1610609172) Connect: OK Sep 03 21:23:45 Privoxy(-1610609172) Connect: accept connection ... Sep 03 21:23:45 Privoxy(653840) Writing: HTTP/1.0 400 Invalid header received from browser 127.0.0.1 - - [03/Sep/2002:21:23:45 -0700] " " 400 2934 privoxy CALL write(0,0x9b480,0x45) 2934 privoxy GIO fd 0 wrote 69 bytes "Sep 03 21:23:45 Privoxy(-1610609172) Connect: accept connection ... " 2934 privoxy RET write 69/0x45 2934 privoxy CALL accept(0x3,0xbfffe748,0xbfffe768) 2934 privoxy CALL read(0x4,0xf007f9f8,0x1388) 2934 privoxy GIO fd 4 read 172 bytes "OPTIONS http://idisk.mac.com/jgreely/ HTTP/1.1\r User-Agent: WebDAVFS/1.2 (01208000) Darwin/6.0 (Power Macintosh)\r Accept: */*\r Host: idisk.mac.com:80\r Content-Length: 0\r \r " 2934 privoxy RET read 172/0xac ---------------------------------------------------------------------- Comment By: David Schmidt (david__schmidt) Date: 2002-09-03 18:05 Message: Logged In: YES user_id=249980 Hmmmm. I don't have a .mac account, so I can't test this myself. Before I ask to borrow yours :-), can you just trun up logging and see what if anything shows up? I.e. set /Library/Privoxy/config to log everything: debug 1 # show each GET/POST/CONNECT request debug 2 # show each connection status debug 4 # show I/O status debug 8 # show header parsing debug 16 # log all data into the logfile debug 32 # debug force feature debug 64 # debug regular expression filter debug 128 # debug fast redirects debug 256 # debug GIF de-animation debug 512 # Common Log Format debug 1024 # debug kill pop-ups debug 2048 # CGI user interface debug 4096 # Startup banner and warnings. debug 8192 # Non-fatal errors - David ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=111118&aid=604266&group_id=11118 |