Skip to content

Commit

Permalink
Merge v1.26.3 into community
Browse files Browse the repository at this point in the history
  • Loading branch information
GovernikusAusweisApp2 committed Mar 9, 2023
2 parents a0c0d8d + a55916c commit 3a1f1ec
Show file tree
Hide file tree
Showing 1,760 changed files with 9,843 additions and 6,458 deletions.
3 changes: 0 additions & 3 deletions AUTHORS
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
Copyright (c) 2014-2021 Governikus GmbH & Co. KG


Authors
----------------
André Klitzing
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ if(UNIX AND NOT IOS)
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.15 CACHE STRING "Required macOS version")
endif()

project(AusweisApp2 VERSION 1.26.2 LANGUAGES ${LANGUAGES})
project(AusweisApp2 VERSION 1.26.3 LANGUAGES ${LANGUAGES})

# Set TWEAK if not defined in PROJECT_VERSION above to
# have a valid tweak version without propagating it
Expand Down
2 changes: 1 addition & 1 deletion LICENSE.officially.txt
Original file line number Diff line number Diff line change
Expand Up @@ -350,7 +350,7 @@ Die verwendeten Open-Source-Bibliotheken unterliegen den folgenden Nutzungsbedin

OpenSSL
Lizenz: Apache 2.0
Version: 3.0.7
Version: 3.0.8
Adresse: https://www.openssl.org/

Qt
Expand Down
2 changes: 1 addition & 1 deletion LICENSE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -318,7 +318,7 @@ Die verwendeten Open-Source-Bibliotheken unterliegen den folgenden Nutzungsbedin

OpenSSL
Lizenz: Apache 2.0
Version: 3.0.7
Version: 3.0.8
Adresse: https://www.openssl.org/

Qt
Expand Down
2 changes: 1 addition & 1 deletion cmake/Packaging.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,7 @@ elseif(ANDROID)
endif()
endif()

set(DEPLOY_CMD ${androiddeployqt} --verbose --gradle --input ${ANDROID_DEPLOYMENT_SETTINGS} --output ${CMAKE_INSTALL_PREFIX} ${DEPLOY_CMD_SIGN})
set(DEPLOY_CMD ${androiddeployqt} --verbose --gradle --input ${ANDROID_DEPLOYMENT_SETTINGS} --android-platform ${ANDROID_TARGET_SDK_VERSION} --output ${CMAKE_INSTALL_PREFIX} ${DEPLOY_CMD_SIGN})
set(SOURCE_ANDROID_FILE ${CMAKE_INSTALL_PREFIX}/build/outputs/${ANDROID_FILE_EXT})

if(NOT INTEGRATED_SDK)
Expand Down
2 changes: 1 addition & 1 deletion cmake/android.toolchain.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ READ_REVISION(ANDROID_SDK_REVISION ".*Revision=([0-9|\\.]+)" "${ANDROID_SDK}/cmd
set(CMAKE_ANDROID_NDK_TOOLCHAIN_VERSION clang)
set(CMAKE_SYSTEM_NAME Android)
set(CMAKE_SYSTEM_VERSION 24)
set(ANDROID_TARGET_SDK_VERSION 31)
set(ANDROID_TARGET_SDK_VERSION 33)
set(CMAKE_ANDROID_STL_TYPE c++_shared)

if(NOT CMAKE_ANDROID_ARCH_ABI)
Expand Down
39 changes: 39 additions & 0 deletions cmake/cmd.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,44 @@ function(DEPLOY_NEXUS)
file(REMOVE settings.xml)
endfunction()

function(CHECK_FAILURE_CODES)
file(STRINGS "src/global/FailureCode.h" LINES)
foreach(line ${LINES})
if(line MATCHES "enum class Reason")
set(ENUM_FOUND 1)
continue()
endif()

if(ENUM_FOUND)
if(line MATCHES "{")
continue()
endif()

if(line MATCHES "}")
break()
endif()

string(REGEX REPLACE "//.*" "" line ${line})
string(APPEND SINGLE_LINE ${line})
endif()
endforeach()
string(REGEX REPLACE "/\\*[^(\\*/)]*\\*/" "" SINGLE_LINE ${SINGLE_LINE})
string(REGEX MATCHALL "([a-zA-Z0-9_]+)" FAILURE_CODES ${SINGLE_LINE})

file(GLOB_RECURSE SOURCE_FILES src/*.cpp)
foreach(code ${FAILURE_CODES})
set(COUNTER 0)
foreach(file ${SOURCE_FILES})
file(READ ${file} CONTENT)
string(REGEX MATCHALL "FailureCode::Reason::${code}" USAGE ${CONTENT})
list(LENGTH USAGE OCCURRENCES)
math(EXPR COUNTER ${COUNTER}+${OCCURRENCES})
endforeach()
if(NOT COUNTER EQUAL 1)
message(FATAL_ERROR "${code} is not used excatly one time. Found ${COUNTER}")
endif()
endforeach()
endfunction()

if(NOT CMD)
message(FATAL_ERROR "You need to specify 'CMD'")
Expand All @@ -174,6 +211,8 @@ elseif(CMD STREQUAL "IMPORT_PATCH")
IMPORT_PATCH()
elseif(CMD STREQUAL "DEPLOY_NEXUS")
DEPLOY_NEXUS()
elseif(CMD STREQUAL "CHECK_FAILURE_CODES")
CHECK_FAILURE_CODES()
else()
message(FATAL_ERROR "Unknown CMD: ${CMD}")
endif()
12 changes: 6 additions & 6 deletions cmake/prepare_sonarqube_env.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -13,20 +13,20 @@ message(STATUS "Use PACKAGES_DIR: ${PACKAGES_DIR}")
set(BUILDWRAPPER_ZIP_NAME build-wrapper-linux-x86.zip)
set(BUILDWRAPPER_URL https://sonar.govkg.de/static/cpp/${BUILDWRAPPER_ZIP_NAME})

set(SONARSCANNERCLI_VERSION 4.7.0.2747-linux) # https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/
set(SONARSCANNERCLI_VERSION 4.8.0.2856-linux) # https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/
set(SONARSCANNERCLI_ZIP_NAME sonar-scanner-cli-${SONARSCANNERCLI_VERSION}.zip)
set(SONARSCANNERCLI_URL https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/${SONARSCANNERCLI_ZIP_NAME})
set(SONARSCANNERCLI_HASH 3e121d85a4adb1f30b917d5f3eb897966b59e02c3d6d313a78dcd964193dc963)
set(SONARSCANNERCLI_HASH 45a9a54dfe5f58b554e9b40ad3becbf9871a4eddb1c2892b67cf191cdd891754)

set(DEPENDENCYCHECK_VERSION 7.1.1) # https://github.com/jeremylong/DependencyCheck/releases
set(DEPENDENCYCHECK_VERSION 8.1.0) # https://github.com/jeremylong/DependencyCheck/releases
set(DEPENDENCYCHECK_ZIP_NAME dependency-check-${DEPENDENCYCHECK_VERSION}-release.zip)
set(DEPENDENCYCHECK_URL https://github.com/jeremylong/DependencyCheck/releases/download/v${DEPENDENCYCHECK_VERSION}/${DEPENDENCYCHECK_ZIP_NAME})
set(DEPENDENCYCHECK_HASH 1070591e7ae2b9ed60384f58db489405c68856f544b8d27456eb3b153478ec8f)
set(DEPENDENCYCHECK_HASH a87231139f7a3de8e9fec2fa4353a9b21bd0397a4540fa24e91a8716e9e6e74e)

set(MARIADB_CONNECTOR_VERSION 3.0.4)
set(MARIADB_CONNECTOR_VERSION 3.1.2)
set(MARIADB_CONNECTOR_ZIP_NAME mariadb-java-client-${MARIADB_CONNECTOR_VERSION}.jar)
set(MARIADB_CONNECTOR_URL https://downloads.mariadb.com/Connectors/java/connector-java-${MARIADB_CONNECTOR_VERSION}/${MARIADB_CONNECTOR_ZIP_NAME})
set(MARIADB_CONNECTOR_HASH c8c9eba4f5368e3fdb321e17353446cbf8d36c822ec604841308b1bef950a529)
set(MARIADB_CONNECTOR_HASH aaec1ad348d030a65b25c93c65cdaf472bf8b4b6b314b965e5ba13aec81bc622)

set(SONARQUBETOOLS_DIR ${CMAKE_BINARY_DIR}/sonarqubetools)

Expand Down
4 changes: 2 additions & 2 deletions cmake/tests/openssl.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* \copyright Copyright (c) 2021-2023 Governikus GmbH & Co. KG, Germany
/**
* Copyright (c) 2021-2023 Governikus GmbH & Co. KG, Germany
*/

#include <QSslCipher>
Expand Down
10 changes: 9 additions & 1 deletion docs/installation/README.de.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ alle unterstützten Parameter, die im Anschluss erläutert werden.

.. code-block:: winbatch
msiexec /i AusweisApp2-X.YY.Z.msi /quiet INSTALLDIR="C:\AusweisApp2" SYSTEMSETTINGS=false DESKTOPSHORTCUT=false PROXYSERVICE=false AUTOSTART=false AUTOHIDE=false REMINDTOCLOSE=false ASSISTANT=false TRANSPORTPINREMINDER=false CUSTOMPROXYTYPE="HTTP" CUSTOMPROXYHOST="proxy.example.org" CUSTOMPROXYPORT=1337 UPDATECHECK=false ONSCREENKEYBOARD=true SHUFFLESCREENKEYBOARD=true HISTORY=false ENABLECANALLOWED=true SKIPRIGHTSONCANALLOWED=true LAUNCH=true
msiexec /i AusweisApp2-X.YY.Z.msi /quiet INSTALLDIR="C:\AusweisApp2" SYSTEMSETTINGS=false DESKTOPSHORTCUT=false PROXYSERVICE=false AUTOSTART=false AUTOHIDE=false REMINDTOCLOSE=false ASSISTANT=false TRANSPORTPINREMINDER=false CUSTOMPROXYTYPE="HTTP" CUSTOMPROXYHOST="proxy.example.org" CUSTOMPROXYPORT=1337 UPDATECHECK=false ONSCREENKEYBOARD=true SHUFFLESCREENKEYBOARD=true SECURESCREENKEYBOARD=true HISTORY=false ENABLECANALLOWED=true SKIPRIGHTSONCANALLOWED=true LAUNCH=true
INSTALLDIR
Gibt das Installationsverzeichnis an. Ohne Angabe wird der Ordner
Expand Down Expand Up @@ -113,6 +113,11 @@ SHUFFLESCREENKEYBOARD
Durch Setzen von SHUFFLESCREENKEYBOARD auf false oder true kann die zufällige Anordnung
deaktiviert bzw. aktiviert werden. Der Benutzer kann diese Einstellung anpassen.

SECURESCREENKEYBOARD
Ist die Bildschirmtastatur aktiviert, kann die Animation der Zifferntasten deaktiviert
werden. Durch Setzen von SECURESCREENKEYBOARD auf false oder true kann die Animation
aktiviert bzw. deaktiviert werden. Der Benutzer kann diese Einstellung anpassen.

HISTORY
Jede Selbstauskunft oder Authentisierung wird im Verlauf gespeichert. Dabei
werden jedoch keine persönlichen Daten gespeichert, sondern nur der Zeitpunkt,
Expand Down Expand Up @@ -184,6 +189,8 @@ dargestellt:
<true/>
<key>shuffleScreenKeyboard</key>
<true/>
<key>visualPrivacy</key>
<true/>
<key>history.enable</key>
<false/>
<key>enableCanAllowed</key>
Expand All @@ -210,6 +217,7 @@ customProxyHost CUSTOMPROXYHOST
autoUpdateCheck UPDATECHECK
keylessPassword ONSCREENKEYBOARD
shuffleScreenKeyboard SHUFFLESCREENKEYBOARD
visualPrivacy SECURESCREENKEYBOARD
history.enable HISTORY
enableCanAllowed ENABLECANALLOWED
skipRightsOnCanAllowed SKIPRIGHTSONCANALLOWED
Expand Down
10 changes: 9 additions & 1 deletion docs/installation/README.en.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ contains all supported arguments, which are explained below.

.. code-block:: winbatch
msiexec /i AusweisApp2-X.YY.Z.msi /quiet INSTALLDIR="C:\AusweisApp2" SYSTEMSETTINGS=false DESKTOPSHORTCUT=false PROXYSERVICE=false AUTOSTART=false AUTOHIDE=false REMINDTOCLOSE=false ASSISTANT=false TRANSPORTPINREMINDER=false CUSTOMPROXYTYPE="HTTP" CUSTOMPROXYHOST="proxy.example.org" CUSTOMPROXYPORT=1337 UPDATECHECK=false ONSCREENKEYBOARD=true SHUFFLESCREENKEYBOARD=true HISTORY=false ENABLECANALLOWED=true SKIPRIGHTSONCANALLOWED=true LAUNCH=true
msiexec /i AusweisApp2-X.YY.Z.msi /quiet INSTALLDIR="C:\AusweisApp2" SYSTEMSETTINGS=false DESKTOPSHORTCUT=false PROXYSERVICE=false AUTOSTART=false AUTOHIDE=false REMINDTOCLOSE=false ASSISTANT=false TRANSPORTPINREMINDER=false CUSTOMPROXYTYPE="HTTP" CUSTOMPROXYHOST="proxy.example.org" CUSTOMPROXYPORT=1337 UPDATECHECK=false ONSCREENKEYBOARD=true SHUFFLESCREENKEYBOARD=true SECURESCREENKEYBOARD=true HISTORY=false ENABLECANALLOWED=true SKIPRIGHTSONCANALLOWED=true LAUNCH=true
INSTALLDIR
States the installation directory. If not specified, the folder
Expand Down Expand Up @@ -105,6 +105,11 @@ SHUFFLESCREENKEYBOARD
By setting SHUFFLESCREENKEYBOARD to false or true, the random arrangement can be
deactivated or activated. Users are able to adjust the setting.

SECURESCREENKEYBOARD
If the on-screen keyboard is activated, the animation of the number keys can be
disabled. By setting SECURESCREENKEYBOARD to false or true, the animation can be
activated or deactivated. Users are able to adjust the setting.

HISTORY
Each authentication is saved in the history. No personal data is saved, only the
time of authentication, the provider and the selected fields (without
Expand Down Expand Up @@ -171,6 +176,8 @@ the file must be "com.governikus.AusweisApp2.plist". The content is shown below:
<true/>
<key>shuffleScreenKeyboard</key>
<true/>
<key>visualPrivacy</key>
<true/>
<key>history.enable</key>
<false/>
<key>enableCanAllowed</key>
Expand All @@ -196,6 +203,7 @@ customProxyHost CUSTOMPROXYHOST
autoUpdateCheck UPDATECHECK
keylessPassword ONSCREENKEYBOARD
shuffleScreenKeyboard SHUFFLESCREENKEYBOARD
visualPrivacy SECURESCREENKEYBOARD
history.enable HISTORY
enableCanAllowed ENABLECANALLOWED
skipRightsOnCanAllowed SKIPRIGHTSONCANALLOWED
Expand Down
32 changes: 32 additions & 0 deletions docs/releasenotes/1.26.3.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
AusweisApp2 1.26.3
^^^^^^^^^^^^^^^^^^

**Releasedatum:** 9. März 2023


Anwender
""""""""
- Erweiterung der Hilfs- und Erklärungstexte.

- Verbesserungen in der Diagnose.

- Korrektur eines Fehlers beim NFC-Dialog von iOS.

- Verbesserung der Barrierefreiheit bei der Eingabe von
PIN, CAN und PUK.


Entwickler
""""""""""
- Einführung von eindeutigen FailureCodes im SDK.

- Ergänzung der Umgebungsvariable AUSWEISAPP2_AUTOMATIC_DEVELOPERMODE
im vollautomatischen SDK.

- Korrektur einer falschen Anzeige des Fortschritts im SDK für iOS.

- Ergänzung von SECURESCREENKEYBOARD bei der Firmeninstallation.

- Anhebung des TargetSDKs auf 33 im SDK für Android.

- Aktualisierung von OpenSSL auf die Version 3.0.8.
1 change: 1 addition & 0 deletions docs/releasenotes/announce.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ Mit der Version 1.28.0 der AusweisApp2 wird die Unterstützung
folgender Systeme und Funktionen eingestellt.

- macOS Catalina 10.15
- Online-Hilfe


Mit der Version 1.24.0 der AusweisApp2 wurde die Unterstützung
Expand Down
5 changes: 5 additions & 0 deletions docs/releasenotes/issues.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,11 @@ Windows / macOS
- Die visuelle Hervorhebung des aktiven Elements wird an einigen Stellen
fälschlicherwiese auch aktiviert, wenn die Maus benutzt wurde.

- Unter macOS werden im System hinterlegte Proxy-Server nicht erkannt und
damit auch nicht automatisch verwendet. Um manuell einen Proxy-Server in
der AusweisApp2 zu hinterlegen beachten Sie die Anleitung zur Installation
in Firmennetzwerken.

Android / iOS
"""""""""""""

Expand Down
22 changes: 11 additions & 11 deletions docs/releasenotes/support.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,19 +54,19 @@ und sollte daher mit allen marktüblichen Browsern verwendet werden können.
Im Rahmen der Qualitätssicherung werden die folgenden Browserversionen
getestet.

- Chrome 109
- Chrome 110

- Firefox 108
- Firefox 110

- Safari 16.1 (macOS)
- Safari 16.3 (macOS)

- Edge 109
- Edge 110



Kartenleser
~~~~~~~~~~~
Alle Kartenleser, die die Onlineausweisfunktionalität unterstützen und nach
Alle Kartenleser, die die Online-Ausweisfunktion unterstützen und nach
BSI TR-03119 zertifiziert sind. Details hierzu befinden sich auf der Homepage
des BSI unter "Nach Technischen Richtlinien zertifizierte Produkte".

Expand Down Expand Up @@ -96,7 +96,7 @@ Zusätzlich werden folgende nicht zertifizierte Kartenleser getestet.
Aktuelle Informationen zu Kartenlesern finden Sie auf unserer Webseite:
https://www.ausweisapp.bund.de/aa2/cardreader

Alle NFC-fähigen Smartphones bzw. Tablets, die die Onlineausweisfunktionalität
Alle NFC-fähigen Smartphones bzw. Tablets, die die Online-Ausweisfunktion
unterstützen, können als Kartenleser verwendet werden.
Dabei ist es notwendig die mobile AusweisApp2 auf dem jeweiligen Smartphone
zu installieren und zu starten.
Expand All @@ -118,18 +118,18 @@ Im mobilen Umfeld ist die Funktionalität jedoch abhängig von der vom
Anbieter umgesetzten Aktivierung. Daher empfehlen wir einen der
folgenden Browser zu verwenden.

- Chrome 109 (iOS/Android)
- Chrome 110 (iOS/Android)

- Firefox 108 (iOS/Android)
- Firefox 110 (iOS/Android)

- Samsung Internet 19 (Android)
- Samsung Internet 20 (Android)

- Safari 16.1 (iOS)
- Safari 16.3 (iOS)


Kartenleser
~~~~~~~~~~~
Alle NFC-fähigen Smartphones bzw. Tablets, die die Onlineausweisfunktionalität
Alle NFC-fähigen Smartphones bzw. Tablets, die die Online-Ausweisfunktion
unterstützen. Details hierzu befinden sich auf der Homepage:
https://www.ausweisapp.bund.de/aa2/mobile-devices

Expand Down
8 changes: 5 additions & 3 deletions docs/sdk/commands.rst
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,8 @@ The AusweisApp2 will send a :ref:`reader` message as an answer.
.. _get_reader_list:

GET_READER_LIST
^^^^^^^^^^^^^^^
Returns information about all connected readers.
Expand Down Expand Up @@ -164,8 +166,8 @@ Command :ref:`interrupt` allows to stop the dialog manually, if needed.
URL to the TcToken. This is equal to the desktop style activation URL.
*(http:https://127.0.0.1:24727/eID-Client?tcTokenURL=)*

- **developerMode**: True to enable "Developer Mode" for test cards according to BSI TR-03124-1,
otherwise false. (optional, default: false)
- **developerMode**: True to enable "Developer Mode" for test cards and disable some security
checks according to BSI TR-03124-1, otherwise false. (optional, default: false)

- **handleInterrupt**: True to automatically handle system dialog on iOS, otherwise false.
:ref:`api_level` v1 only. (optional, default: false)
Expand Down Expand Up @@ -434,7 +436,7 @@ ACCEPT
Accept the current state.

If the AusweisApp2 will send the message :ref:`access_rights` the user
needs to **accept** or **deny**. So the workflow is paused until
needs to **accept** or **cancel**. So the workflow is paused until
your application sends this command to accept the requested information.

If the user does not accept the requested information your application
Expand Down
7 changes: 7 additions & 0 deletions docs/sdk/desktop.rst
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,9 @@ Automatic
.. versionadded:: 1.24.0
Mode "automatic" added.

.. versionadded:: 1.26.3
Variable "AUSWEISAPP2_AUTOMATIC_DEVELOPERMODE" added.

You can enable an automatic authentication with the automatic plugin by providing the
commandline parameter ``--ui automatic``.

Expand All @@ -91,6 +94,10 @@ refuses a PIN, CAN or PUK the AusweisApp2 will cancel the whole workflow.
Also the workflow will be canceled if the card reader is not a basic reader as it
is not possible to automatically enter the values.

The **developerMode** (like in :ref:`run_auth`) can be enabled with the environment
variable ``AUSWEISAPP2_AUTOMATIC_DEVELOPERMODE``.
This will be evaluated if the automatic plugin takes control over the workflow.


.. note::
It is possible to pass multiple plugins to the AusweisApp2, e.g.: ``--ui websocket --ui automatic``.
Expand Down
10 changes: 0 additions & 10 deletions docs/sdk/intro.rst
Original file line number Diff line number Diff line change
Expand Up @@ -49,13 +49,3 @@ show a possible communication.
`TR-03124`_, part 1: Specifications

.. _TR-03124: https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/TechnischeRichtlinien/TR03124/TR-03124-1.pdf


Recommended
-----------
The SDK uses JSON as the communication protocol.
It is recommended to use an existing library for this.

- **Java**: `Google GSON <https://github.com/google/gson>`_

- **C++**: `JsonCPP <https://github.com/open-source-parsers/jsoncpp>`_
Loading

0 comments on commit 3a1f1ec

Please sign in to comment.