OFVPN Plugin and Client

OFVPN Plugin and Client

An example project that show how to integrate VPN into Aurora OS which is provided by openfortivpn application.

OFVPN client

An example project that shows how to integrate VPN into Aurora OS which is provided by openfortivpn application.

The main purpose is to demonstrate using a minimum of source code to get a correct VPN plugin with an external configuration file.

The application signing must be made with extended-keys.

Limitations

  • CLI passing of the password, related: NetworkManager-fortisslvpn#12
  • Since openfortivpn has no async control interface (similar to OpenVPN), option skip cert check was temporary added to openfortivpn

Dependencies

  • connman
  • connman-vpn-scripts
  • glib-2.0
  • dbus-1
  • openfortivpn fork
  • jolla-settings as a gui client 4

Terms of Use and Participation

The source code of the project is provided under the license, which allows its use in third-party applications.

The contributor agreement documents the rights granted by contributors of the Open Mobile Platform.

Information about the contributors is specified in the AUTHORS file.

Code of conduct is a current set of rules of the Open Mobile Platform which informs you how we expect the members of the community will interact while contributing and communicating.

Project Structure

ru.auroraos.OFVPN directory contains OFVPN external configurator:

  • ru.auroraos.OFVPN.pro file describes the app subproject structure for the qmake build system.
  • icons directory contains the application icons for different screen resolutions.
  • qml directory contains the QML source code and the UI resources.
    • cover directory contains the application cover implementations.
    • pages directory contains the application pages.
    • types directory contains user QML components which implements some input fields.
    • ru.auroraos.OFVPN.qml file provides the application window implementation.
  • src directory contains the C++ source code.
    • main.cpp file is the application entry point.
  • translations directory contains the UI translation files.
  • ru.auroraos.OFVPN.desktop file defines the display and parameters for launching the application.
  • ru.auroraos.OFVPN.pro file describes the project structure for the qmake build system.
  • rpm directory contains the rpm-package build settings.
  • jolla-settings-controls directory contains QML settings controls files for Aurora OS 3 and Aurora OS 4.
  • jolla-settings-translations directory contains the OFVPN plugin translation files.
  • connman-plugin directory contains subproject with a wrapper of the ConnMan plugin.
    • aurora-ofvpn-vpn.c is the main file with the CONNMAN_PLUGIN_DEFINE macros.
    • clang-format file is a clang-format configuration file from Linux kernel.
  • qml-plugin directory contains the implementation of the OFVPN plugin.

Compatibility

The project is compatible with all the current versions of the Aurora OS.

Screenshots

screenshots

This document in Russian / Перевод этого документа на русский язык