Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] openntpd: fix integer overflow on i686
@ 2023-09-09 14:35 michaellass
  2023-09-09 15:21 ` [PR PATCH] [Merged]: " leahneukirchen
  0 siblings, 1 reply; 2+ messages in thread
From: michaellass @ 2023-09-09 14:35 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1487 bytes --]

There is a new pull request by michaellass against master on the void-packages repository

https://github.com/michaellass/void-packages pr_openntpd_i686-fix
https://github.com/void-linux/void-packages/pull/45993

openntpd: fix integer overflow on i686
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, (i686)

#### Change description
On i686, `time_t` is a 32 bit integer. In `openntpd`, an addition of two `time_t`s is performed, leading to an integer overflow. This code is part of the constraints logic of openntpd. When the bug triggers, all time sources will be marked invalid.

Upstream pull request: https://github.com/openntpd-portable/openntpd-portable/pull/74

A patch file from https://github.com/void-linux/void-packages/pull/45993.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-pr_openntpd_i686-fix-45993.patch --]
[-- Type: text/x-diff, Size: 1505 bytes --]

From 0a91da884d62d4cb53ff1d9e09b465f894d20605 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20La=C3=9F?= <bevan@bi-co.net>
Date: Sat, 9 Sep 2023 12:12:38 +0200
Subject: [PATCH] openntpd: fix integer overflow on i686

---
 srcpkgs/openntpd/patches/fix-time_t-overflow.patch | 12 ++++++++++++
 srcpkgs/openntpd/template                          |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/openntpd/patches/fix-time_t-overflow.patch

diff --git a/srcpkgs/openntpd/patches/fix-time_t-overflow.patch b/srcpkgs/openntpd/patches/fix-time_t-overflow.patch
new file mode 100644
index 0000000000000..4afbf2ed0afb8
--- /dev/null
+++ b/srcpkgs/openntpd/patches/fix-time_t-overflow.patch
@@ -0,0 +1,12 @@
+--- a/src/constraint.c
++++ b/src/constraint.c
+@@ -842,7 +842,7 @@ constraint_update(void)
+ 	/* calculate median */
+ 	i = cnt / 2;
+ 	if (cnt % 2 == 0)
+-		conf->constraint_median = (values[i - 1] + values[i]) / 2;
++		conf->constraint_median = ((long long)values[i - 1] + values[i]) / 2;
+ 	else
+ 		conf->constraint_median = values[i];
+ 
+
diff --git a/srcpkgs/openntpd/template b/srcpkgs/openntpd/template
index 3460b0fd34714..72c43ac0a9188 100644
--- a/srcpkgs/openntpd/template
+++ b/srcpkgs/openntpd/template
@@ -1,7 +1,7 @@
 # Template file for 'openntpd'
 pkgname=openntpd
 version=6.8p1
-revision=4
+revision=5
 build_style=gnu-configure
 configure_args="--with-privsep-user=openntpd --with-cacert=/etc/ssl/certs.pem"
 hostmakedepends="automake libtool"

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PR PATCH] [Merged]: openntpd: fix integer overflow on i686
  2023-09-09 14:35 [PR PATCH] openntpd: fix integer overflow on i686 michaellass
@ 2023-09-09 15:21 ` leahneukirchen
  0 siblings, 0 replies; 2+ messages in thread
From: leahneukirchen @ 2023-09-09 15:21 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1315 bytes --]

There's a merged pull request on the void-packages repository

openntpd: fix integer overflow on i686
https://github.com/void-linux/void-packages/pull/45993

Description:
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, (i686)

#### Change description
On i686, `time_t` is a 32 bit integer. In `openntpd`, an addition of two `time_t`s is performed, leading to an integer overflow. This code is part of the constraints logic of openntpd. When the bug triggers, all time sources will be marked invalid.

Upstream pull request: https://github.com/openntpd-portable/openntpd-portable/pull/74

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-09-09 15:21 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-09 14:35 [PR PATCH] openntpd: fix integer overflow on i686 michaellass
2023-09-09 15:21 ` [PR PATCH] [Merged]: " leahneukirchen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).