summaryrefslogtreecommitdiff
path: root/implementation/configuration/include/internal_android.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'implementation/configuration/include/internal_android.hpp')
-rw-r--r--implementation/configuration/include/internal_android.hpp142
1 files changed, 34 insertions, 108 deletions
diff --git a/implementation/configuration/include/internal_android.hpp b/implementation/configuration/include/internal_android.hpp
index 8ecd2b5..1efa0fa 100644
--- a/implementation/configuration/include/internal_android.hpp
+++ b/implementation/configuration/include/internal_android.hpp
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2017 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
+// Copyright (C) 2014-2021 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
@@ -8,7 +8,10 @@
#include <cstdint>
#include <limits>
+#include <memory>
+
#include <vsomeip/primitive_types.hpp>
+#include <vsomeip/structured_types.hpp>
#define VSOMEIP_ENV_APPLICATION_NAME "VSOMEIP_APPLICATION_NAME"
#define VSOMEIP_ENV_CONFIGURATION "VSOMEIP_CONFIGURATION"
@@ -17,33 +20,41 @@
#define VSOMEIP_ENV_MANDATORY_CONFIGURATION_FILES "VSOMEIP_MANDATORY_CONFIGURATION_FILES"
#define VSOMEIP_ENV_LOAD_PLUGINS "VSOMEIP_LOAD_PLUGINS"
#define VSOMEIP_ENV_CLIENTSIDELOGGING "VSOMEIP_CLIENTSIDELOGGING"
-#define VSOMEIP_ENV_BASE_PATH "VSOMEIP_BASE_PATH"
-#define VSOMEIP_DEFAULT_CONFIGURATION_FILE "/vendor/etc/vsomeip.json"
+#define VSOMEIP_DEFAULT_CONFIGURATION_FILE "/vendor/run/etc/vsomeip.json"
#define VSOMEIP_LOCAL_CONFIGURATION_FILE "./vsomeip.json"
-#define VSOMEIP_MANDATORY_CONFIGURATION_FILES "vsomeip_std.json,vsomeip_app.json,vsomeip_plc.json,vsomeip_log.json,vsomeip_security.json,vsomeip_whitelist.json"
+#define VSOMEIP_MANDATORY_CONFIGURATION_FILES "vsomeip_std.json,vsomeip_app.json,vsomeip_plc.json,vsomeip_log.json,vsomeip_security.json,vsomeip_whitelist.json,vsomeip_policy_extensions.json"
-#define VSOMEIP_DEFAULT_CONFIGURATION_FOLDER "/vendor/etc/vsomeip"
+#define VSOMEIP_DEFAULT_CONFIGURATION_FOLDER "/vendor/run/etc/vsomeip"
#define VSOMEIP_DEBUG_CONFIGURATION_FOLDER "/var/opt/public/sin/vsomeip/"
#define VSOMEIP_LOCAL_CONFIGURATION_FOLDER "./vsomeip"
-#define VSOMEIP_BASE_PATH "/storage/"
+// VSOMEIP_BASE_PATH should be specified in Android.bp or/and Android.mk file via c/c++ compiler flags.
+// #define VSOMEIP_BASE_PATH "/storage/"
+
+#define VSOMEIP_ROUTING_HOST_PORT_DEFAULT 31490
+
+#define VSOMEIP_CFG_LIBRARY "libvsomeip_cfg.so"
-#define VSOMEIP_CFG_LIBRARY "libvsomeip3-cfg.so"
+#define VSOMEIP_SD_LIBRARY "libvsomeip_sd.so"
-#define VSOMEIP_SD_LIBRARY "libvsomeip3-sd.so"
+#define VSOMEIP_E2E_LIBRARY "libvsomeip_e2e.so"
-#define VSOMEIP_E2E_LIBRARY "libvsomeip3-e2e.so"
+#define VSOMEIP_SEC_LIBRARY "libvsomeip_sec.so"
+#define VSOMEIP_ROUTING "vsomeipd"
#define VSOMEIP_ROUTING_CLIENT 0
+#define VSOMEIP_ROUTING_INFO_SIZE_INIT 256
#define VSOMEIP_CLIENT_UNSET 0xFFFF
#define VSOMEIP_UNICAST_ADDRESS "127.0.0.1"
#define VSOMEIP_NETMASK "255.255.255.0"
+#define VSOMEIP_PREFIX 24
#define VSOMEIP_DEFAULT_CONNECT_TIMEOUT 100
#define VSOMEIP_MAX_CONNECT_TIMEOUT 1600
+#define VSOMEIP_DEFAULT_CONNECTING_TIMEOUT 100
#define VSOMEIP_DEFAULT_FLUSH_TIMEOUT 1000
#define VSOMEIP_DEFAULT_SHUTDOWN_TIMEOUT 5000
@@ -54,6 +65,8 @@
#define VSOMEIP_MAX_TCP_RESTART_ABORTS 5
#define VSOMEIP_MAX_TCP_SENT_WAIT_TIME 10000
+#define VSOMEIP_TP_MAX_SEGMENT_LENGTH_DEFAULT 1392
+
#define VSOMEIP_DEFAULT_BUFFER_SHRINK_THRESHOLD 5
#define VSOMEIP_DEFAULT_WATCHDOG_TIMEOUT 5000
@@ -76,90 +89,10 @@
#define VSOMEIP_MAX_WAIT_SENT 5
-#define VSOMEIP_COMMAND_HEADER_SIZE 7
-
-#define VSOMEIP_COMMAND_TYPE_POS 0
-#define VSOMEIP_COMMAND_CLIENT_POS 1
-#define VSOMEIP_COMMAND_SIZE_POS_MIN 3
-#define VSOMEIP_COMMAND_SIZE_POS_MAX 6
-#define VSOMEIP_COMMAND_PAYLOAD_POS 7
-
-#define VSOMEIP_ASSIGN_CLIENT 0x00
-#define VSOMEIP_ASSIGN_CLIENT_ACK 0x01
-#define VSOMEIP_REGISTER_APPLICATION 0x02
-#define VSOMEIP_DEREGISTER_APPLICATION 0x03
-#define VSOMEIP_APPLICATION_LOST 0x04
-#define VSOMEIP_ROUTING_INFO 0x05
-#define VSOMEIP_REGISTERED_ACK 0x06
-
-#define VSOMEIP_PING 0x0E
-#define VSOMEIP_PONG 0x0F
-
-#define VSOMEIP_OFFER_SERVICE 0x10
-#define VSOMEIP_STOP_OFFER_SERVICE 0x11
-#define VSOMEIP_SUBSCRIBE 0x12
-#define VSOMEIP_UNSUBSCRIBE 0x13
-#define VSOMEIP_REQUEST_SERVICE 0x14
-#define VSOMEIP_RELEASE_SERVICE 0x15
-#define VSOMEIP_SUBSCRIBE_NACK 0x16
-#define VSOMEIP_SUBSCRIBE_ACK 0x17
-
-#define VSOMEIP_SEND 0x18
-#define VSOMEIP_NOTIFY 0x19
-#define VSOMEIP_NOTIFY_ONE 0x1A
-
-#define VSOMEIP_REGISTER_EVENT 0x1B
-#define VSOMEIP_UNREGISTER_EVENT 0x1C
-#define VSOMEIP_ID_RESPONSE 0x1D
-#define VSOMEIP_ID_REQUEST 0x1E
-#define VSOMEIP_OFFERED_SERVICES_REQUEST 0x1F
-#define VSOMEIP_OFFERED_SERVICES_RESPONSE 0x20
-#define VSOMEIP_UNSUBSCRIBE_ACK 0x21
-#define VSOMEIP_RESEND_PROVIDED_EVENTS 0x22
-
-#define VSOMEIP_UPDATE_SECURITY_POLICY 0x23
-#define VSOMEIP_UPDATE_SECURITY_POLICY_RESPONSE 0x24
-#define VSOMEIP_REMOVE_SECURITY_POLICY 0x25
-#define VSOMEIP_REMOVE_SECURITY_POLICY_RESPONSE 0x26
-#define VSOMEIP_UPDATE_SECURITY_CREDENTIALS 0x27
-#define VSOMEIP_DISTRIBUTE_SECURITY_POLICIES 0x28
-#define VSOMEIP_UPDATE_SECURITY_POLICY_INT 0x29
-#define VSOMEIP_EXPIRED_SUBSCRIPTION 0x2A
-
-#define VSOMEIP_SUSPEND 0x30
-
-#define VSOMEIP_SEND_COMMAND_SIZE 13
-#define VSOMEIP_SEND_COMMAND_INSTANCE_POS_MIN 7
-#define VSOMEIP_SEND_COMMAND_INSTANCE_POS_MAX 8
-#define VSOMEIP_SEND_COMMAND_RELIABLE_POS 9
-#define VSOMEIP_SEND_COMMAND_CHECK_STATUS_POS 10
-#define VSOMEIP_SEND_COMMAND_DST_CLIENT_POS_MIN 11
-#define VSOMEIP_SEND_COMMAND_DST_CLIENT_POS_MAX 12
-#define VSOMEIP_SEND_COMMAND_PAYLOAD_POS 13
-
-#define VSOMEIP_ASSIGN_CLIENT_ACK_COMMAND_SIZE 9
-#define VSOMEIP_OFFER_SERVICE_COMMAND_SIZE 16
-#define VSOMEIP_REQUEST_SERVICE_COMMAND_SIZE 16
-#define VSOMEIP_RELEASE_SERVICE_COMMAND_SIZE 11
-#define VSOMEIP_STOP_OFFER_SERVICE_COMMAND_SIZE 16
-#define VSOMEIP_SUBSCRIBE_COMMAND_SIZE 18
-#define VSOMEIP_SUBSCRIBE_ACK_COMMAND_SIZE 19
-#define VSOMEIP_SUBSCRIBE_NACK_COMMAND_SIZE 19
-#define VSOMEIP_UNSUBSCRIBE_COMMAND_SIZE 17
-#define VSOMEIP_UNSUBSCRIBE_ACK_COMMAND_SIZE 15
-#define VSOMEIP_REGISTER_EVENT_COMMAND_SIZE 16
-#define VSOMEIP_UNREGISTER_EVENT_COMMAND_SIZE 14
-#define VSOMEIP_OFFERED_SERVICES_COMMAND_SIZE 8
-#define VSOMEIP_RESEND_PROVIDED_EVENTS_COMMAND_SIZE 11
-#define VSOMEIP_REMOVE_SECURITY_POLICY_COMMAND_SIZE 19
-#define VSOMEIP_UPDATE_SECURITY_POLICY_RESPONSE_COMMAND_SIZE 11
-#define VSOMEIP_REMOVE_SECURITY_POLICY_RESPONSE_COMMAND_SIZE 11
-#define VSOMEIP_PING_COMMAND_SIZE 7
-#define VSOMEIP_PONG_COMMAND_SIZE 7
-#define VSOMEIP_REGISTER_APPLICATION_COMMAND_SIZE 7
-#define VSOMEIP_DEREGISTER_APPLICATION_COMMAND_SIZE 7
-#define VSOMEIP_REGISTERED_ACK_COMMAND_SIZE 7
-#define VSOMEIP_EXPIRED_SUBSCRIPTION_COMMAND_SIZE 17
+#define VSOMEIP_LOCAL_CLIENT_ENDPOINT_RECV_BUFFER_SIZE 19
+
+#define VSOMEIP_MINIMUM_CHECK_TTL_TIMEOUT 100
+#define VSOMEIP_SETSOCKOPT_TIMEOUT_US 500000 // microseconds
#include <pthread.h>
@@ -180,19 +113,6 @@ typedef enum {
RIE_DEL_CLIENT = 0x3,
} routing_info_entry_e;
-struct service_data_t {
- service_t service_;
- instance_t instance_;
- major_version_t major_;
- minor_version_t minor_;
-
- bool operator<(const service_data_t &_other) const {
- return (service_ < _other.service_
- || (service_ == _other.service_
- && instance_ < _other.instance_));
- }
-};
-
typedef enum {
SUBSCRIPTION_ACKNOWLEDGED,
SUBSCRIPTION_NOT_ACKNOWLEDGED,
@@ -211,8 +131,6 @@ const std::uint32_t MAX_RECONNECTS_UNLIMITED = (std::numeric_limits<std::uint32_
const std::uint32_t ANY_UID = 0xFFFFFFFF;
const std::uint32_t ANY_GID = 0xFFFFFFFF;
-typedef std::pair<std::uint32_t, std::uint32_t> credentials_t;
-
enum class port_type_e {
PT_OPTIONAL,
PT_SECURE,
@@ -220,6 +138,14 @@ enum class port_type_e {
PT_UNKNOWN
};
+typedef std::map<service_t,
+ std::map<instance_t,
+ std::map<event_t,
+ std::shared_ptr<debounce_filter_t>
+ >
+ >
+> debounce_configuration_t;
+
typedef uint8_t partition_id_t;
const partition_id_t VSOMEIP_DEFAULT_PARTITION_ID = 0;