]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
url: return error at once when OOM in netrc handling
authorDaniel Stenberg <daniel@haxx.se>
Sat, 27 Dec 2025 16:06:31 +0000 (17:06 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 29 Dec 2025 09:16:48 +0000 (10:16 +0100)
Closes #20103

lib/url.c

index f64a1a481c50a06cb67c8a56028fb65d6a59a2a5..130be1952c2ecafe84cdb9e5cb94b2dfc46d1b47 100644 (file)
--- a/lib/url.c
+++ b/lib/url.c
@@ -2695,8 +2695,10 @@ static CURLcode override_login(struct Curl_easy *data,
       NETRCcode ret = Curl_parsenetrc(&data->state.netrc, conn->host.name,
                                       userp, passwdp,
                                       data->set.str[STRING_NETRC_FILE]);
-      if(ret && ((ret == NETRC_NO_MATCH) ||
-                 (data->set.use_netrc == CURL_NETRC_OPTIONAL))) {
+      if(ret == NETRC_OUT_OF_MEMORY)
+        return CURLE_OUT_OF_MEMORY;
+      else if(ret && ((ret == NETRC_NO_MATCH) ||
+                      (data->set.use_netrc == CURL_NETRC_OPTIONAL))) {
         infof(data, "Could not find host %s in the %s file; using defaults",
               conn->host.name,
               (data->set.str[STRING_NETRC_FILE] ?