Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp4453922pxv; Tue, 27 Jul 2021 07:46:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwxxcyjPpV16ZKVNRnbAhR4VlTSWI3KHM4XuwiYEBIyl9PvQs2qRobc14CswifTfmfHCQ9x X-Received: by 2002:a17:906:3814:: with SMTP id v20mr22527747ejc.378.1627397177159; Tue, 27 Jul 2021 07:46:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1627397177; cv=none; d=google.com; s=arc-20160816; b=i8j3y/HPaiY5z5us3mabj1vEaQnykHEWuxXvyXQkWKSv2FPhgr+5KY+l4qZNJw5YTz Q9vl824TmHNg3J/xLE/RpuE4Ed+nquRN3zf/yRYQl8Hm3btCzryUhjTom8iR4CumEMRT 6sjCtgSokpkcne5cw7Pzo3Spe+T9EEL9WwyTCKeabb69f0gN/vMEqRQT0nEEPYXm0yoA pATRviVA8+719D61vwfvDa4VabDPTfp+a99DN4QLiQpPeAqoDIXJTCUaosPfby67XYGn ly6oSMFngk8U7S9NAG36rgC2fG5itBB6WFn9aDMh3kqerf9Fy/OE1EOHbwAVDKTMgSWu GV7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=aS8vktMCuPsqDE7eHakAxwKkAB2D5KT1XF6tsYCSazk=; b=uk6YrIzBIfIR0TvzYCLIZGjz1RM9QN19LNb5fT+rDffkyT5dGNGGNStf7SEwTBsWMM Oj+h9T/UlJRd7YBA92YhFV+Ntgjds7nVQbYUxn+SYprEv/OlBre9Cywlzm2GALAwvOaH UqvXoN3zNjlfG+cP0x1r+iHGgSPx/8umqFDFSdNey5cxIbLSu5LOqjY/Byhv1v6orQzp MSp5NCTWuFrNKkc76+z1P/pTYlub5HCuSn57CrM0/v/oUI2zxji0CfzQ+Ua79L1Z/JUo OCnQHLLUdT1d+JV5adOz8Ea58ixTnCDajgwkbCnNgtb3bDJ4JFXUKfGAZqEvFySLjFIQ kNiw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=TrvS+IYA; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id s13si3007955edt.66.2021.07.27.07.45.53; Tue, 27 Jul 2021 07:46:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=TrvS+IYA; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236956AbhG0Oni (ORCPT + 99 others); Tue, 27 Jul 2021 10:43:38 -0400 Received: from mail.kernel.org ([198.145.29.99]:34546 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236901AbhG0Ong (ORCPT ); Tue, 27 Jul 2021 10:43:36 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id DB7AF61AFA; Tue, 27 Jul 2021 14:43:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1627397015; bh=qFd46qxbPifoDl2lqdkdIoc082Sb+xM4m6IGi89yhls=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=TrvS+IYAOcf97227HS/Q9Iyyf5tkB/2yfsFhEMFuAHFI+ixOqywfPd1Vtsw7VHIlz Py9PO/aNn53s3JvmhPUP/2gg1AZnjSk9FtIyjPIofOOeG8VjoUKk5dhJJN3poBzHaD QolSTbbnuqdSmXgCoQGWapojJbW6nNLPzsbhfdfo= Date: Tue, 27 Jul 2021 16:43:33 +0200 From: Greg KH To: Roberto Sassu Cc: zohar@linux.ibm.com, mchehab+huawei@kernel.org, linux-integrity@vger.kernel.org, linux-security-module@vger.kernel.org, linux-doc@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [RFC][PATCH v2 02/12] diglim: Basic definitions Message-ID: References: <20210726163700.2092768-1-roberto.sassu@huawei.com> <20210726163700.2092768-3-roberto.sassu@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210726163700.2092768-3-roberto.sassu@huawei.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jul 26, 2021 at 06:36:50PM +0200, Roberto Sassu wrote: > --- /dev/null > +++ b/include/uapi/linux/diglim.h > @@ -0,0 +1,51 @@ > +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ > +/* > + * Copyright (C) 2017-2021 Huawei Technologies Duesseldorf GmbH > + * > + * Author: Roberto Sassu > + * > + * DIGLIM definitions exported to user space, useful for generating digest > + * lists. > + */ > + > +#ifndef _UAPI__LINUX_DIGLIM_H > +#define _UAPI__LINUX_DIGLIM_H > + > +#include > +#include > + > +enum compact_types { COMPACT_KEY, COMPACT_PARSER, COMPACT_FILE, > + COMPACT_METADATA, COMPACT_DIGEST_LIST, COMPACT__LAST }; > + > +enum compact_modifiers { COMPACT_MOD_IMMUTABLE, COMPACT_MOD__LAST }; > + > +enum compact_actions { COMPACT_ACTION_IMA_MEASURED, > + COMPACT_ACTION_IMA_APPRAISED, > + COMPACT_ACTION_IMA_APPRAISED_DIGSIG, > + COMPACT_ACTION__LAST }; > + > +enum ops { DIGEST_LIST_ADD, DIGEST_LIST_DEL, DIGEST_LIST_OP__LAST }; > + > +/** > + * struct compact_list_hdr - header of the following concatenated digests > + * @version: version of the digest list > + * @_reserved: field reserved for future use > + * @type: type of digest list among enum compact_types > + * @modifiers: additional attributes among (1 << enum compact_modifiers) I do not understand this description, what does it mean? > + * @algo: digest algorithm Is this also a #define or an enum? Where is the list of them? > + * @count: number of digests > + * @datalen: length of concatenated digests Where does this count and length come into play as nothing else is in this structure? > + * > + * A digest list is a set of blocks composed by struct compact_list_hdr and > + * the following concatenated digests. > + */ > +struct compact_list_hdr { > + __u8 version; > + __u8 _reserved; You MUST check this for 0 today, and document it above. If not, you can never use it in the future. > + __le16 type; > + __le16 modifiers; > + __le16 algo; > + __le32 count; > + __le32 datalen; > +} __packed; > +#endif /*_UAPI__LINUX_DIGLIM_H*/ > -- > 2.25.1 >