Lines Matching refs:tls_ctx
162 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_icsk_clean_acked() local
168 if (!tls_ctx) in tls_icsk_clean_acked()
171 ctx = tls_offload_ctx_tx(tls_ctx); in tls_icsk_clean_acked()
197 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_device_sk_destruct() local
198 struct tls_offload_context_tx *ctx = tls_offload_ctx_tx(tls_ctx); in tls_device_sk_destruct()
200 tls_ctx->sk_destruct(sk); in tls_device_sk_destruct()
202 if (tls_ctx->tx_conf == TLS_HW) { in tls_device_sk_destruct()
210 tls_device_queue_ctx_destruction(tls_ctx); in tls_device_sk_destruct()
216 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_device_free_resources_tx() local
218 tls_free_partial_record(sk, tls_ctx); in tls_device_free_resources_tx()
223 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_offload_tx_resync_request() local
226 WARN_ON(test_and_set_bit(TLS_TX_SYNC_SCHED, &tls_ctx->flags)); in tls_offload_tx_resync_request()
230 static void tls_device_resync_tx(struct sock *sk, struct tls_context *tls_ctx, in tls_device_resync_tx() argument
242 rcd_sn = tls_ctx->tx.rec_seq; in tls_device_resync_tx()
246 netdev = rcu_dereference_protected(tls_ctx->netdev, in tls_device_resync_tx()
256 clear_bit_unlock(TLS_TX_SYNC_SCHED, &tls_ctx->flags); in tls_device_resync_tx()
438 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_push_data() local
439 struct tls_prot_info *prot = &tls_ctx->prot_info; in tls_push_data()
440 struct tls_offload_context_tx *ctx = tls_offload_ctx_tx(tls_ctx); in tls_push_data()
462 if (tls_is_partially_sent_record(tls_ctx)) { in tls_push_data()
463 rc = tls_push_partial_record(sk, tls_ctx, flags); in tls_push_data()
538 rc = tls_device_record_close(sk, tls_ctx, record, in tls_push_data()
552 tls_ctx, in tls_push_data()
561 tls_ctx->pending_open_record_frags = more; in tls_push_data()
572 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_device_sendmsg() local
576 mutex_lock(&tls_ctx->tx_lock); in tls_device_sendmsg()
590 mutex_unlock(&tls_ctx->tx_lock); in tls_device_sendmsg()
597 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_device_sendpage() local
607 mutex_lock(&tls_ctx->tx_lock); in tls_device_sendpage()
615 if (tls_ctx->zerocopy_sendfile) { in tls_device_sendpage()
633 mutex_unlock(&tls_ctx->tx_lock); in tls_device_sendpage()
722 static void tls_device_resync_rx(struct tls_context *tls_ctx, in tls_device_resync_rx() argument
725 struct tls_offload_context_rx *rx_ctx = tls_offload_ctx_rx(tls_ctx); in tls_device_resync_rx()
730 netdev = rcu_dereference(tls_ctx->netdev); in tls_device_resync_rx()
796 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_device_rx_resync_new_rec() local
805 if (tls_ctx->rx_conf != TLS_HW) in tls_device_rx_resync_new_rec()
807 if (unlikely(test_bit(TLS_RX_DEV_DEGRADED, &tls_ctx->flags))) in tls_device_rx_resync_new_rec()
810 prot = &tls_ctx->prot_info; in tls_device_rx_resync_new_rec()
811 rx_ctx = tls_offload_ctx_rx(tls_ctx); in tls_device_rx_resync_new_rec()
812 memcpy(rcd_sn, tls_ctx->rx.rec_seq, prot->rec_seq_size); in tls_device_rx_resync_new_rec()
856 tls_device_resync_rx(tls_ctx, sk, seq, rcd_sn); in tls_device_rx_resync_new_rec()
859 static void tls_device_core_ctrl_rx_resync(struct tls_context *tls_ctx, in tls_device_core_ctrl_rx_resync() argument
895 struct tls_prot_info *prot = &tls_ctx->prot_info; in tls_device_core_ctrl_rx_resync()
898 memcpy(rcd_sn, tls_ctx->rx.rec_seq, prot->rec_seq_size); in tls_device_core_ctrl_rx_resync()
901 tls_device_resync_rx(tls_ctx, sk, tcp_sk(sk)->copied_seq, in tls_device_core_ctrl_rx_resync()
907 tls_device_reencrypt(struct sock *sk, struct tls_context *tls_ctx) in tls_device_reencrypt() argument
909 struct tls_sw_context_rx *sw_ctx = tls_sw_ctx_rx(tls_ctx); in tls_device_reencrypt()
917 switch (tls_ctx->crypto_recv.info.cipher_type) { in tls_device_reencrypt()
924 cipher_sz = &tls_cipher_size_desc[tls_ctx->crypto_recv.info.cipher_type]; in tls_device_reencrypt()
1004 int tls_device_decrypted(struct sock *sk, struct tls_context *tls_ctx) in tls_device_decrypted() argument
1006 struct tls_offload_context_rx *ctx = tls_offload_ctx_rx(tls_ctx); in tls_device_decrypted()
1007 struct tls_sw_context_rx *sw_ctx = tls_sw_ctx_rx(tls_ctx); in tls_device_decrypted()
1027 tls_ctx->rx.rec_seq, rxm->full_len, in tls_device_decrypted()
1030 if (unlikely(test_bit(TLS_RX_DEV_DEGRADED, &tls_ctx->flags))) { in tls_device_decrypted()
1038 return tls_device_reencrypt(sk, tls_ctx); in tls_device_decrypted()
1050 tls_device_core_ctrl_rx_resync(tls_ctx, ctx, sk, skb); in tls_device_decrypted()
1055 return tls_device_reencrypt(sk, tls_ctx); in tls_device_decrypted()
1076 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_set_device_offload() local
1077 struct tls_prot_info *prot = &tls_ctx->prot_info; in tls_set_device_offload()
1331 struct tls_context *tls_ctx = tls_get_ctx(sk); in tls_device_offload_cleanup_rx() local
1335 netdev = rcu_dereference_protected(tls_ctx->netdev, in tls_device_offload_cleanup_rx()
1340 netdev->tlsdev_ops->tls_dev_del(netdev, tls_ctx, in tls_device_offload_cleanup_rx()
1343 if (tls_ctx->tx_conf != TLS_HW) { in tls_device_offload_cleanup_rx()
1345 rcu_assign_pointer(tls_ctx->netdev, NULL); in tls_device_offload_cleanup_rx()
1347 set_bit(TLS_RX_DEV_CLOSED, &tls_ctx->flags); in tls_device_offload_cleanup_rx()