From patchwork Mon Apr 8 13:26:13 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 47932 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:24a8:b0:1a3:b6bb:3029 with SMTP id m40csp2473210pzd; Mon, 8 Apr 2024 06:26:36 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWGVOrg3bmLtwqlOaiGgWROQ5ovqPwbmOLPBicMhZzcC1h2o8JBOFmJiV+cbcAxdC1guhjo9nSRnLkvnSlE7y2QfLBeHL/AB7Gviw== X-Google-Smtp-Source: AGHT+IF5xPdKm7wdslKD0FQgNWXholomme46K71AfvI5+nfo/KGIBTkfMmoYCYQ3sRsqmKHFXsLq X-Received: by 2002:a2e:8687:0:b0:2d7:11:6793 with SMTP id l7-20020a2e8687000000b002d700116793mr3241957lji.7.1712582796611; Mon, 08 Apr 2024 06:26:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1712582796; cv=none; d=google.com; s=arc-20160816; b=d52zQBYiYvQTFH0NKtbOAB57F1830mDeAm5DmlG0dh1EQElYGOBoDaMvhixIANUImc e4TQgGo2DcF6zkBi0Mj5SNOAdH3R0R+A4KBcvFtCcGxdzZ284rHBgyGlWAjItbKK5cQc TtVUT+2N6Zz/k7E/ntLjD41Mhv3YFZdRZpWU+ivIfGmr/H6yDCRbXEn7yqNGDJPL/R/m UCa1UkvYCfUuwdQQsNpQ+kMrxZfDK1jdUpL44ch1rVDmL1ufqmxpnzipZJ9SSnNY8qgv 8h5MkAEL7xA1+/qgLAvXDZ4DOovY/09rjSmhBq/FaUNpLyeTMmLAIMr/nq5R8xpzJdeJ ZpSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:date:to:from:message-id :dkim-signature:delivered-to; bh=FtoxOF7W70Pn9IBoSKcnY7VcYTQ/c02qO3mR//E3moU=; fh=HnHYuZ9XgUo86ZRXTLWWmQxhslYEI9B9taZ5X1DLFfc=; b=s0wI6AI9NKhclRWjfmYiBggiUbvSkaJXUU8qQjgdzjyU+sM9LxD3VOK6A9+yRYvHVg GCRYtu61fOltVkGXwNY/BJjPWOxV9LJtOHCe0wc6gr7tOytuHLA7tKuNMHLmI35fFkji HbtaqK82ZrTTDGsrCnYSPJs4HzEuG3Khpjc4angzyTZwN6sqNSG+dqKa1K2uV/pW9C0q L4fyI9cYuH6RhNwmbsudfpx1Cu8uV9Uf1imYb8LqwGAUhw119s6+1GXiGFQTCzpxUwDV eFUtUIAnb4RuqIXpqP5DgGGueSVjgEuDgyDMjHQ3/Hp5xJW/ZVpxmUtTWqMQAmHoiUWd 6woA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=g4ot1zLW; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id by9-20020a05651c1a0900b002d864e69481si2151538ljb.629.2024.04.08.06.26.36; Mon, 08 Apr 2024 06:26:36 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=g4ot1zLW; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 09E9268D258; Mon, 8 Apr 2024 16:26:32 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out162-62-58-216.mail.qq.com (out162-62-58-216.mail.qq.com [162.62.58.216]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1D93668D19D for ; Mon, 8 Apr 2024 16:26:24 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1712582775; bh=WgLWQcG/hvjsHX2pPOUyMnqkI9okEd577M3niod9DuA=; h=From:To:Cc:Subject:Date; b=g4ot1zLWBvxJkmRJaW1GjSwNcmOZ2YgtyuccZtldZfrcbYPSO1TSYqIg9JoyW30AO Q/dvtA+dqWsehVEfQk7hePX0Yz0hQGQip0/riV9e5Mus5rAfpf5C6PIAWy8dHp5kFt /Tkxb5BUD7Qdwyf90ybFr66heNy4gCjotecuEBIQ= Received: from localhost.localdomain ([119.147.10.185]) by newxmesmtplogicsvrsza7-0.qq.com (NewEsmtp) with SMTP id 68E326A0; Mon, 08 Apr 2024 21:26:14 +0800 X-QQ-mid: xmsmtpt1712582774t8xhn57dm Message-ID: X-QQ-XMAILINFO: NhUkPfKlCtQwpi+UTm5bFoGPcQhMW8nXiIvebwPn3AUQN1dNgGSByocE3BdpKR vYOIiTjli6aC88rZEN66vPAScpHsG5BhftPCk4aPBr727XNRkmPud6KkkTac1P3FWJRV8V94cyYk YXEQA27M2QZqOJyjzOdx2fjKdbwcMvG54cDfpp4CTaEJcpo7bHhDdnP7WZHlW1JwNgh5bq4pH4le 12zIsNzRA9hnc0O3kG5zqUwfISGb64Ha2sB/J/0ph0t9quoen+LlhJAult2ETZTEnmfpitByDZTG dyfDNV70HSGf3UAEl2tp48hybCgG0GYovYMffen4AlvSYOCv6IQT96bchNpmSqJU9ZMh0tX9mrm8 Ufzp8AIoUPJLbSeD7vbt+gC1LGfmjpR/DMMxWwzGzPkFCN2NdTAvLgkHK6KZsr65MPThVxYTMsF2 Y91iWAXhmaTomgUVHJPaeIdUENDw+QkV2cd7LH57QHw5T6+HK6wJrHtqcl2CAkSyhrO64w0+Uxp7 IDUSCiGevhmCACZGBR/9i5Sz9dliEH/Vn3io11SHElktOC2jwqjBioEBIxrXdRnYJs4C9ASXlxBY 7pXRyXkmqsEiJuvyl27JZFVrYIxrKXo/2AYM/X+46Z1r5G9GWM8Mf8ktR8bAu6tyYQWphzjTV1AX R+yqgxocvjWFUwLDE2MkxrNXhBggKyF63/YNTbbplhVl/77dgHtWUNBzBtsueTr/4yqRIu5Iughh 1NIjmFNXqnNM0SaIi5SNWG+fAV8y1MF9WEm74uulTCikLMAJiEXCk8qF+U0BYH3GaqGI0Zzx61Gp 2J7AmZuMThJSwWnkJPq7FXYJBh1LmrsbDxp2WiixurgOaJSGRrezhXkIQAFN9N8h55nsnjqzdrAJ JfYy0H4ApCoSjkR/CQ5uvq92CfmhdvUscnzod9D+rbclzCRmXWo8QmOQQYQzOK0Pb9Cve0pUldNu /RutLi2TBBJTPRAYb/DenBNsrwkqsW34xMNd0qIyHKqYH6/syqxV09eVnCljKu X-QQ-XMRINFO: OWPUhxQsoeAVDbp3OJHYyFg= From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Mon, 8 Apr 2024 21:26:13 +0800 X-OQ-MSGID: <20240408132613.196497-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avformat/tls_mbedtls: Pass FLAG_NONBLOCK to underlying transport X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Zhao Zhili Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: aHc39WwnCcwE From: Zhao Zhili This fix rtmps failure since rtmps requires nonblocking read. Signed-off-by: Zhao Zhili --- libavformat/tls_mbedtls.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavformat/tls_mbedtls.c b/libavformat/tls_mbedtls.c index 8503523b6d..f51cf43b1c 100644 --- a/libavformat/tls_mbedtls.c +++ b/libavformat/tls_mbedtls.c @@ -309,6 +309,8 @@ static int tls_read(URLContext *h, uint8_t *buf, int size) TLSContext *tls_ctx = h->priv_data; int ret; + tls_ctx->tls_shared.tcp->flags &= ~AVIO_FLAG_NONBLOCK; + tls_ctx->tls_shared.tcp->flags |= h->flags & AVIO_FLAG_NONBLOCK; if ((ret = mbedtls_ssl_read(&tls_ctx->ssl_context, buf, size)) > 0) { // return read length return ret; @@ -322,6 +324,8 @@ static int tls_write(URLContext *h, const uint8_t *buf, int size) TLSContext *tls_ctx = h->priv_data; int ret; + tls_ctx->tls_shared.tcp->flags &= ~AVIO_FLAG_NONBLOCK; + tls_ctx->tls_shared.tcp->flags |= h->flags & AVIO_FLAG_NONBLOCK; if ((ret = mbedtls_ssl_write(&tls_ctx->ssl_context, buf, size)) > 0) { // return written length return ret;