From patchwork Thu May 16 11:59:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Sayers X-Patchwork-Id: 48924 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:3a48:b0:1af:fc2d:ff5a with SMTP id zu8csp2180775pzb; Thu, 16 May 2024 05:01:17 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCVLdogMlzevNOHfqgO6j0EGUNzr9XdGHx9Ydyo3Fvxe/lCqkyB+DN5PCfXC3GX4w2Gsh9RwY9Tl0KFl5yndofQn14+G4DqHw8k6Ag== X-Google-Smtp-Source: AGHT+IEdCwpNzIPadDP9NSpZZQijcCNa+ncLEYkyVPScbQr96m5UYTLAkACKCgVlf7K4UT5qYZx1 X-Received: by 2002:a50:8a9e:0:b0:575:96e:e517 with SMTP id 4fb4d7f45d1cf-575096ee612mr1651500a12.15.1715860877152; Thu, 16 May 2024 05:01:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1715860877; cv=none; d=google.com; s=arc-20160816; b=araw9wG30VddpM0x/WeQYXNZgsXdCbIHEVvdWZsIDXazTRCkDqxur/xesD9xX9dYeG OUbn959PIBAfp7pgLdvXohKryabI6iddy5YZEkYon8uD3/md7lprW2++q6BdPRJ0Bhii HpgNOSmrrGnw12ioICuWzyQgCU7FSJob77OxaSKUd2tDhsx127vsgBZG9D1oBWya9NAw voWBvnEnMO3TmBM17hq1Zo1wdR4pH0ZAs7+2Lwtyz/ffn+6Zbn9W4SEnO+xmsb8g+T6t X5WPKsxoLlhQAh1oDU06w923n4GjRNAUYSTS9SKmrTFvajSxU8PMqeYtKz5F55rFqwqT dISw== 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:references:in-reply-to :message-id:date:to:from:delivered-to; bh=AaZblIxdd1FT5XSjR+WMRjK3tiYtN0+ZhNoleAFDOiQ=; fh=73ExZnkQ8FYbu/qeQNmI0dtHCfShNh8/NmZJs1umltM=; b=Fqo/quxQhQfLUC6rmj1Fgg2iedL109QM4yQ3hHNLUoAXU9Krpe7w+WL5yzaFFM+j6I 6hbtxWR2tTZGXCR+O753Cn7+Jp/rbND/9AxLhK1ab3SNac+r+ykaOXbBSPbsCglirVQB N6MY5+5IYdubCRkJ9cJ8hEk5VkWgIoJ9jpDnAOxcrLw2g7tOtnFtxopnfWpMoMO9CcS7 QbWiZlrKqA+VHVU3r8c7GxLeCZZR1MCaF5/ck1K+wgT6i+u2Z4xnegMYRZHDoyK6jmPu ww+6PpBCfgk0yduGb5TslenX2G0SOZ7EaCA+Yr+z/LeTYLdiKAl+aoMDj40BDTcJEF3o 21Qw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id 4fb4d7f45d1cf-574eced1a7dsi2261601a12.549.2024.05.16.05.01.15; Thu, 16 May 2024 05:01:17 -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; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id F30A668D57C; Thu, 16 May 2024 15:00:17 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from b-painless.mh.aa.net.uk (b-painless.mh.aa.net.uk [81.187.30.52]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 27C2A68D319 for ; Thu, 16 May 2024 15:00:06 +0300 (EEST) Received: from 0.b.4.b.7.4.0.8.c.4.a.5.d.8.b.2.0.5.8.0.9.1.8.0.0.b.8.0.1.0.0.2.ip6.arpa ([2001:8b0:819:850:2b8d:5a4c:8047:b4b0] helo=andrews-2024-laptop.lan) by painless-b.tch.aa.net.uk with esmtp (Exim 4.96) (envelope-from ) id 1s7ZmH-002ewq-1B; Thu, 16 May 2024 13:00:05 +0100 From: Andrew Sayers To: ffmpeg-devel@ffmpeg.org Date: Thu, 16 May 2024 12:59:10 +0100 Message-ID: <20240516115959.3786610-6-ffmpeg-devel@pileofstuff.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240516115959.3786610-1-ffmpeg-devel@pileofstuff.org> References: <91C9E49E-1EE3-4B37-AEF7-1A0D78481633@remlab.net> <20240516115959.3786610-1-ffmpeg-devel@pileofstuff.org> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v5 5/6] avformat/network: Return 0/AVERROR from ff_network_init() 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: Andrew Sayers Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: MYjTGQEwIhL4 --- libavformat/avio.c | 7 +++++-- libavformat/network.c | 7 +++---- libavformat/rtsp.c | 14 ++++++++------ libavformat/rtspdec.c | 5 +++-- libavformat/sapdec.c | 5 +++-- libavformat/sapenc.c | 5 +++-- 6 files changed, 25 insertions(+), 18 deletions(-) diff --git a/libavformat/avio.c b/libavformat/avio.c index d109f3adff..8c94bfeb14 100644 --- a/libavformat/avio.c +++ b/libavformat/avio.c @@ -123,8 +123,11 @@ static int url_alloc_for_protocol(URLContext **puc, const URLProtocol *up, int err; #if CONFIG_NETWORK - if (up->flags & URL_PROTOCOL_FLAG_NETWORK && !ff_network_init()) - return AVERROR(EIO); + if (up->flags & URL_PROTOCOL_FLAG_NETWORK) { + err = ff_network_init(); + if (err<0) + return err; + } #endif if ((flags & AVIO_FLAG_READ) && !up->url_read) { av_log(NULL, AV_LOG_ERROR, diff --git a/libavformat/network.c b/libavformat/network.c index 351dc34bb6..643294efe4 100644 --- a/libavformat/network.c +++ b/libavformat/network.c @@ -59,11 +59,10 @@ int ff_network_init(void) { #if HAVE_WINSOCK2_H WSADATA wsaData; - - if (WSAStartup(MAKEWORD(1,1), &wsaData)) - return 0; + return ff_neterror2(WSAStartup(MAKEWORD(1,1), &wsaData)); +#else + return 0; #endif - return 1; } int ff_network_wait_fd(int fd, int write) diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c index b0c61ee00a..d50d0b7fc0 100644 --- a/libavformat/rtsp.c +++ b/libavformat/rtsp.c @@ -1740,8 +1740,9 @@ int ff_rtsp_connect(AVFormatContext *s) return AVERROR(EINVAL); } - if (!ff_network_init()) - return AVERROR(EIO); + err = ff_network_init(); + if (err<0) + return err; if (s->max_delay < 0) /* Not set by the caller */ s->max_delay = s->iformat ? DEFAULT_REORDERING_DELAY : 0; @@ -2395,8 +2396,9 @@ static int sdp_read_header(AVFormatContext *s) char url[MAX_URL_SIZE]; AVBPrint bp; - if (!ff_network_init()) - return AVERROR(EIO); + err = ff_network_init(); + if (err<0) + return err; if (s->max_delay < 0) /* Not set by the caller */ s->max_delay = DEFAULT_REORDERING_DELAY; @@ -2522,8 +2524,8 @@ static int rtp_read_header(AVFormatContext *s) AVBPrint sdp; AVDictionary *opts = NULL; - if (!ff_network_init()) - return AVERROR(EIO); + if ((ret = ff_network_init())<0) + return ret; opts = map_to_opts(rt); ret = ffurl_open_whitelist(&in, s->url, AVIO_FLAG_READ, diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c index 10078ce2fa..1b4b478170 100644 --- a/libavformat/rtspdec.c +++ b/libavformat/rtspdec.c @@ -663,8 +663,9 @@ static int rtsp_listen(AVFormatContext *s) int ret; enum RTSPMethod methodcode; - if (!ff_network_init()) - return AVERROR(EIO); + ret = ff_network_init(); + if (ret<0) + return ret; /* extract hostname and port */ av_url_split(proto, sizeof(proto), auth, sizeof(auth), host, sizeof(host), diff --git a/libavformat/sapdec.c b/libavformat/sapdec.c index 357c0dd514..393e544556 100644 --- a/libavformat/sapdec.c +++ b/libavformat/sapdec.c @@ -70,8 +70,9 @@ static int sap_read_header(AVFormatContext *s) int port; int ret, i; - if (!ff_network_init()) - return AVERROR(EIO); + ret = ff_network_init(); + if (ret<0) + return ret; av_url_split(NULL, 0, NULL, 0, host, sizeof(host), &port, path, sizeof(path), s->url); diff --git a/libavformat/sapenc.c b/libavformat/sapenc.c index 87a834a8d8..5760e3a0c2 100644 --- a/libavformat/sapenc.c +++ b/libavformat/sapenc.c @@ -80,8 +80,9 @@ static int sap_write_header(AVFormatContext *s) int udp_fd; AVDictionaryEntry* title = av_dict_get(s->metadata, "title", NULL, 0); - if (!ff_network_init()) - return AVERROR(EIO); + ret = ff_network_init(); + if (ret<0) + return ret; /* extract hostname and port */ av_url_split(NULL, 0, NULL, 0, host, sizeof(host), &base_port,