5 Commits

3 changed files with 56 additions and 2 deletions

View File

@@ -1,3 +1,19 @@
-------------------------------------------------------------------
Mon Aug 25 08:30:28 UTC 2025 - Michal Suchanek <msuchanek@suse.de>
- Do not build on Tumbleweed, not needed anymore
-------------------------------------------------------------------
Thu Jul 31 13:32:27 UTC 2025 - Dominique Leuenberger <dimstar@opensuse.org>
- Use existing pkg_vcmp macro instead of re-implementing this.
-------------------------------------------------------------------
Wed Jul 30 07:32:35 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
- add patch for 6.16
* timer_container_of.patch
-------------------------------------------------------------------
Wed May 28 16:20:41 UTC 2025 - Jiri Slaby <jslaby@suse.cz>

View File

@@ -1,7 +1,7 @@
#
# spec file for package ovpn-dco
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -27,6 +27,7 @@ Source1: ovpn-dco-preamble
Patch0: do-not-redefine-symbols-when-they-are-upstream.patch
Patch1: use-new-timer-api.patch
Patch2: 6.15-newlink-proto.patch
Patch10: timer_container_of.patch
BuildRequires: %kernel_module_package_buildreqs
# Releases prior to 15.2 don't have a new enough kernel
@@ -34,6 +35,12 @@ BuildRequires: %kernel_module_package_buildreqs
ExclusiveArch: do_not_build
%endif
# In Tumbleweed kernel 6.16 is used which has the module included
# https://blog.openvpn.net/openvpn-dco-added-to-linux-kernel-2025
%if 0%{?suse_version} > 1600
ExclusiveArch: do_not_build
%endif
%{?kernel_module_package:%kernel_module_package -n ovpn-dco -p %name-preamble}
%description
@@ -68,7 +75,11 @@ LIMITATIONS
%prep
echo %flavors_to_build
%autosetup -p1
%setup -q
%autopatch -p1 -M9
%if %{pkg_vcmp kernel-devel >= 6.16}
%patch -P10 -p1
%endif
%build
for flavor in %flavors_to_build; do

27
timer_container_of.patch Normal file
View File

@@ -0,0 +1,27 @@
from_timer() was replaced by timer_container_of() in commit 41cb08555c41
(treewide, timers: Rename from_timer() to timer_container_of())
---
drivers/net/ovpn-dco/peer.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/drivers/net/ovpn-dco/peer.c
+++ b/drivers/net/ovpn-dco/peer.c
@@ -22,7 +22,7 @@
static void ovpn_peer_ping(struct timer_list *t)
{
- struct ovpn_peer *peer = from_timer(peer, t, keepalive_xmit);
+ struct ovpn_peer *peer = timer_container_of(peer, t, keepalive_xmit);
netdev_dbg(peer->ovpn->dev, "%s: sending ping to peer %u\n", __func__, peer->id);
ovpn_keepalive_xmit(peer);
@@ -30,7 +30,7 @@ static void ovpn_peer_ping(struct timer_
static void ovpn_peer_expire(struct timer_list *t)
{
- struct ovpn_peer *peer = from_timer(peer, t, keepalive_recv);
+ struct ovpn_peer *peer = timer_container_of(peer, t, keepalive_recv);
netdev_dbg(peer->ovpn->dev, "%s: peer %u expired\n", __func__, peer->id);
ovpn_peer_del(peer, OVPN_DEL_PEER_REASON_EXPIRED);