mirror of
https://github.com/nghttp2/nghttp2.git
synced 2025-12-07 02:28:53 +08:00
nghttpx: Use omit minor version in case of HTTP/2 in via header and accesslog
This commit is contained in:
@@ -349,7 +349,7 @@ func TestH1H2GenerateVia(t *testing.T) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("Error st.http1() = %v", err)
|
t.Fatalf("Error st.http1() = %v", err)
|
||||||
}
|
}
|
||||||
if got, want := res.header.Get("Via"), "2.0 nghttpx"; got != want {
|
if got, want := res.header.Get("Via"), "2 nghttpx"; got != want {
|
||||||
t.Errorf("Via: %v; want %v", got, want)
|
t.Errorf("Via: %v; want %v", got, want)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -374,7 +374,7 @@ func TestH1H2AppendVia(t *testing.T) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("Error st.http1() = %v", err)
|
t.Fatalf("Error st.http1() = %v", err)
|
||||||
}
|
}
|
||||||
if got, want := res.header.Get("Via"), "bar, 2.0 nghttpx"; got != want {
|
if got, want := res.header.Get("Via"), "bar, 2 nghttpx"; got != want {
|
||||||
t.Errorf("Via: %v; want %v", got, want)
|
t.Errorf("Via: %v; want %v", got, want)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ func TestH2H1StripAddXff(t *testing.T) {
|
|||||||
// from backend server.
|
// from backend server.
|
||||||
func TestH2H1GenerateVia(t *testing.T) {
|
func TestH2H1GenerateVia(t *testing.T) {
|
||||||
st := newServerTester(nil, t, func(w http.ResponseWriter, r *http.Request) {
|
st := newServerTester(nil, t, func(w http.ResponseWriter, r *http.Request) {
|
||||||
if got, want := r.Header.Get("Via"), "2.0 nghttpx"; got != want {
|
if got, want := r.Header.Get("Via"), "2 nghttpx"; got != want {
|
||||||
t.Errorf("Via: %v; want %v", got, want)
|
t.Errorf("Via: %v; want %v", got, want)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -146,7 +146,7 @@ func TestH2H1GenerateVia(t *testing.T) {
|
|||||||
// header field to and from backend server.
|
// header field to and from backend server.
|
||||||
func TestH2H1AppendVia(t *testing.T) {
|
func TestH2H1AppendVia(t *testing.T) {
|
||||||
st := newServerTester(nil, t, func(w http.ResponseWriter, r *http.Request) {
|
st := newServerTester(nil, t, func(w http.ResponseWriter, r *http.Request) {
|
||||||
if got, want := r.Header.Get("Via"), "foo, 2.0 nghttpx"; got != want {
|
if got, want := r.Header.Get("Via"), "foo, 2 nghttpx"; got != want {
|
||||||
t.Errorf("Via: %v; want %v", got, want)
|
t.Errorf("Via: %v; want %v", got, want)
|
||||||
}
|
}
|
||||||
w.Header().Add("Via", "bar")
|
w.Header().Add("Via", "bar")
|
||||||
|
|||||||
@@ -55,8 +55,10 @@ std::string create_error_html(unsigned int status_code) {
|
|||||||
std::string create_via_header_value(int major, int minor) {
|
std::string create_via_header_value(int major, int minor) {
|
||||||
std::string hdrs;
|
std::string hdrs;
|
||||||
hdrs += static_cast<char>(major + '0');
|
hdrs += static_cast<char>(major + '0');
|
||||||
|
if (major < 2) {
|
||||||
hdrs += ".";
|
hdrs += ".";
|
||||||
hdrs += static_cast<char>(minor + '0');
|
hdrs += static_cast<char>(minor + '0');
|
||||||
|
}
|
||||||
hdrs += " nghttpx";
|
hdrs += " nghttpx";
|
||||||
return hdrs;
|
return hdrs;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -197,8 +197,10 @@ void upstream_accesslog(const std::vector<LogFragment> &lfv, LogSpec *lgsp) {
|
|||||||
std::tie(p, avail) = copy(lgsp->path, avail, p);
|
std::tie(p, avail) = copy(lgsp->path, avail, p);
|
||||||
std::tie(p, avail) = copy(" HTTP/", avail, p);
|
std::tie(p, avail) = copy(" HTTP/", avail, p);
|
||||||
std::tie(p, avail) = copy(util::utos(lgsp->major).c_str(), avail, p);
|
std::tie(p, avail) = copy(util::utos(lgsp->major).c_str(), avail, p);
|
||||||
|
if (lgsp->major < 2) {
|
||||||
std::tie(p, avail) = copy(".", avail, p);
|
std::tie(p, avail) = copy(".", avail, p);
|
||||||
std::tie(p, avail) = copy(util::utos(lgsp->minor).c_str(), avail, p);
|
std::tie(p, avail) = copy(util::utos(lgsp->minor).c_str(), avail, p);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SHRPX_LOGF_STATUS:
|
case SHRPX_LOGF_STATUS:
|
||||||
std::tie(p, avail) = copy(util::utos(lgsp->status).c_str(), avail, p);
|
std::tie(p, avail) = copy(util::utos(lgsp->status).c_str(), avail, p);
|
||||||
|
|||||||
Reference in New Issue
Block a user