From 55ad72d44a94298a96b8f05488ca5ed97ef04736 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 5 May 2024 20:37:15 +0200 Subject: Adding debian version 1:9.11.5.P4+dfsg-5.1+deb10u7. Signed-off-by: Daniel Baumann --- debian/patches/0008-reproducible_build.diff | 68 +++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 debian/patches/0008-reproducible_build.diff (limited to 'debian/patches/0008-reproducible_build.diff') diff --git a/debian/patches/0008-reproducible_build.diff b/debian/patches/0008-reproducible_build.diff new file mode 100644 index 0000000..94d8b58 --- /dev/null +++ b/debian/patches/0008-reproducible_build.diff @@ -0,0 +1,68 @@ +From: Debian DNS Packaging +Date: Fri, 24 Nov 2017 16:26:54 +0000 +Subject: _reproducible_build + +--- + lib/dns/gen.c | 35 +++++++++++++++++++++++++++++++++-- + 1 file changed, 33 insertions(+), 2 deletions(-) + +diff --git a/lib/dns/gen.c b/lib/dns/gen.c +index 2a3b94b..b26a509 100644 +--- a/lib/dns/gen.c ++++ b/lib/dns/gen.c +@@ -32,6 +32,8 @@ + #include + #include + #include ++#include ++#include + + #ifdef WIN32 + #include "gen-win32.h" +@@ -528,6 +530,9 @@ main(int argc, char **argv) { + char *prefix = NULL; + char *suffix = NULL; + char *file = NULL; ++ char *source_date_epoch; ++ unsigned long long epoch; ++ char *endptr; + isc_dir_t dir; + + for (i = 0; i < TYPENAMES; i++) +@@ -618,8 +623,34 @@ main(int argc, char **argv) { + INSIST(n > 0 && (unsigned)n < sizeof(srcdir)); + sd(0, "", buf, filetype); + +- if (time(&now) != -1) { +- if ((tm = localtime(&now)) != NULL && tm->tm_year > 104) { ++ source_date_epoch = getenv("SOURCE_DATE_EPOCH"); ++ if (source_date_epoch) { ++ errno = 0; ++ epoch = strtoull(source_date_epoch, &endptr, 10); ++ if ((errno == ERANGE && (epoch == ULLONG_MAX || epoch == 0)) ++ || (errno != 0 && epoch == 0)) { ++ fprintf(stderr, "Environment variable $SOURCE_DATE_EPOCH: strtoull: %s\n", strerror(errno)); ++ exit(EXIT_FAILURE); ++ } ++ if (endptr == source_date_epoch) { ++ fprintf(stderr, "Environment variable $SOURCE_DATE_EPOCH: No digits were found: %s\n", endptr); ++ exit(EXIT_FAILURE); ++ } ++ if (*endptr != '\0') { ++ fprintf(stderr, "Environment variable $SOURCE_DATE_EPOCH: Trailing garbage: %s\n", endptr); ++ exit(EXIT_FAILURE); ++ } ++ if (epoch > ULONG_MAX) { ++ fprintf(stderr, "Environment variable $SOURCE_DATE_EPOCH: value must be smaller than or equal to: %lu but was found to be: %llu \n", ULONG_MAX, epoch); ++ exit(EXIT_FAILURE); ++ } ++ now = epoch; ++ } else { ++ time(&now); ++ } ++ ++ if (now != -1) { ++ if ((tm = gmtime(&now)) != NULL && tm->tm_year > 104) { + n = snprintf(year, sizeof(year), "-%d", + tm->tm_year + 1900); + INSIST(n > 0 && (unsigned)n < sizeof(year)); -- cgit v1.2.3