Return-Path: Delivered-To: apmail-httpd-bugs-archive@httpd.apache.org Received: (qmail 95891 invoked by uid 500); 30 Jan 2003 13:03:09 -0000 Mailing-List: contact bugs-help@httpd.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Reply-To: "Apache HTTPD Bugs Notification List" Delivered-To: mailing list bugs@httpd.apache.org Received: (qmail 95880 invoked from network); 30 Jan 2003 13:03:08 -0000 Date: 30 Jan 2003 13:04:33 -0000 Message-ID: <20030130130433.12767.qmail@nagoya.betaversion.org> From: bugzilla@apache.org To: bugs@httpd.apache.org Cc: Subject: DO NOT REPLY [Bug 16593] New: - PUT/If-match (etag) handling seems to be broken X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT . ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16593 PUT/If-match (etag) handling seems to be broken Summary: PUT/If-match (etag) handling seems to be broken Product: Apache httpd-2.0 Version: HEAD Platform: PC OS/Version: Windows NT/2K Status: NEW Severity: Normal Priority: Other Component: mod_dav AssignedTo: bugs@httpd.apache.org ReportedBy: julian.reschke@gmx.de The following scenario seems to consistently fail with a 412: 1) GET existing resource, obtain etag 2) (modify content) 3) PUT with If-match: etag header -- windows scripting host example script -- var req = new ActiveXObject ("MSXML2.ServerXMLHTTP"); var uri = WScript.Arguments(0); var user = null; var pwd = null; if (WScript.Arguments.length > 1) { user = WScript.Arguments(1); } if (WScript.Arguments.length > 2) { pwd = WScript.Arguments(2); } req.open("GET", uri, false, user, pwd); req.send(); if (req.status < 200 || req.status >= 300) { WScript.Echo("unexpected status upon GET: " + req.status); WScript.Quit(2); } var etag = req.getResponseHeader("etag"); WScript.Echo("etag: " + etag); var txt = req.responseText + "\nappended line"; WScript.Echo("new content: " + txt); req.open("PUT", uri, false, user, pwd); req.setRequestHeader("if-match", etag); req.send(txt); if (req.status < 200 || req.status >= 300) { WScript.Echo("unexpected status upon PUT: " + req.status + " " + req.responseText); WScript.Quit(2); } --------------------------------------------------------------------- To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org For additional commands, e-mail: bugs-help@httpd.apache.org