Return-Path: Delivered-To: apmail-httpd-cvs-archive@httpd.apache.org Received: (qmail 96077 invoked by uid 500); 18 Nov 2001 10:11:17 -0000 Mailing-List: contact cvs-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list cvs@httpd.apache.org Received: (qmail 96066 invoked by uid 500); 18 Nov 2001 10:11:16 -0000 Delivered-To: apmail-httpd-2.0-cvs@apache.org Sender: minfrin Message-ID: <3BF788C7.18C531EC@sharp.fm> Date: Sun, 18 Nov 2001 11:09:11 +0100 From: Graham Leggett X-Mailer: Mozilla 4.73 [en] (X11; I; Linux 2.4.7 ppc) X-Accept-Language: en MIME-Version: 1.0 To: dev@httpd.apache.org CC: httpd-2.0-cvs@apache.org Subject: Re: cvs commit: httpd-2.0/modules/proxy proxy_http.c References: <20011117220449.61283.qmail@icarus.apache.org> Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg=sha1; boundary="------------msE2E5332EFCAB44D54858242B" X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N This is a cryptographically signed message in MIME format. --------------msE2E5332EFCAB44D54858242B Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit ianh@apache.org wrote: > p_conn->close += ap_proxy_liststr(apr_table_get(r->headers_in, > "Connection"), "close"); > + /* sub-requests never use keepalives */ > + if (r->main) { > + p_conn->close++; > + } > + Just checking - does this apply a connection: close to the subrequest, or the main request? (It should apply it to the subrequest only, and leave the main request alone). > + /* for sub-requests, ignore freshness/expiry headers */ > + if (r->main) { > + if (headers_in[counter].key == NULL || headers_in[counter].val == NULL > + || !apr_strnatcasecmp(headers_in[counter].key, "Cache-Control") > + || !apr_strnatcasecmp(headers_in[counter].key, "If-Modified-Since") > + || !apr_strnatcasecmp(headers_in[counter].key, "If-None-Match")) { > + continue; > + } > + } The stripping of conditional headers makes sense, but it is incomplete - you should be ignoring If-Unmodified-Since, If-Match and If-Range (remembering these headers from memory, check against RFC2616). Why are you stripping Cache-Control? The same cache-control conditions would be valid for the subrequest as for the main request - the cache-control conditions should be preserved. Regards, Graham -- ----------------------------------------- minfrin@sharp.fm "There's a moon over Bourbon Street tonight..." --------------msE2E5332EFCAB44D54858242B Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIIHyAYJKoZIhvcNAQcCoIIHuTCCB7UCAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHAaCC BcYwggKVMIIB/qADAgECAgMEyOwwDQYJKoZIhvcNAQEEBQAwgZIxCzAJBgNVBAYTAlpBMRUw EwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEPMA0GA1UEChMGVGhh d3RlMR0wGwYDVQQLExRDZXJ0aWZpY2F0ZSBTZXJ2aWNlczEoMCYGA1UEAxMfUGVyc29uYWwg RnJlZW1haWwgUlNBIDIwMDAuOC4zMDAeFw0wMTA1MTEwMDE3NDZaFw0wMjA1MTEwMDE3NDZa MF0xEDAOBgNVBAQTB0xlZ2dldHQxDzANBgNVBCoTBkdyYWhhbTEXMBUGA1UEAxMOR3JhaGFt IExlZ2dldHQxHzAdBgkqhkiG9w0BCQEWEG1pbmZyaW5Ac2hhcnAuZm0wgZ8wDQYJKoZIhvcN AQEBBQADgY0AMIGJAoGBALX2zJvQ/9l+sCEpkfMNNwtnMcF8vmPM2sRpibT5nR87bYWyLVCt XXWXU+UyDOkiQJt6UahnmYZV7u40a1/osbNnjHjyNybejOuUFjHYy1gDwjsElnxYbRRA2SZc CmrZ4V0QFI0ZKuimGryZQj77UroiIV+Qq+v+PaxDEGwiqJqnAgMBAAGjLTArMBsGA1UdEQQU MBKBEG1pbmZyaW5Ac2hhcnAuZm0wDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQQFAAOBgQCO l5bH8JXuFM+EZi01jfezzKML5iPBHx4BDj/4gl2lXw1t0v6o+9442F6TpnOVAk3LL1KTupvc HfM+Bn71iWuD8ASCoSsmVpeoCbOv3lPGltrDgywcmM8phZyK1hHLvvJgfd4IMZbuH/rm0ZWp WjRORFfik8yuO9DgahgjgAhkujCCAykwggKSoAMCAQICAQwwDQYJKoZIhvcNAQEEBQAwgdEx CzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93 bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24g U2VydmljZXMgRGl2aXNpb24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBD QTErMCkGCSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw0wMDA4 MzAwMDAwMDBaFw0wMjA4MjkyMzU5NTlaMIGSMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2Vz dGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UE CxMUQ2VydGlmaWNhdGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJT QSAyMDAwLjguMzAwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAN4zMqZjxwklRT7Sbngn Z4HF2ogZgpcO40QpimM1Km1wPPrcrvfudG8wvDOQf/k0caCjbZjxw0+iZdsN+kvx1t1hpfmF zVWaNRqdknWoJ67Ycvm6AvbXsJHeHOmr4BgDqHxDQlBRh4M88Dm0m1SKE4f/s5udSWYALQmJ 7JRr6aFpAgMBAAGjTjBMMCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFQcml2YXRlTGFiZWwx LTI5NzASBgNVHRMBAf8ECDAGAQH/AgEAMAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQQFAAOB gQBzG28mZYv/FTRLWWKK7US+ScfoDbuPuQ1qJipihB+4h2N0HG23zxpTkUvhzeY42e1Q9Dps NJKs5pKcbsEjAcIJp+9LrnLdBmf1UG8uWLi2C8FQV7XsHNfvF7bViJu3ooga7TlbOX00/LaW GCVNavSdxcORL6mWuAU8Uvzd6WIDSDGCAcowggHGAgEBMIGaMIGSMQswCQYDVQQGEwJaQTEV MBMGA1UECBMMV2VzdGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xDzANBgNVBAoTBlRo YXd0ZTEdMBsGA1UECxMUQ2VydGlmaWNhdGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFs IEZyZWVtYWlsIFJTQSAyMDAwLjguMzACAwTI7DAJBgUrDgMCGgUAoIGGMBgGCSqGSIb3DQEJ AzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTAxMTExODEwMDkxMlowIwYJKoZIhvcN AQkEMRYEFMPUS5LN/Q0UXHESE4Khk6HN/0h+MCcGCSqGSIb3DQEJDzEaMBgwBwYFKw4DAgcw DQYIKoZIhvcNAwICASgwDQYJKoZIhvcNAQEBBQAEgYB9fcEOL5MZWDBDCTBve66kwFH5EiH8 +KP75jHBJoIaEAKi492Kc3wbikF2bueuBt30Papct8bUSJBHlETsPA9XTEZwaHg8n3F7MAOK wkUBmZPYdR0wnkNfxCu7edaV0VrcEo8eYbfVnzi/flgJTkc/PA1jimTkQZLjkeiHA4rehA== --------------msE2E5332EFCAB44D54858242B--