Skip to content

Commit

Permalink
Add revision: v1.22.3
Browse files Browse the repository at this point in the history
  • Loading branch information
GovernikusAusweisApp2 committed Jan 19, 2022
1 parent c84f7fd commit e119c95
Show file tree
Hide file tree
Showing 1,627 changed files with 9,354 additions and 5,181 deletions.
8 changes: 6 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,10 @@ if(POLICY CMP0076)
cmake_policy(SET CMP0076 NEW)
endif()

if(POLICY CMP0092)
cmake_policy(SET CMP0092 NEW)
endif()

# "tools.only" can be defined to disable the normal build and enable
# cmdline "tools" only. For example: "make format" or "make package_source"
if(tools.only)
Expand All @@ -52,7 +56,7 @@ if(UNIX AND NOT IOS)
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.13 CACHE STRING "Required macOS version")
endif()

project(AusweisApp2 VERSION 1.22.2 LANGUAGES ${LANGUAGES})
project(AusweisApp2 VERSION 1.22.3 LANGUAGES ${LANGUAGES})

# Set TWEAK if not defined in PROJECT_VERSION above to
# have a valid tweak version without propagating it
Expand Down Expand Up @@ -132,7 +136,7 @@ set(TEST_DIR ${PROJECT_SOURCE_DIR}/test)
set(DOCS_DIR ${PROJECT_SOURCE_DIR}/docs)
set(RESOURCES_DIR ${PROJECT_SOURCE_DIR}/resources)
set(PACKAGING_DIR ${RESOURCES_DIR}/packaging)
set(COPYRIGHT_TEXT "2014-2021 ${VENDOR}")
set(COPYRIGHT_TEXT "2014-2022 ${VENDOR}")
if(APPLE)
string(REPLACE " \& " " \& " COPYRIGHT_TEXT ${COPYRIGHT_TEXT})
endif()
Expand Down
52 changes: 52 additions & 0 deletions CMakePresets.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
{
"version": 3,
"cmakeMinimumRequired": {
"major": 3,
"minor": 21,
"patch": 0
},
"configurePresets": [
{
"name": "base",
"hidden": true,
"generator": "Ninja",
"binaryDir": "${sourceParentDir}/AusweisApp2-build/${presetName}",
"cacheVariables": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
"CMAKE_CXX_COMPILER_LAUNCHER": "ccache"
}
},
{
"name": "default",
"inherits": "base",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "DEBUG"
}
},
{
"name": "apk",
"inherits": "default",
"toolchainFile": "${sourceDir}/cmake/android.toolchain.cmake"
},
{
"name": "aar",
"inherits": "apk",
"cacheVariables": {
"INTEGRATED_SDK": "ON"
}
}
],
"buildPresets": [
{
"name": "default",
"configurePreset": "default"
}
],
"testPresets": [
{
"name": "default",
"configurePreset": "default",
"output": {"outputOnFailure": true}
}
]
}
39 changes: 28 additions & 11 deletions LICENSE.officially.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,21 @@ Nutzungsbedingungen
Bitte lesen Sie zunächst die Lizenzbestimmungen und deren Ergänzungen für die Überlassung und Nutzung der AusweisApp2 durch. Nachdem Sie diesen zugestimmt haben, können Sie die Installation fortsetzen. Datenschutzrechtliche Hinweise sind unter https://www.ausweisapp.bund.de/datenschutz/ abrufbar.


ÜBERSICHT

A. Lizenzbedingungen
EUPL Lizenztext
Anlage: Kompatible Lizenzen
B. Zusatzvereinbarungen zur AusweisApp2
C. Anhang Lizenztexte verwendeter OpenSource Bibliotheken
OpenSSL license & SSLeay license
LGPL v3
MIT License
Apache License v2

Lizenzbedingungen


A. LIZENZBEDINGUNGEN

Der Quellcode der AusweisApp2 wird unter der EUPL v1.2 bereitgestellt, mit Ausnahme der Bibliothek OpenSSL, die unter der OpenSSL License / SSLeay License lizensiert ist.

Expand Down Expand Up @@ -301,26 +313,27 @@ Anlage



Lizenzergänzungen
B. ZUSATZVEREINBARUNGEN

§ 1 Nutzungsbedingungen
(1) Diese Allgemeine Geschäftsbedingungen (AGB) des Bundes, vertreten durch das Bundesamt für Sicherheit in der Informationstechnik (nachfolgend "Bund") und dem Nutzer gelten für die Überlassung und Nutzung der Software AusweisApp2 (nachfolgend AusweisApp2) und deren neue Versionen, die auf der Grundlage dieser Bedingungen überlassen werden.
(1) Diese Allgemeine Geschäftsbedingungen (AGB) des Bundes, vertreten durch das Bundesministerium des Innern und für Heimat, vertreten durch das Bundesamt für Sicherheit in der Informationstechnik (nachfolgend "Bund") und dem Nutzer gelten für die Überlassung und Nutzung der Software AusweisApp2 (nachfolgend AusweisApp2) und deren neue Versionen, die auf der Grundlage dieser Bedingungen überlassen werden.
(2) "Nutzer" im Sinne dieses Vertrages sind natürliche Personen.
(3) Diese Zusatzvereinbarungen lassen die Rechte und Pflichten aus der EUPL unberührt.

§ 2 Vertragsgegenstand und Unentgeltlichkeit
(1) Die AusweisApp2 wird regelmäßig hinsichtlich ihrer Konformität zu den Technischen Richtlinien des Bundesamtes für Sicherheit in der Informationstechnik [TR-03124-2] zertifiziert sowie hinsichtlich ihrer Nutzerfreundlichkeit [EN ISO 9241 Teil 110 Ergonomie Mensch-System-Integration zur Prüfung der Benutzbarkeit und Funktionalität und Trusted Design Guidelines zur Prüfung der Vertrauenswürdigkeit] und auf Barrierefreiheit [BITV 2.0] überprüft.
(2) Die AusweisApp2 wird in maschinenlesbarer Form unentgeltlich überlassen. Der Quellcode der AusweisApp2 wird ebenfalls unentgeltlich veröffentlicht. Eine Auflistung der verwendeten Open Source-Bestandteile der AusweisApp2 findet sich im Anhang.
(3) Die AusweisApp2 wird von der Governikus GmbH & Co. KG (Governikus) als Erfüllungsgehilfe des Bundes überlassen.

§ 3 Verwendungszweck
Die AusweisApp2 und alle ihre Bestandteile dienen ausschließlich dazu, im Zusammenhang mit der Nutzung der Online-Ausweisfunktion des Personalausweises bzw. des elektronischen Aufenthaltstitels und der Übermittlung der damit verbundenen Daten gemäß den gesetzlichen Vorgaben verwendet zu werden.
Die AusweisApp2 und alle ihre Bestandteile dienen ausschließlich dazu, im Zusammenhang mit der Nutzung der Online-Ausweisfunktion des Personalausweises, des elektronischen Aufenthaltstitels, der eID-Karte für Bürgerinnen und Bürger der EU und des EWR und der Übermittlung der damit verbundenen Daten gemäß den gesetzlichen Vorgaben verwendet zu werden.

§ 4 Pflichten und Obliegenheiten des Nutzers
(1) Der Nutzer verpflichtet sich, die AusweisApp2 entsprechend des in § 3 genannten Verwendungszweckes zu nutzen. Es liegt in seinem Interesse, dass in Verbindung mit der AusweisApp2 genutzte Hard- und Software des Nutzers immer auf dem neuesten Stand der Sicherheitstechnik (System- und Firmware Update, Virenscanner, Firewall usw.) sind.
(2) Es liegt im eigenen Interesse des Nutzers aber auch des Bundes, dass stets nur die neueste Version der AusweisApp2 (siehe § 5) verwendet wird.
§ 4 Empfehlungen zum Einsatz
(1) Es liegt im Interesse des Nutzers, dass in Verbindung mit der AusweisApp2 genutzte Hard- und Software immer auf dem neuesten Stand der Sicherheitstechnik (System- und Firmware Update, Virenscanner, Firewall usw.) sind.
(2) Es liegt im Interesse des Nutzers aber auch des Bundes, dass stets nur die neueste Version der AusweisApp2 (siehe § 5) verwendet wird.

§ 5 Pflege und Support
(1) Der Bund bietet nach eigenem Ermessen und ohne hierzu verpflichtet zu sein für Teile der AusweisApp2 zusätzliche kostenfreie Supportleistungen in Form von Dokumentationen und online Hilfen auf dem AusweisApp2-Portal im Internet unter der Adresse www.ausweisapp.bund.de an, sowie über die Hotline des Herstellers Governikus unter der E-Mail-Adresse: [email protected] und der Tel.-Nr.: +49 421 204 95-995. Auch stellt er verfügbare neue Versionen der AusweisApp2 zur Verfügung. Hieraus erwächst jedoch kein Anspruch auf Mängelbeseitigung, auf Zertifizierung, auf Beibehaltung der Supportleistungen oder der Hotline und auf Überlassung neuer Versionen.
(1) Der Bund bietet nach eigenem Ermessen und ohne hierzu verpflichtet zu sein für Teile der AusweisApp2 zusätzliche kostenfreie Supportleistungen in Form von Dokumentationen und online Hilfen auf dem AusweisApp2-Portal im Internet unter der Adresse www.ausweisapp.bund.de an, sowie über die Hotline des Herstellers Governikus unter der E-Mail-Adresse: [email protected] und der Tel.-Nr.: +49 421 204 95-995. Auch stellt er verfügbare neue Versionen der AusweisApp2 zur Verfügung. Hieraus erwächst jedoch kein Anspruch auf Mängelbeseitigung, auf Zertifizierung, auf Beibehaltung der Supportleistungen oder der Hotline und auf Überlassung neuer Versionen.
(2) Verfügbare neue Versionen der AusweisApp2 können im Internet kostenfrei auf dem AusweisApp2-Portal unter der Adresse www.ausweisapp.bund.de sowie über allgemein zugängliche AppStore heruntergeladen werden.
(3) Eventuelle Mängel der AusweisApp2 werden grundsätzlich dadurch behoben, dass der Bund jeweils eine neue Version der AusweisApp2 zum Herunterladen zur Verfügung stellt (siehe § 5 Absatz 1). Eine Pflicht zur Bereitstellung von neuen Versionen ergibt sich daraus nicht.

Expand All @@ -331,15 +344,15 @@ Die Zeichen AusweisApp2 und die entsprechenden Grafiken sowie das Signet zur Onl
Auf diese Nutzungsbedingungen ist ausschließlich deutsches Recht unter Ausschluss des Übereinkommens der Vereinten Nationen über Verträge über den internationalen Warenkauf (CISG) anwendbar.


Anhang
C. ANHANG DER LIZENTEXTE VERWENDETER OPENSOURCE BIBLIOTHEKEN

Ergänzende Lizenzhinweise

Die verwendeten Open-Source-Bibliotheken unterliegen den folgenden Nutzungsbedingungen:

OpenSSL
Lizenz: OpenSSL license & SSLeay license
Version: 1.1.1k
Version: 1.1.1l
Adresse: https://www.openssl.org/

Qt
Expand All @@ -358,11 +371,12 @@ AndroidX Support Library
Adresse: https://developer.android.com/jetpack/androidx


Die Lizenztexte lauten in ihrer originalen Fassung wie folgt:

Die oben genannten Lizenztexte lauten in ihrer originalen Fassung wie folgt:



OpenSSL license & SSLeay license

Copyright (c) 1998-2017 The OpenSSL Project. All rights reserved.

Expand Down Expand Up @@ -658,6 +672,8 @@ permanent authorization for you to choose that version for the Library.



MIT License

Copyright Joyent, Inc. and other Node contributors.

Permission is hereby granted, free of charge, to any person obtaining a copy
Expand Down Expand Up @@ -859,3 +875,4 @@ http:https://www.apache.org/licenses/
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

30 changes: 26 additions & 4 deletions LICENSE.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,22 @@
Lizenzbedingungen
Nutzungsbedingungen

Bitte lesen Sie zunächst die Lizenzbestimmungen und deren Ergänzungen für die Überlassung und Nutzung der AusweisApp2 durch. Nachdem Sie diesen zugestimmt haben, können Sie die Installation fortsetzen. Datenschutzrechtliche Hinweise sind unter https://www.ausweisapp.bund.de/datenschutz/ abrufbar.


ÜBERSICHT

A. Lizenzbedingungen
EUPL Lizenztext
Anlage: Kompatible Lizenzen
B. Anhang Lizenztexte verwendeter OpenSource Bibliotheken
OpenSSL license & SSLeay license
LGPL v3
MIT License
Apache License v2



A. LIZENZBEDINGUNGEN

Der Quellcode der AusweisApp2 wird unter der EUPL v1.2 bereitgestellt, mit Ausnahme der Bibliothek OpenSSL, die unter der OpenSSL License / SSLeay License lizensiert ist.

Expand Down Expand Up @@ -294,15 +312,15 @@ Anlage



Anhang
B. ANHANG DER LIZENTEXTE VERWENDETER OPENSOURCE BIBLIOTHEKEN

Ergänzende Lizenzhinweise

Die verwendeten Open-Source-Bibliotheken unterliegen den folgenden Nutzungsbedingungen:

OpenSSL
Lizenz: OpenSSL license & SSLeay license
Version: 1.1.1k
Version: 1.1.1l
Adresse: https://www.openssl.org/

Qt
Expand All @@ -321,11 +339,12 @@ AndroidX Support Library
Adresse: https://developer.android.com/jetpack/androidx


Die Lizenztexte lauten in ihrer originalen Fassung wie folgt:

Die oben genannten Lizenztexte lauten in ihrer originalen Fassung wie folgt:



OpenSSL license & SSLeay license

Copyright (c) 1998-2017 The OpenSSL Project. All rights reserved.

Expand Down Expand Up @@ -621,6 +640,8 @@ permanent authorization for you to choose that version for the Library.



MIT License

Copyright Joyent, Inc. and other Node contributors.

Permission is hereby granted, free of charge, to any person obtaining a copy
Expand Down Expand Up @@ -822,3 +843,4 @@ http:https://www.apache.org/licenses/
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

2 changes: 1 addition & 1 deletion cmake/Appcast.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ if(MAC OR LINUX OR WIN32)

if(APPCAST_ITEMS)
string(REGEX REPLACE ",$" "" APPCAST_ITEMS "${APPCAST_ITEMS}")
configure_file(${PACKAGING_DIR}/updater/Appcast.json.in ${PROJECT_BINARY_DIR}/Appcast.json @ONLY)
configure_file(${PACKAGING_DIR}/updater/Appcast.json.in ${PROJECT_BINARY_DIR}/AppcastInfo.json @ONLY)
endif()
endif()

Expand Down
44 changes: 38 additions & 6 deletions cmake/CompilerFlags.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ if(QT_VENDOR STREQUAL "Governikus")
add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x051500)
endif()

if(OPENSSL_VERSION VERSION_GREATER_EQUAL "3.0.0")
add_definitions(-DOPENSSL_SUPPRESS_DEPRECATED)
endif()

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
Expand All @@ -43,27 +47,52 @@ if(MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /WX")
endif()
ADD_FLAG(/Qspectre)
ADD_FLAG(/GS)
ADD_FLAG(/DYNAMICBASE)
ADD_FLAG(/NXCOMPAT)
ADD_FLAG(/HIGHENTROPYVA)
ADD_FLAG(/guard:cf)
ADD_FLAG(/Qcf-protection)

if(CMAKE_CXX_COMPILER_LAUNCHER STREQUAL "sccache")
string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
endif()
else()
string(REPLACE "-fexceptions" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
string(REPLACE "-frtti" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wcast-qual -Wshadow")
set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} -g")

if(ANDROID AND CMAKE_ANDROID_ARCH_ABI STREQUAL "arm64-v8a")
set(PREFER_LD bfd CACHE STRING "")
if(ANDROID AND ANDROID_NDK_REVISION VERSION_LESS "22")
if (CMAKE_ANDROID_ARCH_ABI STREQUAL "arm64-v8a")
set(PREFER_LD bfd CACHE STRING "")
else()
set(PREFER_LD gold CACHE STRING "")
endif()
else()
set(PREFER_LD gold CACHE STRING "")
set(PREFER_LD lld CACHE STRING "")
set(FALLBACK_LD -fuse-ld=gold)
endif()

ADD_FLAG(-fuse-ld=${PREFER_LD} VAR CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS USE_SAME_FOR_LINKER USE_LINKER_ONLY)
ADD_FLAG(-fuse-ld=${PREFER_LD} ${FALLBACK_LD} VAR CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS USE_SAME_FOR_LINKER USE_LINKER_ONLY)
ADD_FLAG(-flto VAR CMAKE_EXE_LINKER_FLAGS_RELEASE CMAKE_SHARED_LINKER_FLAGS_RELEASE USE_SAME_FOR_LINKER)

if(WIN32)
ADD_FLAG(-Wl,--dynamicbase VAR CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS USE_SAME_FOR_LINKER)
ADD_FLAG(-Wl,--nxcompat VAR CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS USE_SAME_FOR_LINKER)
ADD_FLAG(-Wl,--high-entropy-va VAR CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS USE_SAME_FOR_LINKER)
endif()

if(NOT CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
ADD_FLAG(-fno-rtti VAR CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_RELWITHDEBINFO CMAKE_CXX_FLAGS_MINSIZEREL)
endif()

ADD_FLAG(-fno-exceptions)
ADD_FLAG(-fstack-protector-strong -fstack-protector)
ADD_FLAG(-fcf-protection)
ADD_FLAG(-fstack-clash-protection)

ADD_FLAG(-Wold-style-cast)
ADD_FLAG(-Wcast-align=strict -Wcast-align)
ADD_FLAG(-Wmost)
Expand All @@ -88,12 +117,15 @@ else()
ADD_FLAG(-Wdate-time)
ADD_FLAG(-Wunused)
ADD_FLAG(-Wunused-template)
ADD_FLAG(-Wuseless-cast)
ADD_FLAG(-Wextra-semi)
ADD_FLAG(-Wextra-semi-stmt)
ADD_FLAG(-Wempty-init-stmt)
ADD_FLAG(-Wno-gnu-zero-variadic-macro-arguments) # Qt (qDebug) is not compatible

if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.14")
ADD_FLAG(-Wextra-semi-stmt)
ADD_FLAG(-Wuseless-cast)
endif()

if(ANDROID OR INTEGRATED_SDK)
set(CMAKE_CXX_VISIBILITY_PRESET hidden)
endif()
Expand Down
2 changes: 1 addition & 1 deletion cmake/DefaultFiles.cmake
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
set(REMOTE_CONFIG_URL_PROD https://appl.governikus-asp.de/ausweisapp2)
set(REMOTE_CONFIG_URL_PROD https://updates.autentapp.de)
if(JENKINS_APPCAST)
set(REMOTE_CONFIG_URL https://ausweisapp-ci.govkg.de/job/${JENKINS_APPCAST}/lastSuccessfulBuild/artifact CACHE STRING "Remote config download URL" FORCE)
else()
Expand Down
5 changes: 5 additions & 0 deletions cmake/Helper.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ function(ADD_FLAG)
endif()
string(REPLACE "-" "_" flagname ${flagname})
string(REPLACE " " "_" flagname ${flagname})
string(REPLACE "," "_" flagname ${flagname})
string(REPLACE ":" "_" flagname ${flagname})

# GCC will ignore unknown warning options when used in the -Wno- form. It will complain
# about it though, if something else goes wrong. To check if this is a warning which can be
Expand Down Expand Up @@ -237,6 +239,9 @@ function(ADD_PLATFORM_LIBRARY _name)
endif()

if(INCOMPATIBLE_QT_COMPILER_FLAGS)
if(CMAKE_VERSION VERSION_LESS "3.14")
message(WARNING "Compiler flags for mocs with 3.13.x and earlier leads to linker errors")
endif()
set_source_files_properties("${_name}_autogen/mocs_compilation.cpp" PROPERTIES COMPILE_OPTIONS ${INCOMPATIBLE_QT_COMPILER_FLAGS})
endif()
endfunction()
Expand Down
2 changes: 1 addition & 1 deletion cmake/Install.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@ elseif(ANDROID)

if(INTEGRATED_SDK)
set(ANDROID_MANIFEST AndroidManifest.xml.aar.in)
foreach(entry network/WifiInfo ui/aidl/AidlBinder activation/intent/AusweisApp2Service)
foreach(entry network/WifiInfo ui/aidl/AidlBinder android/AusweisApp2Service)
set(_java_file "${SRC_DIR}/${entry}.java")
if(NOT EXISTS "${_java_file}")
message(FATAL_ERROR "Cannot find file: ${_java_file}")
Expand Down
Loading

0 comments on commit e119c95

Please sign in to comment.