| Index: net/socket/ssl_client_socket_openssl.h
 | 
| diff --git a/net/socket/ssl_client_socket_openssl.h b/net/socket/ssl_client_socket_openssl.h
 | 
| index dbceeafa3fc5dbe0dc4f9ae8c4f348dfacd09220..a41848d802a34d7fdeb6aa88d28395bdeb2c591e 100644
 | 
| --- a/net/socket/ssl_client_socket_openssl.h
 | 
| +++ b/net/socket/ssl_client_socket_openssl.h
 | 
| @@ -210,6 +210,32 @@ class SSLClientSocketOpenSSL : public SSLClientSocket {
 | 
|    void OnPrivateKeySignComplete(Error error,
 | 
|                                  const std::vector<uint8_t>& signature);
 | 
|  
 | 
| +  // Token Binding Extension callbacks. The Add and Parse callbacks are wrappers
 | 
| +  // around the instance methods.
 | 
| +  static int TokenBindingAddCallback(SSL* ssl,
 | 
| +                                     unsigned int extension_value,
 | 
| +                                     const uint8_t** out,
 | 
| +                                     size_t* out_len,
 | 
| +                                     int* out_alert_value,
 | 
| +                                     void* add_arg);
 | 
| +  static void TokenBindingFreeCallback(SSL* ssl,
 | 
| +                                       unsigned int extension_value,
 | 
| +                                       const uint8_t* out,
 | 
| +                                       void* add_arg);
 | 
| +  static int TokenBindingParseCallback(SSL* ssl,
 | 
| +                                       unsigned int extension_value,
 | 
| +                                       const uint8_t* contents,
 | 
| +                                       size_t contents_len,
 | 
| +                                       int* out_alert_value,
 | 
| +                                       void* parse_arg);
 | 
| +
 | 
| +  int TokenBindingAdd(const uint8_t** out,
 | 
| +                      size_t* out_len,
 | 
| +                      int* out_alert_value);
 | 
| +  int TokenBindingParse(const uint8_t* contents,
 | 
| +                        size_t contents_len,
 | 
| +                        int* out_alert_value);
 | 
| +
 | 
|    bool transport_send_busy_;
 | 
|    bool transport_recv_busy_;
 | 
|  
 | 
| @@ -281,6 +307,8 @@ class SSLClientSocketOpenSSL : public SSLClientSocket {
 | 
|  
 | 
|    // The service for retrieving Channel ID keys.  May be NULL.
 | 
|    ChannelIDService* channel_id_service_;
 | 
| +  bool tb_was_negotiated_;
 | 
| +  TokenBindingParam tb_negotiated_param_;
 | 
|  
 | 
|    // OpenSSL stuff
 | 
|    SSL* ssl_;
 | 
| 
 |