trafficserver-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jpe...@apache.org
Subject [2/2] git commit: TS-2729: send server connection preface
Date Fri, 03 Oct 2014 20:54:54 GMT
TS-2729: send server connection preface


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/2a84c6b9
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/2a84c6b9
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/2a84c6b9

Branch: refs/heads/master
Commit: 2a84c6b9f6bd700c7ba4e19d0c53d92842e4d9bd
Parents: fc1ea62
Author: James Peach <jpeach@apache.org>
Authored: Fri Oct 3 13:54:22 2014 -0700
Committer: James Peach <jpeach@apache.org>
Committed: Fri Oct 3 13:54:22 2014 -0700

----------------------------------------------------------------------
 proxy/http2/Http2ClientSession.cc   | 5 -----
 proxy/http2/Http2ClientSession.h    | 2 +-
 proxy/http2/Http2ConnectionState.cc | 7 +++++++
 3 files changed, 8 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2a84c6b9/proxy/http2/Http2ClientSession.cc
----------------------------------------------------------------------
diff --git a/proxy/http2/Http2ClientSession.cc b/proxy/http2/Http2ClientSession.cc
index da329dc..3929e2e 100644
--- a/proxy/http2/Http2ClientSession.cc
+++ b/proxy/http2/Http2ClientSession.cc
@@ -88,11 +88,6 @@ Http2ClientSession::start()
   read_vio = this->do_io_read(this, INT64_MAX, this->read_buffer);
   this->do_io_write(this, INT64_MAX, this->sm_writer);
 
-  // 3.5 HTTP/2 Connection Preface. Upon establishment of a TCP connection and
-  // determination that HTTP/2 will be used by both peers, each endpoint MUST
-  // send a connection preface as a final confirmation ...
-  //this->write_buffer->write(HTTP2_CONNECTION_PREFACE, HTTP2_CONNECTION_PREFACE_LEN);
-
   send_connection_event(&this->connection_state, HTTP2_SESSION_EVENT_INIT, this);
   this->handleEvent(VC_EVENT_READ_READY, read_vio);
 }

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2a84c6b9/proxy/http2/Http2ClientSession.h
----------------------------------------------------------------------
diff --git a/proxy/http2/Http2ClientSession.h b/proxy/http2/Http2ClientSession.h
index e9fea9f..8648b43 100644
--- a/proxy/http2/Http2ClientSession.h
+++ b/proxy/http2/Http2ClientSession.h
@@ -49,7 +49,7 @@ public:
     this->ioreader = r;
   }
 
-  Http2Frame(Http2FrameType type, Http2StreamId streamid, uint8_t flags = 0) {
+  Http2Frame(Http2FrameType type, Http2StreamId streamid, uint8_t flags) {
     Http2FrameHeader hdr = { 0, (uint8_t)type, flags, streamid };
     http2_write_frame_header(hdr, make_iovec(this->hdr.raw));
   }

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2a84c6b9/proxy/http2/Http2ConnectionState.cc
----------------------------------------------------------------------
diff --git a/proxy/http2/Http2ConnectionState.cc b/proxy/http2/Http2ConnectionState.cc
index cb9640e..5030e36 100644
--- a/proxy/http2/Http2ConnectionState.cc
+++ b/proxy/http2/Http2ConnectionState.cc
@@ -116,6 +116,13 @@ Http2ConnectionState::main_event_handler(int event, void * edata)
     ink_assert(this->ua_session == NULL);
     this->ua_session = (Http2ClientSession *)edata;
 
+    // 3.5 HTTP/2 Connection Preface. Upon establishment of a TCP connection and
+    // determination that HTTP/2 will be used by both peers, each endpoint MUST
+    // send a connection preface as a final confirmation ... The server connection
+    // preface consists of a potentially empty SETTINGS frame.
+    Http2Frame settings(HTTP2_FRAME_TYPE_SETTINGS, 0, 0);
+    this->ua_session->handleEvent(HTTP2_SESSION_EVENT_XMIT, &settings);
+
     return 0;
   }
 


Mime
View raw message