Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(682)

Unified Diff: net/tools/testserver/testserver.py

Issue 1378613004: Set Token-Binding HTTP header (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@tb-tls-ext-new
Patch Set: Add UMA logging of Token Binding support and NetLog event for Token Binding key lookup Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/tools/testserver/testserver.py
diff --git a/net/tools/testserver/testserver.py b/net/tools/testserver/testserver.py
index 7919f87b8f079dea4fd00546bae5a2c1c3cfbace..1ed7bf0b557ce50dc07c19d7306a879b5f0002a4 100755
--- a/net/tools/testserver/testserver.py
+++ b/net/tools/testserver/testserver.py
@@ -340,6 +340,7 @@ class TestPageHandler(testserver_base.BasePageHandler):
self.GetSSLSessionCacheHandler,
self.SSLManySmallRecords,
self.GetChannelID,
+ self.GetTokenBindingEKM,
self.GetClientCert,
self.ClientCipherListHandler,
self.CloseSocketHandler,
@@ -1517,6 +1518,22 @@ class TestPageHandler(testserver_base.BasePageHandler):
self.wfile.write(hashlib.sha256(channel_id).digest().encode('base64'))
return True
+ def GetTokenBindingEKM(self):
+ """Send a reply containing the EKM value for token binding from the TLS
+ layer."""
+
+ if not self._ShouldHandleRequest('/tokbind-ekm'):
+ return False
+
+ ekm = self.server.tlsConnection.session.exportKeyingMaterial(
+ self.server.tlsConnection.version, "EXPORTER-Token-Binding", "",
+ False, 32)
+ self.send_response(200)
+ self.send_header('Content-Type', 'application/octet-stream')
+ self.end_headers()
+ self.wfile.write(ekm)
+ return True
+
def GetClientCert(self):
"""Send a reply whether a client certificate was provided."""

Powered by Google App Engine
This is Rietveld 408576698