Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-protonvpn-nm-lib for
openSUSE:Factory checked in at 2023-09-26 22:01:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-protonvpn-nm-lib (Old)
and /work/SRC/openSUSE:Factory/.python-protonvpn-nm-lib.new.1770 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-protonvpn-nm-lib"
Tue Sep 26 22:01:52 2023 rev:7 rq:1113558 version:3.16.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-protonvpn-nm-lib/python-protonvpn-nm-lib.changes
2022-11-30 16:51:45.301380599 +0100
+++
/work/SRC/openSUSE:Factory/.python-protonvpn-nm-lib.new.1770/python-protonvpn-nm-lib.changes
2023-09-26 22:10:48.184191799 +0200
@@ -1,0 +2,13 @@
+Mon Sep 25 14:37:24 UTC 2023 - Matej Cepl <[email protected]>
+
+- Clean up the SPEC file
+- Add exclude-tests.patch (from gh#ProtonVPN/protonvpn-nm-lib!25)
+
+-------------------------------------------------------------------
+Mon Sep 25 12:51:55 UTC 2023 - Alexandre Vicenzi <[email protected]>
+
+- Update to 3.16.0
+ * Fix connectivity issue if protonstatus is down
+ * Update openvpn template
+
+-------------------------------------------------------------------
Old:
----
protonvpn-nm-lib-3.14.0.tar.gz
New:
----
exclude-tests.patch
protonvpn-nm-lib-3.16.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-protonvpn-nm-lib.spec ++++++
--- /var/tmp/diff_new_pack.caOOdv/_old 2023-09-26 22:10:49.176227622 +0200
+++ /var/tmp/diff_new_pack.caOOdv/_new 2023-09-26 22:10:49.180227766 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-protonvpn-nm-lib
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,25 +16,38 @@
#
-%{?!python_module:%define python_module() python3-%{**}}
%define skip_python2 1
# test suite requires network connection, you can test locally with `rpmbuild
--with test`
%bcond_with test
Name: python-protonvpn-nm-lib
-Version: 3.14.0
+Version: 3.16.0
Release: 0
Summary: Proton VPN NetworkManager library
License: GPL-3.0-or-later
Group: Development/Languages/Python
URL: https://github.com/ProtonVPN/protonvpn-nm-lib
Source:
https://github.com/ProtonVPN/protonvpn-nm-lib/archive/refs/tags/%{version}.tar.gz#/protonvpn-nm-lib-%{version}.tar.gz
+# PATCH-FIX-UPSTREAM exclude-tests.patch gh#ProtonVPN/protonvpn-nm-lib!25
[email protected]
+# Exlcude tests being grabbed by find_packeges during setup
+Patch0: exclude-tests.patch
+BuildRequires: %{python_module pip}
BuildRequires: %{python_module pyxdg}
-BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: gobject-introspection
BuildRequires: python-rpm-macros
+Requires: NetworkManager-openvpn
+Requires: dbus-1-x11
+Requires: python-Jinja2
+Requires: python-dbus-python
+Requires: python-distro
+Requires: python-gobject
+Requires: python-keyring
+Requires: python-proton-client >= 0.5.0
+Requires: python-pyxdg
+Requires: python-systemd
+BuildArch: noarch
# SECTION check that all runtime requirements are available
-BuildRequires: NetworkManager-openvpn
BuildRequires: %{python_module Jinja2}
BuildRequires: %{python_module dbus-python}
BuildRequires: %{python_module distro}
@@ -43,36 +56,26 @@
BuildRequires: %{python_module proton-client >= 0.5.0}
BuildRequires: %{python_module pyxdg}
BuildRequires: %{python_module systemd}
+BuildRequires: NetworkManager-openvpn
BuildRequires: dbus-1-x11
# /SECTION
%if %{with test}
BuildRequires: %{python_module pytest}
%endif
-Requires: NetworkManager-openvpn
-Requires: dbus-1-x11
-Requires: python-Jinja2
-Requires: python-dbus-python
-Requires: python-distro
-Requires: python-gobject
-Requires: python-keyring
-Requires: python-proton-client >= 0.5.0
-Requires: python-pyxdg
-Requires: python-systemd
-BuildArch: noarch
%python_subpackages
%description
The Proton VPN NetworkManager library
%prep
-%setup -q -n protonvpn-nm-lib-%{version}
+%autosetup -n protonvpn-nm-lib-%{version} -p1
sed -i '/addopts/d' setup.cfg
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%if %{with test}
++++++ exclude-tests.patch ++++++
>From 4ca1b1aa3831d886485f66c437681a4bf276f64b Mon Sep 17 00:00:00 2001
From: Shaumyadeep Chaudhuri <[email protected]>
Date: Wed, 2 Aug 2023 20:37:12 +0200
Subject: [PATCH] Update setup.py
Exclude tests being grabbed by find_packages
---
setup.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/setup.py
+++ b/setup.py
@@ -11,7 +11,7 @@ Proton VPN NetworkManager library for Li
setup(
name="protonvpn-nm-lib",
version=APP_VERSION,
- packages=find_packages(),
+ packages=find_packages(exclude=["tests", "tests.*"]),
description="Proton VPN NetworkManager Linux library",
author="Proton Technologies AG",
author_email="[email protected]",
++++++ protonvpn-nm-lib-3.14.0.tar.gz -> protonvpn-nm-lib-3.16.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/protonvpn-nm-lib-3.14.0/.gitlab-ci.yml
new/protonvpn-nm-lib-3.16.0/.gitlab-ci.yml
--- old/protonvpn-nm-lib-3.14.0/.gitlab-ci.yml 2022-10-20 17:13:58.000000000
+0200
+++ new/protonvpn-nm-lib-3.16.0/.gitlab-ci.yml 2023-07-31 17:39:14.000000000
+0200
@@ -1,15 +1,15 @@
## Jobs to build and publish deb, rpm and arch based packages
include:
- - project: 'ProtonVPN/Linux/_gitlab-ci'
+ - project: 'ProtonVPN/Linux/v3/_gitlab-ci'
ref: public-protonvpn-repo
file: 'message-deploy.yml'
- - project: 'ProtonVPN/Linux/_gitlab-ci'
+ - project: 'ProtonVPN/Linux/v3/_gitlab-ci'
ref: public-protonvpn-repo
file: 'gitlab-ci-build-publish-debian.yml'
- - project: 'ProtonVPN/Linux/_gitlab-ci'
+ - project: 'ProtonVPN/Linux/v3/_gitlab-ci'
ref: public-protonvpn-repo
file: 'gitlab-ci-build-publish-rpm.yml'
- - project: 'ProtonVPN/Linux/_gitlab-ci'
+ - project: 'ProtonVPN/Linux/v3/_gitlab-ci'
ref: public-protonvpn-repo
file: 'gitlab-ci-build-publish-arch.yml'
- project: 'agarroux/publish-github'
@@ -65,17 +65,11 @@
script:
- make image-arch branch=$CI_COMMIT_REF_SLUG src=archlinux || true
-make-image-fed36:
+make-image-fed38:
stage: image
extends: make-image-deb
script:
- - make image-fed36 branch=$CI_COMMIT_REF_SLUG src=fedora36
-
-make-image-fed37:
- stage: image
- extends: make-image-deb
- script:
- - make image-fed37 branch=$CI_COMMIT_REF_SLUG src=fedora37
+ - make image-fed38 branch=$CI_COMMIT_REF_SLUG src=fedora38
######### CI Test Jobs ##########
test-deb:
@@ -94,17 +88,11 @@
image: $CI_REGISTRY_IMAGE/archlinux:branch-$CI_COMMIT_REF_SLUG
allow_failure: true
-test-fed36:
- extends: test-deb
- needs:
- - job: make-image-fed36
- image: $CI_REGISTRY_IMAGE/fedora36:branch-$CI_COMMIT_REF_SLUG
-
-test-fed37:
+test-fed38:
extends: test-deb
needs:
- - job: make-image-fed37
- image: $CI_REGISTRY_IMAGE/fedora37:branch-$CI_COMMIT_REF_SLUG
+ - job: make-image-fed38
+ image: $CI_REGISTRY_IMAGE/fedora38:branch-$CI_COMMIT_REF_SLUG
## Jobs to publish commits + tags from master to github
@@ -112,8 +100,7 @@
stage: release
needs:
- job: build-deb
- - job: build-fed36
- - job: build-fed37
+ - job: build-fed38
when: manual
variables:
RELEASE_SYNC_PUBLIC_URL: [email protected]:ProtonVPN/protonvpn-nm-lib.git
@@ -125,8 +112,7 @@
stage: release
needs:
- job: build-deb
- - job: build-fed36
- - job: build-fed37
+ - job: build-fed38
when: manual
variables:
RELEASE_SYNC_PUBLIC_URL: [email protected]:ProtonVPN/protonvpn-nm-lib.git
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/protonvpn-nm-lib-3.14.0/Dockerfile.fed36
new/protonvpn-nm-lib-3.16.0/Dockerfile.fed36
--- old/protonvpn-nm-lib-3.14.0/Dockerfile.fed36 2022-10-20
17:13:58.000000000 +0200
+++ new/protonvpn-nm-lib-3.16.0/Dockerfile.fed36 1970-01-01
01:00:00.000000000 +0100
@@ -1,74 +0,0 @@
-FROM IMAGE_URL_FED36
-ARG git_repo
-ENV git_repo=${git_repo:-GIT_REPO}
-ARG git_branch
-ENV git_branch=${git_branch:-GIT_BRANCH}
-
-RUN dnf update -y
-
-#Â Install a few useful packages
-
-RUN dnf install -y net-tools \
- gcc \
- sudo \
- git \
- rpm-build \
- rpm-devel \
- rpmlint \
- rpmdevtools \
- rpm-sign \
- python3 \
- python3-pip \
- NetworkManager \
- NetworkManager-openvpn \
- sudo \
- vim \
- nano \
- pkg-config \
- openvpn \
- openssl-devel \
- openssl-libs \
- dbus-x11 \
- gnome-keyring \
- libsecret \
- gtk3 \
- polkit
-
-RUN dnf install -y \
- python3-pyxdg \
- python3-dbus \
- python3-keyring \
- python3-distro \
- python3-gobject \
- python3-jinja2 \
- python3-systemd
-
-RUN dnf install -y \
- python3-pytest \
- python3-pytest-cov
-
-RUN dnf install -y \
- python3-requests \
- python3-pyOpenSSL \
- python3-bcrypt \
- python3-gnupg
-
-RUN python3 -m pip install --upgrade sentry-sdk==0.10.2
-
-RUN git clone --single-branch --branch $git_branch $git_repo
-RUN cd proton-python-client && pip3 install -e .
-RUN cd ..
-
-RUN useradd -ms /bin/bash user
-RUN usermod -a -G wheel user
-RUN echo '%wheel ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
-
-COPY docker_entry_rpm.sh /usr/local/bin
-COPY . /home/user/protonvpn-nm-lib
-
-RUN chown -R user:user /home/user/protonvpn-nm-lib
-WORKDIR /home/user/protonvpn-nm-lib
-
-USER user
-
-ENTRYPOINT ["/usr/local/bin/docker_entry_rpm.sh"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/protonvpn-nm-lib-3.14.0/Dockerfile.fed37
new/protonvpn-nm-lib-3.16.0/Dockerfile.fed37
--- old/protonvpn-nm-lib-3.14.0/Dockerfile.fed37 2022-10-20
17:13:58.000000000 +0200
+++ new/protonvpn-nm-lib-3.16.0/Dockerfile.fed37 1970-01-01
01:00:00.000000000 +0100
@@ -1,74 +0,0 @@
-FROM IMAGE_URL_FED37
-ARG git_repo
-ENV git_repo=${git_repo:-GIT_REPO}
-ARG git_branch
-ENV git_branch=${git_branch:-GIT_BRANCH}
-
-RUN dnf update -y
-
-#Â Install a few useful packages
-
-RUN dnf install -y net-tools \
- gcc \
- sudo \
- git \
- rpm-build \
- rpm-devel \
- rpmlint \
- rpmdevtools \
- rpm-sign \
- python3 \
- python3-pip \
- NetworkManager \
- NetworkManager-openvpn \
- sudo \
- vim \
- nano \
- pkg-config \
- openvpn \
- openssl-devel \
- openssl-libs \
- dbus-x11 \
- gnome-keyring \
- libsecret \
- gtk3 \
- polkit
-
-RUN dnf install -y \
- python3-pyxdg \
- python3-dbus \
- python3-keyring \
- python3-distro \
- python3-gobject \
- python3-jinja2 \
- python3-systemd
-
-RUN dnf install -y \
- python3-pytest \
- python3-pytest-cov
-
-RUN dnf install -y \
- python3-requests \
- python3-pyOpenSSL \
- python3-bcrypt \
- python3-gnupg
-
-RUN python3 -m pip install --upgrade sentry-sdk==0.10.2
-
-RUN git clone --single-branch --branch $git_branch $git_repo
-RUN cd proton-python-client && pip3 install -e .
-RUN cd ..
-
-RUN useradd -ms /bin/bash user
-RUN usermod -a -G wheel user
-RUN echo '%wheel ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
-
-COPY docker_entry_rpm.sh /usr/local/bin
-COPY . /home/user/protonvpn-nm-lib
-
-RUN chown -R user:user /home/user/protonvpn-nm-lib
-WORKDIR /home/user/protonvpn-nm-lib
-
-USER user
-
-ENTRYPOINT ["/usr/local/bin/docker_entry_rpm.sh"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/protonvpn-nm-lib-3.14.0/Dockerfile.fed38
new/protonvpn-nm-lib-3.16.0/Dockerfile.fed38
--- old/protonvpn-nm-lib-3.14.0/Dockerfile.fed38 1970-01-01
01:00:00.000000000 +0100
+++ new/protonvpn-nm-lib-3.16.0/Dockerfile.fed38 2023-07-31
17:39:14.000000000 +0200
@@ -0,0 +1,74 @@
+FROM IMAGE_URL_FED38
+ARG git_repo
+ENV git_repo=${git_repo:-GIT_REPO}
+ARG git_branch
+ENV git_branch=${git_branch:-GIT_BRANCH}
+
+RUN dnf update -y
+
+#Â Install a few useful packages
+
+RUN dnf install -y net-tools \
+ gcc \
+ sudo \
+ git \
+ rpm-build \
+ rpm-devel \
+ rpmlint \
+ rpmdevtools \
+ rpm-sign \
+ python3 \
+ python3-pip \
+ NetworkManager \
+ NetworkManager-openvpn \
+ sudo \
+ vim \
+ nano \
+ pkg-config \
+ openvpn \
+ openssl-devel \
+ openssl-libs \
+ dbus-x11 \
+ gnome-keyring \
+ libsecret \
+ gtk3 \
+ polkit
+
+RUN dnf install -y \
+ python3-pyxdg \
+ python3-dbus \
+ python3-keyring \
+ python3-distro \
+ python3-gobject \
+ python3-jinja2 \
+ python3-systemd
+
+RUN dnf install -y \
+ python3-pytest \
+ python3-pytest-cov
+
+RUN dnf install -y \
+ python3-requests \
+ python3-pyOpenSSL \
+ python3-bcrypt \
+ python3-gnupg
+
+RUN python3 -m pip install --upgrade sentry-sdk==0.10.2
+
+RUN git clone --single-branch --branch $git_branch $git_repo
+RUN cd proton-python-client && pip3 install -e .
+RUN cd ..
+
+RUN useradd -ms /bin/bash user
+RUN usermod -a -G wheel user
+RUN echo '%wheel ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
+
+COPY docker_entry_rpm.sh /usr/local/bin
+COPY . /home/user/protonvpn-nm-lib
+
+RUN chown -R user:user /home/user/protonvpn-nm-lib
+WORKDIR /home/user/protonvpn-nm-lib
+
+USER user
+
+ENTRYPOINT ["/usr/local/bin/docker_entry_rpm.sh"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/protonvpn-nm-lib-3.14.0/Makefile
new/protonvpn-nm-lib-3.16.0/Makefile
--- old/protonvpn-nm-lib-3.14.0/Makefile 2022-10-20 17:13:58.000000000
+0200
+++ new/protonvpn-nm-lib-3.16.0/Makefile 2023-07-31 17:39:14.000000000
+0200
@@ -13,12 +13,11 @@
endif
IMAGE_URL_DEB = ubuntu:latest
-IMAGE_URL_FED36 = fedora:36
-IMAGE_URL_FED37 = fedora:37
+IMAGE_URL_FED38 = fedora:38
IMAGE_URL_ARCH = archlinux:latest
# Run make base to build both images based on ubuntu and fedora
-base: image-deb image-fed36 image-fed37 image-arch
+base: image-deb image-fed38 image-arch
# Create the image based on ubuntu
image-deb: image
@@ -31,15 +30,10 @@
image-arch: src = archlinux
-# Create the image based on fedora 36
-image-fed36: image
-image-fed36: DOCKER_FILE_SOURCE = Dockerfile.fed36
-image-fed36: src = fedora36
-
-# Create the image based on fedora 37
-image-fed37: image
-image-fed37: DOCKER_FILE_SOURCE = Dockerfile.fed37
-image-fed37: src = fedora37
+# Create the image based on fedora 38
+image-fed38: image
+image-fed38: DOCKER_FILE_SOURCE = Dockerfile.fed38
+image-fed38: src = fedora38
## Make remote image form a branch make image branch=<branchName> (master
default)
@@ -50,7 +44,7 @@
## We host our own copy of the image ubuntu:latest
docker-source:
- sed "s|IMAGE_URL_FED36|$(IMAGE_URL_FED36)|;
s|IMAGE_URL_FED37|$(IMAGE_URL_FED37)|; s|IMAGE_URL_DEB|$(IMAGE_URL_DEB)|;
s|IMAGE_URL_ARCH|$(IMAGE_URL_ARCH)|" $(DOCKER_FILE_SOURCE) >
/tmp/Dockerfile.image
+ sed "s|IMAGE_URL_FED38|$(IMAGE_URL_FED38)|;
s|IMAGE_URL_DEB|$(IMAGE_URL_DEB)|; s|IMAGE_URL_ARCH|$(IMAGE_URL_ARCH)|"
$(DOCKER_FILE_SOURCE) > /tmp/Dockerfile.image
requirements.txt:
@ touch requirements.txt
@@ -67,16 +61,13 @@
@ rm -rf __SOURCE_APP || true
local: NAME_IMAGE = protonvpn-nm-lib:latest
-local-base: local-deb local-fed36 local-fed37 local-arch
+local-base: local-deb local-fed38 local-arch
local-deb: local
local-deb: DOCKER_FILE_SOURCE = Dockerfile.deb
-local-fed36: local
-local-fed36: DOCKER_FILE_SOURCE = Dockerfile.fed36
-
-local-fed37: local
-local-fed37: DOCKER_FILE_SOURCE = Dockerfile.fed37
+local-fed38: local
+local-fed38: DOCKER_FILE_SOURCE = Dockerfile.fed38
local-arch: local
local-arch: DOCKER_FILE_SOURCE = Dockerfile.arch
@@ -101,18 +92,7 @@
protonvpn-nm-lib:latest \
python3 -m pytest
-## Run tests against the latest version of the image from your code
-test-fed36: local-fed36
- # Keep -it because with colors it's better
- @ docker run \
- --rm \
- -it \
- --privileged \
- --volume
$(PWD)/.env:/home/user/proton-python-client.env \
- proton-python-client:latest \
- python3 -m pytest
-
-test-fed37: local-fed37
+test-fed38: local-fed38
# Keep -it because with colors it's better
@ docker run \
--rm \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/protonvpn-nm-lib-3.14.0/arch/PKGBUILD
new/protonvpn-nm-lib-3.16.0/arch/PKGBUILD
--- old/protonvpn-nm-lib-3.14.0/arch/PKGBUILD 2022-10-20 17:13:58.000000000
+0200
+++ new/protonvpn-nm-lib-3.16.0/arch/PKGBUILD 2023-07-31 17:39:14.000000000
+0200
@@ -1,6 +1,6 @@
# Maintainer: Proton Technologies AG <[email protected]>
pkgname=python-protonvpn-nm-lib
-pkgver=3.12.0
+pkgver=3.16.0
pkgrel=1
pkgdesc="Official Proton VPN NetworkManager library."
arch=("any")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/protonvpn-nm-lib-3.14.0/debian/changelog
new/protonvpn-nm-lib-3.16.0/debian/changelog
--- old/protonvpn-nm-lib-3.14.0/debian/changelog 2022-10-20
17:13:58.000000000 +0200
+++ new/protonvpn-nm-lib-3.16.0/debian/changelog 2023-07-31
17:39:14.000000000 +0200
@@ -1,3 +1,16 @@
+protonvpn-nm-lib (3.16.0-1) unstable; urgency=medium
+
+ * Fix: Connectivity issues if protonstatus.com is down
+
+ -- Proton Technologies AG <[email protected]> Mon, 31 Jul 2023 11:00:00
+0000
+
+protonvpn-nm-lib (3.15.0-1) unstable; urgency=medium
+
+ * Fix: NM plugin not accepting params for newer openvpn version
+ * See: https://gitlab.gnome.org/GNOME/NetworkManager-openvpn/-/issues/112
+
+ -- Proton Technologies AG <[email protected]> Mon, 31 Jul 2023 11:00:00
+0000
+
protonvpn-nm-lib (3.14.0-1) unstable; urgency=medium
* Fix: When vpn session is invalid and an api request is made, ensure that
user is logged out
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/protonvpn_nm_lib/constants.py
new/protonvpn-nm-lib-3.16.0/protonvpn_nm_lib/constants.py
--- old/protonvpn-nm-lib-3.14.0/protonvpn_nm_lib/constants.py 2022-10-20
17:13:58.000000000 +0200
+++ new/protonvpn-nm-lib-3.16.0/protonvpn_nm_lib/constants.py 2023-07-31
17:39:14.000000000 +0200
@@ -13,7 +13,7 @@
SecureCoreStatusEnum, UserSettingConnectionEnum,
UserSettingStatusEnum)
-APP_VERSION = "3.14.0"
+APP_VERSION = "3.16.0"
API_URL = "https://api.protonvpn.ch"
IPv6_LEAK_PROTECTION_CONN_NAME = "pvpn-ipv6leak-protection"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/protonvpn_nm_lib/core/utilities.py
new/protonvpn-nm-lib-3.16.0/protonvpn_nm_lib/core/utilities.py
--- old/protonvpn-nm-lib-3.14.0/protonvpn_nm_lib/core/utilities.py
2022-10-20 17:13:58.000000000 +0200
+++ new/protonvpn-nm-lib-3.16.0/protonvpn_nm_lib/core/utilities.py
2023-07-31 17:39:14.000000000 +0200
@@ -1,3 +1,4 @@
+import subprocess
from ..logger import logger
from .. import exceptions
import requests
@@ -22,19 +23,11 @@
logger.info("Skipping as killswitch is enabled")
return
- try:
- requests.get(
- "https://protonstatus.com/",
- timeout=5,
- )
- except requests.exceptions.Timeout as e:
- logger.exception("NetworkConnectionError: {}".format(e))
- raise exceptions.NetworkConnectionError(
- "No internet connection found, request timed out. "
- "Please make sure you are connected and retry."
- )
- except (requests.exceptions.BaseHTTPError, Exception) as e:
- logger.exception("NetworkConnectionError: {}".format(e))
+ # 192.0.2.1 is used because is a valid IP that won't be in use,
+ # since it is reserved for documentation purposes:
+ # https://www.rfc-editor.org/rfc/rfc5737.html
+ result = subprocess.run(["ip", "route", "get", "192.0.2.1"],
check=False, capture_output=True)
+ if result.returncode != 0:
raise exceptions.NetworkConnectionError(
"No internet connection. "
"Please make sure you are connected and retry."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/protonvpn_nm_lib/templates/openvpn_template.j2
new/protonvpn-nm-lib-3.16.0/protonvpn_nm_lib/templates/openvpn_template.j2
--- old/protonvpn-nm-lib-3.14.0/protonvpn_nm_lib/templates/openvpn_template.j2
2022-10-20 17:13:58.000000000 +0200
+++ new/protonvpn-nm-lib-3.16.0/protonvpn_nm_lib/templates/openvpn_template.j2
2023-07-31 17:39:14.000000000 +0200
@@ -36,14 +36,11 @@
remote-random
resolv-retry infinite
nobind
-cipher AES-256-CBC
-auth SHA512
-comp-lzo no
+cipher AES-256-GCM
verb 3
tun-mtu 1500
-tun-mtu-extra 32
-mssfix 1450
+mssfix 0
persist-key
persist-tun
@@ -51,8 +48,6 @@
remote-cert-tls server
auth-user-pass
-pull
-fast-io
{%- if ipv6_disabled %}
@@ -71,43 +66,41 @@
<ca>
-----BEGIN CERTIFICATE-----
-MIIFozCCA4ugAwIBAgIBATANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNDM4MDBaFw0yNzAyMTUxNDM4MDBaMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAt+BsSsZg7+AuqTq7
-vDbPzfygtl9f8fLJqO4amsyOXlI7pquL5IsEZhpWyJIIvYybqS4s1/T7BbvHPLVE
-wlrq8A5DBIXcfuXrBbKoYkmpICGc2u1KYVGOZ9A+PH9z4Tr6OXFfXRnsbZToie8t
-2Xjv/dZDdUDAqeW89I/mXg3k5x08m2nfGCQDm4gCanN1r5MT7ge56z0MkY3FFGCO
-qRwspIEUzu1ZqGSTkG1eQiOYIrdOF5cc7n2APyvBIcfvp/W3cpTOEmEBJ7/14RnX
-nHo0fcx61Inx/6ZxzKkW8BMdGGQF3tF6u2M0FjVN0lLH9S0ul1TgoOS56yEJ34hr
-JSRTqHuar3t/xdCbKFZjyXFZFNsXVvgJu34CNLrHHTGJj9jiUfFnxWQYMo9UNUd4
-a3PPG1HnbG7LAjlvj5JlJ5aqO5gshdnqb9uIQeR2CdzcCJgklwRGCyDT1pm7eoiv
-WV19YBd81vKulLzgPavu3kRRe83yl29It2hwQ9FMs5w6ZV/X6ciTKo3etkX9nBD9
-ZzJPsGQsBUy7CzO1jK4W01+u3ItmQS+1s4xtcFxdFY8o/q1zoqBlxpe5MQIWN6Qa
-lryiET74gMHE/S5WrPlsq/gehxsdgc6GDUXG4dk8vn6OUMa6wb5wRO3VXGEc67IY
-m4mDFTYiPvLaFOxtndlUWuCruKcCAwEAAaOBpzCBpDAMBgNVHRMEBTADAQH/MB0G
-A1UdDgQWBBSDkIaYhLVZTwyLNTetNB2qV0gkVDBoBgNVHSMEYTBfgBSDkIaYhLVZ
-TwyLNTetNB2qV0gkVKFEpEIwQDELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFByb3Rv
-blZQTiBBRzEaMBgGA1UEAxMRUHJvdG9uVlBOIFJvb3QgQ0GCAQEwCwYDVR0PBAQD
-AgEGMA0GCSqGSIb3DQEBDQUAA4ICAQCYr7LpvnfZXBCxVIVc2ea1fjxQ6vkTj0zM
-htFs3qfeXpMRf+g1NAh4vv1UIwLsczilMt87SjpJ25pZPyS3O+/VlI9ceZMvtGXd
-MGfXhTDp//zRoL1cbzSHee9tQlmEm1tKFxB0wfWd/inGRjZxpJCTQh8oc7CTziHZ
-ufS+Jkfpc4Rasr31fl7mHhJahF1j/ka/OOWmFbiHBNjzmNWPQInJm+0ygFqij5qs
-51OEvubR8yh5Mdq4TNuWhFuTxpqoJ87VKaSOx/Aefca44Etwcj4gHb7LThidw/ky
-zysZiWjyrbfX/31RX7QanKiMk2RDtgZaWi/lMfsl5O+6E2lJ1vo4xv9pW8225B5X
-eAeXHCfjV/vrrCFqeCprNF6a3Tn/LX6VNy3jbeC+167QagBOaoDA01XPOx7Odhsb
-Gd7cJ5VkgyycZgLnT9zrChgwjx59JQosFEG1DsaAgHfpEl/N3YPJh68N7fwN41Cj
-zsk39v6iZdfuet/sP7oiP5/gLmA/CIPNhdIYxaojbLjFPkftVjVPn49RqwqzJJPR
-N8BOyb94yhQ7KO4F3IcLT/y/dsWitY0ZH4lCnAVV/v2YjWAWS3OWyC8BFx/Jmc3W
-DK/yPwECUcPgHIeXiRjHnJt0Zcm23O2Q3RphpU+1SO3XixsXpOVOYP6rJIXW9bMZ
-A1gTTlpi7A==
+MIIFnTCCA4WgAwIBAgIUCI574SM3Lyh47GyNl0WAOYrqb5QwDQYJKoZIhvcNAQEL
+BQAwXjELMAkGA1UEBhMCQ0gxHzAdBgNVBAoMFlByb3RvbiBUZWNobm9sb2dpZXMg
+QUcxEjAQBgNVBAsMCVByb3RvblZQTjEaMBgGA1UEAwwRUHJvdG9uVlBOIFJvb3Qg
+Q0EwHhcNMTkxMDE3MDgwNjQxWhcNMzkxMDEyMDgwNjQxWjBeMQswCQYDVQQGEwJD
+SDEfMB0GA1UECgwWUHJvdG9uIFRlY2hub2xvZ2llcyBBRzESMBAGA1UECwwJUHJv
+dG9uVlBOMRowGAYDVQQDDBFQcm90b25WUE4gUm9vdCBDQTCCAiIwDQYJKoZIhvcN
+AQEBBQADggIPADCCAgoCggIBAMkUT7zMUS5C+NjQ7YoGpVFlfbN9HFgG4JiKfHB8
+QxnPPRgyTi0zVOAj1ImsRilauY8Ddm5dQtd8qcApoz6oCx5cFiiSQG2uyhS/59Zl
+5wqIkw1o+CgwZgeWkq04lcrxhhfPgJZRFjrYVezy/Z2Ssd18s3/FFNQ+2iV1KC2K
+z8eSPr50u+l9vEKsKiNGkJTdlWjoDKZM2C15i/h8Smi+PdJlx7WMTtYoVC1Fzq0r
+aCPDQl18kspu11b6d8ECPWghKcDIIKuA0r0nGqF1GvH1AmbC/xUaNrKgz9AfioZL
+MP/l22tVG3KKM1ku0eYHX7NzNHgkM2JKnBBannImQQBGTAcvvUlnfF3AHx4vzx7H
+ahpBz8ebThx2uv+vzu8lCVEcKjQObGwLbAONJN2enug8hwSSZQv7tz7onDQWlYh0
+El5fnkrEQGbukNnSyOqTwfobvBllIPzBqdO38eZFA0YTlH9plYjIjPjGl931lFAA
+3G9t0x7nxAauLXN5QVp1yoF1tzXc5kN0SFAasM9VtVEOSMaGHLKhF+IMyVX8h5Iu
+IRC8u5O672r7cHS+Dtx87LjxypqNhmbf1TWyLJSoh0qYhMr+BbO7+N6zKRIZPI5b
+MXc8Be2pQwbSA4ZrDvSjFC9yDXmSuZTyVo6Bqi/KCUZeaXKof68oNxVYeGowNeQd
+g/znAgMBAAGjUzBRMB0GA1UdDgQWBBR44WtTuEKCaPPUltYEHZoyhJo+4TAfBgNV
+HSMEGDAWgBR44WtTuEKCaPPUltYEHZoyhJo+4TAPBgNVHRMBAf8EBTADAQH/MA0G
+CSqGSIb3DQEBCwUAA4ICAQBBmzCQlHxOJ6izys3TVpaze+rUkA9GejgsB2DZXIcm
+4Lj/SNzQsPlZRu4S0IZV253dbE1DoWlHanw5lnXwx8iU82X7jdm/5uZOwj2NqSqT
+bTn0WLAC6khEKKe5bPTf18UOcwN82Le3AnkwcNAaBO5/TzFQVgnVedXr2g6rmpp9
+gdedeEl9acB7xqfYfkrmijqYMm+xeG2rXaanch3HjweMDuZdT/Ub5G6oir0Kowft
+lA1ytjXRg+X+yWymTpF/zGLYfSodWWjMKhpzZtRJZ+9B0pWXUyY7SuCj5T5SMIAu
+x3NQQ46wSbHRolIlwh7zD7kBgkyLe7ByLvGFKa2Vw4PuWjqYwrRbFjb2+EKAwPu6
+VTWz/QQTU8oJewGFipw94Bi61zuaPvF1qZCHgYhVojRy6KcqncX2Hx9hjfVxspBZ
+DrVH6uofCmd99GmVu+qizybWQTrPaubfc/a2jJIbXc2bRQjYj/qmjE3hTlmO3k7V
+EP6i8CLhEl+dX75aZw9StkqjdpIApYwX6XNDqVuGzfeTXXclk4N4aDPwPFM/Yo/e
+KnvlNlKbljWdMYkfx8r37aOHpchH34cv0Jb5Im+1H07ywnshXNfUhRazOpubJRHn
+bjDuBwWS1/Vwp5AJ+QHsPXhJdl3qHc1szJZVJb3VyAWvG/bWApKfFuZX18tiI4N0
+EA==
-----END CERTIFICATE-----
</ca>
-key-direction 1
-<tls-auth>
-# 2048 bit OpenVPN static key
+<tls-crypt>
-----BEGIN OpenVPN Static key V1-----
6acef03f62675b4b1bbd03e53b187727
423cea742242106cb2916a8a4c829756
@@ -126,4 +119,4 @@
aeb893d9a96d1f15519bb3c4dcb40ee3
16672ea16c012664f8a9f11255518deb
-----END OpenVPN Static key V1-----
-</tls-auth>
+</tls-crypt>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/rpmbuild/SPECS/python3-protonvpn-nm-lib.spec
new/protonvpn-nm-lib-3.16.0/rpmbuild/SPECS/python3-protonvpn-nm-lib.spec
--- old/protonvpn-nm-lib-3.14.0/rpmbuild/SPECS/python3-protonvpn-nm-lib.spec
2022-10-20 17:13:58.000000000 +0200
+++ new/protonvpn-nm-lib-3.16.0/rpmbuild/SPECS/python3-protonvpn-nm-lib.spec
2023-07-31 17:39:14.000000000 +0200
@@ -1,5 +1,5 @@
%define unmangled_name protonvpn-nm-lib
-%define version 3.14.0
+%define version 3.16.0
%define release 1
Prefix: %{_prefix}
@@ -60,6 +60,13 @@
%defattr(-,root,root)
%changelog
+* Mon Jul 31 2023 Proton Technologies AG <[email protected]> 3.16.0-1
+- Fix: Connectivity issues if protonstatus.com is down
+
+* Mon Jul 31 2023 Proton Technologies AG <[email protected]> 3.15.0-1
+- Fix: NM plugin not accepting params for newer openvpn version
+- See: https://gitlab.gnome.org/GNOME/NetworkManager-openvpn/-/issues/112
+
* Tue Oct 18 2022 Proton Technologies AG <[email protected]> 3.14.0-1
- Fix: When vpn session is invalid, ensure that user is logged out
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/tests/certificates/connection_manager/ProtonVPN_missing_dev_type.ovpn
new/protonvpn-nm-lib-3.16.0/tests/certificates/connection_manager/ProtonVPN_missing_dev_type.ovpn
---
old/protonvpn-nm-lib-3.14.0/tests/certificates/connection_manager/ProtonVPN_missing_dev_type.ovpn
2022-10-20 17:13:58.000000000 +0200
+++
new/protonvpn-nm-lib-3.16.0/tests/certificates/connection_manager/ProtonVPN_missing_dev_type.ovpn
1970-01-01 01:00:00.000000000 +0100
@@ -1,146 +0,0 @@
-#
==============================================================================
-# Copyright (c) 2016-2020 Proton Technologies AG (Switzerland)
-# Email: [email protected]
-#
-# The MIT License (MIT)
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
all
-# copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR # OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-#
==============================================================================
-
-client
-dev
-proto tcp
-
-remote es.protonvpn.com 443
-remote es.protonvpn.com 5995
-remote es.protonvpn.com 8443
-
-remote-random
-resolv-retry infinite
-nobind
-cipher AES-256-CBC
-auth SHA512
-comp-lzo no
-verb 3
-
-tun-mtu 1500
-tun-mtu-extra 32
-mssfix 1450
-persist-key
-persist-tun
-
-reneg-sec 0
-
-remote-cert-tls server
-auth-user-pass
-pull
-fast-io
-
-
-<ca>
------BEGIN CERTIFICATE-----
-MIIFozCCA4ugAwIBAgIBATANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNDM4MDBaFw0yNzAyMTUxNDM4MDBaMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAt+BsSsZg7+AuqTq7
-vDbPzfygtl9f8fLJqO4amsyOXlI7pquL5IsEZhpWyJIIvYybqS4s1/T7BbvHPLVE
-wlrq8A5DBIXcfuXrBbKoYkmpICGc2u1KYVGOZ9A+PH9z4Tr6OXFfXRnsbZToie8t
-2Xjv/dZDdUDAqeW89I/mXg3k5x08m2nfGCQDm4gCanN1r5MT7ge56z0MkY3FFGCO
-qRwspIEUzu1ZqGSTkG1eQiOYIrdOF5cc7n2APyvBIcfvp/W3cpTOEmEBJ7/14RnX
-nHo0fcx61Inx/6ZxzKkW8BMdGGQF3tF6u2M0FjVN0lLH9S0ul1TgoOS56yEJ34hr
-JSRTqHuar3t/xdCbKFZjyXFZFNsXVvgJu34CNLrHHTGJj9jiUfFnxWQYMo9UNUd4
-a3PPG1HnbG7LAjlvj5JlJ5aqO5gshdnqb9uIQeR2CdzcCJgklwRGCyDT1pm7eoiv
-WV19YBd81vKulLzgPavu3kRRe83yl29It2hwQ9FMs5w6ZV/X6ciTKo3etkX9nBD9
-ZzJPsGQsBUy7CzO1jK4W01+u3ItmQS+1s4xtcFxdFY8o/q1zoqBlxpe5MQIWN6Qa
-lryiET74gMHE/S5WrPlsq/gehxsdgc6GDUXG4dk8vn6OUMa6wb5wRO3VXGEc67IY
-m4mDFTYiPvLaFOxtndlUWuCruKcCAwEAAaOBpzCBpDAMBgNVHRMEBTADAQH/MB0G
-A1UdDgQWBBSDkIaYhLVZTwyLNTetNB2qV0gkVDBoBgNVHSMEYTBfgBSDkIaYhLVZ
-TwyLNTetNB2qV0gkVKFEpEIwQDELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFByb3Rv
-blZQTiBBRzEaMBgGA1UEAxMRUHJvdG9uVlBOIFJvb3QgQ0GCAQEwCwYDVR0PBAQD
-AgEGMA0GCSqGSIb3DQEBDQUAA4ICAQCYr7LpvnfZXBCxVIVc2ea1fjxQ6vkTj0zM
-htFs3qfeXpMRf+g1NAh4vv1UIwLsczilMt87SjpJ25pZPyS3O+/VlI9ceZMvtGXd
-MGfXhTDp//zRoL1cbzSHee9tQlmEm1tKFxB0wfWd/inGRjZxpJCTQh8oc7CTziHZ
-ufS+Jkfpc4Rasr31fl7mHhJahF1j/ka/OOWmFbiHBNjzmNWPQInJm+0ygFqij5qs
-51OEvubR8yh5Mdq4TNuWhFuTxpqoJ87VKaSOx/Aefca44Etwcj4gHb7LThidw/ky
-zysZiWjyrbfX/31RX7QanKiMk2RDtgZaWi/lMfsl5O+6E2lJ1vo4xv9pW8225B5X
-eAeXHCfjV/vrrCFqeCprNF6a3Tn/LX6VNy3jbeC+167QagBOaoDA01XPOx7Odhsb
-Gd7cJ5VkgyycZgLnT9zrChgwjx59JQosFEG1DsaAgHfpEl/N3YPJh68N7fwN41Cj
-zsk39v6iZdfuet/sP7oiP5/gLmA/CIPNhdIYxaojbLjFPkftVjVPn49RqwqzJJPR
-N8BOyb94yhQ7KO4F3IcLT/y/dsWitY0ZH4lCnAVV/v2YjWAWS3OWyC8BFx/Jmc3W
-DK/yPwECUcPgHIeXiRjHnJt0Zcm23O2Q3RphpU+1SO3XixsXpOVOYP6rJIXW9bMZ
-A1gTTlpi7A==
------END CERTIFICATE-----
------BEGIN CERTIFICATE-----
-MIIFszCCA5ugAwIBAgIBBjANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNTE3MDBaFw0yNzAyMTUxNDM4MDBaMEoxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxJDAiBgNVBAMTG1Byb3RvblZQTiBJbnRl
-cm1lZGlhdGUgQ0EgMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANv3
-uwQMFjYOx74taxadhczLbjCTuT73jMz09EqFNv7O7UesXfYJ6kQgYV9YyE86znP4
-xbsswNUZYh+XdZUpOoP6Zu3tR/iiYiuzi6jVYrJ66G89nPqS2mm5dn8Fbb8CRWkJ
-ygm8AdlYkDwYNldhDUrERlQdCRDGsYYg/98dded+5pXnSG8Y/+iuLM6/YYhkUVQe
-Cfq1L6XguSwu8CuvJjIjjE1PptUHa3Hc3tGziVydltKynxWlqb1dJqinGKiBZvYn
-oiV4motpFYwhc3Wd09JLPzeobhD2IAZ2evSatikMWDingEv1EJXpI+V/E2AK3xHK
-Skhw+YZx99tNxCiOu3U5BFAreZR3j2YnZzX1nEv9p02IGaWzzYJPNED0zSO2w07u
-thSmKcxA39VTvs91lptbcV7VTxoJY0SErHIeVS3Scrnr7WvoOTuu3M3SCRqe6oI9
-oJZMOdfNsceBdvG+qlpOFICoBjO53W4BK8KahzTd/PWlBRiVJ3UVv8xXwUDA+o98
-34DXVAobaAHXQtM9jNobqT98FXhZktjOQEA2UORL581ZPxfKeHLRcgWJ5dmPsDBG
-y/L6/qW/yrm6DUDAdN5+q41+gSNEjNBjLBJQFUmDk3l6Qxiu0uEDQ98oFvGHk5US
-2Kbj0OAq1RpiDjHci/536yua9rTC+cxekTM2asdXAgMBAAGjga0wgaowEgYDVR0T
-AQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUJbaTWcIB4t5ETvvhUy5/yQqqGjMwaAYD
-VR0jBGEwX4AUg5CGmIS1WU8MizU3rTQdqldIJFShRKRCMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBggEBMAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQ0FAAOCAgEAAgZ/BIVl+DcK
-OTVJJBy+RZ1E8os11gFaMKy12lAT1XEXDqLAnitvVyQgG5lPZKFQ2wzUR/TCrYKT
-SUZWdYaJIXkRWAU0aCDZ2I81T0OMpg9aS7xdxgHCGWOwwes8GhjtvQad9GJ8mUZH
-GyzfMaGG6fAZrgHnlOb4OIoqhBWYla6D2bpvbKgGkMo5NLAaX/7+U0HcxjjSS9vm
-/3XHTZU4q77pn+lhPWncajnVyMtm1mIZxMioyckR4+scyZse0mYJS6xli/7crH7j
-qScX7c5sWcaN4J63a3+x3uGvzOXjCyoDl9IaeqnxQpi8yc0nsWxIyDalR3uRQ9tJ
-7l/eRxJZ/1Pzz2LRHSQZuqN2ZReWVNTqJ42af8cWWH0fDOEt2468GLeSm08Hvyz0
-lRjn7Tf5hxOJSw4/3oGihvzuTdquJMOi62kThbp7DS3mMaZsfbmDoU3oNDv91bvL
-57z8wm7yRcGEoMsUNnrOZ4SU8dG/souvJM1BDStMLprFEgUbHEY5MjSR4/PLR6j9
-3NZgocfnfk80nBvNtgWVHxW019nuT93WL0/5L5g4UVm0Ay1V6pNkGZCmgNUBaRY4
-2JLzyY8p48OKapR5GnedLTJXJVbdd9GUNzIzm4iVITDH3p/u1g69dITCNXTO9EO5
-sGEYLNPbV49XBnVAm1tUWuoByZAjoWs=
------END CERTIFICATE-----
-</ca>
-
-key-direction 1
-<tls-auth>
-# 2048 bit OpenVPN static key
------BEGIN OpenVPN Static key V1-----
-6acef03f62675b4b1bbd03e53b187727
-423cea742242106cb2916a8a4c829756
-3d22c7e5cef430b1103c6f66eb1fc5b3
-75a672f158e2e2e936c3faa48b035a6d
-e17beaac23b5f03b10b868d53d03521d
-8ba115059da777a60cbfd7b2c9c57472
-78a15b8f6e68a3ef7fd583ec9f398c8b
-d4735dab40cbd1e3c62a822e97489186
-c30a0b48c7c38ea32ceb056d3fa5a710
-e10ccc7a0ddb363b08c3d2777a3395e1
-0c0b6080f56309192ab5aacd4b45f55d
-a61fc77af39bd81a19218a79762c3386
-2df55785075f37d8c71dc8a42097ee43
-344739a0dd48d03025b0450cf1fb5e8c
-aeb893d9a96d1f15519bb3c4dcb40ee3
-16672ea16c012664f8a9f11255518deb
------END OpenVPN Static key V1-----
-</tls-auth>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/tests/certificates/connection_manager/ProtonVPN_wrong_dev_type.ovpn
new/protonvpn-nm-lib-3.16.0/tests/certificates/connection_manager/ProtonVPN_wrong_dev_type.ovpn
---
old/protonvpn-nm-lib-3.14.0/tests/certificates/connection_manager/ProtonVPN_wrong_dev_type.ovpn
2022-10-20 17:13:58.000000000 +0200
+++
new/protonvpn-nm-lib-3.16.0/tests/certificates/connection_manager/ProtonVPN_wrong_dev_type.ovpn
1970-01-01 01:00:00.000000000 +0100
@@ -1,146 +0,0 @@
-#
==============================================================================
-# Copyright (c) 2016-2020 Proton Technologies AG (Switzerland)
-# Email: [email protected]
-#
-# The MIT License (MIT)
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
all
-# copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR # OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-#
==============================================================================
-
-client
-dev tasdun
-proto tcp
-
-remote es.protonvpn.com 443
-remote es.protonvpn.com 5995
-remote es.protonvpn.com 8443
-
-remote-random
-resolv-retry infinite
-nobind
-cipher AES-256-CBC
-auth SHA512
-comp-lzo no
-verb 3
-
-tun-mtu 1500
-tun-mtu-extra 32
-mssfix 1450
-persist-key
-persist-tun
-
-reneg-sec 0
-
-remote-cert-tls server
-auth-user-pass
-pull
-fast-io
-
-
-<ca>
------BEGIN CERTIFICATE-----
-MIIFozCCA4ugAwIBAgIBATANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNDM4MDBaFw0yNzAyMTUxNDM4MDBaMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAt+BsSsZg7+AuqTq7
-vDbPzfygtl9f8fLJqO4amsyOXlI7pquL5IsEZhpWyJIIvYybqS4s1/T7BbvHPLVE
-wlrq8A5DBIXcfuXrBbKoYkmpICGc2u1KYVGOZ9A+PH9z4Tr6OXFfXRnsbZToie8t
-2Xjv/dZDdUDAqeW89I/mXg3k5x08m2nfGCQDm4gCanN1r5MT7ge56z0MkY3FFGCO
-qRwspIEUzu1ZqGSTkG1eQiOYIrdOF5cc7n2APyvBIcfvp/W3cpTOEmEBJ7/14RnX
-nHo0fcx61Inx/6ZxzKkW8BMdGGQF3tF6u2M0FjVN0lLH9S0ul1TgoOS56yEJ34hr
-JSRTqHuar3t/xdCbKFZjyXFZFNsXVvgJu34CNLrHHTGJj9jiUfFnxWQYMo9UNUd4
-a3PPG1HnbG7LAjlvj5JlJ5aqO5gshdnqb9uIQeR2CdzcCJgklwRGCyDT1pm7eoiv
-WV19YBd81vKulLzgPavu3kRRe83yl29It2hwQ9FMs5w6ZV/X6ciTKo3etkX9nBD9
-ZzJPsGQsBUy7CzO1jK4W01+u3ItmQS+1s4xtcFxdFY8o/q1zoqBlxpe5MQIWN6Qa
-lryiET74gMHE/S5WrPlsq/gehxsdgc6GDUXG4dk8vn6OUMa6wb5wRO3VXGEc67IY
-m4mDFTYiPvLaFOxtndlUWuCruKcCAwEAAaOBpzCBpDAMBgNVHRMEBTADAQH/MB0G
-A1UdDgQWBBSDkIaYhLVZTwyLNTetNB2qV0gkVDBoBgNVHSMEYTBfgBSDkIaYhLVZ
-TwyLNTetNB2qV0gkVKFEpEIwQDELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFByb3Rv
-blZQTiBBRzEaMBgGA1UEAxMRUHJvdG9uVlBOIFJvb3QgQ0GCAQEwCwYDVR0PBAQD
-AgEGMA0GCSqGSIb3DQEBDQUAA4ICAQCYr7LpvnfZXBCxVIVc2ea1fjxQ6vkTj0zM
-htFs3qfeXpMRf+g1NAh4vv1UIwLsczilMt87SjpJ25pZPyS3O+/VlI9ceZMvtGXd
-MGfXhTDp//zRoL1cbzSHee9tQlmEm1tKFxB0wfWd/inGRjZxpJCTQh8oc7CTziHZ
-ufS+Jkfpc4Rasr31fl7mHhJahF1j/ka/OOWmFbiHBNjzmNWPQInJm+0ygFqij5qs
-51OEvubR8yh5Mdq4TNuWhFuTxpqoJ87VKaSOx/Aefca44Etwcj4gHb7LThidw/ky
-zysZiWjyrbfX/31RX7QanKiMk2RDtgZaWi/lMfsl5O+6E2lJ1vo4xv9pW8225B5X
-eAeXHCfjV/vrrCFqeCprNF6a3Tn/LX6VNy3jbeC+167QagBOaoDA01XPOx7Odhsb
-Gd7cJ5VkgyycZgLnT9zrChgwjx59JQosFEG1DsaAgHfpEl/N3YPJh68N7fwN41Cj
-zsk39v6iZdfuet/sP7oiP5/gLmA/CIPNhdIYxaojbLjFPkftVjVPn49RqwqzJJPR
-N8BOyb94yhQ7KO4F3IcLT/y/dsWitY0ZH4lCnAVV/v2YjWAWS3OWyC8BFx/Jmc3W
-DK/yPwECUcPgHIeXiRjHnJt0Zcm23O2Q3RphpU+1SO3XixsXpOVOYP6rJIXW9bMZ
-A1gTTlpi7A==
------END CERTIFICATE-----
------BEGIN CERTIFICATE-----
-MIIFszCCA5ugAwIBAgIBBjANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNTE3MDBaFw0yNzAyMTUxNDM4MDBaMEoxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxJDAiBgNVBAMTG1Byb3RvblZQTiBJbnRl
-cm1lZGlhdGUgQ0EgMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANv3
-uwQMFjYOx74taxadhczLbjCTuT73jMz09EqFNv7O7UesXfYJ6kQgYV9YyE86znP4
-xbsswNUZYh+XdZUpOoP6Zu3tR/iiYiuzi6jVYrJ66G89nPqS2mm5dn8Fbb8CRWkJ
-ygm8AdlYkDwYNldhDUrERlQdCRDGsYYg/98dded+5pXnSG8Y/+iuLM6/YYhkUVQe
-Cfq1L6XguSwu8CuvJjIjjE1PptUHa3Hc3tGziVydltKynxWlqb1dJqinGKiBZvYn
-oiV4motpFYwhc3Wd09JLPzeobhD2IAZ2evSatikMWDingEv1EJXpI+V/E2AK3xHK
-Skhw+YZx99tNxCiOu3U5BFAreZR3j2YnZzX1nEv9p02IGaWzzYJPNED0zSO2w07u
-thSmKcxA39VTvs91lptbcV7VTxoJY0SErHIeVS3Scrnr7WvoOTuu3M3SCRqe6oI9
-oJZMOdfNsceBdvG+qlpOFICoBjO53W4BK8KahzTd/PWlBRiVJ3UVv8xXwUDA+o98
-34DXVAobaAHXQtM9jNobqT98FXhZktjOQEA2UORL581ZPxfKeHLRcgWJ5dmPsDBG
-y/L6/qW/yrm6DUDAdN5+q41+gSNEjNBjLBJQFUmDk3l6Qxiu0uEDQ98oFvGHk5US
-2Kbj0OAq1RpiDjHci/536yua9rTC+cxekTM2asdXAgMBAAGjga0wgaowEgYDVR0T
-AQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUJbaTWcIB4t5ETvvhUy5/yQqqGjMwaAYD
-VR0jBGEwX4AUg5CGmIS1WU8MizU3rTQdqldIJFShRKRCMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBggEBMAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQ0FAAOCAgEAAgZ/BIVl+DcK
-OTVJJBy+RZ1E8os11gFaMKy12lAT1XEXDqLAnitvVyQgG5lPZKFQ2wzUR/TCrYKT
-SUZWdYaJIXkRWAU0aCDZ2I81T0OMpg9aS7xdxgHCGWOwwes8GhjtvQad9GJ8mUZH
-GyzfMaGG6fAZrgHnlOb4OIoqhBWYla6D2bpvbKgGkMo5NLAaX/7+U0HcxjjSS9vm
-/3XHTZU4q77pn+lhPWncajnVyMtm1mIZxMioyckR4+scyZse0mYJS6xli/7crH7j
-qScX7c5sWcaN4J63a3+x3uGvzOXjCyoDl9IaeqnxQpi8yc0nsWxIyDalR3uRQ9tJ
-7l/eRxJZ/1Pzz2LRHSQZuqN2ZReWVNTqJ42af8cWWH0fDOEt2468GLeSm08Hvyz0
-lRjn7Tf5hxOJSw4/3oGihvzuTdquJMOi62kThbp7DS3mMaZsfbmDoU3oNDv91bvL
-57z8wm7yRcGEoMsUNnrOZ4SU8dG/souvJM1BDStMLprFEgUbHEY5MjSR4/PLR6j9
-3NZgocfnfk80nBvNtgWVHxW019nuT93WL0/5L5g4UVm0Ay1V6pNkGZCmgNUBaRY4
-2JLzyY8p48OKapR5GnedLTJXJVbdd9GUNzIzm4iVITDH3p/u1g69dITCNXTO9EO5
-sGEYLNPbV49XBnVAm1tUWuoByZAjoWs=
------END CERTIFICATE-----
-</ca>
-
-key-direction 1
-<tls-auth>
-# 2048 bit OpenVPN static key
------BEGIN OpenVPN Static key V1-----
-6acef03f62675b4b1bbd03e53b187727
-423cea742242106cb2916a8a4c829756
-3d22c7e5cef430b1103c6f66eb1fc5b3
-75a672f158e2e2e936c3faa48b035a6d
-e17beaac23b5f03b10b868d53d03521d
-8ba115059da777a60cbfd7b2c9c57472
-78a15b8f6e68a3ef7fd583ec9f398c8b
-d4735dab40cbd1e3c62a822e97489186
-c30a0b48c7c38ea32ceb056d3fa5a710
-e10ccc7a0ddb363b08c3d2777a3395e1
-0c0b6080f56309192ab5aacd4b45f55d
-a61fc77af39bd81a19218a79762c3386
-2df55785075f37d8c71dc8a42097ee43
-344739a0dd48d03025b0450cf1fb5e8c
-aeb893d9a96d1f15519bb3c4dcb40ee3
-16672ea16c012664f8a9f11255518deb
------END OpenVPN Static key V1-----
-</tls-auth>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/tests/certificates/plugin_manager/ProtonVPN_broken_cert.ovpn
new/protonvpn-nm-lib-3.16.0/tests/certificates/plugin_manager/ProtonVPN_broken_cert.ovpn
---
old/protonvpn-nm-lib-3.14.0/tests/certificates/plugin_manager/ProtonVPN_broken_cert.ovpn
2022-10-20 17:13:58.000000000 +0200
+++
new/protonvpn-nm-lib-3.16.0/tests/certificates/plugin_manager/ProtonVPN_broken_cert.ovpn
1970-01-01 01:00:00.000000000 +0100
@@ -1,92 +0,0 @@
-#
==============================================================================
-# Copyright (c) 2016-2020 Proton Technologies AG (Switzerland)
-# Email: [email protected]
-#
-# The MIT License (MIT)
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
all
-# copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR # OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-#
==============================================================================
-
-client
-dev tun
-proto tcp
-
-remote es.protonvpn.com 443
-remote es.protonvpn.com 5995
-remote es.protonvpn.com 8443
-
-remote-random
-resolv-retry infinite
-nobind
-cipher AES-256-CBC
-auth SHA512
-comp-lzo no
-verb 3
-
-tun-mtu 1500
-tun-mtu-extra 32
-mssfix 1450
-persist-key
-persist-tun
-
-reneg-sec 0
-
-remote-cert-tls server
-auth-user-pass
-pull
-fast-io
-
-
-<ca>
-Gd7cJ5VkgyycZgLnT9zrChgwjx59JQosFEG1DsaAgHfpEl/N3YPJh68N7fwN41Cj
-zsk39v6iZdfuet/sP7oiP5/gLmA/CIPNhdIYxaojbLjFPkftVjVPn49RqwqzJJPR
-N8BOyb94yhQ7KO4F3IcLT/y/dsWitY0ZH4lCnAVV/v2YjWAWS3OWyC8BFx/Jmc3W
-DK/yPwECUcPgHIeXiRjHnJt0Zcm23O2Q3RphpU+1SO3XixsXpOVOYP6rJIXW9bMZ
-A1gTTlpi7A==
------END CERTIFICATE-----
------BEGIN CERTIFICATE-----
-MIIFszCCA5ugAwIBAgIBBjANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNTE3MDBaFw0yNzAyMTUxNDM4MDBaMEoxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxJDAiBgNVBAMTG1Byb3RvblZQTiBJbnRl
-cm1lZGlhdGUgQ0EgMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANv3
-uwQMFjYOx74taxadhczLbjCTuT73jMz09EqFNv7O7UesXfYJ6kQgYV9YyE86znP4
-xbsswNUZYh+XdZUpOoP6Zu3tR/iiYiuzi6jVYrJ66G89nPqS2mm5dn8Fbb8CRWkJ
-ygm8AdlYkDwYNldhDUrERlQdCRDGsYYg/98dded+5pXnSG8Y/+iuLM6/YYhkUVQe
-Cfq1L6XguSwu8CuvJjIjjE1PptUHa3Hc3tGziVydltKynxWlqb1dJqinGKiBZvYn
-oiV4motpFYwhc3Wd09JLPzeobhD2IAZ2evSatikMWDingEv1EJXpI+V/E2AK3xHK
-Skhw+YZx99tNxCiOu3U5BFAreZR3j2YnZzX1nEv9p02IGaWzzYJPNED0zSO2w07u
-
-</ca>
-
-key-direction 1
-<tls-auth>
-# 2048 bit OpenVPN static key
------BEGIN OpenVPN Static key V1-----
-6acef03f62675b4b1bbd03e53b187727
-423cea742242106cb2916a8a4c829756
-3d22c7e5cef430b1103c6f66eb1fc5b3
-75a672f158e2e2e936c3faa48b035a6d
-e17beaac23b5f03b10b868d53d03521d
-8ba115059da777a60cbfd7b2c9c57472
-78a15b8f6e68a3ef7fd583ec9f398c8b
-d4735dab40cbd1e3c62a822e97489186
-c30a0b48c7c38ea32ceb056d3fa5a710
-e10ccc7a0ddb363b08c3d2777a3395e1
-0c0b6080f56309192ab5aacd4b45f55d
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/tests/certificates/plugin_manager/ProtonVPN_no_proto.ovpn
new/protonvpn-nm-lib-3.16.0/tests/certificates/plugin_manager/ProtonVPN_no_proto.ovpn
---
old/protonvpn-nm-lib-3.14.0/tests/certificates/plugin_manager/ProtonVPN_no_proto.ovpn
2022-10-20 17:13:58.000000000 +0200
+++
new/protonvpn-nm-lib-3.16.0/tests/certificates/plugin_manager/ProtonVPN_no_proto.ovpn
1970-01-01 01:00:00.000000000 +0100
@@ -1,145 +0,0 @@
-#
==============================================================================
-# Copyright (c) 2016-2020 Proton Technologies AG (Switzerland)
-# Email: [email protected]
-#
-# The MIT License (MIT)
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
all
-# copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR # OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-#
==============================================================================
-
-client
-dev tun
-
-remote es.protonvpn.com 443
-remote es.protonvpn.com 5995
-remote es.protonvpn.com 8443
-
-remote-random
-resolv-retry infinite
-nobind
-cipher AES-256-CBC
-auth SHA512
-comp-lzo no
-verb 3
-
-tun-mtu 1500
-tun-mtu-extra 32
-mssfix 1450
-persist-key
-persist-tun
-
-reneg-sec 0
-
-remote-cert-tls server
-auth-user-pass
-pull
-fast-io
-
-
-<ca>
------BEGIN CERTIFICATE-----
-MIIFozCCA4ugAwIBAgIBATANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNDM4MDBaFw0yNzAyMTUxNDM4MDBaMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAt+BsSsZg7+AuqTq7
-vDbPzfygtl9f8fLJqO4amsyOXlI7pquL5IsEZhpWyJIIvYybqS4s1/T7BbvHPLVE
-wlrq8A5DBIXcfuXrBbKoYkmpICGc2u1KYVGOZ9A+PH9z4Tr6OXFfXRnsbZToie8t
-2Xjv/dZDdUDAqeW89I/mXg3k5x08m2nfGCQDm4gCanN1r5MT7ge56z0MkY3FFGCO
-qRwspIEUzu1ZqGSTkG1eQiOYIrdOF5cc7n2APyvBIcfvp/W3cpTOEmEBJ7/14RnX
-nHo0fcx61Inx/6ZxzKkW8BMdGGQF3tF6u2M0FjVN0lLH9S0ul1TgoOS56yEJ34hr
-JSRTqHuar3t/xdCbKFZjyXFZFNsXVvgJu34CNLrHHTGJj9jiUfFnxWQYMo9UNUd4
-a3PPG1HnbG7LAjlvj5JlJ5aqO5gshdnqb9uIQeR2CdzcCJgklwRGCyDT1pm7eoiv
-WV19YBd81vKulLzgPavu3kRRe83yl29It2hwQ9FMs5w6ZV/X6ciTKo3etkX9nBD9
-ZzJPsGQsBUy7CzO1jK4W01+u3ItmQS+1s4xtcFxdFY8o/q1zoqBlxpe5MQIWN6Qa
-lryiET74gMHE/S5WrPlsq/gehxsdgc6GDUXG4dk8vn6OUMa6wb5wRO3VXGEc67IY
-m4mDFTYiPvLaFOxtndlUWuCruKcCAwEAAaOBpzCBpDAMBgNVHRMEBTADAQH/MB0G
-A1UdDgQWBBSDkIaYhLVZTwyLNTetNB2qV0gkVDBoBgNVHSMEYTBfgBSDkIaYhLVZ
-TwyLNTetNB2qV0gkVKFEpEIwQDELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFByb3Rv
-blZQTiBBRzEaMBgGA1UEAxMRUHJvdG9uVlBOIFJvb3QgQ0GCAQEwCwYDVR0PBAQD
-AgEGMA0GCSqGSIb3DQEBDQUAA4ICAQCYr7LpvnfZXBCxVIVc2ea1fjxQ6vkTj0zM
-htFs3qfeXpMRf+g1NAh4vv1UIwLsczilMt87SjpJ25pZPyS3O+/VlI9ceZMvtGXd
-MGfXhTDp//zRoL1cbzSHee9tQlmEm1tKFxB0wfWd/inGRjZxpJCTQh8oc7CTziHZ
-ufS+Jkfpc4Rasr31fl7mHhJahF1j/ka/OOWmFbiHBNjzmNWPQInJm+0ygFqij5qs
-51OEvubR8yh5Mdq4TNuWhFuTxpqoJ87VKaSOx/Aefca44Etwcj4gHb7LThidw/ky
-zysZiWjyrbfX/31RX7QanKiMk2RDtgZaWi/lMfsl5O+6E2lJ1vo4xv9pW8225B5X
-eAeXHCfjV/vrrCFqeCprNF6a3Tn/LX6VNy3jbeC+167QagBOaoDA01XPOx7Odhsb
-Gd7cJ5VkgyycZgLnT9zrChgwjx59JQosFEG1DsaAgHfpEl/N3YPJh68N7fwN41Cj
-zsk39v6iZdfuet/sP7oiP5/gLmA/CIPNhdIYxaojbLjFPkftVjVPn49RqwqzJJPR
-N8BOyb94yhQ7KO4F3IcLT/y/dsWitY0ZH4lCnAVV/v2YjWAWS3OWyC8BFx/Jmc3W
-DK/yPwECUcPgHIeXiRjHnJt0Zcm23O2Q3RphpU+1SO3XixsXpOVOYP6rJIXW9bMZ
-A1gTTlpi7A==
------END CERTIFICATE-----
------BEGIN CERTIFICATE-----
-MIIFszCCA5ugAwIBAgIBBjANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNTE3MDBaFw0yNzAyMTUxNDM4MDBaMEoxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxJDAiBgNVBAMTG1Byb3RvblZQTiBJbnRl
-cm1lZGlhdGUgQ0EgMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANv3
-uwQMFjYOx74taxadhczLbjCTuT73jMz09EqFNv7O7UesXfYJ6kQgYV9YyE86znP4
-xbsswNUZYh+XdZUpOoP6Zu3tR/iiYiuzi6jVYrJ66G89nPqS2mm5dn8Fbb8CRWkJ
-ygm8AdlYkDwYNldhDUrERlQdCRDGsYYg/98dded+5pXnSG8Y/+iuLM6/YYhkUVQe
-Cfq1L6XguSwu8CuvJjIjjE1PptUHa3Hc3tGziVydltKynxWlqb1dJqinGKiBZvYn
-oiV4motpFYwhc3Wd09JLPzeobhD2IAZ2evSatikMWDingEv1EJXpI+V/E2AK3xHK
-Skhw+YZx99tNxCiOu3U5BFAreZR3j2YnZzX1nEv9p02IGaWzzYJPNED0zSO2w07u
-thSmKcxA39VTvs91lptbcV7VTxoJY0SErHIeVS3Scrnr7WvoOTuu3M3SCRqe6oI9
-oJZMOdfNsceBdvG+qlpOFICoBjO53W4BK8KahzTd/PWlBRiVJ3UVv8xXwUDA+o98
-34DXVAobaAHXQtM9jNobqT98FXhZktjOQEA2UORL581ZPxfKeHLRcgWJ5dmPsDBG
-y/L6/qW/yrm6DUDAdN5+q41+gSNEjNBjLBJQFUmDk3l6Qxiu0uEDQ98oFvGHk5US
-2Kbj0OAq1RpiDjHci/536yua9rTC+cxekTM2asdXAgMBAAGjga0wgaowEgYDVR0T
-AQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUJbaTWcIB4t5ETvvhUy5/yQqqGjMwaAYD
-VR0jBGEwX4AUg5CGmIS1WU8MizU3rTQdqldIJFShRKRCMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBggEBMAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQ0FAAOCAgEAAgZ/BIVl+DcK
-OTVJJBy+RZ1E8os11gFaMKy12lAT1XEXDqLAnitvVyQgG5lPZKFQ2wzUR/TCrYKT
-SUZWdYaJIXkRWAU0aCDZ2I81T0OMpg9aS7xdxgHCGWOwwes8GhjtvQad9GJ8mUZH
-GyzfMaGG6fAZrgHnlOb4OIoqhBWYla6D2bpvbKgGkMo5NLAaX/7+U0HcxjjSS9vm
-/3XHTZU4q77pn+lhPWncajnVyMtm1mIZxMioyckR4+scyZse0mYJS6xli/7crH7j
-qScX7c5sWcaN4J63a3+x3uGvzOXjCyoDl9IaeqnxQpi8yc0nsWxIyDalR3uRQ9tJ
-7l/eRxJZ/1Pzz2LRHSQZuqN2ZReWVNTqJ42af8cWWH0fDOEt2468GLeSm08Hvyz0
-lRjn7Tf5hxOJSw4/3oGihvzuTdquJMOi62kThbp7DS3mMaZsfbmDoU3oNDv91bvL
-57z8wm7yRcGEoMsUNnrOZ4SU8dG/souvJM1BDStMLprFEgUbHEY5MjSR4/PLR6j9
-3NZgocfnfk80nBvNtgWVHxW019nuT93WL0/5L5g4UVm0Ay1V6pNkGZCmgNUBaRY4
-2JLzyY8p48OKapR5GnedLTJXJVbdd9GUNzIzm4iVITDH3p/u1g69dITCNXTO9EO5
-sGEYLNPbV49XBnVAm1tUWuoByZAjoWs=
------END CERTIFICATE-----
-</ca>
-
-key-direction 1
-<tls-auth>
-# 2048 bit OpenVPN static key
------BEGIN OpenVPN Static key V1-----
-6acef03f62675b4b1bbd03e53b187727
-423cea742242106cb2916a8a4c829756
-3d22c7e5cef430b1103c6f66eb1fc5b3
-75a672f158e2e2e936c3faa48b035a6d
-e17beaac23b5f03b10b868d53d03521d
-8ba115059da777a60cbfd7b2c9c57472
-78a15b8f6e68a3ef7fd583ec9f398c8b
-d4735dab40cbd1e3c62a822e97489186
-c30a0b48c7c38ea32ceb056d3fa5a710
-e10ccc7a0ddb363b08c3d2777a3395e1
-0c0b6080f56309192ab5aacd4b45f55d
-a61fc77af39bd81a19218a79762c3386
-2df55785075f37d8c71dc8a42097ee43
-344739a0dd48d03025b0450cf1fb5e8c
-aeb893d9a96d1f15519bb3c4dcb40ee3
-16672ea16c012664f8a9f11255518deb
------END OpenVPN Static key V1-----
-</tls-auth>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/tests/certificates/plugin_manager/ProtonVPN_no_remote.ovpn
new/protonvpn-nm-lib-3.16.0/tests/certificates/plugin_manager/ProtonVPN_no_remote.ovpn
---
old/protonvpn-nm-lib-3.14.0/tests/certificates/plugin_manager/ProtonVPN_no_remote.ovpn
2022-10-20 17:13:58.000000000 +0200
+++
new/protonvpn-nm-lib-3.16.0/tests/certificates/plugin_manager/ProtonVPN_no_remote.ovpn
1970-01-01 01:00:00.000000000 +0100
@@ -1,142 +0,0 @@
-#
==============================================================================
-# Copyright (c) 2016-2020 Proton Technologies AG (Switzerland)
-# Email: [email protected]
-#
-# The MIT License (MIT)
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
all
-# copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR # OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-#
==============================================================================
-
-client
-dev tun
-proto tcp
-
-remote-random
-resolv-retry infinite
-nobind
-cipher AES-256-CBC
-auth SHA512
-comp-lzo no
-verb 3
-
-tun-mtu 1500
-tun-mtu-extra 32
-mssfix 1450
-persist-key
-persist-tun
-
-reneg-sec 0
-
-remote-cert-tls server
-auth-user-pass
-pull
-fast-io
-
-
-<ca>
------BEGIN CERTIFICATE-----
-MIIFozCCA4ugAwIBAgIBATANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNDM4MDBaFw0yNzAyMTUxNDM4MDBaMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAt+BsSsZg7+AuqTq7
-vDbPzfygtl9f8fLJqO4amsyOXlI7pquL5IsEZhpWyJIIvYybqS4s1/T7BbvHPLVE
-wlrq8A5DBIXcfuXrBbKoYkmpICGc2u1KYVGOZ9A+PH9z4Tr6OXFfXRnsbZToie8t
-2Xjv/dZDdUDAqeW89I/mXg3k5x08m2nfGCQDm4gCanN1r5MT7ge56z0MkY3FFGCO
-qRwspIEUzu1ZqGSTkG1eQiOYIrdOF5cc7n2APyvBIcfvp/W3cpTOEmEBJ7/14RnX
-nHo0fcx61Inx/6ZxzKkW8BMdGGQF3tF6u2M0FjVN0lLH9S0ul1TgoOS56yEJ34hr
-JSRTqHuar3t/xdCbKFZjyXFZFNsXVvgJu34CNLrHHTGJj9jiUfFnxWQYMo9UNUd4
-a3PPG1HnbG7LAjlvj5JlJ5aqO5gshdnqb9uIQeR2CdzcCJgklwRGCyDT1pm7eoiv
-WV19YBd81vKulLzgPavu3kRRe83yl29It2hwQ9FMs5w6ZV/X6ciTKo3etkX9nBD9
-ZzJPsGQsBUy7CzO1jK4W01+u3ItmQS+1s4xtcFxdFY8o/q1zoqBlxpe5MQIWN6Qa
-lryiET74gMHE/S5WrPlsq/gehxsdgc6GDUXG4dk8vn6OUMa6wb5wRO3VXGEc67IY
-m4mDFTYiPvLaFOxtndlUWuCruKcCAwEAAaOBpzCBpDAMBgNVHRMEBTADAQH/MB0G
-A1UdDgQWBBSDkIaYhLVZTwyLNTetNB2qV0gkVDBoBgNVHSMEYTBfgBSDkIaYhLVZ
-TwyLNTetNB2qV0gkVKFEpEIwQDELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFByb3Rv
-blZQTiBBRzEaMBgGA1UEAxMRUHJvdG9uVlBOIFJvb3QgQ0GCAQEwCwYDVR0PBAQD
-AgEGMA0GCSqGSIb3DQEBDQUAA4ICAQCYr7LpvnfZXBCxVIVc2ea1fjxQ6vkTj0zM
-htFs3qfeXpMRf+g1NAh4vv1UIwLsczilMt87SjpJ25pZPyS3O+/VlI9ceZMvtGXd
-MGfXhTDp//zRoL1cbzSHee9tQlmEm1tKFxB0wfWd/inGRjZxpJCTQh8oc7CTziHZ
-ufS+Jkfpc4Rasr31fl7mHhJahF1j/ka/OOWmFbiHBNjzmNWPQInJm+0ygFqij5qs
-51OEvubR8yh5Mdq4TNuWhFuTxpqoJ87VKaSOx/Aefca44Etwcj4gHb7LThidw/ky
-zysZiWjyrbfX/31RX7QanKiMk2RDtgZaWi/lMfsl5O+6E2lJ1vo4xv9pW8225B5X
-eAeXHCfjV/vrrCFqeCprNF6a3Tn/LX6VNy3jbeC+167QagBOaoDA01XPOx7Odhsb
-Gd7cJ5VkgyycZgLnT9zrChgwjx59JQosFEG1DsaAgHfpEl/N3YPJh68N7fwN41Cj
-zsk39v6iZdfuet/sP7oiP5/gLmA/CIPNhdIYxaojbLjFPkftVjVPn49RqwqzJJPR
-N8BOyb94yhQ7KO4F3IcLT/y/dsWitY0ZH4lCnAVV/v2YjWAWS3OWyC8BFx/Jmc3W
-DK/yPwECUcPgHIeXiRjHnJt0Zcm23O2Q3RphpU+1SO3XixsXpOVOYP6rJIXW9bMZ
-A1gTTlpi7A==
------END CERTIFICATE-----
------BEGIN CERTIFICATE-----
-MIIFszCCA5ugAwIBAgIBBjANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNTE3MDBaFw0yNzAyMTUxNDM4MDBaMEoxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxJDAiBgNVBAMTG1Byb3RvblZQTiBJbnRl
-cm1lZGlhdGUgQ0EgMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANv3
-uwQMFjYOx74taxadhczLbjCTuT73jMz09EqFNv7O7UesXfYJ6kQgYV9YyE86znP4
-xbsswNUZYh+XdZUpOoP6Zu3tR/iiYiuzi6jVYrJ66G89nPqS2mm5dn8Fbb8CRWkJ
-ygm8AdlYkDwYNldhDUrERlQdCRDGsYYg/98dded+5pXnSG8Y/+iuLM6/YYhkUVQe
-Cfq1L6XguSwu8CuvJjIjjE1PptUHa3Hc3tGziVydltKynxWlqb1dJqinGKiBZvYn
-oiV4motpFYwhc3Wd09JLPzeobhD2IAZ2evSatikMWDingEv1EJXpI+V/E2AK3xHK
-Skhw+YZx99tNxCiOu3U5BFAreZR3j2YnZzX1nEv9p02IGaWzzYJPNED0zSO2w07u
-thSmKcxA39VTvs91lptbcV7VTxoJY0SErHIeVS3Scrnr7WvoOTuu3M3SCRqe6oI9
-oJZMOdfNsceBdvG+qlpOFICoBjO53W4BK8KahzTd/PWlBRiVJ3UVv8xXwUDA+o98
-34DXVAobaAHXQtM9jNobqT98FXhZktjOQEA2UORL581ZPxfKeHLRcgWJ5dmPsDBG
-y/L6/qW/yrm6DUDAdN5+q41+gSNEjNBjLBJQFUmDk3l6Qxiu0uEDQ98oFvGHk5US
-2Kbj0OAq1RpiDjHci/536yua9rTC+cxekTM2asdXAgMBAAGjga0wgaowEgYDVR0T
-AQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUJbaTWcIB4t5ETvvhUy5/yQqqGjMwaAYD
-VR0jBGEwX4AUg5CGmIS1WU8MizU3rTQdqldIJFShRKRCMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBggEBMAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQ0FAAOCAgEAAgZ/BIVl+DcK
-OTVJJBy+RZ1E8os11gFaMKy12lAT1XEXDqLAnitvVyQgG5lPZKFQ2wzUR/TCrYKT
-SUZWdYaJIXkRWAU0aCDZ2I81T0OMpg9aS7xdxgHCGWOwwes8GhjtvQad9GJ8mUZH
-GyzfMaGG6fAZrgHnlOb4OIoqhBWYla6D2bpvbKgGkMo5NLAaX/7+U0HcxjjSS9vm
-/3XHTZU4q77pn+lhPWncajnVyMtm1mIZxMioyckR4+scyZse0mYJS6xli/7crH7j
-qScX7c5sWcaN4J63a3+x3uGvzOXjCyoDl9IaeqnxQpi8yc0nsWxIyDalR3uRQ9tJ
-7l/eRxJZ/1Pzz2LRHSQZuqN2ZReWVNTqJ42af8cWWH0fDOEt2468GLeSm08Hvyz0
-lRjn7Tf5hxOJSw4/3oGihvzuTdquJMOi62kThbp7DS3mMaZsfbmDoU3oNDv91bvL
-57z8wm7yRcGEoMsUNnrOZ4SU8dG/souvJM1BDStMLprFEgUbHEY5MjSR4/PLR6j9
-3NZgocfnfk80nBvNtgWVHxW019nuT93WL0/5L5g4UVm0Ay1V6pNkGZCmgNUBaRY4
-2JLzyY8p48OKapR5GnedLTJXJVbdd9GUNzIzm4iVITDH3p/u1g69dITCNXTO9EO5
-sGEYLNPbV49XBnVAm1tUWuoByZAjoWs=
------END CERTIFICATE-----
-</ca>
-
-key-direction 1
-<tls-auth>
-# 2048 bit OpenVPN static key
------BEGIN OpenVPN Static key V1-----
-6acef03f62675b4b1bbd03e53b187727
-423cea742242106cb2916a8a4c829756
-3d22c7e5cef430b1103c6f66eb1fc5b3
-75a672f158e2e2e936c3faa48b035a6d
-e17beaac23b5f03b10b868d53d03521d
-8ba115059da777a60cbfd7b2c9c57472
-78a15b8f6e68a3ef7fd583ec9f398c8b
-d4735dab40cbd1e3c62a822e97489186
-c30a0b48c7c38ea32ceb056d3fa5a710
-e10ccc7a0ddb363b08c3d2777a3395e1
-0c0b6080f56309192ab5aacd4b45f55d
-a61fc77af39bd81a19218a79762c3386
-2df55785075f37d8c71dc8a42097ee43
-344739a0dd48d03025b0450cf1fb5e8c
-aeb893d9a96d1f15519bb3c4dcb40ee3
-16672ea16c012664f8a9f11255518deb
------END OpenVPN Static key V1-----
-</tls-auth>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/tests/certificates/plugin_manager/TestProtonVPN.ovpn
new/protonvpn-nm-lib-3.16.0/tests/certificates/plugin_manager/TestProtonVPN.ovpn
---
old/protonvpn-nm-lib-3.14.0/tests/certificates/plugin_manager/TestProtonVPN.ovpn
2022-10-20 17:13:58.000000000 +0200
+++
new/protonvpn-nm-lib-3.16.0/tests/certificates/plugin_manager/TestProtonVPN.ovpn
1970-01-01 01:00:00.000000000 +0100
@@ -1,146 +0,0 @@
-#
==============================================================================
-# Copyright (c) 2016-2020 Proton Technologies AG (Switzerland)
-# Email: [email protected]
-#
-# The MIT License (MIT)
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
all
-# copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR # OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-#
==============================================================================
-
-client
-dev tun
-proto tcp
-
-remote es.protonvpn.com 443
-remote es.protonvpn.com 5995
-remote es.protonvpn.com 8443
-
-remote-random
-resolv-retry infinite
-nobind
-cipher AES-256-CBC
-auth SHA512
-comp-lzo no
-verb 3
-
-tun-mtu 1500
-tun-mtu-extra 32
-mssfix 1450
-persist-key
-persist-tun
-
-reneg-sec 0
-
-remote-cert-tls server
-auth-user-pass
-pull
-fast-io
-
-
-<ca>
------BEGIN CERTIFICATE-----
-MIIFozCCA4ugAwIBAgIBATANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNDM4MDBaFw0yNzAyMTUxNDM4MDBaMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAt+BsSsZg7+AuqTq7
-vDbPzfygtl9f8fLJqO4amsyOXlI7pquL5IsEZhpWyJIIvYybqS4s1/T7BbvHPLVE
-wlrq8A5DBIXcfuXrBbKoYkmpICGc2u1KYVGOZ9A+PH9z4Tr6OXFfXRnsbZToie8t
-2Xjv/dZDdUDAqeW89I/mXg3k5x08m2nfGCQDm4gCanN1r5MT7ge56z0MkY3FFGCO
-qRwspIEUzu1ZqGSTkG1eQiOYIrdOF5cc7n2APyvBIcfvp/W3cpTOEmEBJ7/14RnX
-nHo0fcx61Inx/6ZxzKkW8BMdGGQF3tF6u2M0FjVN0lLH9S0ul1TgoOS56yEJ34hr
-JSRTqHuar3t/xdCbKFZjyXFZFNsXVvgJu34CNLrHHTGJj9jiUfFnxWQYMo9UNUd4
-a3PPG1HnbG7LAjlvj5JlJ5aqO5gshdnqb9uIQeR2CdzcCJgklwRGCyDT1pm7eoiv
-WV19YBd81vKulLzgPavu3kRRe83yl29It2hwQ9FMs5w6ZV/X6ciTKo3etkX9nBD9
-ZzJPsGQsBUy7CzO1jK4W01+u3ItmQS+1s4xtcFxdFY8o/q1zoqBlxpe5MQIWN6Qa
-lryiET74gMHE/S5WrPlsq/gehxsdgc6GDUXG4dk8vn6OUMa6wb5wRO3VXGEc67IY
-m4mDFTYiPvLaFOxtndlUWuCruKcCAwEAAaOBpzCBpDAMBgNVHRMEBTADAQH/MB0G
-A1UdDgQWBBSDkIaYhLVZTwyLNTetNB2qV0gkVDBoBgNVHSMEYTBfgBSDkIaYhLVZ
-TwyLNTetNB2qV0gkVKFEpEIwQDELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFByb3Rv
-blZQTiBBRzEaMBgGA1UEAxMRUHJvdG9uVlBOIFJvb3QgQ0GCAQEwCwYDVR0PBAQD
-AgEGMA0GCSqGSIb3DQEBDQUAA4ICAQCYr7LpvnfZXBCxVIVc2ea1fjxQ6vkTj0zM
-htFs3qfeXpMRf+g1NAh4vv1UIwLsczilMt87SjpJ25pZPyS3O+/VlI9ceZMvtGXd
-MGfXhTDp//zRoL1cbzSHee9tQlmEm1tKFxB0wfWd/inGRjZxpJCTQh8oc7CTziHZ
-ufS+Jkfpc4Rasr31fl7mHhJahF1j/ka/OOWmFbiHBNjzmNWPQInJm+0ygFqij5qs
-51OEvubR8yh5Mdq4TNuWhFuTxpqoJ87VKaSOx/Aefca44Etwcj4gHb7LThidw/ky
-zysZiWjyrbfX/31RX7QanKiMk2RDtgZaWi/lMfsl5O+6E2lJ1vo4xv9pW8225B5X
-eAeXHCfjV/vrrCFqeCprNF6a3Tn/LX6VNy3jbeC+167QagBOaoDA01XPOx7Odhsb
-Gd7cJ5VkgyycZgLnT9zrChgwjx59JQosFEG1DsaAgHfpEl/N3YPJh68N7fwN41Cj
-zsk39v6iZdfuet/sP7oiP5/gLmA/CIPNhdIYxaojbLjFPkftVjVPn49RqwqzJJPR
-N8BOyb94yhQ7KO4F3IcLT/y/dsWitY0ZH4lCnAVV/v2YjWAWS3OWyC8BFx/Jmc3W
-DK/yPwECUcPgHIeXiRjHnJt0Zcm23O2Q3RphpU+1SO3XixsXpOVOYP6rJIXW9bMZ
-A1gTTlpi7A==
------END CERTIFICATE-----
------BEGIN CERTIFICATE-----
-MIIFszCCA5ugAwIBAgIBBjANBgkqhkiG9w0BAQ0FADBAMQswCQYDVQQGEwJDSDEV
-MBMGA1UEChMMUHJvdG9uVlBOIEFHMRowGAYDVQQDExFQcm90b25WUE4gUm9vdCBD
-QTAeFw0xNzAyMTUxNTE3MDBaFw0yNzAyMTUxNDM4MDBaMEoxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxJDAiBgNVBAMTG1Byb3RvblZQTiBJbnRl
-cm1lZGlhdGUgQ0EgMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANv3
-uwQMFjYOx74taxadhczLbjCTuT73jMz09EqFNv7O7UesXfYJ6kQgYV9YyE86znP4
-xbsswNUZYh+XdZUpOoP6Zu3tR/iiYiuzi6jVYrJ66G89nPqS2mm5dn8Fbb8CRWkJ
-ygm8AdlYkDwYNldhDUrERlQdCRDGsYYg/98dded+5pXnSG8Y/+iuLM6/YYhkUVQe
-Cfq1L6XguSwu8CuvJjIjjE1PptUHa3Hc3tGziVydltKynxWlqb1dJqinGKiBZvYn
-oiV4motpFYwhc3Wd09JLPzeobhD2IAZ2evSatikMWDingEv1EJXpI+V/E2AK3xHK
-Skhw+YZx99tNxCiOu3U5BFAreZR3j2YnZzX1nEv9p02IGaWzzYJPNED0zSO2w07u
-thSmKcxA39VTvs91lptbcV7VTxoJY0SErHIeVS3Scrnr7WvoOTuu3M3SCRqe6oI9
-oJZMOdfNsceBdvG+qlpOFICoBjO53W4BK8KahzTd/PWlBRiVJ3UVv8xXwUDA+o98
-34DXVAobaAHXQtM9jNobqT98FXhZktjOQEA2UORL581ZPxfKeHLRcgWJ5dmPsDBG
-y/L6/qW/yrm6DUDAdN5+q41+gSNEjNBjLBJQFUmDk3l6Qxiu0uEDQ98oFvGHk5US
-2Kbj0OAq1RpiDjHci/536yua9rTC+cxekTM2asdXAgMBAAGjga0wgaowEgYDVR0T
-AQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUJbaTWcIB4t5ETvvhUy5/yQqqGjMwaAYD
-VR0jBGEwX4AUg5CGmIS1WU8MizU3rTQdqldIJFShRKRCMEAxCzAJBgNVBAYTAkNI
-MRUwEwYDVQQKEwxQcm90b25WUE4gQUcxGjAYBgNVBAMTEVByb3RvblZQTiBSb290
-IENBggEBMAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQ0FAAOCAgEAAgZ/BIVl+DcK
-OTVJJBy+RZ1E8os11gFaMKy12lAT1XEXDqLAnitvVyQgG5lPZKFQ2wzUR/TCrYKT
-SUZWdYaJIXkRWAU0aCDZ2I81T0OMpg9aS7xdxgHCGWOwwes8GhjtvQad9GJ8mUZH
-GyzfMaGG6fAZrgHnlOb4OIoqhBWYla6D2bpvbKgGkMo5NLAaX/7+U0HcxjjSS9vm
-/3XHTZU4q77pn+lhPWncajnVyMtm1mIZxMioyckR4+scyZse0mYJS6xli/7crH7j
-qScX7c5sWcaN4J63a3+x3uGvzOXjCyoDl9IaeqnxQpi8yc0nsWxIyDalR3uRQ9tJ
-7l/eRxJZ/1Pzz2LRHSQZuqN2ZReWVNTqJ42af8cWWH0fDOEt2468GLeSm08Hvyz0
-lRjn7Tf5hxOJSw4/3oGihvzuTdquJMOi62kThbp7DS3mMaZsfbmDoU3oNDv91bvL
-57z8wm7yRcGEoMsUNnrOZ4SU8dG/souvJM1BDStMLprFEgUbHEY5MjSR4/PLR6j9
-3NZgocfnfk80nBvNtgWVHxW019nuT93WL0/5L5g4UVm0Ay1V6pNkGZCmgNUBaRY4
-2JLzyY8p48OKapR5GnedLTJXJVbdd9GUNzIzm4iVITDH3p/u1g69dITCNXTO9EO5
-sGEYLNPbV49XBnVAm1tUWuoByZAjoWs=
------END CERTIFICATE-----
-</ca>
-
-key-direction 1
-<tls-auth>
-# 2048 bit OpenVPN static key
------BEGIN OpenVPN Static key V1-----
-6acef03f62675b4b1bbd03e53b187727
-423cea742242106cb2916a8a4c829756
-3d22c7e5cef430b1103c6f66eb1fc5b3
-75a672f158e2e2e936c3faa48b035a6d
-e17beaac23b5f03b10b868d53d03521d
-8ba115059da777a60cbfd7b2c9c57472
-78a15b8f6e68a3ef7fd583ec9f398c8b
-d4735dab40cbd1e3c62a822e97489186
-c30a0b48c7c38ea32ceb056d3fa5a710
-e10ccc7a0ddb363b08c3d2777a3395e1
-0c0b6080f56309192ab5aacd4b45f55d
-a61fc77af39bd81a19218a79762c3386
-2df55785075f37d8c71dc8a42097ee43
-344739a0dd48d03025b0450cf1fb5e8c
-aeb893d9a96d1f15519bb3c4dcb40ee3
-16672ea16c012664f8a9f11255518deb
------END OpenVPN Static key V1-----
-</tls-auth>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/protonvpn-nm-lib-3.14.0/tests/test_default_accounting.py
new/protonvpn-nm-lib-3.16.0/tests/test_default_accounting.py
--- old/protonvpn-nm-lib-3.14.0/tests/test_default_accounting.py
2022-10-20 17:13:58.000000000 +0200
+++ new/protonvpn-nm-lib-3.16.0/tests/test_default_accounting.py
1970-01-01 01:00:00.000000000 +0100
@@ -1,122 +0,0 @@
-import pytest
-from protonvpn_nm_lib.core.environment import ExecutionEnvironment
-env = ExecutionEnvironment()
-accounting = ExecutionEnvironment().accounting
-from protonvpn_nm_lib import exceptions
-
-
-class MockSessionBase:
- def __init__(self):
- self.__delinquent = False
- self.__vpn_tier = 3
- self.__vpn_username = "vpn_username"
- self.__vpn_password = "vpn_password"
-
- def refresh_vpn_data(self):
- pass
-
- @property
- def delinquent(self):
- return self.__delinquent
-
- @delinquent.setter
- def delinquent(self, newavalue):
- self.__delinquent = newavalue
-
- @property
- def max_connections(self):
- return 2
-
- @property
- def vpn_tier(self):
- return self.__vpn_tier
-
- @vpn_tier.setter
- def vpn_tier(self, newvalue):
- self.__vpn_tier = newvalue
-
- @property
- def vpn_username(self):
- return self.__vpn_username
-
- @vpn_username.setter
- def vpn_username(self, newvalue):
- self.__vpn_username = newvalue
-
- @property
- def vpn_password(self):
- return self.__vpn_password
-
- @vpn_password.setter
- def vpn_password(self, newvalue):
- self.__vpn_password = newvalue
-
- def get_sessions(self):
- return []
-
-
-class MockDelinquentSession(MockSessionBase):
- def __init__(self):
- super().__init__()
-
- def refresh_vpn_data(self):
- self.delinquent = True
-
-
-class MockAccountDowngradeSession(MockSessionBase):
- def __init__(self):
- super().__init__()
-
- def refresh_vpn_data(self):
- self.vpn_tier = 0
-
-
-class MockChangedVPNPasswordSession(MockSessionBase):
- def __init__(self):
- super().__init__()
-
- def refresh_vpn_data(self):
- self.vpn_password = "changed_password"
-
-
-class MockChangedVPNUsernameSession(MockSessionBase):
- def __init__(self):
- super().__init__()
-
- def refresh_vpn_data(self):
- self.vpn_username = "changed_username"
-
-
-class MockMaxAmmountOfSessionsReachedSession(MockSessionBase):
- def __init__(self):
- super().__init__()
-
- def get_sessions(self):
- return ["MockSession1", "MockSession2", "MockSession3"]
-
-
-class TestDefaultAccounting:
- def test_delinquent_user(self):
- env.api_session = MockDelinquentSession()
- with pytest.raises(exceptions.AccountIsDelinquentError):
- env.accounting.ensure_accounting_has_expected_values()
-
- def test_account_downgrade(self):
- env.api_session = MockAccountDowngradeSession()
- with pytest.raises(exceptions.AccountWasDowngradedError):
- env.accounting.ensure_accounting_has_expected_values()
-
- def test_changed_vpn_password(self):
- env.api_session = MockChangedVPNPasswordSession()
- with
pytest.raises(exceptions.VPNUsernameOrPasswordHasBeenChangedError):
- env.accounting.ensure_accounting_has_expected_values()
-
- def test_changed_vpn_username(self):
- env.api_session = MockChangedVPNUsernameSession()
- with
pytest.raises(exceptions.VPNUsernameOrPasswordHasBeenChangedError):
- env.accounting.ensure_accounting_has_expected_values()
-
- def test_exceeded_amount_of_concurrent_sessions(self):
- env.api_session = MockMaxAmmountOfSessionsReachedSession()
- with pytest.raises(exceptions.ExceededAmountOfConcurrentSessionsError):
- env.accounting.ensure_accounting_has_expected_values()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/protonvpn-nm-lib-3.14.0/tests/test_dummy.py
new/protonvpn-nm-lib-3.16.0/tests/test_dummy.py
--- old/protonvpn-nm-lib-3.14.0/tests/test_dummy.py 1970-01-01
01:00:00.000000000 +0100
+++ new/protonvpn-nm-lib-3.16.0/tests/test_dummy.py 2023-07-31
17:39:14.000000000 +0200
@@ -0,0 +1,2 @@
+def test_dummy():
+ assert True
\ No newline at end of file