From patchwork Tue Nov 14 20:34:50 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joakim Tjernlund X-Patchwork-Id: 34481 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 786CAC54E7C for ; Tue, 14 Nov 2023 20:36:24 +0000 (UTC) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (NAM10-DM6-obe.outbound.protection.outlook.com [40.107.93.48]) by mx.groups.io with SMTP id smtpd.web11.3921.1699994177718438836 for ; Tue, 14 Nov 2023 12:36:17 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@infinera.com header.s=selector1 header.b=njqRhB+i; spf=pass (domain: infinera.com, ip: 40.107.93.48, mailfrom: joakim.tjernlund@infinera.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Uxmdoidi4+JIiwcPuECftYAfesRJbsjGJrQ7Lwq9XEilMNvO4aVr4cnWDeXeIry8BPXDZZ4iEV/j+aLI3Q/InUj4W4RaFUXTsqeUjvu848MVMK5QFICKaPSWuKzmFrJAwBd+qWmBaGrkbUl4qOHT+0NtFd4B5KSRYBh56/7s6ZS910e8xdi11KDHGt1w06z+HeJdgo4Pvbx4JmUKGINH1AUPnJcCYrubs8toIvk5hiuBJlC6cPlOIqtUPyr3toCBabzTg4WbcItpahNG7Y6ZJ/ZQVKRqBEJH7ZlV+YjXXDdQ1K2qqvR3dk1Bpl+SULFOFA68KiS5NSuJs0w5vrw1Lg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wF4rCN5qOM2LapRa2BNt7X7ofq+40Cua1WlH0Oz3C8Y=; b=lTcrk22uhUaBK2WO7/CSzcGPJNFnK/RGEivMFOja5m66EfenR0o3fDJrGOL8YgpVAXgQOY9QuCcqwRWFWphiNGFWpnRCnOrCXFIpUMSZhc/WVoH4f8ep5a95WA7Q/JTbHEYYc+B7Nhj1bn+qtb8Q+PCBIgv+LippcYm2Dkos66jDzvzTiLlcPud+wodziXF1MZqlvstRN0KN4mQGmN4MdTGhjzFHwQBDiJZHltXTn77N+H5IbA+I082zwhiuUy4o1zG/uV6mfBkQbGve0PurDKiUChsj9JG4oCDePez2QPMiS918A+cacbHQEC+pZ3KNhlqfZF7N61O1nuxGQkE5Og== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 8.4.225.30) smtp.rcpttodomain=lists.openembedded.org smtp.mailfrom=infinera.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=infinera.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=infinera.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wF4rCN5qOM2LapRa2BNt7X7ofq+40Cua1WlH0Oz3C8Y=; b=njqRhB+irjHeYChlLG+EKQKneTGT6xKCqI3ZlsA5gSMTgvbs2uxpq38f+Ajhd044ZwfThnTWnDNh56t+BPGwGrPiXjwWuEs2QFkyV1Sv+vsQDW44KofbOe00BuJsLwswHO99isx1xBX3xvYPEQy1FpuaU7J5wGKxD9fMUf4UElMUGBJ5dfhh9+jTgGDnwsJzAmHThuaYimenJg/p6sHo/aZ8QOGYtP3dq5thlvEmg7ZujC7nDwCYD3+MyruNsR9rGKsT3x4abBkfVvjRlihjoN6Ku7D5QX/UvE+gUv6OtdMQ3eubOeZKFaxu6/qYTFv2p2+O+80oiCOxtdFrwSlGeA== Received: from BLAPR03CA0123.namprd03.prod.outlook.com (2603:10b6:208:32e::8) by BLAPR10MB4833.namprd10.prod.outlook.com (2603:10b6:208:333::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7002.17; Tue, 14 Nov 2023 20:36:13 +0000 Received: from BL6PEPF0001AB4A.namprd04.prod.outlook.com (2603:10b6:208:32e:cafe::31) by BLAPR03CA0123.outlook.office365.com (2603:10b6:208:32e::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.31 via Frontend Transport; Tue, 14 Nov 2023 20:36:13 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 8.4.225.30) smtp.mailfrom=infinera.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=infinera.com; Received-SPF: Pass (protection.outlook.com: domain of infinera.com designates 8.4.225.30 as permitted sender) receiver=protection.outlook.com; client-ip=8.4.225.30; helo=owa.infinera.com; pr=C Received: from owa.infinera.com (8.4.225.30) by BL6PEPF0001AB4A.mail.protection.outlook.com (10.167.242.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7002.14 via Frontend Transport; Tue, 14 Nov 2023 20:36:13 +0000 Received: from sv-ex16-prd.infinera.com (10.100.96.229) by sv-ex16-prd.infinera.com (10.100.96.229) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Tue, 14 Nov 2023 12:36:12 -0800 Received: from sv-smtp-prod3.infinera.com (10.100.98.58) by sv-ex16-prd.infinera.com (10.100.96.229) with Microsoft SMTP Server id 15.1.2507.6 via Frontend Transport; Tue, 14 Nov 2023 12:36:12 -0800 Received: from se-metroit-prd1.infinera.com ([10.210.32.58]) by sv-smtp-prod3.infinera.com with Microsoft SMTPSVC(8.5.9600.16384); Tue, 14 Nov 2023 12:36:11 -0800 Received: from gentoo-jocke.infinera.com (gentoo-jocke.infinera.com [10.210.71.73]) by se-metroit-prd1.infinera.com (Postfix) with ESMTP id 5FC9A2C06D83 for ; Tue, 14 Nov 2023 21:36:11 +0100 (CET) Received: by gentoo-jocke.infinera.com (Postfix, from userid 1001) id 5D891456169E; Tue, 14 Nov 2023 21:36:11 +0100 (CET) From: Joakim Tjernlund To: CC: Joakim Tjernlund Subject: [PATCH 1/3] base-passwd: Add PW_SUBDIR Date: Tue, 14 Nov 2023 21:34:50 +0100 Message-ID: <20231114203608.1490318-2-joakim.tjernlund@infinera.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231114203608.1490318-1-joakim.tjernlund@infinera.com> References: <20231114203608.1490318-1-joakim.tjernlund@infinera.com> MIME-Version: 1.0 X-OriginalArrivalTime: 14 Nov 2023 20:36:12.0323 (UTC) FILETIME=[34DC0F30:01DA173A] X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB4A:EE_|BLAPR10MB4833:EE_ X-MS-Office365-Filtering-Correlation-Id: f077a11b-5d1c-475b-2eed-08dbe551580f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wYjAqvJmOwVmL/9q0jkZim57vWeq4irLMrp+E7belCBrkUQyxPggFhKMu/nt8n94R7HdzupEYvziBzPw81xxmjPylUxfGCCNYaRgsys80bTDWYL+kw+KgbjA30JNMW2VqThZ1dyXJyBcYvfz5a7yGuelZnmdmqDPEEsIpWHHPlVI++NYSUHcLKAfKAUSwHGWhdB2T4wXGPbKgkYnRiNZNVb1Aolgs6Jjj+6r+7yvMH81KCaHtOa0VkAB4MrR7mchMS3mUUUwXd2YJuxkXH0LOZUevwuydp1OvY8CNXVxwh3BV2IcGTvC/NDXU1qk6C5Uoq8hOjsv8vBeGeEc/dM9VS8mZ1NqkFc3breoZvb42HQKVT3n6Y4VJfixGKGBXKcBCEateBQnHajzgRKSfl4xb6qYdAP3CVRGed/TAUZmEzqN0YPMBjug+UhFC/0YWmPsNyEBMmTRnUqbgfn148ai0k6nzEr6nN0/EqeR1Yrgj27qzqA4csJlxsOtxzwSOflJaaCgTmq/jloG7Yq34nauZeMySt+gLl7zf74SqG4uHWqxFdwL1Ntz/Crjo4XDZdBlFl96PhKQlFliH/A67rRpQfTM+eh1tHA13iL8Q5in9dEBIXrNwF/I0QQ6Xq+78YJt38UKt0zyrTCoL7wLq5aDvwekzzKoOR9qG1GVQ1C47vnnlnPvXE70xrHFGZpyRVbM7yEL5g5vHTvOfWBHdtVOg7KDAPuyHKUlXSzo3rs7vNE= X-Forefront-Antispam-Report: CIP:8.4.225.30;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:owa.infinera.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(136003)(376002)(39860400002)(396003)(346002)(230922051799003)(64100799003)(451199024)(82310400011)(1800799009)(186009)(46966006)(36840700001)(70206006)(1076003)(107886003)(5660300002)(478600001)(316002)(70586007)(42186006)(40480700001)(6916009)(8936002)(8676002)(4326008)(6666004)(44832011)(86362001)(36860700001)(41300700001)(356005)(83380400001)(82740400003)(47076005)(2616005)(81166007)(336012)(426003)(6266002)(36756003)(26005)(2906002)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: infinera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Nov 2023 20:36:13.3995 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f077a11b-5d1c-475b-2eed-08dbe551580f X-MS-Exchange-CrossTenant-Id: 285643de-5f5b-4b03-a153-0ae2dc8aaf77 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=285643de-5f5b-4b03-a153-0ae2dc8aaf77;Ip=[8.4.225.30];Helo=[owa.infinera.com] X-MS-Exchange-CrossTenant-AuthSource: BL6PEPF0001AB4A.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLAPR10MB4833 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 14 Nov 2023 20:36:24 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/190517 Add support for creating passwd files in a /etc subdir Set PW_SUBIR to pwdb to get passwd files in /etc/pwdb Signed-off-by: Joakim Tjernlund --- .../base-passwd/base-passwd_3.5.29.bb | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb index ef7792ae49..e453be0763 100644 --- a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb +++ b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb @@ -20,6 +20,9 @@ SRC_URI = "https://launchpad.net/debian/+archive/primary/+files/${BPN}_${PV}.tar SRC_URI[md5sum] = "6beccac48083fe8ae5048acd062e5421" SRC_URI[sha256sum] = "f0b66388b2c8e49c15692439d2bee63bcdd4bbbf7a782c7f64accc55986b6a36" +#Set PW_SUBDIR to pwdb to get passwd files in /etc/pwdb +PW_SUBDIR ?= "" + # the package is taken from launchpad; that source is static and goes stale # so we check the latest upstream from a directory that does get updated UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/b/base-passwd/" @@ -50,10 +53,11 @@ basepasswd_sysroot_postinst() { #!/bin/sh # Install passwd.master and group.master to sysconfdir -install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir} +install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR} for i in passwd group; do install -p -m 644 ${STAGING_DIR_TARGET}${datadir}/base-passwd/\$i.master \ - ${STAGING_DIR_TARGET}${sysconfdir}/\$i + ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR}/\$i + [ -n "${PW_SUBDIR}" ] && ln -fs ${PW_SUBDIR}/\$i ${STAGING_DIR_TARGET}${sysconfdir}/\$i done # Run any useradd postinsts @@ -89,15 +93,19 @@ python populate_packages:prepend() { f.close() preinst = """#!/bin/sh -mkdir -p $D${sysconfdir} -if [ ! -e $D${sysconfdir}/passwd ]; then -\tcat << 'EOF' > $D${sysconfdir}/passwd +mkdir -p $D${sysconfdir}/${PW_SUBDIR} +if [ ! -e $D${sysconfdir}/${PW_SUBDIR}/passwd ]; then +\tcat << 'EOF' > $D${sysconfdir}/${PW_SUBDIR}/passwd """ + passwd + """EOF fi -if [ ! -e $D${sysconfdir}/group ]; then -\tcat << 'EOF' > $D${sysconfdir}/group +if [ ! -e $D${sysconfdir}/${PW_SUBDIR}/group ]; then +\tcat << 'EOF' > $D${sysconfdir}/${PW_SUBDIR}/group """ + group + """EOF fi +if [ -n "${PW_SUBDIR}" ]; then +ln -fs ${PW_SUBDIR}/passwd $D${sysconfdir}/passwd +ln -fs ${PW_SUBDIR}/group $D${sysconfdir}/group +fi """ d.setVar(d.expand('pkg_preinst:${PN}'), preinst) } @@ -114,5 +122,5 @@ pkg_postinst:${PN}-update () { if [ -n "$D" ]; then exit 0 fi -${sbindir}/update-passwd +${sbindir}/update-passwd -P /etc/${PW_SUBDIR}/passwd -S /etc/${PW_SUBDIR}/shadow -G /etc/${PW_SUBDIR}/group } From patchwork Tue Nov 14 20:34:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joakim Tjernlund X-Patchwork-Id: 34483 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 58E5AC54E7C for ; Tue, 14 Nov 2023 20:36:34 +0000 (UTC) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (NAM12-DM6-obe.outbound.protection.outlook.com [40.107.243.54]) by mx.groups.io with SMTP id smtpd.web11.3924.1699994191260043788 for ; Tue, 14 Nov 2023 12:36:31 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@infinera.com header.s=selector1 header.b=rEk7PoZw; spf=pass (domain: infinera.com, ip: 40.107.243.54, mailfrom: joakim.tjernlund@infinera.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BemXIOGimKIrUGDtKht8IpJrRRs2+rB6pbbVmDmaXhIa9qWvajdC4p49RjP3dVTnIoh5Uz3J06PlLhUSgR8oT4Zw9J/k7v5ZAeDEVEcQu6qkdEQptIcCF1gDWaMB2lgZiKuGfiaGrmmXUIznDwoPJeaU+FZPZducMTYXbOzYJpP2328yqHMVHh14uZ6zy0JuT8SJpGWe4zv7UCOppQW+QPEYD4Nupa4AHZUzoo6tip6dclaoCKOP96iRIi0r3w/p69k3d6B6+HeYasd9AI/D4m4ideh+Tr16B8iRAeTgj1/R5HAL2YscyCpxWOfAIf3TN2HhgOxCqH+XdFDVWjdg3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=z4RlG+dHLFDkqzxMq2eYZ5HQTcsv63VE3XhsYvq4i0Q=; b=Tx6vu7o/4k0PjktCELJupw7yM3CuiT1AyoMeaP9GJ9NX7f7wafwsegkUvCKtFuKqNlKvCxGIzlXbLF4W9T9yG4ufAdZLmnWKPVdHanqe8mygftDJAygC7THLnM9fEqup9DOfcQkEqm225utXEpqTnw98kNF68rZ0f3pbrZcYqDDeniL4tkL4C8LpdJL4bpPMhf63/57NT+6+62H8kikXk99MPAza/Nqii8nRy6IXJNtVWbaQYGdyJfPoYFusd+1sYxJVzSevjPicETPTGqXZPmVzHm9vL5MRdHAAdNZGJ5ho2FP4eCUqO3wPFFmAKSftyd940cUsTJnMpoaq+fptUA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 8.4.225.30) smtp.rcpttodomain=lists.openembedded.org smtp.mailfrom=infinera.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=infinera.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=infinera.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z4RlG+dHLFDkqzxMq2eYZ5HQTcsv63VE3XhsYvq4i0Q=; b=rEk7PoZwz4ZEy8t+/ybGgwZCtFn7dHJmAIJujUAotYI3J5ypxEm0i7sj8W9SoEnGtAI84CJZIUwyAntVo3T4E+VP+Bz/47G2BKaiAS4aNSKixI1FB/tqMlqaM1WjdCcjOGvPCa+NGm/1bRFqJJpGjHfoa+bRPC+7fFPtWK0zz9e7tthcIFSPtFyYWlqRZUpZDEgDZtkT8ZFri/NZsGG4ZLxMdQ8GKhV/T/FVq6bNarX5JjZd06Cb1hBd/Nrk1IFmo+LhgvwNxeEh1B91WkMLx0o9aLQeD1ue5UBvVyV3VLT+LtnPy3ndLDs7OxCT3nZG7L8iAzkPugSkmhLBfGJfqQ== Received: from MN2PR20CA0010.namprd20.prod.outlook.com (2603:10b6:208:e8::23) by DS7PR10MB7373.namprd10.prod.outlook.com (2603:10b6:8:ef::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.31; Tue, 14 Nov 2023 20:36:27 +0000 Received: from BL6PEPF0001AB50.namprd04.prod.outlook.com (2603:10b6:208:e8:cafe::26) by MN2PR20CA0010.outlook.office365.com (2603:10b6:208:e8::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.31 via Frontend Transport; Tue, 14 Nov 2023 20:36:26 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 8.4.225.30) smtp.mailfrom=infinera.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=infinera.com; Received-SPF: Pass (protection.outlook.com: domain of infinera.com designates 8.4.225.30 as permitted sender) receiver=protection.outlook.com; client-ip=8.4.225.30; helo=owa.infinera.com; pr=C Received: from owa.infinera.com (8.4.225.30) by BL6PEPF0001AB50.mail.protection.outlook.com (10.167.242.74) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7002.13 via Frontend Transport; Tue, 14 Nov 2023 20:36:26 +0000 Received: from sv-ex16-prd.infinera.com (10.100.96.229) by sv-ex16-prd.infinera.com (10.100.96.229) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Tue, 14 Nov 2023 12:36:13 -0800 Received: from sv-smtp-prod3.infinera.com (10.100.98.58) by sv-ex16-prd.infinera.com (10.100.96.229) with Microsoft SMTP Server id 15.1.2507.6 via Frontend Transport; Tue, 14 Nov 2023 12:36:13 -0800 Received: from se-metroit-prd1.infinera.com ([10.210.32.58]) by sv-smtp-prod3.infinera.com with Microsoft SMTPSVC(8.5.9600.16384); Tue, 14 Nov 2023 12:36:12 -0800 Received: from gentoo-jocke.infinera.com (gentoo-jocke.infinera.com [10.210.71.73]) by se-metroit-prd1.infinera.com (Postfix) with ESMTP id 2DB3C2C06D81 for ; Tue, 14 Nov 2023 21:36:12 +0100 (CET) Received: by gentoo-jocke.infinera.com (Postfix, from userid 1001) id 2CA45456169E; Tue, 14 Nov 2023 21:36:12 +0100 (CET) From: Joakim Tjernlund To: CC: Joakim Tjernlund Subject: [PATCH 2/3] shadow: Add PW_SUBDIR Date: Tue, 14 Nov 2023 21:34:51 +0100 Message-ID: <20231114203608.1490318-3-joakim.tjernlund@infinera.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231114203608.1490318-1-joakim.tjernlund@infinera.com> References: <20231114203608.1490318-1-joakim.tjernlund@infinera.com> MIME-Version: 1.0 X-OriginalArrivalTime: 14 Nov 2023 20:36:13.0150 (UTC) FILETIME=[355A3FE0:01DA173A] X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB50:EE_|DS7PR10MB7373:EE_ X-MS-Office365-Filtering-Correlation-Id: b2a7c979-1de6-4ec0-15c6-08dbe5515fcf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9OtRuS/+mb9XH+b9fQIFZD0BfB28AA3z8i5LlCRhLP0vfbHrW6pCdFsZR6hKMdNQNyf4YKlIwaBusgUeGND9qcguCRN1HgvUUiDHO/vO9v/Zd2KcnMIFqlcb3tgOBIh+p7fpmARYtDsdFHqVrolehWALf5+YVYEltvGv/6nd/apRi9dCWYpW5mwbKj+a8GZgmNop0llEEFU9vwo4fpgPk6Etu0HJqGV1hGUQcOA4WKiAn1Lfzx51LeWKv+wm0sU7IipABf4SwkT5bEi4RrN2gIhGWnkV274XS0UC61TfYGApAXWe6mdn6sySrDvIwNFJ5VJcRg76Aeg0CFFxn+glDFqlRdSb614jv2uidWTdluvVnCoWCnALvZRqwE8Kc0MsGThHf9fVMjB3MgpCNDrY+9vuUJGGM3b72Nsfv2hPB9mWGXzwalEIBB0oqXejKE8feaAmdymR62AAEuROD5gcNSTGro3lvrpBQ41UGOjB9iQqJQZixnnoZFUDg9Evw45t3iFYi/lkVQN9Bl5xROAv3aeCldfdhjacZ5cKB2awAqyfB/ZgBCpMVYJpkLzNW5JdUB7kcV9W5hzkMCClSCJSeXh9U5WZ50nbcYrnF1oPuRu+pKgAOISjDkZ2G1va9adnXaMY0sXiofaNZh6wKhR/nTxqZisN0feWYh+PCXI79kQFx5j21akIKCWzeewFcyEhTzXyHq1OLhlNfuXR67mz8mKRPo7qHaDIFvAk6DGhmkY= X-Forefront-Antispam-Report: CIP:8.4.225.30;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:owa.infinera.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(39860400002)(346002)(396003)(230922051799003)(64100799003)(1800799009)(186009)(82310400011)(451199024)(36840700001)(46966006)(2616005)(107886003)(6666004)(1076003)(478600001)(36860700001)(336012)(6266002)(26005)(47076005)(83380400001)(426003)(44832011)(6916009)(8676002)(5660300002)(4326008)(70206006)(8936002)(70586007)(316002)(42186006)(2906002)(41300700001)(36756003)(82740400003)(81166007)(356005)(86362001)(40480700001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: infinera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Nov 2023 20:36:26.4013 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b2a7c979-1de6-4ec0-15c6-08dbe5515fcf X-MS-Exchange-CrossTenant-Id: 285643de-5f5b-4b03-a153-0ae2dc8aaf77 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=285643de-5f5b-4b03-a153-0ae2dc8aaf77;Ip=[8.4.225.30];Helo=[owa.infinera.com] X-MS-Exchange-CrossTenant-AuthSource: BL6PEPF0001AB50.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7373 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 14 Nov 2023 20:36:34 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/190518 Add support for creating passwd files in a /etc subdir Set PW_SUBIR to pwdb to get passwd files in /etc/pwdb Signed-off-by: Joakim Tjernlund --- .../0001-Define-SUBUID_FILE-SUBGID_FILE.patch | 92 +++++++++++++++++++ meta/recipes-extended/shadow/shadow.inc | 30 +++++- 2 files changed, 118 insertions(+), 4 deletions(-) create mode 100644 meta/recipes-extended/shadow/files/0001-Define-SUBUID_FILE-SUBGID_FILE.patch diff --git a/meta/recipes-extended/shadow/files/0001-Define-SUBUID_FILE-SUBGID_FILE.patch b/meta/recipes-extended/shadow/files/0001-Define-SUBUID_FILE-SUBGID_FILE.patch new file mode 100644 index 0000000000..b02a61e3c2 --- /dev/null +++ b/meta/recipes-extended/shadow/files/0001-Define-SUBUID_FILE-SUBGID_FILE.patch @@ -0,0 +1,92 @@ +From f605fb315faef7ddcad70d638f3b3aa16ea98fc0 Mon Sep 17 00:00:00 2001 +From: Joakim Tjernlund +Date: Thu, 2 Nov 2023 00:27:10 +0100 +Subject: [PATCH] Define SUBUID_FILE/SUBGID_FILE + +Upstream-Status: Pending + +These where hard coded, make them definable like SHADOW_FILE + +Signed-off-by: Joakim Tjernlund +--- + lib/defines.h | 8 ++++++++ + lib/subordinateio.c | 6 +++--- + libmisc/prefix_flag.c | 8 ++++---- + 3 files changed, 15 insertions(+), 7 deletions(-) + +diff --git a/lib/defines.h b/lib/defines.h +index fc1521c..27b220f 100644 +--- a/lib/defines.h ++++ b/lib/defines.h +@@ -312,6 +312,14 @@ char *strchr (), *strrchr (), *strtok (); + #define SHADOW_FILE "/etc/shadow" + #endif + ++#ifndef SUBUID_FILE ++#define SUBUID_FILE "/etc/subuid" ++#endif ++ ++#ifndef SUBGID_FILE ++#define SUBGID_FILE "/etc/subgid" ++#endif ++ + #ifdef SHADOWGRP + #ifndef SGROUP_FILE + #define SGROUP_FILE "/etc/gshadow" +diff --git a/lib/subordinateio.c b/lib/subordinateio.c +index 9ca70b8..9ddc5e1 100644 +--- a/lib/subordinateio.c ++++ b/lib/subordinateio.c +@@ -206,7 +206,7 @@ static const struct subordinate_range *find_range(struct commonio_db *db, + /* + * We only do special handling for these two files + */ +- if ((0 != strcmp(db->filename, "/etc/subuid")) && (0 != strcmp(db->filename, "/etc/subgid"))) ++ if ((0 != strcmp(db->filename, SUBUID_FILE)) && (0 != strcmp(db->filename, SUBGID_FILE))) + return NULL; + + /* +@@ -554,7 +554,7 @@ static int remove_range (struct commonio_db *db, + } + + static struct commonio_db subordinate_uid_db = { +- "/etc/subuid", /* filename */ ++ SUBUID_FILE, /* filename */ + &subordinate_ops, /* ops */ + NULL, /* fp */ + #ifdef WITH_SELINUX +@@ -650,7 +650,7 @@ uid_t sub_uid_find_free_range(uid_t min, uid_t max, unsigned long count) + } + + static struct commonio_db subordinate_gid_db = { +- "/etc/subgid", /* filename */ ++ SUBGID_FILE, /* filename */ + &subordinate_ops, /* ops */ + NULL, /* fp */ + #ifdef WITH_SELINUX +diff --git a/libmisc/prefix_flag.c b/libmisc/prefix_flag.c +index d4dfbc2..0e7dfa7 100644 +--- a/libmisc/prefix_flag.c ++++ b/libmisc/prefix_flag.c +@@ -120,14 +120,14 @@ extern const char* process_prefix_flag (const char* short_opt, int argc, char ** + spw_setdbname(spw_db_file); + + #ifdef ENABLE_SUBIDS +- len = strlen(prefix) + strlen("/etc/subuid") + 2; ++ len = strlen(prefix) + strlen(SUBUID_FILE) + 2; + suid_db_file = xmalloc(len); +- snprintf(suid_db_file, len, "%s/%s", prefix, "/etc/subuid"); ++ snprintf(suid_db_file, len, "%s/%s", prefix, SUBUID_FILE); + sub_uid_setdbname(suid_db_file); + +- len = strlen(prefix) + strlen("/etc/subgid") + 2; ++ len = strlen(prefix) + strlen(SUBGID_FILE) + 2; + sgid_db_file = xmalloc(len); +- snprintf(sgid_db_file, len, "%s/%s", prefix, "/etc/subgid"); ++ snprintf(sgid_db_file, len, "%s/%s", prefix, SUBGID_FILE); + sub_gid_setdbname(sgid_db_file); + #endif + +-- +2.41.0 + diff --git a/meta/recipes-extended/shadow/shadow.inc b/meta/recipes-extended/shadow/shadow.inc index 3c1dd2f98e..bcb9b09a49 100644 --- a/meta/recipes-extended/shadow/shadow.inc +++ b/meta/recipes-extended/shadow/shadow.inc @@ -18,6 +18,7 @@ SRC_URI = "https://github.com/shadow-maint/shadow/releases/download/v${PV}/${BP} file://useradd \ file://CVE-2023-29383.patch \ file://0001-Overhaul-valid_field.patch \ + file://0001-Define-SUBUID_FILE-SUBGID_FILE.patch \ " SRC_URI:append:class-target = " \ @@ -46,6 +47,21 @@ PAM_SRC_URI = "file://pam.d/chfn \ file://pam.d/passwd \ file://pam.d/su" +#Set PW_SUBDIR to pwdb to get passwd files in /etc/pwdb +PW_SUBDIR ?= "" +PWPRE = "/etc/${PW_SUBDIR}" +CFLAGS:append = ' -DPASSWD_FILE=\\"${PWPRE}/passwd\\"' +CFLAGS:append = ' -DSHADOW_FILE=\\"${PWPRE}/shadow\\"' +CFLAGS:append = ' -DGROUP_FILE=\\"${PWPRE}/group\\"' +CFLAGS:append = ' -DSGROUP_FILE=\\"${PWPRE}/gshadow\\"' +CFLAGS:append = ' -DSUBUID_FILE=\\"${PWPRE}/subuid\\"' +CFLAGS:append = ' -DSUBGID_FILE=\\"${PWPRE}/subgid\\"' + +#shadow has it own impl. that uses whatever dir passwd files are in +do_configure:prepend () { + sed -i -e 's/lckpwdf//' ${S}/configure.ac +} + inherit autotools gettext export CONFIG_SHELL="/bin/sh" @@ -157,9 +173,9 @@ do_install:append() { # usermod requires the subuid/subgid files to be in place before being # able to use the -v/-V flags otherwise it fails: # usermod: /etc/subuid does not exist, you cannot use the flags -v or -V - install -d ${D}${sysconfdir} - touch ${D}${sysconfdir}/subuid - touch ${D}${sysconfdir}/subgid + install -d ${D}${sysconfdir}/${PW_SUBDIR} + touch ${D}${sysconfdir}/${PW_SUBDIR}/subuid + touch ${D}${sysconfdir}/${PW_SUBDIR}/subgid } PACKAGES =+ "${PN}-base" @@ -193,12 +209,18 @@ ALTERNATIVE_LINK_NAME[su] = "${base_bindir}/su" PACKAGE_WRITE_DEPS += "shadow-native" pkg_postinst:${PN}:class-target () { + install -d $D${sysconfdir}/${PW_SUBDIR} if [ "x$D" != "x" ]; then rootarg="--root $D" else rootarg="" fi - + if [ -n "${PW_SUBDIR}" ]; then + ln -fs ${PW_SUBDIR}/subuid $D${sysconfdir}/subuid + ln -fs ${PW_SUBDIR}/subgid $D${sysconfdir}/subgid + ln -fs ${PW_SUBDIR}/shadow $D${sysconfdir}/shadow + ln -fs ${PW_SUBDIR}/gshadow $D${sysconfdir}/gshadow + fi pwconv $rootarg || exit 1 grpconv $rootarg || exit 1 } From patchwork Tue Nov 14 20:34:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joakim Tjernlund X-Patchwork-Id: 34482 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7CD52C54E7F for ; Tue, 14 Nov 2023 20:36:24 +0000 (UTC) Received: from NAM02-DM3-obe.outbound.protection.outlook.com (NAM02-DM3-obe.outbound.protection.outlook.com [40.107.95.87]) by mx.groups.io with SMTP id smtpd.web11.3920.1699994177452613791 for ; Tue, 14 Nov 2023 12:36:17 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@infinera.com header.s=selector1 header.b=mnFf5Wwy; spf=pass (domain: infinera.com, ip: 40.107.95.87, mailfrom: joakim.tjernlund@infinera.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KiNa5C+aVVbmRIteZ10jaO75wsa7FIVn73DipVqYqupN4tagz5km3gO4BVnyOHAsevCVM9EpyDpVS3tcKp8ChFlUjc49VWbIWpxQp3bms38UCt4IvNuUwwR5W3DGNKTuYTmXDhaHCvcDCRH7wJN6UoAb8dZph9KFsi5Nmo4BOW/ZNIUtdpYDPQJVteFodRVMnKEE85TwUc2nJchIoL9f2NpULdcZUPTsX94wN+fNPiFdVoSsr08sH3GvuN5IuQSVugc/A8e4CLFK25rJaCrUVhEILwBx3m51iZMXIP8mveJcYXJfUIcVhsIfyjszzjNw2WsQ4pR5GhupAtJFw6d/uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=U0cu8aPddouhVFFnCamRgjJyovGnhgtMQg/Y5yZRAJU=; b=VvXfFIpw7EUb6zT+dGVDStcbInuYtHdFFnFrbFOWqWA0ROA/TdpFk8qPsKDwhFCHdMCzccPxovNZkgKJ0KWH3dIC54pzgFzKMytL+mfZPdHSLA2RWpY6wqZxvA0CVQz92932zWZZzLr4mnUO++zxdYyP9ze/uTUqb28bxyocLOW3kMuzwbvepygZAziHTfjtNiQSN//MLC6KsiWJgVJAGcWwZ0TUgyxmOTNr3rXlBrYXOZvZr/fBYI1vakHt88tEc1bWzrb1MA4nE24HIkzY7LuQoXHmKeg5ab7ga1kof76eFNqmq8jLf7HQ2B82dD+h+XsIKwJmEWN9P1989o2meg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 8.4.225.30) smtp.rcpttodomain=lists.openembedded.org smtp.mailfrom=infinera.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=infinera.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=infinera.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U0cu8aPddouhVFFnCamRgjJyovGnhgtMQg/Y5yZRAJU=; b=mnFf5Wwy9SGOXGa1TVJ0PvAtx3f3XehUzWJxaH781vN7jB0JMTSj47nvKnJMOsFGDPAF/I2OEIozqtu0PfPF0sqMMZ5dPR94fK03yVlT+faeB8LoqHt0CKdJI6vR1WrTLwPjhoq91uRyY/ebHSK8zzgsFCM3WtPJZWh4UZdHRqU06I1fKFaoVqp5ixadwV8uvNKygZ8uT6JFm3RLYWzlOXqT2j8RbsorqstPyWkCl/s3ZtNkKfBhmp0E1darLvmmct7SZBgoZDdPLrpFYmudoltuQ3l/WfjGZ+AzNVlxbLzuCRTg5MqjY1pegUdX7k4+sng2Nq+pq4ps+9vWWUl+Cw== Received: from BLAPR03CA0133.namprd03.prod.outlook.com (2603:10b6:208:32e::18) by BN0PR10MB5383.namprd10.prod.outlook.com (2603:10b6:408:124::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7002.17; Tue, 14 Nov 2023 20:36:14 +0000 Received: from BL6PEPF0001AB4A.namprd04.prod.outlook.com (2603:10b6:208:32e:cafe::9e) by BLAPR03CA0133.outlook.office365.com (2603:10b6:208:32e::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.31 via Frontend Transport; Tue, 14 Nov 2023 20:36:14 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 8.4.225.30) smtp.mailfrom=infinera.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=infinera.com; Received-SPF: Pass (protection.outlook.com: domain of infinera.com designates 8.4.225.30 as permitted sender) receiver=protection.outlook.com; client-ip=8.4.225.30; helo=owa.infinera.com; pr=C Received: from owa.infinera.com (8.4.225.30) by BL6PEPF0001AB4A.mail.protection.outlook.com (10.167.242.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.7002.14 via Frontend Transport; Tue, 14 Nov 2023 20:36:14 +0000 Received: from sv-ex16-prd.infinera.com (10.100.96.229) by sv-ex16-prd.infinera.com (10.100.96.229) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.6; Tue, 14 Nov 2023 12:36:13 -0800 Received: from sv-smtp-prod3.infinera.com (10.100.98.58) by sv-ex16-prd.infinera.com (10.100.96.229) with Microsoft SMTP Server id 15.1.2507.6 via Frontend Transport; Tue, 14 Nov 2023 12:36:13 -0800 Received: from se-metroit-prd1.infinera.com ([10.210.32.58]) by sv-smtp-prod3.infinera.com with Microsoft SMTPSVC(8.5.9600.16384); Tue, 14 Nov 2023 12:36:13 -0800 Received: from gentoo-jocke.infinera.com (gentoo-jocke.infinera.com [10.210.71.73]) by se-metroit-prd1.infinera.com (Postfix) with ESMTP id D5CFA2C06D83 for ; Tue, 14 Nov 2023 21:36:12 +0100 (CET) Received: by gentoo-jocke.infinera.com (Postfix, from userid 1001) id D4B2F456169E; Tue, 14 Nov 2023 21:36:12 +0100 (CET) From: Joakim Tjernlund To: CC: Joakim Tjernlund Subject: [PATCH 3/3] pseudo: Add PW_SUBDIR Date: Tue, 14 Nov 2023 21:34:52 +0100 Message-ID: <20231114203608.1490318-4-joakim.tjernlund@infinera.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231114203608.1490318-1-joakim.tjernlund@infinera.com> References: <20231114203608.1490318-1-joakim.tjernlund@infinera.com> MIME-Version: 1.0 X-OriginalArrivalTime: 14 Nov 2023 20:36:13.0786 (UTC) FILETIME=[35BB4BA0:01DA173A] X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB4A:EE_|BN0PR10MB5383:EE_ X-MS-Office365-Filtering-Correlation-Id: ece186ef-c77b-4b1c-bffe-08dbe55158c6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8G8ya0PyNB0LnprbnAGsrSGWJ3WiY1XP9qXub4ZHS0hW2RbSD+KtTG3v1WdH9QRsAkMiV46QkmMj0XwaGz9TENskGEtciJ6CwxomBQuzHLgVuztcekdyMwFoFKt99LmMGpevrhL6o/UM9u3QqztVu0lIOz8fgAjrqQDMpLP/YDo2IRRi+2sHOHyToMewbjhaStTq9NiFeR81p+QuJw3IhCmdJv/M+e/ipa7M1Ex3R8HihE0160eq6MDE8Hvs79Aia8sj475UlKFvalpx+KngXBFaTDhlZ5Qhaa2qAcBcDaIEZhtCGkVIwzbMq//tLsfXs9dpHK9QSHs+BiSjYq6DMBm/gdeAE9bP7iuVGhvLzR9nmMX5hl8OBLl7sPXLqIGtZ7JEjuaGBPwEL40EA3pjU8S9V9em1Mo/C8+EoX2mTOzWnda6Jm6ZG7OxefvIYXInrCX83DzEWwYegDqMDeLh7SCWPoSFX51GUwYAe0OpwnqbWLZVHlr8es0xUXX5tPrfRsR5r9mOAcPrQ/zpxgRx/dqHlBZg+dIB/OujHBfPdz+TCvmiqsfg+0CthAfludmVwfxjOqPoVNYwxhKBmlp51yrh8rmy8eg4OScAZRs+Sp+ftbe3RvWzbRSVm0nCWxnTl5LUld7Et76WSYHwv4Ffh3V/fw0jFBgSd92+RIkI2sk/A02km6INo5XzzqtjWRh7w/MYXt2Pufu599t0H83NCYS1zGubYLhEUQBZqFD0/wzziAGdBKsrrKJa36fO5B+W X-Forefront-Antispam-Report: CIP:8.4.225.30;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:owa.infinera.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(396003)(39860400002)(346002)(230922051799003)(64100799003)(82310400011)(451199024)(186009)(1800799009)(36840700001)(46966006)(40480700001)(356005)(81166007)(6666004)(83380400001)(36860700001)(47076005)(26005)(1076003)(2616005)(82740400003)(107886003)(336012)(41300700001)(2906002)(5660300002)(86362001)(8936002)(4326008)(8676002)(44832011)(36756003)(42186006)(70586007)(70206006)(6916009)(316002)(426003)(6266002)(478600001)(36900700001);DIR:OUT;SFP:1101; X-OriginatorOrg: infinera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Nov 2023 20:36:14.5870 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ece186ef-c77b-4b1c-bffe-08dbe55158c6 X-MS-Exchange-CrossTenant-Id: 285643de-5f5b-4b03-a153-0ae2dc8aaf77 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=285643de-5f5b-4b03-a153-0ae2dc8aaf77;Ip=[8.4.225.30];Helo=[owa.infinera.com] X-MS-Exchange-CrossTenant-AuthSource: BL6PEPF0001AB4A.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5383 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 14 Nov 2023 20:36:24 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/190516 Add support for creating passwd files in a /etc subdir Set PW_SUBIR to pwdb to get passwd files in /etc/pwdb Signed-off-by: Joakim Tjernlund --- meta/recipes-devtools/pseudo/pseudo.inc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/meta/recipes-devtools/pseudo/pseudo.inc b/meta/recipes-devtools/pseudo/pseudo.inc index 7e09b6d58c..7ba2e2261c 100644 --- a/meta/recipes-devtools/pseudo/pseudo.inc +++ b/meta/recipes-devtools/pseudo/pseudo.inc @@ -10,6 +10,9 @@ SECTION = "base" LICENSE = "LGPL-2.1-only" DEPENDS = "sqlite3 attr" +#Set PW_SUBDIR to pwdb to get passwd files in /etc/pwdb +PW_SUBDIR ?= "" + FILES:${PN} = "${prefix}/lib/pseudo/lib*/libpseudo.so ${bindir}/* ${localstatedir}/pseudo ${prefix}/var/pseudo" INSANE_SKIP:${PN} += "libdir" INSANE_SKIP:${PN}-dbg += "libdir" @@ -131,10 +134,12 @@ do_install () { do_install:append:class-native () { chrpath ${D}${bindir}/pseudo -r `chrpath ${D}${bindir}/pseudo | cut -d = -f 2 | sed s/XORIGIN/\\$ORIGIN/` - install -d ${D}${sysconfdir} + install -d ${D}${sysconfdir}/${PW_SUBDIR} # The fallback files should never be modified - install -m 444 ${WORKDIR}/fallback-passwd ${D}${sysconfdir}/passwd - install -m 444 ${WORKDIR}/fallback-group ${D}${sysconfdir}/group + install -m 444 ${WORKDIR}/fallback-passwd ${D}${sysconfdir}/${PW_SUBDIR}/passwd + [ -n "${PW_SUBDIR}" ] && ln -fs ${PW_SUBDIR}/passwd ${D}${sysconfdir}/passwd + install -m 444 ${WORKDIR}/fallback-group ${D}${sysconfdir}/${PW_SUBDIR}/group + [ -n "${PW_SUBDIR}" ] && ln -fs ${PW_SUBDIR}/group ${D}${sysconfdir}/group # Two native/nativesdk entries below are the same # If necessary install for the alternative machine arch. This is only