summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuergen Gehring <juergen.gehring@bmw.de>2018-01-25 00:40:02 -0800
committerJuergen Gehring <juergen.gehring@bmw.de>2018-01-25 00:40:02 -0800
commit104650cb1ccd4f407da0ba7e1d9bd54c011479f8 (patch)
treef4fa874a4d804a9be840b8065977fef616f9bc7e
parentb371bdeb5376ba6974b48534986c22818215fe14 (diff)
downloadvSomeIP-104650cb1ccd4f407da0ba7e1d9bd54c011479f8.tar.gz
vsomeip 2.7.22.7.2
-rw-r--r--CHANGES573
-rw-r--r--CMakeLists.txt2
-rw-r--r--implementation/endpoints/src/tcp_client_endpoint_impl.cpp2
3 files changed, 289 insertions, 288 deletions
diff --git a/CHANGES b/CHANGES
index 3f0d65f..a38c85f 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,160 +1,172 @@
Changes
=======
-v1.1.0
-- Local communication in multiprocessor environments was fixed
-- Runtime access was changed from raw to shared pointer
-- vsomeip logger is used whereever possible (replacing std::cerr calls)
-- Ensure the logger is not deleted before issueing tha last log message when
- shutting down
-- Fixed shutdown crash by checking the existence of endpoint host before
- accessing it
-- Routing info processing in case of multiple instances of the same service
- was fixed
-- Support for local communication on Windows was added
+v.2.7.2
+- Avoid deadlock when printing error message about too large messages
-v1.2.0
-- Added (optional) thread pool for distribution of messages to the application
-- Made configuration of service groups optional (as it is unneeded in pure
- client applications)
-- Support specification of transportation mode (reliable (TCP) / unreliable
- (UDP)) when creating messages
-- Fixed internal distribution of notication events
-- Block messages that are received on the wrong port
-- Fixed deregistration of local clients
-- Fixed startup of applications that were started earlier than the routing
- manager
-- Resetting all events of a service if it becomes unavailable (to ensure initial
- events are sent when it becomes available again)
-- Ensure consistency of version information
-- Fixed Service Discovery state machine
+v2.7.1
+- Prevent processing of too short messages received via UDP
+- Avoid catching SIGABRT in vsomeipd
+- Prevent duplicate logging of remote messages
+- Log message cleanup/enhancement
-v1.3.0
-- Fixed SD library loading on Windows
-- Changed cmake directory name (CMake --> cmake)
-- Corrected check for multicast address in Service Discovery
-- Added default setting for Service Discovery timings
-- Ensure only local services are reported by the Service Discovery
-- Fixed a crash in case of a wrong unicast address definition
-- Protected forwarding of availability information
-- Improved handling of notification events
-- Added initial support for selective broadcasts (CommonAPI)
-- Avoid deadlock when offering services
-- Correct handling of events
-- Added initial support for managed interfaces (CommonAPI)
+v2.7.0
+- Add possibility to register a subscription status handler via
+ application interface. The handler will be called if a subscription
+ is acknowledged / not acknowledged by the application hosting the
+ target service instance of the subscription
+- The default subscription type of application::subscribe method was
+ changed from RELIABLE_AND_UNRELIABLE to PREFER_RELIABLE to harmonize
+ initial event behaviour
+- Add generic plug-in concept
+- Fix bug which caused sending out subscription messages containing
+ endpoint options with port set to zero
+- Make magic cookie detection TCP connection based
+- Avoid sending unneeded SIGKILLs to current routing manager
+- Forward service's instance IDs to DLT
+- Fixed performance loss on "client ID" lookup needed for ingoing
+ remote subscriptions
+- Add signal handling for starting stopping the service discovery to
+ vsomeipd
+- The message object can now be asked for CRC check state:
+ is_valid_crc()
+- Incoming remote responses where the CRC check fails will trigger:
+ set_is_valid_crc(false)
-v2.0.0
-- Buffer sizes were adapted to the transport protocols
-- Added support for IPv6 multicast
-- Improved handling of endpoints
-- Report service state changes instead of service state to the application
-- Set and process TTL field in Service Discovery to support detection of "lost"
- services
-- Support automatic configuration of local communication
-- Added compile time variable DIAGNOSIS_ADDRESS (which maps to the high byte of
- the SOME/IP client identifier)
-- Configuration of events was moved from configuration file to API.
-- Fixed routing of notication events.
-- Increased robustness of configuration loader
-- Changed default watchdog cycle from 1s to 5s
-- Removed TTL arguments from public interface
-- Allow Service Discovery to report non-SOME/IP services by setting the
- configuration variable "protocol"
-- Fixed serialization of major version in Eventgroup entries
-- Magic Cookies are no longer forwarded to the routing manager but handled in
- the receiving endpoint
-- vsomeip daemon was added
+v2.6.4
+- Fix bug in reboot detection of other nodes
+- Improve restarting of TCP connections
-v2.0.1
-- Ensure Unicast flag is set in all Service Discovery messages
-- Allow "local" as alias for unicast address in Magic Cookie configuration
-- Correctly set layer 4 protocol in multicast options
-- Increased robustness of deserialization of configuration options
-- Fixed handling of unknown Service Discovery options
+v2.6.3
+- Improve reboot detection of other nodes
+- Introduce 'max-payload-size-reliable' json file parameter which can be used to
+ globally limit the maximum allowed payload size for TCP communication
+- Added CRC checksum calculation for bit optimized messages
-v2.0.2
-- Fixed endpoint flushing
-- Improved handling of Selective Broadcasts (CommonAPI)
-- Trace connector was added
-- Added reboot detection
-- Reworked handling of TCP connections
-- Support multiple multicast eventgroups per service
-- Improved handling of multicasts
-- Extended Service Discovery to send FindMessage messages for unknown services
-- Support multiple SOME/IP messages in a single UDP datagram
+v2.6.2
+- Service-Disovery performance improvements
+- Made Routing Manager restartable
+- Fixed file handle leak caused by remote ECU reboot
+- Activate TCP-Keep-Alive for TCP endpoints
+- Debouncing of request-service messages (routing info performance)
+- Fixed false session-id handling of identification request
-v2.0.3
-- Fixed shutdown and application re-registering
+v2.6.1
+- Fixed clearing of subscribers on stop offer service
-v2.0.4
-- Service Discovery now used configured Client ID prefixes (=DIAGNOSIS_ADDRESS)
-- Reworked reboot detection (now based on the destination address)
-- Aligned default TTL setting (was 5 in vsomeip and 0xFFFFFF in vsomeip-sd, now
- its constently 0xFFFFFF)
+v2.6.0
+- Fixed races and crashes
+- Fixed repetition phase timings for find service messages
+- Reworked internal event/field distribution to reduce CPU load
+- Reworked internal routing info distribution leading to fewer and smaller
+ messages and lower CPU load
+- Extend public application interface with second unsubscribe method with
+ additional event parameter
-v2.0.5
-- Fixed reboot detection behavior
+v2.5.3
+- Fixed races and crashes
+- The minor version of a service instance is considered again when reporting the
+ service instance's availability (this was removed with v2.4.2). If the minor
+ version should not be considered use ANY_MINOR or DEFAULT_MINOR when
+ registering availability handlers.
+- Fixed initial events on unsubscription
+- Improved dispatcher handling for blocking calls
+- Crashed applications are now automatically unsubscribed
-v2.0.6
-- Diagnosis address can be configured at runtime
+v2.5.2
+- Fixed deadlock and crashes
+- Prevent race of initial attributes
+- Allow incomplete application configurations
+- Unit test timeouts increased to avoid failures on (slow) build servers
-v2.1.0
-- Avoid duplicate notifications if a selective event is in more than one
- eventgroup
-- Ensure SD messages are sent from the SD port
-- Ignore SD messages with wrong message identifier
-- Accept unreliable subscription for eventgroups without configured multicast
- address
-- Reject subscriptions that contain invalid IP address or port
-- Reject subscriptions for TCP if the connection is not established
-- Exclude vsomeip_ctrl from default installation
-- Only accept SD messages from SD port
-- Acknowledge multiple subscriptions sent within the same message with a single
- message
-- Allow to specify an application specific DLT application
-- Ensure correct ordering of availability notifications
-- Automatically expire subscription based on the given TTL
-- Do not include internal services in SD offer messages
-- Consider all fields of SD subscribe messages
-- Made the watchdog configurable
-- Support destination address resolution on Windows (for reboot detection)
-- Support auto-configuration (client identifiers, routing manager) on Windows
+v2.5.1
+- Removed payload size limit. By default messages with an arbitrary length can
+ now be sent locally and via TCP. The payload-sizes configuration file array is
+ now used to limit the payload size for the specified endpoints instead of
+ increasing it. There are two new configuration file parameters:
+ - max-payload-size-local: limit maximum allowed payload size for node internal
+ communication.
+ - buffer-shrink-threshold: variable to control buffer memory deallocation
+ after big messages have been processed. For more information see the
+ vsomeipUserGuide.
+- Fixed cleanup of endpoints for subscriptions using an exclusive proxy
+ (selective) which unnecessarily increased the number of open file descriptors.
+- Fixed assignment of predefined application IDs via autoconfiguration.
+- Decouple start of routing manager from network availability.
+- Made number of internal threads per application configurable.
+- Postpone notify_one events sent from subscription handler to ensure correct
+ message order on receiver side.
-v2.1.1
-- Ensure SD FindService-messages are sent after client re-registration
-- Corrected configuration of MagicCookies
-- Make client ports configurable
-- Implemented FindService message optimization
-- Extended configuration consistency checks
+v2.5.0
+- Added notify-/notify_one-methods to enable flush control for notifications.
+- Restructured configuration to be a separate module (preparation to enable
+ the usage of compiled configurations to speed-up startup)
+- Added vSomeIP-Security: Socket authentication based on Linux-credentials
+ together with further security checks using configurable policies.
+- Fixed pending subscriptions had not sent out if subscribing application
+ hosts the routing manager.
+- Fixed crash in vsomeipd due to concurrent access when closing/shutdown socket.
+- The service discovery now debounces newly offered service instances to avoid
+ sending out the offers of the same service instance with a too high frequency.
+ The default debounce time is set to 500ms. It can be changed via the new json
+ file parameter service-discovery/offer_debounce_time.
-v2.1.2
-- Ensure correct message order
+v2.4.3
+- Fix receiving of UDP frames containing multiple SOME/IP messages via UDP from
+ external service instances
-v2.2.0
-- Implemented Peer-to-Peer data exchange for notifications
-- Fixed handling of minor version during service discovery
-- Made initialization of application objects reentrant
-- Routing manager proxies now reconnect to the routing manager if the
- connection got lost
-- Auto-configuration supports multiple (different) configuration files
-- The opening of TCP connections is no longer done without an explicit request
-- Request No Respose messages are no longer answered in case of errors
-- Notifications over IP were fixed
+v2.4.2
+- TCP connections for services no longer requested aren't reestablished anymore
+- The minor version of a service instance is no longer considered when reporting
+ the service instance's availability
+- Introduce new internal_services json file parameter to define the internal
+ service instances. This parameter can be used to control the sending behaviour
+ for find service entries
+- Fixed event processing if service and client shared the same application
+- Incoming find service entries with unicast flag set to 0 are now replied with
+ a unicast offer service message instead of a multicast offer service message.
+- application::stop() now blocks until the shutdown has finished completely
-v2.2.1
-- Backward compatibility fixes
+v2.4.1
+- Extended number of endpoints that can be referenced from entries array in
+ service discovery messages
+- Remove DLT contexts on application shutdown
+- Avoid initialization of vsomeip-applications if the maximum number of
+ applications (client identifiers) has been reached
+- Prevent sending of OfferService entry as a reply to FindService message for
+ internal services
+- Fixed deregistration of vsomeip-applications that became unresponsive
+- Fixed loop in endpoints causing high load during shutdown of vsomeip
+ applications
+- Fixed loop in endpoints causing temporary high load if other devices become
+ unavailable without deregistering
-v2.2.2
-- Ensure multicast messages are sent by the network adapter that is configured
- to be used for unicasts instead of relying on the configured routes
-
-v2.2.3
-- Ensure service discovery messages to not exceed maximum packet size
+v2.4.0
+- Disabled tracing SOME/IP-SD messages by default. Set "tracing/sd_enable"
+ switch to "true" to enable it.
+- Trace notification events once instead of per target.
-v2.2.4
-- Set default log level to DEBUG
-- Improved segmentation of service discovery messages
-- Fixed a race condition during subscriptions
+v2.3.5
+- Fix TTL in Subscribe Eventgroup Entries
+
+v2.3.4
+- Exhaust client id range before reuse
+- Provide public interface to ask for available instances
+
+v2.3.3
+- Added -q/--quiet switch to the daemon to allow it to be started without
+ DLT logging
+- Fix event caching in routing manager
+
+v2.3.2
+- Fix client deregistration during the client registration
+- Fix handling of pending commands during registration
+
+v2.3.1
+- Fix shutdown crashes (logger & application shutdown)
+- Fix race condition in client identifier configuration
+- Fix vsomeipd crash
+- Fixed handling of notifications (compliance)
v2.3.0
- Extend the API to force field notifications
@@ -172,166 +184,157 @@ v2.3.0
- Fixed availability reporting of reliable (TCP) remote services offered
on the same port
-v2.3.1
-- Fix shutdown crashes (logger & application shutdown)
-- Fix race condition in client identifier configuration
-- Fix vsomeipd crash
-- Fixed handling of notifications (compliance)
-
-v2.3.2
-- Fix client deregistration during the client registration
-- Fix handling of pending commands during registration
-
-v2.3.3
-- Added -q/--quiet switch to the daemon to allow it to be started without
- DLT logging
-- Fix event caching in routing manager
-
-v2.3.4
-- Exhaust client id range before reuse
-- Provide public interface to ask for available instances
+v2.2.4
+- Set default log level to DEBUG
+- Improved segmentation of service discovery messages
+- Fixed a race condition during subscriptions
-v2.3.5
-- Fix TTL in Subscribe Eventgroup Entries
+v2.2.3
+- Ensure service discovery messages to not exceed maximum packet size
-v2.4.0
-- Disabled tracing SOME/IP-SD messages by default. Set "tracing/sd_enable"
- switch to "true" to enable it.
-- Trace notification events once instead of per target.
+v2.2.2
+- Ensure multicast messages are sent by the network adapter that is configured
+ to be used for unicasts instead of relying on the configured routes
-v2.4.1
-- Extended number of endpoints that can be referenced from entries array in
- service discovery messages
-- Remove DLT contexts on application shutdown
-- Avoid initialization of vsomeip-applications if the maximum number of
- applications (client identifiers) has been reached
-- Prevent sending of OfferService entry as a reply to FindService message for
- internal services
-- Fixed deregistration of vsomeip-applications that became unresponsive
-- Fixed loop in endpoints causing high load during shutdown of vsomeip
- applications
-- Fixed loop in endpoints causing temporary high load if other devices become
- unavailable without deregistering
+v2.2.1
+- Backward compatibility fixes
+
+v2.2.0
+- Implemented Peer-to-Peer data exchange for notifications
+- Fixed handling of minor version during service discovery
+- Made initialization of application objects reentrant
+- Routing manager proxies now reconnect to the routing manager if the
+ connection got lost
+- Auto-configuration supports multiple (different) configuration files
+- The opening of TCP connections is no longer done without an explicit request
+- Request No Respose messages are no longer answered in case of errors
+- Notifications over IP were fixed
-v2.4.2
-- TCP connections for services no longer requested aren't reestablished anymore
-- The minor version of a service instance is no longer considered when reporting
- the service instance's availability
-- Introduce new internal_services json file parameter to define the internal
- service instances. This parameter can be used to control the sending behaviour
- for find service entries
-- Fixed event processing if service and client shared the same application
-- Incoming find service entries with unicast flag set to 0 are now replied with
- a unicast offer service message instead of a multicast offer service message.
-- application::stop() now blocks until the shutdown has finished completely
+v2.1.2
+- Ensure correct message order
-v2.4.3
-- Fix receiving of UDP frames containing multiple SOME/IP messages via UDP from
- external service instances
+v2.1.1
+- Ensure SD FindService-messages are sent after client re-registration
+- Corrected configuration of MagicCookies
+- Make client ports configurable
+- Implemented FindService message optimization
+- Extended configuration consistency checks
-v2.5.0
-- Added notify-/notify_one-methods to enable flush control for notifications.
-- Restructured configuration to be a separate module (preparation to enable
- the usage of compiled configurations to speed-up startup)
-- Added vSomeIP-Security: Socket authentication based on Linux-credentials
- together with further security checks using configurable policies.
-- Fixed pending subscriptions had not sent out if subscribing application
- hosts the routing manager.
-- Fixed crash in vsomeipd due to concurrent access when closing/shutdown socket.
-- The service discovery now debounces newly offered service instances to avoid
- sending out the offers of the same service instance with a too high frequency.
- The default debounce time is set to 500ms. It can be changed via the new json
- file parameter service-discovery/offer_debounce_time.
+v2.1.0
+- Avoid duplicate notifications if a selective event is in more than one
+ eventgroup
+- Ensure SD messages are sent from the SD port
+- Ignore SD messages with wrong message identifier
+- Accept unreliable subscription for eventgroups without configured multicast
+ address
+- Reject subscriptions that contain invalid IP address or port
+- Reject subscriptions for TCP if the connection is not established
+- Exclude vsomeip_ctrl from default installation
+- Only accept SD messages from SD port
+- Acknowledge multiple subscriptions sent within the same message with a single
+ message
+- Allow to specify an application specific DLT application
+- Ensure correct ordering of availability notifications
+- Automatically expire subscription based on the given TTL
+- Do not include internal services in SD offer messages
+- Consider all fields of SD subscribe messages
+- Made the watchdog configurable
+- Support destination address resolution on Windows (for reboot detection)
+- Support auto-configuration (client identifiers, routing manager) on Windows
-v2.5.1
-- Removed payload size limit. By default messages with an arbitrary length can
- now be sent locally and via TCP. The payload-sizes configuration file array is
- now used to limit the payload size for the specified endpoints instead of
- increasing it. There are two new configuration file parameters:
- - max-payload-size-local: limit maximum allowed payload size for node internal
- communication.
- - buffer-shrink-threshold: variable to control buffer memory deallocation
- after big messages have been processed. For more information see the
- vsomeipUserGuide.
-- Fixed cleanup of endpoints for subscriptions using an exclusive proxy
- (selective) which unnecessarily increased the number of open file descriptors.
-- Fixed assignment of predefined application IDs via autoconfiguration.
-- Decouple start of routing manager from network availability.
-- Made number of internal threads per application configurable.
-- Postpone notify_one events sent from subscription handler to ensure correct
- message order on receiver side.
+v2.0.6
+- Diagnosis address can be configured at runtime
-v2.5.2
-- Fixed deadlock and crashes
-- Prevent race of initial attributes
-- Allow incomplete application configurations
-- Unit test timeouts increased to avoid failures on (slow) build servers
+v2.0.5
+- Fixed reboot detection behavior
-v2.5.3
-- Fixed races and crashes
-- The minor version of a service instance is considered again when reporting the
- service instance's availability (this was removed with v2.4.2). If the minor
- version should not be considered use ANY_MINOR or DEFAULT_MINOR when
- registering availability handlers.
-- Fixed initial events on unsubscription
-- Improved dispatcher handling for blocking calls
-- Crashed applications are now automatically unsubscribed
+v2.0.4
+- Service Discovery now used configured Client ID prefixes (=DIAGNOSIS_ADDRESS)
+- Reworked reboot detection (now based on the destination address)
+- Aligned default TTL setting (was 5 in vsomeip and 0xFFFFFF in vsomeip-sd, now
+ its constently 0xFFFFFF)
-v2.6.0
-- Fixed races and crashes
-- Fixed repetition phase timings for find service messages
-- Reworked internal event/field distribution to reduce CPU load
-- Reworked internal routing info distribution leading to fewer and smaller
- messages and lower CPU load
-- Extend public application interface with second unsubscribe method with
- additional event parameter
+v2.0.3
+- Fixed shutdown and application re-registering
-v2.6.1
-- Fixed clearing of subscribers on stop offer service
+v2.0.2
+- Fixed endpoint flushing
+- Improved handling of Selective Broadcasts (CommonAPI)
+- Trace connector was added
+- Added reboot detection
+- Reworked handling of TCP connections
+- Support multiple multicast eventgroups per service
+- Improved handling of multicasts
+- Extended Service Discovery to send FindMessage messages for unknown services
+- Support multiple SOME/IP messages in a single UDP datagram
-v2.6.2
-- Service-Disovery performance improvements
-- Made Routing Manager restartable
-- Fixed file handle leak caused by remote ECU reboot
-- Activate TCP-Keep-Alive for TCP endpoints
-- Debouncing of request-service messages (routing info performance)
-- Fixed false session-id handling of identification request
+v2.0.1
+- Ensure Unicast flag is set in all Service Discovery messages
+- Allow "local" as alias for unicast address in Magic Cookie configuration
+- Correctly set layer 4 protocol in multicast options
+- Increased robustness of deserialization of configuration options
+- Fixed handling of unknown Service Discovery options
-v2.6.3
-- Improve reboot detection of other nodes
-- Introduce 'max-payload-size-reliable' json file parameter which can be used to
- globally limit the maximum allowed payload size for TCP communication
-- Added CRC checksum calculation for bit optimized messages
+v2.0.0
+- Buffer sizes were adapted to the transport protocols
+- Added support for IPv6 multicast
+- Improved handling of endpoints
+- Report service state changes instead of service state to the application
+- Set and process TTL field in Service Discovery to support detection of "lost"
+ services
+- Support automatic configuration of local communication
+- Added compile time variable DIAGNOSIS_ADDRESS (which maps to the high byte of
+ the SOME/IP client identifier)
+- Configuration of events was moved from configuration file to API.
+- Fixed routing of notication events.
+- Increased robustness of configuration loader
+- Changed default watchdog cycle from 1s to 5s
+- Removed TTL arguments from public interface
+- Allow Service Discovery to report non-SOME/IP services by setting the
+ configuration variable "protocol"
+- Fixed serialization of major version in Eventgroup entries
+- Magic Cookies are no longer forwarded to the routing manager but handled in
+ the receiving endpoint
+- vsomeip daemon was added
-v2.6.4
-- Fix bug in reboot detection of other nodes
-- Improve restarting of TCP connections
+v1.3.0
+- Fixed SD library loading on Windows
+- Changed cmake directory name (CMake --> cmake)
+- Corrected check for multicast address in Service Discovery
+- Added default setting for Service Discovery timings
+- Ensure only local services are reported by the Service Discovery
+- Fixed a crash in case of a wrong unicast address definition
+- Protected forwarding of availability information
+- Improved handling of notification events
+- Added initial support for selective broadcasts (CommonAPI)
+- Avoid deadlock when offering services
+- Correct handling of events
+- Added initial support for managed interfaces (CommonAPI)
-v2.7.0
-- Add possibility to register a subscription status handler via
- application interface. The handler will be called if a subscription
- is acknowledged / not acknowledged by the application hosting the
- target service instance of the subscription
-- The default subscription type of application::subscribe method was
- changed from RELIABLE_AND_UNRELIABLE to PREFER_RELIABLE to harmonize
- initial event behaviour
-- Add generic plug-in concept
-- Fix bug which caused sending out subscription messages containing
- endpoint options with port set to zero
-- Make magic cookie detection TCP connection based
-- Avoid sending unneeded SIGKILLs to current routing manager
-- Forward service's instance IDs to DLT
-- Fixed performance loss on "client ID" lookup needed for ingoing
- remote subscriptions
-- Add signal handling for starting stopping the service discovery to
- vsomeipd
-- The message object can now be asked for CRC check state:
- is_valid_crc()
-- Incoming remote responses where the CRC check fails will trigger:
- set_is_valid_crc(false)
+v1.2.0
+- Added (optional) thread pool for distribution of messages to the application
+- Made configuration of service groups optional (as it is unneeded in pure
+ client applications)
+- Support specification of transportation mode (reliable (TCP) / unreliable
+ (UDP)) when creating messages
+- Fixed internal distribution of notication events
+- Block messages that are received on the wrong port
+- Fixed deregistration of local clients
+- Fixed startup of applications that were started earlier than the routing
+ manager
+- Resetting all events of a service if it becomes unavailable (to ensure initial
+ events are sent when it becomes available again)
+- Ensure consistency of version information
+- Fixed Service Discovery state machine
-v2.7.1
-- Prevent processing of too short messages received via UDP
-- Avoid catching SIGABRT in vsomeipd
-- Prevent duplicate logging of remote messages
-- Log message cleanup/enhancement
+v1.1.0
+- Local communication in multiprocessor environments was fixed
+- Runtime access was changed from raw to shared pointer
+- vsomeip logger is used whereever possible (replacing std::cerr calls)
+- Ensure the logger is not deleted before issueing tha last log message when
+ shutting down
+- Fixed shutdown crash by checking the existence of endpoint host before
+ accessing it
+- Routing info processing in case of multiple instances of the same service
+ was fixed
+- Support for local communication on Windows was added
diff --git a/CMakeLists.txt b/CMakeLists.txt
index aaae8e3..85de96f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -8,7 +8,7 @@ project (vsomeip)
set (VSOMEIP_MAJOR_VERSION 2)
set (VSOMEIP_MINOR_VERSION 7)
-set (VSOMEIP_PATCH_VERSION 1)
+set (VSOMEIP_PATCH_VERSION 2)
set (VSOMEIP_VERSION ${VSOMEIP_MAJOR_VERSION}.${VSOMEIP_MINOR_VERSION}.${VSOMEIP_PATCH_VERSION})
set (PACKAGE_VERSION ${VSOMEIP_VERSION}) # Used in documentatin/doxygen.in
set (CMAKE_VERBOSE_MAKEFILE off)
diff --git a/implementation/endpoints/src/tcp_client_endpoint_impl.cpp b/implementation/endpoints/src/tcp_client_endpoint_impl.cpp
index 61a8b48..a66ad26 100644
--- a/implementation/endpoints/src/tcp_client_endpoint_impl.cpp
+++ b/implementation/endpoints/src/tcp_client_endpoint_impl.cpp
@@ -332,7 +332,6 @@ void tcp_client_endpoint_impl::receive_cbk(
missing_capacity_ = 0;
} else if (max_message_size_ != MESSAGE_SIZE_UNLIMITED &&
current_message_size > max_message_size_) {
- std::lock_guard<std::mutex> its_lock(socket_mutex_);
recv_buffer_size_ = 0;
recv_buffer_.resize(recv_buffer_size_initial_, 0x0);
recv_buffer_.shrink_to_fit();
@@ -368,7 +367,6 @@ void tcp_client_endpoint_impl::receive_cbk(
has_full_message = true; // trigger next loop
}
} else {
- std::lock_guard<std::mutex> its_lock(socket_mutex_);
VSOMEIP_ERROR << "tce::c<" << this
<< ">rcb: recv_buffer_size is: " << std::dec
<< recv_buffer_size_ << " but couldn't read "