# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: henrik@henriknordstrom.net-20090917222032-\ # nns17iudtio5jovr # target_branch: http://www.squid-cache.org/bzr/squid3/trunk/ # testament_sha1: 8bd7245c3b25c9acc89a037834f39bc71100b3ea # timestamp: 2009-09-18 00:21:15 +0200 # base_revision_id: amosjeffries@squid-cache.org-20090916095346-\ # m7liji2knguolxxw # # Begin patch === modified file 'src/cache_cf.cc' --- src/cache_cf.cc 2009-09-15 11:59:51 +0000 +++ src/cache_cf.cc 2009-09-17 22:11:15 +0000 @@ -1753,30 +1753,41 @@ } else if (!strcasecmp(token, "weighted-round-robin")) { p->options.weighted_roundrobin = 1; #if USE_HTCP - } else if (!strcasecmp(token, "htcp")) { p->options.htcp = 1; } else if (!strcasecmp(token, "htcp-oldsquid")) { + /* Note: This form is deprecated, replaced by htcp=oldsquid */ p->options.htcp = 1; p->options.htcp_oldsquid = 1; - } else if (!strcasecmp(token, "htcp-no-clr")) { - if (p->options.htcp_only_clr) - fatalf("parse_peer: can't set htcp-no-clr and htcp-only-clr simultaneously"); - p->options.htcp = 1; - p->options.htcp_no_clr = 1; - } else if (!strcasecmp(token, "htcp-no-purge-clr")) { - p->options.htcp = 1; - p->options.htcp_no_purge_clr = 1; - } else if (!strcasecmp(token, "htcp-only-clr")) { - if (p->options.htcp_no_clr) - fatalf("parse_peer: can't set htcp-no-clr and htcp-only-clr simultaneously"); - p->options.htcp = 1; - p->options.htcp_only_clr = 1; - } else if (!strcasecmp(token, "htcp-forward-clr")) { - p->options.htcp = 1; - p->options.htcp_forward_clr = 1; + } else if (!strncasecmp(token, "htcp=", 5) || !strncasecmp(token, "htcp-", 5)) { + /* Note: The htcp- form is deprecated, replaced by htcp= */ + p->options.htcp = 1; + char *tmp = xstrdup(token+5); + char *mode, *nextmode; + for (mode = nextmode = token; mode; mode = nextmode) { + nextmode = strchr(mode, ','); + if (nextmode) + *nextmode++ = '\0'; + if (!strcasecmp(mode, "no-clr")) { + if (p->options.htcp_only_clr) + fatalf("parse_peer: can't set htcp-no-clr and htcp-only-clr simultaneously"); + p->options.htcp_no_clr = 1; + } else if (!strcasecmp(mode, "no-purge-clr")) { + p->options.htcp_no_purge_clr = 1; + } else if (!strcasecmp(mode, "only-clr")) { + if (p->options.htcp_no_clr) + fatalf("parse_peer: can't set htcp no-clr and only-clr simultaneously"); + p->options.htcp_only_clr = 1; + } else if (!strcasecmp(mode, "forward-clr")) { + p->options.htcp_forward_clr = 1; + } else if (!strcasecmp(mode, "oldsquid")) { + p->options.htcp_oldsquid = 1; + } else { + fatalf("invalid HTCP mode '%s'", mode); + } + } + safe_free(tmp); #endif - } else if (!strcasecmp(token, "no-netdb-exchange")) { p->options.no_netdb_exchange = 1; === modified file 'src/cf.data.pre' --- src/cf.data.pre 2009-09-15 23:49:34 +0000 +++ src/cf.data.pre 2009-09-17 22:20:32 +0000 @@ -922,7 +922,7 @@ NOTE: The default if no htcp_access lines are present is to deny all traffic. This default may cause problems with peers - using the htcp or htcp-oldsquid options. + using the htcp option. This clause only supports fast acl types. See http://wiki.squid-cache.org/SquidFaq/SquidAcl for details. @@ -1682,22 +1682,23 @@ htcp Send HTCP, instead of ICP, queries to the neighbor. You probably also want to set the "icp-port" to 4827 - instead of 3130. - - htcp-oldsquid Send HTCP to old Squid versions. - - htcp-no-clr Send HTCP to the neighbor but without + instead of 3130. This directive accepts a comma separated + list of options described below. + + htcp=oldsquid Send HTCP to old Squid versions (2.5 or earlier). + + htcp=no-clr Send HTCP to the neighbor but without sending any CLR requests. This cannot be used with - htcp-only-clr. - - htcp-only-clr Send HTCP to the neighbor but ONLY CLR requests. - This cannot be used with htcp-no-clr. - - htcp-no-purge-clr + only-clr. + + htcp=only-clr Send HTCP to the neighbor but ONLY CLR requests. + This cannot be used with no-clr. + + htcp=no-purge-clr Send HTCP to the neighbor including CLRs but only when they do not result from PURGE requests. - htcp-forward-clr + htcp=forward-clr Forward any HTCP CLR requests this proxy receives to the peer. # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWS7xQnQABFH/gER0RABz//// WkXeJL////5gCN2+zuWOoAHTCNtQ2aiqVSi2w1FP1NE9QyADQADTTQBoAAAAASkJpTxpiTU2pk9R kNBoAAAAAAAcZMmjENNDATQxNGmTEDIwmjTTCDJhIiQIJiYTVP00ajNJij0yZT1DaaIGj1Mjynqe ocZMmjENNDATQxNGmTEDIwmjTTCDJhJIBAEyGmqemk02go8qf6jVPU9PSaagAANHqWiKkVA0n7/A iUNN6OGp+e2gRrKwevgq4dnKH1gaFOR50OlPgifWOdKP4WVqQxLBalLHxEpBQlgo8X7c5xJf3ZBN ibAZY7iryfEsfOmyT4S1EgXBOQL050tw/eOr5i8r+uVsqmt8ofwaBpNg3/n0S3acbMCbHndHnabI Z2RGEUW71WO24xFZXc314/FrdzAXCiouc3gOiMWNU8hns4uwZKepB4Eh6lBxBIBhZsGfGyoqwn6P koh8TotsrBSkF/UxiK23PLarXgY4nMgxEYwij5WNlVTJewZTi/E82EwoHVwJhbnwuW20BU0vTSBY jEwHqyy5HURcMg5hqMHDtWvrsQMis05AbEpUjspRZeEoUUgesy8n5wCtq3D2FEjO0mZ2DILNWkqK THrdr1DF6k1xowQs0pyZtZLDPsbCqucVdR2ly+DOirC2MVa0lt5UNesIPTRtTSXUFgFy4NtswSnE xP3/IPBeZ4iqJnUcEHXx4+LP4fPGnkeFz2s9y37nKwDoIMd9c69x7ziD7cuXftiI/URr1u0OBpZ2 iGUk8YU9NBI5u9lDsDgSE7gSOgNcMdx+ZNYAisEVKJeUHjF0Sg85Dz1xXtYKMWMEmZ0Hfz2XoJWo GRGVPvH48tOjHuztC+QMrgWwrHPYwGgsAxYckmQVi06n4GQnvFaECZuNwWeJ92O+uOaXpYXgjaBo yQZkEDgYTgkVsG82oNisKGwvL7jQMi2iUy8iMWnBRfUTCotI4EWSiPCDlciNgzjTcUJkEDDbKVcB gvMDUqPtMzJlStISCF7RssC4qKjPEY7wtIticdAwwOmKDfQcXt+EE71zC0ks94+EyaZw5E09bB7j 7hdwXmBK9rnM5MFlSrH220Hm4vctSi2tIejUcaBaXjyhQ2bEHegzjrcqzhAhtMDgTSTaZmMrDOa0 Y2kKx4xkOe1RAW0gEBaqsNjWjjnFvAOBqSNXDoOeSo60ymyLoFzKgE7LLHghMVCwQgXUnKXDW2D5 q0rC95c82kXH23zFeMSjQaZvQa+aDU7xqqCxKMmDET9gZARl0Gp6PHgw+3oL6+DB7hgvkMNUsBtN WVgy4eQ4ZlQ3DvMbCtLUdobTCSWkBYMgk5gPaIKLjxVtNDb+mP/UbsUaLx9fHyoFTojy+anyQ4Zd TVhWjN1S43p0MaNRCUiZVQz/hXYNYF1PZKdQHQcBtCDlOdB9YFXwPMWVeRIxR3JTMA9Plyt3B2fp JluBYTIF8Ilrz34n1TAoRcpJcEcVorXNAsYY9Nx7ys+A4oOIBxM8/vJmxByPgYjjfqxoVjg1Es9o x8So1HGEunFtpTuKelKGEyyo4UfSDhYqr9R1Ks4cXYepQLE6HcZAvgwGMyJY7k36kJbac10NYVtl YJhznwgzDK4beezkPiTRuO0YkJ5ERTBbeByO0xQjKZHJWEGQLgRqFZG6jkqI1midApClJ3HPlvkk biB7FUqydnZzOvnvPGUp8jJYHj1DeIYhn3BMyUH5DktxGMFribiSTS00UHngR2NxGPss8yu0V/yD /yz9CAIKzdqJwis2Di0yc/nDhYbSNWQGlEqWi7JlyQWgFYnCiTQdg9i01WArDicS0zzt+RZpDQVK PByUD+wxmAaqpuwxE8MezFUU1SbceldFRC3QbSpUSRfoealajKfEesCyFwmIr+DCgsUfyR1mUHAy E/+EFirs676LGhvuBuUvodQifvW5Zngu9kuIh0girPzYG7jwDl2lFMSCRWhqLulLE5N2nzzchYUL UrBppJpGH20GdABeHp+pdD1FVWSZeK+YsnHWugOEHQOKXl9PmoiDC20XkfE6iG+0VCTB+vAuDr2q h1+cSvmvdUCGFD3qBeSWw70pvLhhB8Eup6Kwq/QczMJFFs73sGMbgXhE6b6nKk4OkLy37wUbMihd qDPMgrAyJEExRKJEedBBHzhi2JMoqNzW8glBwux2fc5jarBBqwiQXAoFelbSIE2IvkJdyDHhpU3J lWlrQVHrz4oRpmFEMZmWfP2qYIuVwI9RxTSurnYUBW1oJC9ANvmPil+4zEGiklzjVQsyqrWnUdPW LixaLnpahENQvx7Djfg4oVjVYwlnaMeR5HkLqISPtQOozArOBaap5cXAx32CVNhdv8tPYu9i+wO0 uvEhWyVMFBg9cFTJgUUuwkTOwTlAEOyR23PvJAtFkfgOMxhPK1uJNtMOFdq7RIJ0SuSRHAD4xVSJ DAyCc8VDHDr9JiQO5iwoLVUDQ+LME495G4+MxJUzD+xwwZA4g2wAjAyVwpFXmH0VVfaXhamMnQS+ yJf1cVAicIsWYtfEyX8SyMEg0WKoF5eDlYyrIkV2ISgWqZJ6yKBQtHdbA6m4HhsFvLmC14BdnLjt DFKghKRNLSyGCLb8SEMWEWHd1vINE9EQ0Da1yu+lUzyBFJDdsTGdNaJ1hPcYLFTkAUFq29eqB5Fe 2M0GhUgjUCmuSrLzrJSk+Qd6ChQoZcxhw5FgMIHm+bvW8/R/+LuSKcKEgXeKE6A=