Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vSomeIP 3.5.0 #731

Closed
wants to merge 20 commits into from
Closed
Show file tree
Hide file tree
Changes from 14 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
163 changes: 0 additions & 163 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,169 +9,6 @@
/daemon/CMakeFiles
/examples/CMakeFiles
/implementation/configuration/include/internal.hpp
/test/network_tests/application_tests/application_test.json
/test/network_tests/application_tests/application_test_daemon.json
/test/network_tests/application_tests/application_test_no_dispatch_threads.json
/test/network_tests/application_tests/application_test_no_dispatch_threads_daemon.json
/test/network_tests/big_payload_tests/big_payload_test_local_tcp_client.json
/test/network_tests/big_payload_tests/big_payload_test_local_tcp_client_limited.json
/test/network_tests/big_payload_tests/big_payload_test_local_tcp_client_queue_limited.json
/test/network_tests/big_payload_tests/big_payload_test_local_tcp_client_random.json
/test/network_tests/big_payload_tests/big_payload_test_local_tcp_service.json
/test/network_tests/big_payload_tests/big_payload_test_local_tcp_service_limited.json
/test/network_tests/big_payload_tests/big_payload_test_local_tcp_service_queue_limited.json
/test/network_tests/big_payload_tests/big_payload_test_local_tcp_service_random.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_client.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_service.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_client_random.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_service_random.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_client_limited_general.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_service_limited_general.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_client_queue_limited_general.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_client_queue_limited_specific.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_service_queue_limited_general.json
/test/network_tests/big_payload_tests/big_payload_test_tcp_service_queue_limited_specific.json
/test/network_tests/big_payload_tests/big_payload_test_udp_client.json
/test/network_tests/big_payload_tests/big_payload_test_udp_service.json
/test/network_tests/magic_cookies_tests/magic_cookies_test_client.json
/test/network_tests/magic_cookies_tests/magic_cookies_test_service.json
/test/network_tests/debounce_frequency_tests/debounce_frequency_test_client.json
/test/network_tests/debounce_frequency_tests/debounce_frequency_test_service.json
/test/network_tests/payload_tests/external_local_payload_test_client_external.json
/test/network_tests/payload_tests/external_local_payload_test_client_local.json
/test/network_tests/payload_tests/external_local_payload_test_service.json
/test/network_tests/routing_tests/external_local_routing_test_client_external.json
/test/network_tests/routing_tests/external_local_routing_test_service.json
/test/network_tests/routing_tests/local_routing_test_starter.sh
/test/network_tests/client_id_tests/client_id_test_diff_client_ids_diff_ports_master.json
/test/network_tests/client_id_tests/client_id_test_diff_client_ids_diff_ports_slave.json
/test/network_tests/client_id_tests/client_id_test_diff_client_ids_same_ports_master.json
/test/network_tests/client_id_tests/client_id_test_diff_client_ids_same_ports_slave.json
/test/network_tests/client_id_tests/client_id_test_diff_client_ids_partial_same_ports_master.json
/test/network_tests/client_id_tests/client_id_test_diff_client_ids_partial_same_ports_slave.json
/test/network_tests/client_id_tests/client_id_test_same_client_ids_diff_ports_master.json
/test/network_tests/client_id_tests/client_id_test_same_client_ids_diff_ports_slave.json
/test/network_tests/client_id_tests/client_id_test_same_client_ids_same_ports_master.json
/test/network_tests/client_id_tests/client_id_test_same_client_ids_same_ports_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_master.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_master.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_partial_same_ports_master.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_partial_same_ports_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_same_client_ids_diff_ports_master.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_same_client_ids_diff_ports_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_same_client_ids_same_ports_master.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_same_client_ids_same_ports_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_one_event_two_eventgroups_master.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_one_event_two_eventgroups_udp_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_one_event_two_eventgroups_tcp_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_master_udp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_slave_udp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_master_udp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_slave_udp.json
/test/network_tests/subscribe_notify_one_tests/subscribe_notify_one_test_diff_client_ids_diff_ports_master.json
/test/network_tests/subscribe_notify_one_tests/subscribe_notify_one_test_diff_client_ids_diff_ports_slave.json
/test/network_tests/subscribe_notify_one_tests/subscribe_notify_one_test_diff_client_ids_diff_ports_master_tcp.json
/test/network_tests/subscribe_notify_one_tests/subscribe_notify_one_test_diff_client_ids_diff_ports_slave_tcp.json
/test/network_tests/subscribe_notify_one_tests/subscribe_notify_one_test_diff_client_ids_diff_ports_master_udp.json
/test/network_tests/subscribe_notify_one_tests/subscribe_notify_one_test_diff_client_ids_diff_ports_slave_udp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_same_service_id_master_udp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_same_service_id_slave_udp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_master_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_slave_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_master_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_slave_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_autoconfig_master_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_autoconfig_slave_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_master_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_master_tcp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_master_udp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_same_service_id_master_udp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_same_service_id_slave_udp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_slave_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_slave_tcp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_slave_udp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_partial_same_ports_master_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_partial_same_ports_slave_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_master_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_master_tcp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_master_udp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_slave_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_slave_tcp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_same_ports_slave_udp_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_one_event_two_eventgroups_master_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_one_event_two_eventgroups_tcp_slave_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_one_event_two_eventgroups_udp_slave_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_same_client_ids_diff_ports_master_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_same_client_ids_diff_ports_slave_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_same_client_ids_same_ports_master_local_tcp.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_same_client_ids_same_ports_slave_local_tcp.json
/test/network_tests/cpu_load_tests/cpu_load_test_client_slave.json
/test/network_tests/cpu_load_tests/cpu_load_test_client_master.json
/test/network_tests/cpu_load_tests/cpu_load_test_service_slave.json
/test/network_tests/cpu_load_tests/cpu_load_test_service_master.json
/tools/CMakeFiles
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_diff_ports_master.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_diff_ports_same_service_id_master.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_diff_ports_same_service_id_slave.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_diff_ports_slave.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_partial_same_ports_master.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_partial_same_ports_slave.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_same_ports_master.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_same_ports_slave.json
/test/network_tests/initial_event_tests/initial_event_test_same_client_ids_diff_ports_master.json
/test/network_tests/initial_event_tests/initial_event_test_same_client_ids_diff_ports_slave.json
/test/network_tests/initial_event_tests/initial_event_test_same_client_ids_same_ports_master.json
/test/network_tests/initial_event_tests/initial_event_test_same_client_ids_same_ports_slave.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_diff_ports_master_tcp.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_diff_ports_slave_tcp.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_same_ports_master_tcp.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_same_ports_slave_tcp.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_diff_ports_master_udp.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_diff_ports_slave_udp.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_same_ports_master_udp.json
/test/network_tests/initial_event_tests/initial_event_test_diff_client_ids_same_ports_slave_udp.json
/test/network_tests/offer_tests/offer_test_external_master.json
/test/network_tests/offer_tests/offer_test_external_slave.json
/test/network_tests/offer_tests/offer_test_external_master_starter.sh
/test/network_tests/offer_tests/offer_test_big_sd_msg_master_starter.sh
/test/network_tests/offer_tests/offer_test_big_sd_msg_master.json
/test/network_tests/offer_tests/offer_test_big_sd_msg_slave.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_autoconfig_master.json
/test/network_tests/subscribe_notify_tests/subscribe_notify_test_diff_client_ids_diff_ports_autoconfig_slave.json
/test/network_tests/security_tests/security_test_config_client_external_allow.json
/test/network_tests/security_tests/security_test_config_client_external_deny.json
/test/network_tests/security_tests/security_test_config_service_external_allow.json
/test/network_tests/security_tests/security_test_config_service_external_deny.json
/test/network_tests/security_tests/security_test_local_config.json
/test/network_tests/pending_subscription_tests/pending_subscription_test_master.json
/test/network_tests/pending_subscription_tests/pending_subscription_test_master_starter.sh
/test/network_tests/malicious_data_tests/malicious_data_test_master.json
/test/network_tests/malicious_data_tests/malicious_data_test_master_starter.sh
/test/network_tests/e2e_tests/e2e_profile_04_test_client_external.json
/test/network_tests/e2e_tests/e2e_profile_04_test_service_external.json
/test/network_tests/e2e_tests/e2e_test_client_external.json
/test/network_tests/e2e_tests/e2e_test_service_external.json
/test/network_tests/event_tests/event_test_master.json
/test/network_tests/event_tests/event_test_slave_tcp.json
/test/network_tests/event_tests/event_test_slave_udp.json
/test/network_tests/npdu_tests/npdu_test_client_no_npdu.json
/test/network_tests/npdu_tests/npdu_test_client_npdu.json
/test/network_tests/npdu_tests/npdu_test_service_no_npdu.json
/test/network_tests/npdu_tests/npdu_test_service_npdu.json
/test/network_tests/someip_tp_tests/someip_tp_test_master.json
/test/network_tests/someip_tp_tests/someip_tp_test_master_starter.sh
/test/network_tests/second_address_tests/second_address_test_master_service_udp.json
/test/network_tests/second_address_tests/second_address_test_master_client.json
/test/network_tests/second_address_tests/second_address_test_slave_client.json
/test/network_tests/second_address_tests/second_address_test_slave_service_udp.json
/test/network_tests/second_address_tests/second_address_test_slave_starter.sh
/test/network_tests/debounce_tests/debounce_test_client.json
/test/network_tests/debounce_tests/debounce_test_service.json
/test/network_tests/debounce_filter_tests/debounce_filter_test_client.json
/test/network_tests/debounce_filter_tests/debounce_filter_test_service.json
/test/network_tests/suspend_resume_tests/suspend_resume_test_client.json
/test/network_tests/suspend_resume_tests/suspend_resume_test_service.json
/Testing
!build_qnx/*
5 changes: 5 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,11 @@ if (ENABLE_SIGNAL_HANDLING)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DVSOMEIP_ENABLE_SIGNAL_HANDLING")
endif ()

# Event caching
if (ENABLE_DEFAULT_EVENT_CACHING)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DVSOMEIP_ENABLE_DEFAULT_EVENT_CACHING")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

endif ()

if (NOT MSVC)
# Sanitizers

Expand Down
5 changes: 1 addition & 4 deletions documentation/vsomeipUserGuide
Original file line number Diff line number Diff line change
Expand Up @@ -689,9 +689,6 @@ Contains the IDs for requests, which are sent from the node
to a remote service which can be segmented via SOME/IP-TP if they exceed the
maximum message size for UDP communication. If an ID isn't listed here the
message will otherwise be dropped if the maximum message size is exceeded.
Please note that the unicast key has to be set to the remote IP address of the
offering node for this setting to take effect.


* `clients` (array)
+
Expand Down Expand Up @@ -756,7 +753,7 @@ specified otherwise the allowed payload sizes are unlimited. The settings in
this array only affect communication over TCP. To limit the local payload size
`max-payload-size-local` can be used.

** `unicast`
** `unicast` (optional)
+
On client side: the IP of the remote service for which the payload size should
be limited.
Expand Down
4 changes: 2 additions & 2 deletions implementation/configuration/include/configuration.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -276,10 +276,10 @@ class configuration {

// SOME/IP-TP
virtual bool is_tp_client(
service_t _service, const std::string &_address, std::uint16_t _port,
service_t _service, instance_t _instance,
method_t _method) const = 0;
virtual bool is_tp_service(
service_t _service, const std::string &_address, std::uint16_t _port,
service_t _service, instance_t _instance,
method_t _method) const = 0;
virtual void get_tp_configuration(
service_t _service, instance_t _instance, method_t _method, bool _is_client,
Expand Down
5 changes: 2 additions & 3 deletions implementation/configuration/include/configuration_impl.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -261,11 +261,10 @@ class configuration_impl:

VSOMEIP_EXPORT bool is_tp_client(
service_t _service,
const std::string &_address, std::uint16_t _port,
instance_t _instance,
method_t _method) const;
VSOMEIP_EXPORT bool is_tp_service(
service_t _service, const std::string &_ip_service,
std::uint16_t _port_service, method_t _method) const;
service_t _service, instance_t _instance, method_t _method) const;
VSOMEIP_EXPORT void get_tp_configuration(
service_t _service, instance_t _instance, method_t _method, bool _is_client,
std::uint16_t &_max_segment_length, std::uint32_t &_separation_time) const;
Expand Down
8 changes: 4 additions & 4 deletions implementation/configuration/src/configuration_impl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4879,13 +4879,13 @@ int configuration_impl::get_udp_receive_buffer_size() const {

bool configuration_impl::is_tp_client(
service_t _service,
const std::string &_address, std::uint16_t _port,
instance_t _instance,
method_t _method) const {

bool ret(false);

const auto its_service
= find_service(_service, _address, _port);
= find_service(_service, _instance);

if (its_service) {
ret = (its_service->tp_client_config_.find(_method)
Expand All @@ -4897,12 +4897,12 @@ bool configuration_impl::is_tp_client(

bool configuration_impl::is_tp_service(
service_t _service,
const std::string &_address, std::uint16_t _port,
instance_t _instance,
method_t _method) const {

bool ret(false);
const auto its_service
= find_service(_service, _address, _port);
= find_service(_service, _instance);
if (its_service) {
ret = (its_service->tp_service_config_.find(_method)
!= its_service->tp_service_config_.end());
Expand Down
3 changes: 2 additions & 1 deletion implementation/endpoints/include/client_endpoint_impl.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,8 @@ class client_endpoint_impl: public endpoint_impl<Protocol>, public client_endpoi
virtual void set_local_port() = 0;
virtual std::string get_remote_information() const = 0;
virtual bool tp_segmentation_enabled(service_t _service,
method_t _method) const = 0;
instance_t _instance,
method_t _method) const;
virtual std::uint32_t get_max_allowed_reconnects() const = 0;
virtual void max_allowed_reconnects_reached() = 0;
void send_segments(const tp::tp_split_messages_t &_segments,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@ class local_tcp_client_endpoint_impl: public local_tcp_client_endpoint_base_impl
void set_local_port();
std::string get_remote_information() const;
bool check_packetizer_space(std::uint32_t _size);
bool tp_segmentation_enabled(service_t _service, method_t _method) const;
std::uint32_t get_max_allowed_reconnects() const;
void max_allowed_reconnects_reached();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,6 @@ class local_tcp_server_endpoint_impl
bool check_packetizer_space(target_data_iterator_type _queue_iterator,
message_buffer_ptr_t* _packetizer,
std::uint32_t _size);
bool tp_segmentation_enabled(service_t _service, method_t _method) const;
void send_client_identifier(const client_t &_client);
};

Expand Down
Loading