2 Use a weak etag comparison:
4 http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16451
6 (similar but simpler than the fix in CVS HEAD)
8 --- httpd-2.0.45/modules/dav/main/util.c.davetag 2003-05-19 14:43:45.000000000 +0100
9 +++ httpd-2.0.45/modules/dav/main/util.c 2003-05-19 14:41:04.000000000 +0100
10 @@ -1072,7 +1072,17 @@
11 switch(state_list->type) {
14 - int mismatch = strcmp(state_list->etag, etag);
16 + const char *given_etag = state_list->etag;
17 + const char *current_etag = etag;
19 + if (given_etag[0] == 'W' && given_etag[1] == '/')
22 + if (current_etag[0] == 'W' && current_etag[1] == '/')
25 + mismatch = strcmp(given_etag, current_etag);
27 if (state_list->condition == DAV_IF_COND_NORMAL && mismatch) {