Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp400007pxf; Thu, 1 Apr 2021 04:16:03 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwR+26h3/phXq7GEcWWakA2+2iK6verbVTmxaw2ix6foD2Q9x1rcfOcC2kR+FVX7kRpZeO1 X-Received: by 2002:aa7:c850:: with SMTP id g16mr9112025edt.324.1617275763305; Thu, 01 Apr 2021 04:16:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1617275763; cv=none; d=google.com; s=arc-20160816; b=zTh5MF1s9pVYZI2E5dJasjL7+HaphWlBVn07inrNl1LN3v/CIZoGfEIqIW1Msq3HBS a7GM/xfwXmZLdnYyxNlcLLBP9xqxSpe8q5gETjg2JDyuadhlm4rwfIC+IG2BC2yqT1i8 zyfvcTXc7Gffc+LVL0GMj+Id7/8t7OxfM9NmuiTLb/bY8hqw4/oZIc4l+GYBkm5r+yWX LAP8PndKyKoMfbNRt9WbqQJuKst6hmR7x6ByY91G5FzgHi9I+ixEpG9eKExdGbf//y/X fy12oFnNukqYVjX9Fn9FilvD4w0dmIiUdI/AExt2BLEtjh2/ynGeqna9hktawqatTz3g EFZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:content-transfer-encoding :content-id:mime-version:subject:cc:to:references:in-reply-to:from :organization:dkim-signature; bh=wJkEd7cUvYTeRV/iEXpdtoXis6pieALRjw6SuJS8/i8=; b=hcjFE6s165OOcN0jJLNqZ3dYjrC8tcM0xA8rrWEz4MohfJ/Khxa6kod00WuKrXJzJo imkHDPKWKGhrQoxGOCHCIuvk/xQTvBTrmK3S01LEseyZXX2JhiYMh0HqiLeyPspMeVNo KaPjHA9sdH4RI5d/R7GQt1fSE/r2d+TiM9DltQuoYnW3c5LQSC55xbwjGFlnjN6Emwid 31hG5wEzkb6cJWe+phi2Ypxs4NTj8b1xSn6Pc/zmN2BI48sciSBytSZ9WBSovABLy9cn AQ8ySZmitn2IaKqR8M1qc8oTf+UT2wNHfuD6VovukgRO5fiS+8hNXH2LKGkouRS0BPDy t40A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=aiZ3XVP7; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d16si4260415edc.45.2021.04.01.04.15.39; Thu, 01 Apr 2021 04:16:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-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=@redhat.com header.s=mimecast20190719 header.b=aiZ3XVP7; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234442AbhDALMW (ORCPT + 99 others); Thu, 1 Apr 2021 07:12:22 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:51551 "EHLO us-smtp-delivery-124.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234336AbhDALLw (ORCPT ); Thu, 1 Apr 2021 07:11:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1617275511; 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: in-reply-to:in-reply-to:references:references; bh=wJkEd7cUvYTeRV/iEXpdtoXis6pieALRjw6SuJS8/i8=; b=aiZ3XVP7mlQUNMJy6r6uJV8LRvy40k/3M8dow2jH8JutMaKNUEat4hV43YsOZtGgyoxw52 uSFrE6YSU8PdNvOP/6+ta6n0ZU0mkRym3+4KJy3+3WpO1IcKMc1cgIr3plrwkiTLOIHu+k x25FQylIjbXUP/k9sm3bu8bbe1LQQb4= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-598-IzKQ3i9nNnm-EJNdcp740A-1; Thu, 01 Apr 2021 07:11:46 -0400 X-MC-Unique: IzKQ3i9nNnm-EJNdcp740A-1 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 984C6107ACCA; Thu, 1 Apr 2021 11:11:43 +0000 (UTC) Received: from warthog.procyon.org.uk (ovpn-112-58.rdu2.redhat.com [10.10.112.58]) by smtp.corp.redhat.com (Postfix) with ESMTP id 39BBD5D9CA; Thu, 1 Apr 2021 11:11:39 +0000 (UTC) Organization: Red Hat UK Ltd. Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SI4 1TE, United Kingdom. Registered in England and Wales under Company Registration No. 3798903 From: David Howells In-Reply-To: References: To: Richard Weinberger Cc: dhowells@redhat.com, Ahmad Fatoum , Jarkko Sakkinen , =?UTF-8?Q?Horia_Geant=C4=83?= , Mimi Zohar , Aymen Sghaier , Herbert Xu , "David S. Miller" , James Bottomley , kernel@pengutronix.de, James Morris , "Serge E. Hallyn" , Steffen Trumtrar , Udit Agarwal , Jan Luebbe , David Gstir , Franck LENORMAND , Sumit Garg , linux-integrity@vger.kernel.org, keyrings@vger.kernel.org, Linux Crypto Mailing List , LKML , LSM Subject: Re: [PATCH v1 0/3] KEYS: trusted: Introduce support for NXP CAAM-based trusted keys MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <3714193.1617275498.1@warthog.procyon.org.uk> Content-Transfer-Encoding: quoted-printable Date: Thu, 01 Apr 2021 12:11:38 +0100 Message-ID: <3714194.1617275498@warthog.procyon.org.uk> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org Richard Weinberger wrote: > On Wed, Mar 17, 2021 at 3:08 PM Ahmad Fatoum w= rote: > > keyctl add trusted $KEYNAME "load $(cat ~/kmk.blob)" @s > > Is there a reason why we can't pass the desired backend name in the > trusted key parameters? > e.g. > keyctl add trusted $KEYNAME "backendtype caam load $(cat ~/kmk.blob)" @s I wonder... Does it make sense to add a new variant of the add_key() and keyctl_instantiate() syscalls that takes an additional parameter string, separate from the payload blob? key_serial_t add_key2(const char *type, const char *description, const char *params, const void *payload, size_t plen, key_serial_t keyring); which could then by used, say: keyctl add --payload=3D~/kmk.blob trusted $KEYNAME "backendtype caam load= " @s This would then appear in struct key_preparsed_payload { const char *orig_description; char *description; char *params; <--- union key_payload payload; const void *data; size_t datalen; size_t quotalen; time64_t expiry; }; params would then be NULL for add_key(). If add_key2() is not available, the --payload param gets concatenated to t= he parameters string. Might be too complicated, I guess. Though it might make sense just to do = the concatenation inside the keyctl program. David