Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp2215599yba; Mon, 6 May 2019 01:43:43 -0700 (PDT) X-Google-Smtp-Source: APXvYqyRwQCf62414t7s+DV8FcLDz7fSrF88A03d8UTmUzuv79DtCTpRyOmdk29PRoDgyNIuY6ZJ X-Received: by 2002:a17:902:b181:: with SMTP id s1mr31514031plr.9.1557132223142; Mon, 06 May 2019 01:43:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557132223; cv=none; d=google.com; s=arc-20160816; b=dd+f4K1uOt6SkMFJkUvqapJalwU7ys1rMmseJyMz8cAatxyHObMcJYL1alPKNtMmSf VwF/HMIfdbG9mZ6yyafOGhr56psrU+/t8Y33diWw/XVZmPfsAEBJBMvkUqcDcJi5gl+R Ps24ijtwOj2EeZyvAYA9tnM/RZzphCimHC8sCYHzzOVddaxclsDUXoGl4ow5XEdYhME/ PAWCP0spsf5WypvCIWSLEaYSts9jVIGejczsSp6geVjR6UhU3GcSmdePFo6jJQZsd5dJ 7s499Ydc/N4Sj5IX5uPBIbTxoYGfYTzfc8ArWV6cFHmzsWrJmo1zlXOaUgxpJrjUIB3V 4UFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:dmarc-filter :dkim-signature:dkim-signature; bh=JScuZfnswmgcfMuCez6cu+3S0wf1WnJGgnLfu5RpADg=; b=Xp2gLLTM9NY0rDiM3dPjmy6jX4uNmi0vt3gl3oJd3M/OmEw1NxV0w2tjTVJdDAg6sX L42e6k+LgSnAGfp39gj6NgFjMv/rG/OYu9sLV4Vv/CaNl/vgm7ZWbmi9Qu3lHy0vLs8f aVj09GQpHcBKGnfrvK0uuTCwqXxb4MHOe6j/orlJBeJG7D1p4QcZh7Jb4Xp8gmHfAAWW f9YW9nySmIlDjPgeMJaPvVRItzCbzNx6KSQ3+acru8ZxhoGD0fpewikvI4nCW1B2gFSg iABEljM/pEliVC0s2KaJHfzd/gOnhLVheWKrKL9niaBHNX6F4DON6PY5sLZjzb4oIBpE c3hw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=LzTCcbml; dkim=pass header.i=@codeaurora.org header.s=default header.b=LzTCcbml; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p13si16221152pll.324.2019.05.06.01.43.27; Mon, 06 May 2019 01:43:43 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=LzTCcbml; dkim=pass header.i=@codeaurora.org header.s=default header.b=LzTCcbml; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726381AbfEFImN (ORCPT + 99 others); Mon, 6 May 2019 04:42:13 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:47102 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725981AbfEFImM (ORCPT ); Mon, 6 May 2019 04:42:12 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id EBB7C61157; Mon, 6 May 2019 08:42:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1557132131; bh=U0HcKzTKhMJAx+L7DrntSHVJn8Uwl4RoExSSOsr90rA=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=LzTCcbmlUE/ubC1rumbvwkOkGg9dENA5ms3hX24F4AERKl+o2w31ByGKHjn+ThRR8 k63Wj6bH5YHf6NwNs3ROVFYkxG7NAOLS/NtFBrHwvI/98L+N2o66LTVRUjQfHhRFZY /plx+IcESnNDnrK+rTBBF+yxCTajnFEFmcNxXASc= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_INVALID,DKIM_SIGNED autolearn=no autolearn_force=no version=3.4.0 Received: from x230.qca.qualcomm.com (37-136-65-53.rev.dnainternet.fi [37.136.65.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: kvalo@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 92E1B60DB3; Mon, 6 May 2019 08:42:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1557132131; bh=U0HcKzTKhMJAx+L7DrntSHVJn8Uwl4RoExSSOsr90rA=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=LzTCcbmlUE/ubC1rumbvwkOkGg9dENA5ms3hX24F4AERKl+o2w31ByGKHjn+ThRR8 k63Wj6bH5YHf6NwNs3ROVFYkxG7NAOLS/NtFBrHwvI/98L+N2o66LTVRUjQfHhRFZY /plx+IcESnNDnrK+rTBBF+yxCTajnFEFmcNxXASc= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 92E1B60DB3 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=kvalo@codeaurora.org From: Kalle Valo To: Hans de Goede Cc: Victor Bravo <1905@spmblk.com>, Arend Van Spriel , Franky Lin , Hante Meuleman , Chi-Hsien Lin , Wright Feng , "David S. Miller" , linux-wireless@vger.kernel.org, brcm80211-dev-list.pdl@broadcom.com, brcm80211-dev-list@cypress.com, linux-kernel@vger.kernel.org Subject: Re: [PATCH RFC] brcmfmac: sanitize DMI strings v2 References: <20190504162633.ldrz2nqfocg55grb@localhost> <20190504194440.4zcxjrtj2aft3ka4@localhost> <16a87149068.2764.9b12b7fc0a3841636cfb5e919b41b954@broadcom.com> <20190505150355.3fbng4ny34x255vk@localhost> <0f75a3d4-94af-5503-94c3-e8af2364448d@redhat.com> Date: Mon, 06 May 2019 11:42:06 +0300 In-Reply-To: <0f75a3d4-94af-5503-94c3-e8af2364448d@redhat.com> (Hans de Goede's message of "Mon, 6 May 2019 10:13:38 +0200") Message-ID: <87o94gug81.fsf@codeaurora.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hans de Goede writes: >> @@ -99,6 +107,15 @@ static const struct dmi_system_id dmi_platform_data[] = { >> {} >> }; >> +void brcmf_dmi_sanitize(char *dst, const unsigned char *allowed, >> char safe) >> +{ >> + while (*dst) { >> + if ((*dst < 0) || !(allowed[*dst / 8] & (1 << (*dst % 8)))) > > At a first look I have no clue what this code is doing and I honestly do not feel > like figuring it out, this is clever, but IMHO not readable. > > Please just write this as if (*dst < 0x21 || (*dst > foo && < bar) || etc, > so that a human can actually see in one look what the code is doing. Is there an existing function for sanitising filenames so that we don't need to reinvent the wheel, maybe something like isalnum()? -- Kalle Valo