Lines Matching refs:tcp
12 #include <linux/tcp.h>
22 struct tcp_handle *tcp = conn_impl->connect_handle;
30 lock_sock(tcp->sock->sk);
31 ctx = tls_get_ctx(tcp->sock->sk);
53 release_sock(tcp->sock->sk);
60 struct tcp_handle *tcp =
62 if (!tcp)
66 ret = tcp->sock->ops->setsockopt(tcp->sock, SOL_TCP, TCP_ULP,
70 tcp->connect->send_crypto_info.info.version = TLS_1_2_VERSION;
71 tcp->connect->send_crypto_info.info.cipher_type =
74 memcpy(tcp->connect->send_crypto_info.key, tcp->connect->send_key,
76 memcpy(tcp->connect->send_crypto_info.iv,
78 memcpy(tcp->connect->send_crypto_info.salt,
81 memcpy(tcp->connect->send_crypto_info.rec_seq,
85 ret = tcp->sock->ops->setsockopt(tcp->sock, SOL_TLS, TLS_TX,
86 KERNEL_SOCKPTR(&(tcp->connect->send_crypto_info)),
87 sizeof(tcp->connect->send_crypto_info));
92 update_key(tcp->connect->recv_key, key_meterial, HKDF_TYPE_IV);
93 tcp->connect->recv_crypto_info.info.version = TLS_1_2_VERSION;
94 tcp->connect->recv_crypto_info.info.cipher_type =
97 memcpy(tcp->connect->recv_crypto_info.key, tcp->connect->recv_key,
99 memcpy(tcp->connect->recv_crypto_info.iv,
101 memcpy(tcp->connect->recv_crypto_info.salt,
104 memcpy(tcp->connect->recv_crypto_info.rec_seq,
109 ret = tcp->sock->ops->setsockopt(tcp->sock, SOL_TLS, TLS_RX,
110 KERNEL_SOCKPTR(&(tcp->connect->recv_crypto_info)),
111 sizeof(tcp->connect->recv_crypto_info));
117 static int tls_set_tx(struct tcp_handle *tcp)
123 ret = update_key(tcp->connect->send_key, new_key, HKDF_TYPE_REKEY);
126 memcpy(tcp->connect->send_key, new_key, HMDFS_KEY_SIZE);
127 ret = update_key(tcp->connect->send_key, key_meterial, HKDF_TYPE_IV);
131 memcpy(tcp->connect->send_crypto_info.key, tcp->connect->send_key,
133 memcpy(tcp->connect->send_crypto_info.iv,
135 memcpy(tcp->connect->send_crypto_info.salt,
138 memcpy(tcp->connect->send_crypto_info.rec_seq,
144 tls_crypto_set_key(tcp->connect, 1);
148 static int tls_set_rx(struct tcp_handle *tcp)
154 ret = update_key(tcp->connect->recv_key, new_key, HKDF_TYPE_REKEY);
157 memcpy(tcp->connect->recv_key, new_key, HMDFS_KEY_SIZE);
158 ret = update_key(tcp->connect->recv_key, key_meterial, HKDF_TYPE_IV);
162 memcpy(tcp->connect->recv_crypto_info.key, tcp->connect->recv_key,
164 memcpy(tcp->connect->recv_crypto_info.iv,
166 memcpy(tcp->connect->recv_crypto_info.salt,
169 memcpy(tcp->connect->recv_crypto_info.rec_seq,
174 tls_crypto_set_key(tcp->connect, 0);
181 struct tcp_handle *tcp =
183 if (!tcp)
187 ret = tls_set_tx(tcp);
194 ret = tls_set_rx(tcp);