Commit graph

1078 commits

Author SHA1 Message Date
Erik Boasson
b34cbdcf0c sockaddr_compare should really be ipaddr_compare
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-29 13:38:16 +08:00
Erik Boasson
f2f436bde3 wrap indirect calls to WHC in inline functions
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-29 13:28:19 +08:00
Erik Boasson
3e343d032a reduce dependency on sertopic->status_cb_entity
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-29 13:26:24 +08:00
Erik Boasson
7cb80e7851 minor refactor of CDR-to-key/keyhash generation
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-29 13:24:07 +08:00
Erik Boasson
259e4676dc fix sequencing of internal liveliness monitoring and rtps init/term
liveliness monitoring requires rtps stack initialised if initially deaf, so starting the monitoring thread must happen after rtps_init

Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-28 13:54:17 +08:00
Erik Boasson
9cab5e769c various interconnected changes for ddsi_serdata
- topic-erased key-only serdata for use in tkmap
- restoration of including key values in invalid samples
- special handling of keyless topics
- keyhash generation via streams
- elimination of dynamically allocated buffers in keyhash
- removal of the last vestiges of "serstate"

Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-28 13:31:23 +08:00
Erik Boasson
8e20ae547e avoid declaring an array on stack with non-constant size
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-26 20:34:35 +08:00
Erik Boasson
fd931a2605 remove accidental return statement on the return of a void function
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-26 20:32:47 +08:00
Erik Boasson
e841e4bf94 add back in the broken filter and query condition support
the implementation was and is terrible, but without it too many tests fail

Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-26 20:05:18 +08:00
Erik Boasson
791a0efe7e replace some implementation dependent types in protocol message specifications
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-26 16:26:30 +08:00
Erik Boasson
a25f683bcf abstract the internal representation of a sample
besides the old state being in dire need of cleaning up, this also paves the way for having any number of different sample representations in the system

Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-26 16:25:26 +08:00
eboasson
6e1df4c564
Merge pull request #20 from k0ekk0ek/getifaddrs
Replace os_sockQueryInterfaces by os_getifaddrs
2018-10-25 23:11:03 +08:00
Jeroen Koekkoek
8fc9535316 Terminate address filter with OS_AF_NULL instead of 0 (AF_UNSPEC)
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-24 22:32:27 +02:00
Jeroen Koekkoek
40b7b5f423 Copy socket address regardless of interface state
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-24 19:33:51 +02:00
Jeroen Koekkoek
4b3c6ed643 Fix warning caused by assert on parameter required to be nonnull
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-24 16:53:12 +02:00
Jeroen Koekkoek
961706bb48 Replace NULL address family filter by supported address families
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-24 16:31:43 +02:00
Jeroen Koekkoek
25198e565b Rename os_sockaddr_size to os_sockaddr_get_size for consitency
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-24 15:53:29 +02:00
Jeroen Koekkoek
0324f36dd2 Disable IPv6 interface tests if IPv6 is not available at runtime
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-24 00:13:16 +02:00
eboasson
7ce02bdaa5
Merge pull request #29 from k0ekk0ek/conan-cunit
Use Conan recipe from Bincrafters for CUnit
2018-10-20 11:55:38 +08:00
Jeroen Koekkoek
3f55210e30 Use Conan recipe from Bincrafters for CUnit
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 18:30:43 +02:00
Jeroen Koekkoek
fbde1ba5b8 Do not stop interface iteration if address is NULL
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 17:50:13 +02:00
Jeroen Koekkoek
a9e160ec07 Update API documentation for modified socket address functions
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 17:35:08 +02:00
Jeroen Koekkoek
6b41dada9d Fix compiler warnings
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 17:35:08 +02:00
Jeroen Koekkoek
6867f949cd Add extra os_getifaddrs test cases
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 17:35:08 +02:00
Jeroen Koekkoek
03c081fa18 Simplify os_getifaddrs operation for POSIX platforms
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 17:30:33 +02:00
Jeroen Koekkoek
7ba3bca087 Change socket function signatures to use os_sockaddr
* Consolidated and cleaned up some (duplicate) functions.
* Removed some unused functions that did not make sense to keep around.

Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 17:00:15 +02:00
Jeroen Koekkoek
ea3f5e7ff4 Disable AF_PACKET interfaces for all platforms but Linux
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 16:58:40 +02:00
Jeroen Koekkoek
458b1df3f7 Replace os_sockQueryInterfaces by os_getifaddrs
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 16:58:40 +02:00
Jeroen Koekkoek
2fc4cac1a7 Consolidate some duplicate functions
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 16:58:40 +02:00
eboasson
2cee550f6f
Merge pull request #24 from eboasson/fix
More sensible domain id handling; stopping throughput publisher
2018-10-18 21:59:00 +08:00
Erik Boasson
d1c5cd9b57 set ^C handler just before writing samples and rely on default action to terminate the process when waiting a matching subscriber
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-14 14:02:47 +08:00
Erik Boasson
bb92294f4e Let dds_create_participant determine domain id if config specifies "any" (new default)
Note: DDS_DOMAIN_DEFAULT with a configuration specifying "any" results in domain 0.
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-14 14:02:47 +08:00
Benjamin Cabé
675fbfe013 Update README.md with proper project name.
Signed-off-by: Benjamin Cabé <benjamin.cabe@eclipse-foundation.org>
2018-09-25 11:06:04 +02:00
Erik Boasson
feb5ba647e handle threads stopping while trying to get a stack trace
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
30fe3dc803 disable multicast when selected interface doesn't support it
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
5edd55bc64 when closing trace file check for stdout or stderr
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
d76a537bb6 explicitly initialising all fields of struct msghdr instead of memset saves a noticeable amount of time
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
4f0b9cb471 improve performance by allowing multiple receive threads and avoiding multiplexing I/O
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
508d56b427 should not reschedule SPDP event if there is no SPDP writer
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
40f046ea3a switch to reporting (one-way) latency instead of round-trip times
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
098378cd89 fix roundtrip cleanup code trying to delete non-existent entities
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
e040d61246 transmit path should use unicast socket
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
cf754b0141 add one final trace line after DDSI stack shuts down
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
0873f4a401 use kqueue for input multiplexing on macOS
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
48d770d40f return false instead of crashing when invalid addresses are passed to ddsi_is_mcaddr/ddsi_is_ssm_mcaddr
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
bb8d3d808c remove some memsets for unnecessarily clearing padding
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
e84e644702 remove unused global mutex
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
9bd0a519fc default to a RelWithDebInfo build if cmake is invoked without setting CMAKE_BUILD_TYPE
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Angelo Corsaro
2a67df48fc
Updated performance numbers. 2018-09-13 10:44:58 +02:00
Erik Boasson
b3bf57de00 fix incorrect warning fix in dds_entity_observer_unregister
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-09 09:23:03 +02:00