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 <mc...@suse.com>
+
+- 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 <alexandre.vice...@suse.com>
+
+- 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 
mc...@suse.com
+# 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 <shau...@gmail.com>
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="cont...@protonvpn.com",

++++++ 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: g...@github.com: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: g...@github.com: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 <opensou...@proton.me>
 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 <opensou...@proton.me>  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 <opensou...@proton.me>  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 <opensou...@proton.me> 3.16.0-1
+- Fix: Connectivity issues if protonstatus.com is down
+
+* Mon Jul 31 2023 Proton Technologies AG <opensou...@proton.me> 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 <opensou...@proton.me> 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: cont...@protonvpn.com
-#
-# 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: cont...@protonvpn.com
-#
-# 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: cont...@protonvpn.com
-#
-# 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: cont...@protonvpn.com
-#
-# 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: cont...@protonvpn.com
-#
-# 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: cont...@protonvpn.com
-#
-# 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

Reply via email to