Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp5046417imu; Tue, 15 Jan 2019 10:12:41 -0800 (PST) X-Google-Smtp-Source: ALg8bN4bOw0NBRjYyLobUwEqEckVdTOD/JdY/+u732MGp9DOiT2tRxu/WqRRFIOcedE3rlEOJ2HH X-Received: by 2002:a63:6506:: with SMTP id z6mr4927644pgb.334.1547575961279; Tue, 15 Jan 2019 10:12:41 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1547575961; cv=none; d=google.com; s=arc-20160816; b=cOoNzVBIXLUXzkl16KmFck6PfRGX7EpeLwVyFlT2g1TBCq07iBacqOU5Tn1GpeFX1I 4Z3iXB375H+4621JSuKiL8oPd4nyMRp7z/8Y86nTEhemeiZKSxABkkJmwOSXrs2Nlprv Quz4s4C/MpqrkLGQENOg2wDVbrO5op6U7ZjpN002FpA4ZeEtvNBcYmPyKWM0DYo01tQH /S/t1SLGdMPTk0GgL7WLh4xM3SJbWW6Alupa2CJrvOEqqIMpqcaj2uaXPRniAU2Yqs3i hGm8gDRXHnFGCpHzTEW/T9v3ieTbYxqlk7Iy1h2QVtAW982hnYtxUnLRyMyToUounly7 I57w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:content-transfer-encoding :mime-version:references:in-reply-to:date:cc:to:from:subject; bh=XC9go1eurhIqmWxkxhxU4/aowD+e1UsQibDNxDr+Hss=; b=Fewmut0E1mr8ymAsSqU0O3x56F/gser+XOSem11aiVMPtsOc2KEfAGq0CGFwl+emGk /uTPhgRUPw30FZvII7yBZ/tOwzN9Azwgfjtp4H62Gi9qhLpIFMwenTPHt2XupzR1/CUh R4kXEmQK7Z+FCFRXT69YsZX7a9eoinGHnG1Q4iWwTmHNXnd1NuLih4GR/w85JgjSXAod jkfqyJySt4wi0LoHqDLD5pSetFq4SYgQ1tq5yqxvrMqZIg4z+3nMJbqwUMdWroVpYI0h LbUEKXmEKLi7J+itzpDpkz7QXer2iw0/COdPiSE+R3AM+TvNCXArmDlZBcEGJsYBkDQN l1eA== ARC-Authentication-Results: i=1; mx.google.com; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h9si4092767plb.180.2019.01.15.10.12.23; Tue, 15 Jan 2019 10:12:41 -0800 (PST) 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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731147AbfAOPrV (ORCPT + 99 others); Tue, 15 Jan 2019 10:47:21 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:59200 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728841AbfAOPrV (ORCPT ); Tue, 15 Jan 2019 10:47:21 -0500 Received: from pps.filterd (m0098413.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id x0FFifZb119770 for ; Tue, 15 Jan 2019 10:47:19 -0500 Received: from e06smtp05.uk.ibm.com (e06smtp05.uk.ibm.com [195.75.94.101]) by mx0b-001b2d01.pphosted.com with ESMTP id 2q1huvacmx-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 15 Jan 2019 10:47:19 -0500 Received: from localhost by e06smtp05.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 15 Jan 2019 15:47:17 -0000 Received: from b06cxnps4074.portsmouth.uk.ibm.com (9.149.109.196) by e06smtp05.uk.ibm.com (192.168.101.135) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Tue, 15 Jan 2019 15:47:13 -0000 Received: from d06av21.portsmouth.uk.ibm.com (d06av21.portsmouth.uk.ibm.com [9.149.105.232]) by b06cxnps4074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id x0FFlBeu2949616 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Tue, 15 Jan 2019 15:47:11 GMT Received: from d06av21.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 64B495205A; Tue, 15 Jan 2019 15:47:11 +0000 (GMT) Received: from localhost.localdomain (unknown [9.80.106.167]) by d06av21.portsmouth.uk.ibm.com (Postfix) with ESMTP id EFE085204E; Tue, 15 Jan 2019 15:47:08 +0000 (GMT) Subject: Re: [RFC PATCH v2 2/2] kexec, KEYS: Make use of platform keyring for signature verify From: Mimi Zohar To: Kairui Song , linux-kernel@vger.kernel.org Cc: dhowells@redhat.com, dwmw2@infradead.org, jwboyer@fedoraproject.org, keyrings@vger.kernel.org, jmorris@namei.org, serge@hallyn.com, bauerman@linux.ibm.com, ebiggers@google.com, nayna@linux.ibm.com, dyoung@redhat.com, linux-integrity@vger.kernel.org, kexec@lists.infradead.org Date: Tue, 15 Jan 2019 10:46:58 -0500 In-Reply-To: <20190115094542.17129-3-kasong@redhat.com> References: <20190115094542.17129-1-kasong@redhat.com> <20190115094542.17129-3-kasong@redhat.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.20.5 (3.20.5-1.fc24) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 x-cbid: 19011515-0020-0000-0000-00000306D858 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 19011515-0021-0000-0000-00002157F07D Message-Id: <1547567218.4156.289.camel@linux.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-01-15_04:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1901150131 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 2019-01-15 at 17:45 +0800, Kairui Song wrote: > diff --git a/arch/x86/kernel/kexec-bzimage64.c b/arch/x86/kernel/kexec-bzimage64.c > index 7d97e432cbbc..a06b04065bb1 100644 > --- a/arch/x86/kernel/kexec-bzimage64.c > +++ b/arch/x86/kernel/kexec-bzimage64.c > @@ -534,9 +534,18 @@ static int bzImage64_cleanup(void *loader_data) > #ifdef CONFIG_KEXEC_BZIMAGE_VERIFY_SIG > static int bzImage64_verify_sig(const char *kernel, unsigned long kernel_len) > { > - return verify_pefile_signature(kernel, kernel_len, > - VERIFY_USE_SECONDARY_KEYRING, > - VERIFYING_KEXEC_PE_SIGNATURE); > + int ret; > + ret = verify_pefile_signature(kernel, kernel_len, > + VERIFY_USE_SECONDARY_KEYRING, > + VERIFYING_KEXEC_PE_SIGNATURE); > +#ifdef CONFIG_INTEGRITY_PLATFORM_KEYRING Consider using IS_ENABLED() or IS_BUILTIN(). Mimi > + if (ret == -ENOKEY) { > + ret = verify_pefile_signature(kernel, kernel_len, > + VERIFY_USE_PLATFORM_KEYRING, > + VERIFYING_KEXEC_PE_SIGNATURE); > + } > +#endif > + return ret; > } > #endif