Received: by 2002:ab2:3141:0:b0:1ed:23cc:44d1 with SMTP id i1csp1706550lqg; Mon, 4 Mar 2024 00:47:21 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCVAlEvVtPyw19lJTG6KNuYJ867avbvKrgUVMfr10XFA0CaW77Mr6pSJ7PvfytprvdMChBbr5vDZnxr+YyaXSSG3cfgo0yumCM0/KeJbZw== X-Google-Smtp-Source: AGHT+IEmc+FDVG/LMe3ixJETbGWzibksoaK2Ul/SbybUV4MuCsgEpZk7jjjACUNT8HXj4GQ/m9pZ X-Received: by 2002:a17:90a:bb10:b0:29a:9c12:772 with SMTP id u16-20020a17090abb1000b0029a9c120772mr5344720pjr.10.1709542041403; Mon, 04 Mar 2024 00:47:21 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1709542041; cv=pass; d=google.com; s=arc-20160816; b=B/2JNxSFsPXIfXYMlKtI7JTFAnc1DDGnxmLq/P6BlmZ4Geiu1XG+EFmrya7FGaT0wn 4WIZ1magrzpQrJL2FWEy6XwtjvSONarIP9l3BJxZ57522YnVnvR/o8/veHXkVnXTKpT8 vRVRpjPXCEX+8xTs+WSvCwjBUxANmM7AOoEyNTCQIGl6cxDup4R30obgxsD9Pmhc68bi xGjx/oW2YrFJpdxFxWTe8/wD75DFTPjGpGd0nC7KQNRt0ThRNKYv7KDyAhJuqsD/Yc/M +sarAR//jCkrs6mwLlXB7YJTpO4c/aDvAPcNTqTxXzFFc+aygFnkWqhYk28hfXGDsKE1 HFgg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=xts3XtVON9I71sFj7FzOone2ONVNFLRmYJBbj5l1ezs=; fh=icnuzcdbhXgwjK0pgvJXK7xplE+Och0jvyZv2PxZJ18=; b=DAGuV/+/b9sa0CyuCoNe+wz1yr4gt3GiJCEnz0pI/5xOggiUEF7mX8zMOYBlgxp5yQ onp7OaIX2ngkKwp4wfkrJtQdUXBc1E+gcLhebhjL/wTJ/yXJQ5jmlwUDztbaBsipPNPr JTAOwrFhdA9VAimxzuWuqYE3eyumrtnDifTL0K4QnBlMzmRtXKJmVH21ugNlo396PDsB IeDgX0EqxdGzC2WtWvi76LtrbPmJqDA0IOgZNaKFV3cSZ8/NyRSNNie19A/dG+6SX/PE X4lQUIGag+IZKyLMbY3jGcO60vJser+vN97q10nupQ9Hv+vFzJ8eGk+cGDL6+ib0ZXiE UuIg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b="d/EJfGZP"; arc=pass (i=1 spf=pass spfdomain=redhat.com dkim=pass dkdomain=redhat.com dmarc=pass fromdomain=redhat.com); spf=pass (google.com: domain of linux-kernel+bounces-90228-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-90228-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [2604:1380:40f1:3f00::1]) by mx.google.com with ESMTPS id pv1-20020a17090b3c8100b0029b598099ffsi211403pjb.104.2024.03.04.00.47.20 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Mar 2024 00:47:21 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-90228-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) client-ip=2604:1380:40f1:3f00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b="d/EJfGZP"; arc=pass (i=1 spf=pass spfdomain=redhat.com dkim=pass dkdomain=redhat.com dmarc=pass fromdomain=redhat.com); spf=pass (google.com: domain of linux-kernel+bounces-90228-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-90228-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 172E8B20EFF for ; Mon, 4 Mar 2024 08:47:12 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 0C051374FD; Mon, 4 Mar 2024 08:43:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="d/EJfGZP" Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A1EB32942D for ; Mon, 4 Mar 2024 08:43:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.129.124 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709541832; cv=none; b=eynC/dz8DvBfrhVQQYKfdqIQ+9bfw6Hcwbfc3QLRX20WwxGWbJkjHmRTldgcE3rq8WQ7bz8WeWBgIPgieVHL5nQv9bUbUwiAYoqLv/PUvY99AF2OMPR5lDlgrw2RQdUd8WXziyteYG4gi2hIPBqAlQ3zX0MDpOzayXkU1HAzyP8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709541832; c=relaxed/simple; bh=OQhrdRbsy6dNNd/zZSQhmGvtRjzZYE4Nim/ssYLKPhk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bFBOQoQiM7OGkNRvMTtURelJinGTIOPdAct9r4QZFT+U8+khoRWErzG/cc1Vk205Zjf9A4svTFF+fEKMBdPUrzdlAYu8Kt1SxOapCo2IuZ1ief+wFytSoUa/2pY06LOFQ33F0puBuL0UTqt3C0RCEr6wTAV1bcJsFrQvmudd5xU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=d/EJfGZP; arc=none smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1709541829; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=xts3XtVON9I71sFj7FzOone2ONVNFLRmYJBbj5l1ezs=; b=d/EJfGZPSglbGqOi5UOvuJvMwrDuO7ZtqJZSmnGzMK43YHiR57ZbsIOtMBkMjFkplY08oL JgMrQ45I/ZY8E7Erb5w6dLQC5+fkW5CUXW+tpVpR1cPrJPcLzFl4yPZl9fJNHNT2eoftZg 7At1cvHLrH9FI1G9WQxuLkChGNWiNXc= Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-367-O92bpm_xN4y0qHaSFW0Q_Q-1; Mon, 04 Mar 2024 03:43:46 -0500 X-MC-Unique: O92bpm_xN4y0qHaSFW0Q_Q-1 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 29B1428EA6E3; Mon, 4 Mar 2024 08:43:46 +0000 (UTC) Received: from warthog.procyon.org.com (unknown [10.42.28.114]) by smtp.corp.redhat.com (Postfix) with ESMTP id EB5212026D0A; Mon, 4 Mar 2024 08:43:44 +0000 (UTC) From: David Howells To: netdev@vger.kernel.org Cc: David Howells , Marc Dionne , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , linux-afs@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next v2 11/21] rxrpc: Don't pick values out of the wire header when setting up security Date: Mon, 4 Mar 2024 08:43:08 +0000 Message-ID: <20240304084322.705539-12-dhowells@redhat.com> In-Reply-To: <20240304084322.705539-1-dhowells@redhat.com> References: <20240304084322.705539-1-dhowells@redhat.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.4 Don't pick values out of the wire header in rxkad when setting up DATA packet security, but rather use other sources. This makes it easier to get rid of txb->wire. Signed-off-by: David Howells cc: Marc Dionne cc: "David S. Miller" cc: Eric Dumazet cc: Jakub Kicinski cc: Paolo Abeni cc: linux-afs@lists.infradead.org cc: netdev@vger.kernel.org --- net/rxrpc/rxkad.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/net/rxrpc/rxkad.c b/net/rxrpc/rxkad.c index e451ac90bfee..ef0849c8329c 100644 --- a/net/rxrpc/rxkad.c +++ b/net/rxrpc/rxkad.c @@ -259,7 +259,7 @@ static int rxkad_secure_packet_auth(const struct rxrpc_call *call, _enter(""); - check = txb->seq ^ ntohl(txb->wire.callNumber); + check = txb->seq ^ call->call_id; hdr->data_size = htonl((u32)check << 16 | txb->len); txb->len += sizeof(struct rxkad_level1_hdr); @@ -302,7 +302,7 @@ static int rxkad_secure_packet_encrypt(const struct rxrpc_call *call, _enter(""); - check = txb->seq ^ ntohl(txb->wire.callNumber); + check = txb->seq ^ call->call_id; rxkhdr->data_size = htonl(txb->len | (u32)check << 16); rxkhdr->checksum = 0; @@ -362,9 +362,9 @@ static int rxkad_secure_packet(struct rxrpc_call *call, struct rxrpc_txbuf *txb) memcpy(&iv, call->conn->rxkad.csum_iv.x, sizeof(iv)); /* calculate the security checksum */ - x = (ntohl(txb->wire.cid) & RXRPC_CHANNELMASK) << (32 - RXRPC_CIDSHIFT); + x = (call->cid & RXRPC_CHANNELMASK) << (32 - RXRPC_CIDSHIFT); x |= txb->seq & 0x3fffffff; - crypto.buf[0] = txb->wire.callNumber; + crypto.buf[0] = htonl(call->call_id); crypto.buf[1] = htonl(x); sg_init_one(&sg, crypto.buf, 8);