diff options
author | Jakub Bogusz | 2023-09-09 08:33:39 (GMT) |
---|---|---|
committer | Jakub Bogusz | 2023-09-09 08:33:39 (GMT) |
commit | 53f09c90f704da6da3ecf7dd085952a0cc36d91c (patch) | |
tree | a3c3f40f3a9f417986ca1a016002198f910d1c65 | |
parent | 7d233c93a862d1999311f40c321ab80b53caf93b (diff) | |
download | NetworkManager-fortisslvpn-53f09c90f704da6da3ecf7dd085952a0cc36d91c.zip NetworkManager-fortisslvpn-53f09c90f704da6da3ecf7dd085952a0cc36d91c.tar.gz |
- added ppp2.5 patch (adapt to ppp 2.5.0 changes)
- build gtk4 editor plugin by default
- release 2
-rw-r--r-- | NetworkManager-fortisslvpn-ppp2.5.patch | 32 | ||||
-rw-r--r-- | NetworkManager-fortisslvpn.spec | 17 |
2 files changed, 46 insertions, 3 deletions
diff --git a/NetworkManager-fortisslvpn-ppp2.5.patch b/NetworkManager-fortisslvpn-ppp2.5.patch new file mode 100644 index 0000000..fc07abc --- /dev/null +++ b/NetworkManager-fortisslvpn-ppp2.5.patch @@ -0,0 +1,32 @@ +--- NetworkManager-fortisslvpn-1.4.0/src/nm-fortisslvpn-pppd-plugin.c.orig 2021-10-11 12:49:41.000000000 +0200 ++++ NetworkManager-fortisslvpn-1.4.0/src/nm-fortisslvpn-pppd-plugin.c 2023-09-09 10:27:21.115938547 +0200 +@@ -296,7 +296,7 @@ get_ip4_routes (in_addr_t ouraddr) + static void + nm_ip_up (void *data, int arg) + { +- guint32 pppd_made_up_address = htonl (0x0a404040 + ifunit); ++ guint32 pppd_made_up_address = htonl (0x0a404040 + ppp_ifunit()); + ipcp_options opts = ipcp_gotoptions[0]; + ipcp_options peer_opts = ipcp_hisoptions[0]; + GVariantBuilder builder; +@@ -317,7 +317,7 @@ nm_ip_up (void *data, int arg) + + g_variant_builder_add (&builder, "{sv}", + NM_VPN_PLUGIN_IP4_CONFIG_TUNDEV, +- g_variant_new_string (ifname)); ++ g_variant_new_string (ppp_ifname())); + + str = g_getenv ("VPN_GATEWAY"); + if (str) { +@@ -442,8 +442,8 @@ plugin_init (void) + return -1; + } + +- add_notifier (&phasechange, nm_phasechange, NULL); +- add_notifier (&ip_up_notifier, nm_ip_up, NULL); +- add_notifier (&exitnotify, nm_exit_notify, NULL); ++ ppp_add_notify (NF_PHASE_CHANGE, nm_phasechange, NULL); ++ ppp_add_notify (NF_IP_UP, nm_ip_up, NULL); ++ ppp_add_notify (NF_EXIT, nm_exit_notify, NULL); + return 0; + } diff --git a/NetworkManager-fortisslvpn.spec b/NetworkManager-fortisslvpn.spec index 8a2d06f..bed6e90 100644 --- a/NetworkManager-fortisslvpn.spec +++ b/NetworkManager-fortisslvpn.spec @@ -1,15 +1,19 @@ # TODO: # - nm-fortisslvpn user (for dropping pppd privileges) -# - gtk4 for GNOME 42 (--with-gtk4, requires libnma-gtk4 >= 1.8.33) +# +# Conditional build: +%bcond_without gtk4 # Gtk4 version of editor plugin (GNOME 42+) + Summary: NetworkManager VPN integration for Fortinet SSLVPN Summary(pl.UTF-8): Integracja NetworkManagera z Fortinet SSLVPN Name: NetworkManager-fortisslvpn Version: 1.4.0 -Release: 1 +Release: 2 License: GPL v2+ Group: X11/Applications Source0: https://download.gnome.org/sources/NetworkManager-fortisslvpn/1.4/%{name}-%{version}.tar.xz # Source0-md5: 33e1a0c50b9032621748ff166f57fa1d +Patch0: %{name}-ppp2.5.patch URL: https://wiki.gnome.org/Projects/NetworkManager BuildRequires: NetworkManager-devel >= 2:1.2.0 BuildRequires: autoconf >= 2.59 @@ -17,11 +21,13 @@ BuildRequires: automake >= 1:1.9 BuildRequires: gettext-devel >= 0.19 BuildRequires: glib2-devel >= 1:2.32 BuildRequires: gtk+3-devel >= 3.4 +%{?with_gtk4:BuildRequires: gtk4-devel >= 4.0} BuildRequires: libnma-devel >= 1.8.33 +%{?with_gtk4:BuildRequires: libnma-gtk4-devel >= 1.8.33} BuildRequires: libsecret-devel >= 0.18 BuildRequires: libtool >= 2:2 BuildRequires: pkgconfig -BuildRequires: ppp-plugin-devel >= 3:2.4.5 +BuildRequires: ppp-plugin-devel >= 3:2.5.0 BuildRequires: tar >= 1:1.22 BuildRequires: xz Requires: NetworkManager >= 2:1.2.0 @@ -41,6 +47,7 @@ Integracja NetworkManagera z Fortinet SSLVPN. %prep %setup -q +%patch0 -p1 %build %{__libtoolize} @@ -51,6 +58,7 @@ Integracja NetworkManagera z Fortinet SSLVPN. %configure \ --disable-silent-rules \ --disable-static \ + %{?with_gtk4:--with-gtk4} \ --with-pppd-plugin-dir=%{_libdir}/pppd/plugins %{__make} @@ -73,6 +81,9 @@ rm -rf $RPM_BUILD_ROOT %doc AUTHORS NEWS README TODO %attr(755,root,root) %{_libdir}/NetworkManager/libnm-vpn-plugin-fortisslvpn.so %attr(755,root,root) %{_libdir}/NetworkManager/libnm-vpn-plugin-fortisslvpn-editor.so +%if %{with gtk4} +%attr(755,root,root) %{_libdir}/NetworkManager/libnm-gtk4-vpn-plugin-fortisslvpn-editor.so +%endif %attr(755,root,root) %{_libexecdir}/nm-fortisslvpn-auth-dialog %attr(755,root,root) %{_libexecdir}/nm-fortisslvpn-pinentry %attr(755,root,root) %{_libexecdir}/nm-fortisslvpn-service |