Commit graph

198 commits

Author SHA1 Message Date
Erik Boasson
c491f321dd Fix incorrect free of unicast socket/connection in rtps_init error handling
Signed-off-by: Erik Boasson <eb@ilities.com>
2019-01-02 12:13:40 +01:00
Erik Boasson
27913be1c3 Fix memory leak in function to clear all writer address sets
Signed-off-by: Erik Boasson <eb@ilities.com>
2019-01-02 12:13:40 +01:00
Erik Boasson
0b814df584 Use sizeof(sin_addr) in IPv4 address compare instead of effectively sizeof(size_t)
Signed-off-by: Erik Boasson <eb@ilities.com>
2019-01-02 12:13:40 +01:00
Erik Boasson
d6306bddbb Properly handle "incompatible if unrecognized" in parameter lists (#79)
Previously it would fall through and assert in a debug build or return an error in a release build. The behaviour in a release build was almost correct, as the flag means the entity should be completely ignored if the parameter is not understood by the implementation, but I don't believe it should result in a warning — certainly not that claims the parameter list is invalid. A specific return code is now used to indicate a parameter list that was rejected because of this flag, and that suppresses the warning.

Signed-off-by: Erik Boasson <eb@ilities.com>
2019-01-02 12:13:40 +01:00
Erik Boasson
e0d5587639 Unified key-to-iid map means a backref to the map is no longer needed
Signed-off-by: Erik Boasson <eb@ilities.com>
2019-01-02 12:13:40 +01:00
eboasson
96da0c5555
Merge pull request #82 from eboasson/master
participants are not hidden built-in entities in built-in topics and should get an instance handle consistent with the DCPSParticipant topic
2019-01-01 19:54:55 +01:00
Erik Boasson
781c644800 participants are not hidden built-in entities in built-in topics and should get an instance handle consistent with the DCPSParticipant topic
Signed-off-by: Erik Boasson <erik.boasson@prismtech.com>
2019-01-01 18:52:27 +01:00
eboasson
46b1aa5366
Merge pull request #76 from eboasson/builtintopics
Fixes for memory leaks, out-of-bounds reads and race conditions working with instances
2018-12-25 15:21:14 +01:00
Erik Boasson
7a9f845636 enable address sanitizer on clang Debug builds by default
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-25 12:40:05 +01:00
Erik Boasson
179a35d192 fix race conditions in instance id-to-key lookup
this is just an intermediate step: firstly, iid-to-key lookup is a linear scan; secondly, the lookup should happen on the RHC or the WHC and not on some internal map to associates key values with instance handles and is independent of entities

Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-25 12:40:05 +01:00
Erik Boasson
0f7ce1ac43 instance operations must also ensure thread is considered awake or GC may free tkmap instances prematurely
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-25 12:40:05 +01:00
Erik Boasson
84506b8518 rollback changes to dispose counts when resource limits reached during RHC update
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-25 12:40:05 +01:00
Erik Boasson
e96a47f3f9 fix test issues detected by address sanitizer
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-25 12:40:05 +01:00
Erik Boasson
98c53db057 fix leak of config data if a domain id problem leads to an initialization failure
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-25 12:40:05 +01:00
eboasson
97c5e06b6a
Merge pull request #69 from FirasSahliADLinktech/rename-functions
Make function names more consistent:

* ``dds_topic_{get,set}_filter`` -> ``dds_{get,set}_topic_filter``
* ``dds_{get,set}_enabled_status`` -> ``dds_{get,set}_status_mask``
* ``dds_instance_lookup`` -> ``dds_lookup_instance``

Plus removal of defunct ddsv2.h.
2018-12-25 12:38:25 +01:00
eboasson
4223fff818
Merge pull request #45 from eboasson/builtintopics
Rework builtin topics and add DCPSPublication and DPCSSubscription
2018-12-16 22:07:31 +01:00
Erik Boasson
1a0fcea0c2 replace old builtin topics by new ones and add implementation of DCPSSubscription and DCPSPublication
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-14 14:02:08 +01:00
Erik Boasson
78d49b52a0 add new "builtin topic" types and conversion routines
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-14 14:02:08 +01:00
Erik Boasson
945fc94de7 setting "must inspect result" on return_loan is pedantry
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-14 14:02:08 +01:00
Erik Boasson
e631567c35 extend sertopic interface and move the concept of a type descriptor to just the sertopic definition
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-14 14:02:08 +01:00
Erik Boasson
c169df6227 fix refcount leak of tkmap instances when copying transient-local history from a local writer
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-14 14:02:08 +01:00
Erik Boasson
ef65101ad7 pushing released serdata:s onto a freelist was dropped by accident in the rewriting of them
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-14 14:02:08 +01:00
Erik Boasson
29f542b916 iid and tkmap are integral to this DDSI stack and should be part of it
They were made available from the DCPS layer to DDSI using some function pointers, but it makes more sense to have them as part of the DDSI core.

Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-14 14:02:08 +01:00
eboasson
19202d9de8
Merge pull request #70 from k0ekk0ek/fix-55
Do not require table to contain address if interface is down (Fixes #55)
2018-12-12 17:34:23 +01:00
Angelo Corsaro
d0ea1e8389
Updated with latest performance number 2018-12-12 10:38:34 +01:00
Firas Sahli
9f51f6f9dc
Rename get and set filter functions for topic
Signed-off-by: Firas Sahli <firas.sahli@adlinktech.com>
2018-12-11 11:07:09 +01:00
Firas Sahli
05f961dec1
Rename get and set of enabled status to mask
Signed-off-by: Firas Sahli <firas.sahli@adlinktech.com>
2018-12-11 11:07:09 +01:00
Firas Sahli
99f410bc49
Rename dds_instance_lookup to dds_lookup_instance
Signed-off-by: Firas Sahli <firas.sahli@adlinktech.com>
2018-12-11 11:06:50 +01:00
Firas Sahli
af7e34f143
Remove ddsv2.h
Signed-off-by: Firas Sahli <firas.sahli@adlinktech.com>
2018-12-11 11:06:27 +01:00
Jeroen Koekkoek
3c5a209389 Fix build warnings by passing a message to CU_PASS
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-12-10 13:05:59 +01:00
Jeroen Koekkoek
3b69213f51 Do not require table to contain address if interface is down (Fixes #55)
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-12-10 13:05:59 +01:00
eboasson
31cc166047
Merge pull request #68 from k0ekk0ek/criterion-be-gone
Replace Criterion by CUnit
2018-12-06 16:01:50 +01:00
Jeroen Koekkoek
74a48c5731 Replace Criterion by CUnit
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-12-06 14:48:30 +01:00
eboasson
60752b3fd8
Merge pull request #67 from eboasson/master
Fix log calculation of available buffer space
2018-12-01 13:50:18 +01:00
Erik Boasson
e16c59e392 use sizeof(buffer) instead of uninitialised variable
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-01 12:58:22 +01:00
eboasson
f7cd4176b3
Merge pull request #66 from eboasson/master
fix warnings on qos function names and constness
2018-12-01 10:49:49 +01:00
Erik Boasson
e62abe623a fix warnings on qos function names and constness
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-12-01 10:01:13 +01:00
eboasson
df3d4476b5
Merge pull request #61 from k0ekk0ek/logging
Simplify and consolidate logging and tracing mechanisms
2018-12-01 09:51:43 +01:00
Jeroen Koekkoek
dc11ec3f6b Add Travis CI debug instructions
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-11-30 23:42:58 +01:00
Jeroen Koekkoek
7acf32663e Add tests for new logging implementation
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-11-30 23:42:55 +01:00
Jeroen Koekkoek
5b4ccf3daa Fix bug in CUnit signature parser
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-11-30 23:42:29 +01:00
Jeroen Koekkoek
1cf03332ca Simplify logging and remove unwanted functions from abstraction layer
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-11-30 23:42:19 +01:00
Jeroen Koekkoek
ac020f62f7 Add read-write locks for POSIX
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-11-30 23:32:26 +01:00
eboasson
69f563be5b
Merge pull request #60 from FirasSahliADLinktech/multiple_tests
Some missing unit tests and correct signature
2018-11-30 12:07:44 +01:00
Firas Sahli
6908e3deea
Correct signature and add tests for dds_instance_get_key
Signed-off-by: Firas Sahli <firas.sahli@adlinktech.com>
2018-11-28 10:52:14 +01:00
Firas Sahli
8aa6ceff81
Add test for dds_qos_copy and extra check to dds_qset_partition
Signed-off-by: Firas Sahli <firas.sahli@adlinktech.com>
2018-11-28 10:41:24 +01:00
Firas Sahli
4b627fd9aa
Add simple test for dds_time
Signed-off-by: Firas Sahli <firas.sahli@adlinktech.com>
2018-11-28 10:38:07 +01:00
eboasson
56900b4f1e
Merge pull request #64 from eboasson/master
Update getting started guide to use new QoS function names
2018-11-27 15:36:14 +01:00
Erik Boasson
68f2ce9724 Update getting started guide to use new QoS function names
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-11-27 15:28:20 +01:00
eboasson
22b9aedd0f
Merge pull request #52 from eboasson/qoslistener_naming
Change QoS and listener operations naming to bring them in line with the rest of the API
2018-11-23 09:56:02 +01:00