From patchwork Fri Sep 22 14:10:33 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joe Simmons-Talbott X-Patchwork-Id: 76589 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 5B5ED3858024 for ; Fri, 22 Sep 2023 14:11:07 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by sourceware.org (Postfix) with ESMTPS id 8865B3858D37 for ; Fri, 22 Sep 2023 14:10:51 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8865B3858D37 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695391851; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ywKsMyodq1JQpQ4/TPWD5kcq+Teg6OGbYroy7HbZLuY=; b=LI1dzyiLJ+7LbCEherxv3fpKXIe382RuBri6UPGIe7JzW35fga6cJH3yS8/Z3eftHZXkS+ 4a/wxBnv/p1vjOHuo92Ilw3SCPQcwHjjN9RO+V/aJxXSoEQI7WnClqrWMsX3F2gGnFpXQn 4PT6cDwTOXoJHWOUeSgdYO64+STnO0M= Received: from mail-qt1-f199.google.com (mail-qt1-f199.google.com [209.85.160.199]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-619-_idR6dd2Of-k5Be9MrR9FA-1; Fri, 22 Sep 2023 10:10:48 -0400 X-MC-Unique: _idR6dd2Of-k5Be9MrR9FA-1 Received: by mail-qt1-f199.google.com with SMTP id d75a77b69052e-412eee4b64cso23477321cf.1 for ; Fri, 22 Sep 2023 07:10:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695391847; x=1695996647; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ywKsMyodq1JQpQ4/TPWD5kcq+Teg6OGbYroy7HbZLuY=; b=kathz/HVFfgAjTx+ptp3BZgLB3VKGTpSP2H/xrYJpwWw1i3lFe6dEI0puHl5ZL72eh HYy8zA0i1F27rd59HCcKm4fo6fqIHGD6WHtnPpw6urNNKh5jT9LyZ+R4OSSaW4RAbOpf pcO3Sq+dd1BerqgpUOMCtan31VDdwMoPA5gz25uktu7oTtxAPLIaCjNDkuvhC33dOKFA mFDQHBmQlIiR8QB/3o6xNKmG5+VrBissPazaIG2R9gXzoAKOAqgiuTiQx0zYjknFYD1Q IOUXquHbVJM7125eHNNrlhyImUweVNLj6DlqSYhKtWHarQ/Ad8AU7rfWSw+chdg54oIi bOMg== X-Gm-Message-State: AOJu0YxCHobWoMcHQdf8HCpKOMHdTl1yg6dmxQRFJHOPaJWp5gObvkYW CB4izXOU1IMp3nsrBdJHzDnY1LoVsAaB7Y9QfwZbIpTBxNTluu313YvGd1kj5TUI7SnUwjUsF1q PlftrmugQLJHgn+vfucyf7owCQdScw+wog1R+rAiltrNLWEPCdeqT0F0G8nPTZm94QDz39uu1Fa Qo5i67 X-Received: by 2002:a05:622a:148a:b0:405:45e1:de14 with SMTP id t10-20020a05622a148a00b0040545e1de14mr10025162qtx.27.1695391847106; Fri, 22 Sep 2023 07:10:47 -0700 (PDT) X-Google-Smtp-Source: AGHT+IF8tr/k+qlnbaVKRYitjVdsjtqgQzFLGaAmUJmenUxBvc1tdeedGbq1TZMVx2OmtotWDcwn0A== X-Received: by 2002:a05:622a:148a:b0:405:45e1:de14 with SMTP id t10-20020a05622a148a00b0040545e1de14mr10025131qtx.27.1695391846605; Fri, 22 Sep 2023 07:10:46 -0700 (PDT) Received: from oak.redhat.com (c-71-206-142-238.hsd1.va.comcast.net. [71.206.142.238]) by smtp.gmail.com with ESMTPSA id bb36-20020a05622a1b2400b0040fcf8c0aaasm1481745qtb.54.2023.09.22.07.10.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Sep 2023 07:10:45 -0700 (PDT) From: Joe Simmons-Talbott To: libc-alpha@sourceware.org Cc: Joe Simmons-Talbott Subject: [PATCH v2] resolv: Get rid of alloca usage. Date: Fri, 22 Sep 2023 10:10:33 -0400 Message-ID: <20230922141044.2584311-1-josimmon@redhat.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Replace alloca usage with char arrays in _nss_dns_getnetbyname_r and _nss_dns_getnetbyaddr_r. --- resolv/nss_dns/dns-network.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/resolv/nss_dns/dns-network.c b/resolv/nss_dns/dns-network.c index 1e6511a4f4..b429384da1 100644 --- a/resolv/nss_dns/dns-network.c +++ b/resolv/nss_dns/dns-network.c @@ -116,6 +116,8 @@ _nss_dns_getnetbyname_r (const char *name, struct netent *result, querybuf *orig_net_buffer; int anslen; enum nss_status status; + char buf[1024] __attribute__ ((__aligned__ (__alignof__ (querybuf)))); + struct resolv_context *ctx = __resolv_context_get (); if (ctx == NULL) @@ -125,7 +127,7 @@ _nss_dns_getnetbyname_r (const char *name, struct netent *result, return NSS_STATUS_UNAVAIL; } - net_buffer.buf = orig_net_buffer = (querybuf *) alloca (1024); + net_buffer.buf = orig_net_buffer = (querybuf *) buf; anslen = __res_context_search (ctx, name, C_IN, T_PTR, net_buffer.buf->buf, @@ -170,6 +172,7 @@ _nss_dns_getnetbyaddr_r (uint32_t net, int type, struct netent *result, int cnt, anslen; uint32_t net2; int olderr = errno; + char buf[1024] __attribute__ ((__aligned__ (__alignof__ (querybuf)))); /* No net address lookup for IPv6 yet. */ if (type != AF_INET) @@ -209,7 +212,7 @@ _nss_dns_getnetbyaddr_r (uint32_t net, int type, struct netent *result, break; } - net_buffer.buf = orig_net_buffer = (querybuf *) alloca (1024); + net_buffer.buf = orig_net_buffer = (querybuf *) buf; anslen = __res_context_query (ctx, qbuf, C_IN, T_PTR, net_buffer.buf->buf, 1024, &net_buffer.ptr, NULL, NULL, NULL, NULL);