From patchwork Thu Aug 6 20:10:32 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sander Vanheule X-Patchwork-Id: 1342030 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.openwrt.org (client-ip=2001:8b0:10b:1231::1; helo=merlin.infradead.org; envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=svanheule.net Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=merlin.20170209 header.b=hfvx3HHN; dkim=fail reason="signature verification failed" (2048-bit key; secure) header.d=svanheule.net header.i=@svanheule.net header.a=rsa-sha256 header.s=mail1707 header.b=bG2NiIoi; dkim-atps=neutral Received: from merlin.infradead.org (merlin.infradead.org [IPv6:2001:8b0:10b:1231::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4BN05f3PvKz9sR4 for ; Fri, 7 Aug 2020 06:12:22 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=mIr1xLsi4Zxb8sHEkvvN/QFWRaAHiV1os0WY++vVBMU=; b=hfvx3HHNPI52Zuu4IZ/ZFq1PTH 550VIi7bpnh2zmlFNzoi5zCky0DXq7V/G6C3A9SyjV+zdFzgLT3Kti+B6dHPOCbFlWMTXyF/EzQPf LmeSGkZIVrU8fPGlsst08rTuYnnYM0hBowRZrwHz7XOIlRozhqnWC8qOyXiBjo1A2PHkx0xkjwS5E FKqka0/dBX9IxQdAwOfoZw/CnvTdCw4ZMs4J2Xm6qPJb/cDl1jHpjrVC5E6/63MS43gAbE0Jz9TMK yI+1rsICtEc6wLBZWFMtvMz6D7ptCiWIVJGjvDXCPFKb++KbfPyaTA8Kc7g4kC52lpJKhugBuoDiQ NHU8GQ9Q==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k3mE4-0005H6-BR; Thu, 06 Aug 2020 20:10:56 +0000 Received: from polaris.svanheule.net ([84.16.241.116]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k3mE1-0005Fr-N8 for openwrt-devel@lists.openwrt.org; Thu, 06 Aug 2020 20:10:54 +0000 Received: from terra.local.svanheule.net (unknown [IPv6:2a02:a03f:eafe:ac01:e96f:b7f4:97c5:971d]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: sander@svanheule.net) by polaris.svanheule.net (Postfix) with ESMTPSA id 9921716A7B2; Thu, 6 Aug 2020 22:10:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=svanheule.net; s=mail1707; t=1596744650; 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; bh=rOpnjh/DItDMmN6jx9Uc/oeC6BBNmvPAH3PlSuPjh/I=; b=bG2NiIoikHdWvd9CorQBE2wYTUfydGIeD1qFy+657+v+9Pk+Xy35vQm8zkdnm3BZWeUs9u nWJQz2yXyx8qteLVkgUMbksnw0KT0AZiEhu0yMUxR6eHXLxLxkIGb0hzYy1B+XdMj/o6Ec tknj1aHLzhhvbHkMjAPDg5aSihtlKtFnpMQ0wLS2VIWqneOccgl+NGiLcsetRvXFC+oERh g2c7lty9nafeAvUi9sDUc3nAYvBBLHXplw2VdLRcVhezxahhGng4gCd5FPSoZ+5BPfhypx b5c1m4S7ixFiGyH0wllxCQuOAovGA6/pA7wGXHr051Pu2GwRkSwUY/s03DXzIg== From: Sander Vanheule To: openwrt-devel@lists.openwrt.org Subject: [PATCH v2] tools/firmware-utils: use UTC for image timestamps Date: Thu, 6 Aug 2020 22:10:32 +0200 Message-Id: <20200806201032.23605-1-sander@svanheule.net> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200806_161053_883953_B55F6DB5 X-CRM114-Status: GOOD ( 12.60 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [84.16.241.116 listed in list.dnswl.org] -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: OpenWrt Development List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Sander Vanheule Sender: "openwrt-devel" Errors-To: openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org By using localtime() to determine the timestamp that goes into factory images, the resulting image depends on the timezone of the build system. Use gmtime() instead, which results in more reproducible images. Signed-off-by: Sander Vanheule --- tools/firmware-utils/Makefile | 2 +- tools/firmware-utils/src/addpattern.c | 2 +- tools/firmware-utils/src/tplink-safeloader.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/firmware-utils/Makefile b/tools/firmware-utils/Makefile index ee0ef3a6fd..4fcda7e439 100644 --- a/tools/firmware-utils/Makefile +++ b/tools/firmware-utils/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME := firmware-utils -PKG_RELEASE := 1 +PKG_RELEASE := 2 include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/kernel.mk diff --git a/tools/firmware-utils/src/addpattern.c b/tools/firmware-utils/src/addpattern.c index 9bc4865335..9791527878 100644 --- a/tools/firmware-utils/src/addpattern.c +++ b/tools/firmware-utils/src/addpattern.c @@ -296,7 +296,7 @@ int main(int argc, char **argv) return EXIT_FAILURE; } - ptm = localtime(&t); + ptm = gmtime(&t); if (3 != sscanf(version, "v%d.%d.%d", &v0, &v1, &v2)) { fprintf(stderr, "bad version string \"%s\"\n", version); diff --git a/tools/firmware-utils/src/tplink-safeloader.c b/tools/firmware-utils/src/tplink-safeloader.c index a5f3ced16d..0af1fe4c6e 100644 --- a/tools/firmware-utils/src/tplink-safeloader.c +++ b/tools/firmware-utils/src/tplink-safeloader.c @@ -2079,7 +2079,7 @@ static struct image_partition_entry make_soft_version(uint32_t rev) { else if (time(&t) == (time_t)(-1)) error(1, errno, "time"); - struct tm *tm = localtime(&t); + struct tm *tm = gmtime(&t); s->magic = htonl(0x0000000c); s->zero = 0;