From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id C682F5004E for ; Mon, 7 Jul 2025 11:16:05 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 6DD83691551; Mon, 7 Jul 2025 14:16:02 +0300 (EEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05olkn2022.outbound.protection.outlook.com [40.92.90.22]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id DCDC869114F for ; Mon, 7 Jul 2025 14:15:55 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ZSVphJi0Hg73Ufv5QQWJgwm9GYmI+VXrgHbuefqn0NKOBrgZU2UUyjtnLYRopM9vmyL+k8kXeRdprjW6+wEkx9N0JqXU5sXpYuTGWadcSy8rx41/8nEDzRSwndT2yZbWQyRbsbhfSJkbxYC4pAFCZqYFwViXq4Un2TeuDRjk+YeSVc+9hyYMyswOdlGLO15aPGS1J1DuaLx49YGJ5o+hu7v0QA1UVa752/0J2NVJn4njAmpwFimHB55fHt5q+7mfwYxNaijxZasMvP0I2i+fHVc1MzvLmaKzOVLtriFehV6qF1weldi1vlgt5W3sFD+z2ZDmvsYB8hszjdXT4VPf6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZesI0Ugp8qBFqyRo+DkzSCbJ/btkRe0A7rKSpya96tY=; b=ri+MBW3FmQcoyFNmJGVN6dA0tcMga+5O1Wmtgz1I9O20yFrHSG2z4qrarkkBP8Suv3X75gSWiTzlLn3D9AGT3WznAYLeUUk+3To9PI1atXPGlEUfB4oFIw6FUMe3id3OjRi8Ob78GgmlOEmk/D88h17WGupsy5qtUOMBlzEATHl8SSzt+3a8hSz66JQOysDYlL3EMxEQcR9UtZLUm2gTlWf+tTNu4qFJ0HfCyqnEcJx+MAni4EehKdGWMYa5RvqpGo+JieC6RGFfduE0NPR87eqP2APr26qp/ofPZWVqOGAmezIcxP3yiGmrsOB23b5fwwMWsOnN5TW3I1nlLdvYsA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZesI0Ugp8qBFqyRo+DkzSCbJ/btkRe0A7rKSpya96tY=; b=OmeuDUmXSNQQ1N2N9rM7UDOnJTOWMHxUvXcbB5DmF6DndAUzydrWJEF5v/VP8JH2aVqIjXU4pR2EShIMf1bmKHIFqKQsoSv3eG008F+yTDB61POHG0BZ4dhhwJDZ3oL1HaHNl6OUX80W0lYxtLwXSP9poocBI1RUVwx+2K5TYq3Nrfd9hnFrR9SAUogYqUn8E2/W51HbEtequXaLeQ7JWCnG/XFWtMUpdmIPqxwKyJNaFazFmbaT8XnYt8SZGbNKhxRP6xJLouQm4Xe5ER908QbLNWAdHiwcIw06vpveKBjJ4V+SVfota2RaxD6nTtQqnXS5cGQjqEHtXBF72j8f8w== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by GV2P250MB0900.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:7a::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.26; Mon, 7 Jul 2025 11:15:54 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%6]) with mapi id 15.20.8901.018; Mon, 7 Jul 2025 11:15:54 +0000 Message-ID: Date: Mon, 7 Jul 2025 13:15:53 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20250624192345.44376-1-epirat07@gmail.com> <20250624192345.44376-2-epirat07@gmail.com> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: <20250624192345.44376-2-epirat07@gmail.com> X-ClientProxiedBy: FR4P281CA0145.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b8::18) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|GV2P250MB0900:EE_ X-MS-Office365-Filtering-Correlation-Id: bc3052fa-78bd-4304-15a0-08ddbd47a3a5 X-MS-Exchange-SLBlob-MailProps: AZnQBsB9Xmr4cFvCBFwmzNgH0jdV5y4CJwSbbgGSoks7kEvCAaZohH8q+ha+b5QbxgpLVxAv4PiimS0MP0sdr58EqfEzQm4DBnLdri2qmUe4LGLz4o1cIuZ+IZNSo4pZJml9Y0EGEX34cWDxKbVDd6wAzn9V4P6lfMFRL3M5AQYUbThwHusFBbj9LixZVkPrVO+nHfNf2SPr/pzOVTuYnsTSWt+F4SL5FgXiICzWZ85Z2XakQ5oScwDVhVYI8DdOfDEYUUTyZM5i8bdS4rV+592S7mre/5Btay6mQJRnLvaBkYv7PrUBO60vuRxte/amzC6oLlrKKKSagBahWAFBtm1oX6cddYGD0Q/j5gaPoM3474P/EsO9un3yS+lkDdSwZWOTqxZOTIWlOiHOtRVqNyMXDldCLnyrqckocwW0KOAxjqHLaTP/DFBMxVWN8CIw3AcE3IzEJ+i/ps8MiIaRGblvvZ68O1qz1uzMbmYtAAtCMXLB1zfBG/pkshwBk6p4F4cIV6YybVyXw97xnaBsXeDQ/0Vo9BB6nmkEXeHzXQ79KPD8oGDCb9ifm6HdP4BXrBcN1pkH3DpJLwrwFnQi5crS+4T6850uS0e/1dstBiP6lOQue1HrU+mjNY1nMfhmg7tdT3bBNNURWMcWS/Bllhuqy5Hi7A9nsccRhUXrCDKW3dc5hnqGV7duXz/H4o3naCl1FVdaVsI5GJAntTTPmJeQ7qLdE3YeYQN8rh+O4kZNVsao27KvFh2i6aWtgmHnMsfzg86b2zc= X-Microsoft-Antispam: BCL:0; ARA:14566002|461199028|15080799009|8060799009|7092599006|5072599009|6090799003|19110799006|41001999006|3412199025|440099028|40105399003|12091999003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?QnBOVk5iYWZvVC9SVVU2dXRjQk03RVBKUmk4bThHWU1Nb1lFT0pHWjIxTFFi?= =?utf-8?B?bWJQNEZLSTNTdzB6SVFBa201bVdFcEJaWTRleTloSmo0eWtiZy9DNERBdmI4?= =?utf-8?B?ZHNzbDZEWHVvS3hDaXVwSTB5VmJEWnk4Nk9nQ2UybzY3UTdZTnZ6amswakFs?= =?utf-8?B?ZTNHRlQ1L1VOQm94VHMwM2Q2Ui8wRE1DbnRMRlF4Qjh3NnZUaG1iM0VZbnNL?= =?utf-8?B?YnpLbVZOakhtZWhtREM2c2h6bnpGN0dkeURjaUQrdWRoUXRLSmc1RXQ5VlFI?= =?utf-8?B?amU3TWlvZGFyNXFxY28zNU1aMUpIbDVZVy8zMTVRRURtYUs2VlJpZ1h2Kzk1?= =?utf-8?B?VHFkTEV6SElQMjh4MmVNWUM4NmQyZzhPRXhrZEFUdUJnN0N3K2N1Zk9jY0pv?= =?utf-8?B?TitxZGkxSnZSQy8yYnZ2WGFSMlAwYytCZnpGTHFTOXNrY3JvVTliRVJKd2c4?= =?utf-8?B?VFFKQ3lBeUFFZDRHbk1yeVdxODlKUG1KcUxHdTRndVpqbmpvN3p5NmtjMWJa?= =?utf-8?B?NUtpcksrWmdiSFR6RkNaWml5SkJLQkZPN0tnRHdCbXM3a254eGRINzhvSG5N?= =?utf-8?B?UVZSVlUyT3FLOFlRZlQ1ZXJpYjl4MHorbDVXMWY2YzRBMzVHMmx6YTNXZndI?= =?utf-8?B?UUxaZ0VoTFV4S1FyY2JSTlgzU0R0WUNabTRqNEx2eFNkaWhjSUFvRUFKY29u?= =?utf-8?B?cUpoZE9jK3B4S0RLTjJJKzF4UGlFK1dORFRPMzNFbER0NTZxc0NVQTdRYS8x?= =?utf-8?B?NVNsMXZjdHUwc014NDMxSlJnMHFxYUx4Tk9uLzFlOW52K2UralBWV1RESEYr?= =?utf-8?B?MENtUklTV2J4RHRzUFNhcDFvTUJiZ1hLMTc0T0k1ajQwdUJnQ3BLdEFKenJk?= =?utf-8?B?Q2thd2hlQlE1dTlHL0oyYjJ0bCtYbjZ6RTU0T3pyaFhaQUhpRzN3ZEVDTWhR?= =?utf-8?B?NC9oYWE3clhkQ1QxVk51MUh4dGVwRVE4aHlnRFJCd1lkdmVOY0pSOEQvbzZH?= =?utf-8?B?UG5oVE1QWHN2d0NRQjI2ZUQ3Sm5iQWN2ZEFiSnZIMWVlMmRnQkN2UUZwMTdj?= =?utf-8?B?WXJzUjByQnRsN3NDMDRCTmpuazV6YmFLcXZmc2pIYmdyVHdpOG0wRURWU0dT?= =?utf-8?B?SkFYSEsxbXFKL0FDMG9JaE1CbVgwWVdiN0Z2aGVKMDE4UGpmd09PcnN0aW9C?= =?utf-8?B?djlwb1dXN0hwRGRCWXltYnROS1RPNmQ2SDhIVnlVdndIbzFKamlncFVkSjZO?= =?utf-8?B?YmJTcldPMUNFZm85dVJHbXN2d0U4UXFPUUFuMmx3MjhTOTlla2szOTBxalpX?= =?utf-8?B?a0liWm9EUTR3dFRiZW0yK0tOeS92R2RSc1ByOVVUbVdsTU5nTFB0bkozVlJP?= =?utf-8?B?OE5ZcDErSCtTc0ZuQitYeXJDakJjWndSQVc3SDRWQW4rdVFsYUFLTG10cS9j?= =?utf-8?B?UGtnL0dBVjQ4dDZ0WDJCNzk2V3NJQ1l4TWZ5dklBeFNQRzBkUzh1ZXdLZXQ4?= =?utf-8?B?bm1PdlFKTXFYRmcyc1UrektROWxJL0NpMFYwTVM1ZWdVWnhqeEE5emlRdElU?= =?utf-8?B?QmQzekQvZkMvZVdNRjZVaEhZV1BDanRZR0xnSU5Bd1REZmorTDIxYXVQQUdB?= =?utf-8?Q?DotH8ZLGjNVJGZX4slvFfEaKhM5S6bLS9GyueSG7tMws=3D?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZTV6UlJUNHlGbDdBNWdpMWVxTXNvVDlmQ1EzYVAwSXcreU5xZFFPazRWWEVl?= =?utf-8?B?M0pnb1ZKNzEzQzFibW5pRUVSeTVSbVdqR01DMHhPb2dZYnBRVllXdWhDNzd6?= =?utf-8?B?YmRrd2wycmZ1SlBRdkh2dGFQVnBhSElqSG95YUxTWXZuSGg3OFlsMnpJclhQ?= =?utf-8?B?R2U3bjFrMmpGM0lJdnJRdDlad1g1YWFYeVptUGYvK014RisvTWdzR3ZtVW9G?= =?utf-8?B?U1UwVldRTUdBSHdoR0VsSjdHU1hlTXVsYkc0NTBweVpXY0JBd3doSHBaRzcz?= =?utf-8?B?MzExdEdoVkM2d2ZpM2NRODl3bG1WdWtTTWVqOUs2RG5Uamd5OE84Q1pZU0cr?= =?utf-8?B?TDNZcVFPR0RYcmd2QzlweWxGeUhnT0dIckVnMVFIOTBqdzV3cjlRQ3ozeGJE?= =?utf-8?B?UHNYNG5WQmw0bXI2R2p2YngzWGhlSlZkb2U3MVdIblNZaktlbGk3VG1nZ1JF?= =?utf-8?B?UENOTGVNUktoUGRRZlFFLzlmTFJoZVZGNjV2RzdSVDRabnNhME5lYzUvUHYv?= =?utf-8?B?Q1VReFd6TnFROTZySVJTTDNJenRzbXJGL0V4S2VKTzBIdUlsNkE1UVoxWmtD?= =?utf-8?B?MnNMdlhmWEpTdVlKelZBY2c0TFF2TlE4eFFuSU80Q0NJZDdMdE5ZVTR6UTFw?= =?utf-8?B?Y05wRzJKdUgyZDN4RGhTbjE1d080cDB3ZE1OYm9jUzF1MW45SmRlY0p1MjN3?= =?utf-8?B?T2lwZ2w0QWhvbi9ySzdCSEV1RzJ4WVRBLys2Ti9UQTRHekt0ZlU4VXdkOEpk?= =?utf-8?B?eC9wTXViL3dwQVMrV0tkYS9CQk11M001SDZXOTZ2WDJNUVpWaHJmT2JIaVNx?= =?utf-8?B?VUhQdGNyQjRPMS9hTVlDSVZCQ3F5TmlORHJ5MlVFZDZnOXpCSjkvLzRXbXQv?= =?utf-8?B?bHk2NmIxU3RxOFZZM1F2Q2lOOC9tSGZWeEdqNTUvalkyZU4xTExnVjZrcFN2?= =?utf-8?B?M0pPaWVkcnRxOHR0WVpFcFV6eGRDMjNVT21CeVZwcURLTTBBVk9iQ0RKcVNv?= =?utf-8?B?QjhJalhMYzVEeG56SkUrckxyemZTNFM4NzhJNXBBYXV5a0VZb1lRV0tlb1Fq?= =?utf-8?B?aXBMb1N0Z25ZSDR2a2ZQaktYSDgyMUE1UXd0d3F5SGUwcVdoQWk1N2dhZmE0?= =?utf-8?B?NzRCaVlpSE9jeXZvenM4ZmxtM3dVbnZlVEltRTkvSFNVeXFUTHM3ZCtObUNN?= =?utf-8?B?Q09FNDVld1hKN2V1bFZnM0VBb2Q0TS82a21EenlWNExLYmppZjREc2p1Y2hL?= =?utf-8?B?Vit4cGhVWXloOU5TQWxFdVlzZitWVzhxejQrM1pjT2k1Nm00cGdsQVA5SmlS?= =?utf-8?B?VVVneS8yK3JFYVhBWHQwdlBNRXZoTWpKVjhJTTUxNklhUWlXODFCK3Ixak81?= =?utf-8?B?OHVBR0JoY1BsQ0V0bUVETVFycFNVZ3A5MEpKVDVPcmEzWmFyaWZLR05kQ3Y3?= =?utf-8?B?dzlSNURxdVEzdmVlVVI3L1FvZUN6bmRMcGIyclMzMzlnT0lJYnlGM3FvS3dx?= =?utf-8?B?RkdZZFpKc2VXODhGK0RQZ1k2WG01dHNuSWRRamdPZG9yUXltRlQ4L0tmcmlZ?= =?utf-8?B?U0s4WWQrckYwNXRnSTJ5TjhGNnQxK0RXQ2dBZUpnU0IzNDZpMTIrSFJBall0?= =?utf-8?B?OTNRNTVueXh2VmprYW5zNTNMQTdHZkh3ZitBaUFXRjdicjhZUUZ5VnkzTmlM?= =?utf-8?B?b00xL2JNVSsyRzRUbkkrTzRuYmJsa0IxY1gxVWJ2N0s5ckVheUJoNVFUK054?= =?utf-8?B?VnhCQ29lNER1RXlkRHNwZzlSTW9LTVJrM1JNUVROM3dkbEVnYXhONFdHOE5z?= =?utf-8?B?V0VxSVgrOTBOVERVWEQ1Zz09?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bc3052fa-78bd-4304-15a0-08ddbd47a3a5 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jul 2025 11:15:54.4743 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2P250MB0900 Subject: Re: [FFmpeg-devel] [PATCH 2/2] avformat/rtsp: add TLS options 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Marvin Scholz: > From: Daniel N Pettersson > > Add TLS options to RTSP for when TLS is used for the lower protocol. > > Signed-off-by: Marvin Scholz > Co-authored-by: Marvin Scholz > --- > libavformat/rtsp.c | 26 +++++++++++++++++++++++++- > libavformat/rtsp.h | 11 +++++++++++ > 2 files changed, 36 insertions(+), 1 deletion(-) > > diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c > index 3f2966414f..8d360b375f 100644 > --- a/libavformat/rtsp.c > +++ b/libavformat/rtsp.c> > +/** > + * Add the TLS options of the given RTSPState to the dict > + */ > +static void copy_tls_opts_dict(RTSPState *rt, AVDictionary **dict) > +{ > + av_dict_set_int(dict, "tls_verify", rt->tls_opts.verify, 0); > + av_dict_set(dict, "ca_file", rt->tls_opts.ca_file, 0); > + av_dict_set(dict, "cert_file", rt->tls_opts.cert_file, 0); > + av_dict_set(dict, "key_file", rt->tls_opts.key_file, 0); > + av_dict_set(dict, "verifyhost", rt->tls_opts.host, 0); > +} Should this not be checked? > + > static void get_word_until_chars(char *buf, int buf_size, > const char *sep, const char **pp) > { > @@ -1821,6 +1837,8 @@ redirect: > AVDictionary *options = NULL; > > av_dict_set_int(&options, "timeout", rt->stimeout, 0); > + if (https_tunnel) > + copy_tls_opts_dict(rt, &options); > > ff_url_join(httpname, sizeof(httpname), https_tunnel ? "https" : "http", auth, host, port, "%s", path); > snprintf(sessioncookie, sizeof(sessioncookie), "%08x%08x", > @@ -1905,14 +1923,20 @@ redirect: > } else { > int ret; > /* open the tcp connection */ > + AVDictionary *proto_opts = NULL; > + if (strcmp("tls", lower_rtsp_proto) == 0) > + copy_tls_opts_dict(rt, &proto_opts); > + > ff_url_join(tcpname, sizeof(tcpname), lower_rtsp_proto, NULL, > host, port, > "?timeout=%"PRId64, rt->stimeout); > if ((ret = ffurl_open_whitelist(&rt->rtsp_hd, tcpname, AVIO_FLAG_READ_WRITE, > - &s->interrupt_callback, NULL, s->protocol_whitelist, s->protocol_blacklist, NULL)) < 0) { > + &s->interrupt_callback, &proto_opts, s->protocol_whitelist, s->protocol_blacklist, NULL)) < 0) { > + av_dict_free(&proto_opts); > err = ret; > goto fail; > } > + av_dict_free(&proto_opts); > rt->rtsp_hd_out = rt->rtsp_hd; > } > rt->seq = 0; > diff --git a/libavformat/rtsp.h b/libavformat/rtsp.h > index 83b2e3f4fb..ca278acd43 100644 > --- a/libavformat/rtsp.h > +++ b/libavformat/rtsp.h > @@ -419,6 +419,17 @@ typedef struct RTSPState { > int buffer_size; > int pkt_size; > char *localaddr; > + > + /** > + * Options used for TLS based RTSP streams. > + */ > + struct { > + char *ca_file; > + int verify; > + char *cert_file; > + char *key_file; > + char *host; > + } tls_opts; > } RTSPState; > > #define RTSP_FLAG_FILTER_SRC 0x1 /**< Filter incoming UDP packets - _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".