Commit Graph

70 Commits

Author SHA1 Message Date
Michael Davidsaver
93dc0f4f1a drop unused 2018-07-06 11:20:34 -07:00
Michael Davidsaver
59a65ce317 discoverInterfaces() fixup bcast address on win32
Apparently SIO_GET_INTERFACE_LIST sometimes gives
the global broadcast (255.255.255.255) for one of
the interfaces.  In this case silently compute
the iface bcast address.
2018-07-02 18:54:05 -07:00
Michael Davidsaver
7912718664 discoverInterfaces() compat RTEMS 2018-07-02 15:32:10 -07:00
Michael Davidsaver
fc037f0a39 drop getBroadcastAddresses()
in favor of discoverInterfaces().

if we have to do NIC discovery ourselves, then at least
avoid mixing our results with the similar, but not identical
results of osiSockDiscoverBroadcastAddresses() from Base.
2018-07-02 14:39:37 -07:00
Michael Davidsaver
c5419f9487 revise discoverInterfaces()
change interface to distingush between bcast and point2point.
add netmask to truly distinguish unicast from bcast.
fix some minor (I think) errors in the bsd socks impl (use of clobbered buffer).
cleanup win32 impl. bcast and p2p handling.
2018-07-02 14:39:36 -07:00
Michael Davidsaver
53a63f9a1f inetAddressUtil: save ifr_addr before query of IFFLAGS
Save before later calls clobber the buffer (was corrupting
sin_family).
2018-07-02 14:39:36 -07:00
Michael Davidsaver
3abd77a42c fix IntrospectionRegistry error handling
Calling code can't deal with "cache" miss,
which indicates either a protocol error (use of invalid ID),
or a logic error on our part (didn't save ID).
In either case, better to throw an exception than to crash.
2018-06-22 13:28:49 -07:00
Michael Davidsaver
685490fc1a no NDEBUG
Apparently the Base makefiles never have defined NDEBUG.
So no point for this conditional.
2018-02-14 08:55:01 -08:00
Michael Davidsaver
c6b1d3b738 fairQueue: logic error allows perpetual clear()
oops, the argument isn't cleared in all
cases, and can be swapped in.
As in the case of clear().
2018-02-13 17:58:56 -08:00
Michael Davidsaver
f1defe4e9f mark NamedLockPattern as deprecated
just too hard to use (exception) safely
2018-02-01 19:00:38 -08:00
Michael Davidsaver
58f996fd98 update transportRegistry
avoid leaks of SOCKET and leaving mutex locked
when exceptions are thrown.
2018-02-01 18:54:25 -08:00
Michael Davidsaver
cce7e10ac4 minor 2018-01-31 11:51:13 -08:00
Michael Davidsaver
903d117485 pvAccessLog() add EPICS_PRINTF_STYLE()
and fixup incorrect specifiers
2017-12-28 10:49:54 -06:00
Michael Davidsaver
0161799c93 must zero osiSockAddr prior to use!
RTEMS depends on this or eg. bind()
will fail because comparison with
list of interface addresses is done
with memcmp()!
2017-11-28 17:54:25 -06:00
Michael Davidsaver
5137b90f56 minor client message handling
avoid unnecessary dynamic_cast
2017-09-06 13:49:24 -05:00
Michael Davidsaver
90e8276758 fixup point to point interface handling.
with bcast interfaces, send searches to bcast address
and !WIN32 binds bcast address to receive searches.

with point to point, send searches to dest address.
can't bind dest address (not local).

quiets spurious error message:

> Error binding socket: Cannot assign requested address.

Encountered with a P2P link setup by openvpn.
2017-09-06 10:38:20 -05:00
Michael Davidsaver
e8adc57897 getBroadcastAddresses oops 2017-09-02 10:22:08 -05:00
Michael Davidsaver
27ec187bd4 inetAddressUtil no more new vector
no more allocating vector.
2017-09-02 09:55:15 -05:00
Michael Davidsaver
0f8865e1ea pv/inetAddressUtil.h no longer public 2017-09-02 09:55:15 -05:00
Michael Davidsaver
937fb154c1 update release notes 2017-07-18 19:06:55 +02:00
Michael Davidsaver
10b4ba8ae5 requester.h import/export 2017-07-18 16:09:53 +02:00
Michael Davidsaver
2c530868f6 split out caprovider as libpvAccessCA
fixup multi-library build
2017-07-17 13:51:20 +02:00
Michael Davidsaver
0222463123 update requester.h
move to pvAccess namespace.
2017-07-12 14:26:28 +02:00
Michael Davidsaver
042b3e7b0f requester.h moves from pvDataCPP 2017-07-12 13:14:02 +02:00
Michael Davidsaver
6fb8385d29 avoid op on uninitialized value warnings 2017-07-11 14:38:07 +02:00
Michael Davidsaver
e75ba66409 move Destroyable to pva namespace 2017-07-05 11:57:10 +02:00
Michael Davidsaver
ceefa7301d move destroyable.h from pvDataCPP 2017-07-05 11:51:06 +02:00
Michael Davidsaver
35d2c610bf separate ChannelProviderRegistry for client/server 2017-06-21 14:41:24 +02:00
Michael Davidsaver
65cdff288f Configuration list keys 2017-06-01 01:54:17 +02:00
Michael Davidsaver
0fbbcc2d9f remove deprecated Properties 2017-05-30 17:33:04 +02:00
Andrew Johnson
0f61408a28 Minor clean-up after issue #43 fix. 2016-04-14 11:36:14 -05:00
Matej Sekoranja
6dc9b0f96f replaced LGPL wildcard matcher w/ simplistic epics-base version 2016-04-14 11:31:32 +02:00
Andrew Johnson
e28fd6129e Remove need to undef epicsExportSharedSymbols
This approach works OK, but makes it much harder to find files
that have mistakes in them since they can cause other functions
to get the wrong import/export setting.
2016-04-06 10:59:23 -05:00
Andrew Johnson
1e031bf393 Reorder some include lines
Order should be
    Compiler, OS, Base, pvData, pvAccess
This makes it much easier to get the epicsExport stuff right.
2016-04-06 10:59:23 -05:00
Andrew Johnson
12d68fe209 Add epicsExportSharedSymbols, move some includes 2016-04-06 10:59:22 -05:00
Andrew Johnson
7ed5f8b4bf Wrong keyword, use epicsShareFunc 2016-04-06 10:59:22 -05:00
Matej Sekoranja
5279d247ca general indent beautification 2016-03-10 23:36:16 +01:00
Matej Sekoranja
87c11d83d2 win32 port 2016-03-06 21:21:26 +01:00
Matej Sekoranja
56b6279035 manual merge 2016-03-02 13:34:05 +01:00
Matej Sekoranja
1ca3918afa local multicast reimplemented 2016-03-01 12:11:25 +01:00
Matej Sekoranja
9be026efc7 allow EPICS_PVAS_INTF_ADDR_LIST=127.0.0.1, tests pass now 2016-02-25 10:37:44 +01:00
Michael Davidsaver
58914fd093 update Makefiles for pv/
add pv/ prefix for INC
2016-01-26 15:50:49 -05:00
Michael Davidsaver
49058d260b move installed headers to pv/ sub-dir 2016-01-26 15:36:07 -05:00
Michael Davidsaver
315bd87f8e drop copy of epicsParse* 2016-01-05 13:11:46 -05:00
Michael Davidsaver
6f85c869ba configuration: use typeCast instead of epicsParse*
Since typeCast wraps epicsParse*, including base 3.14
compatibility.
2016-01-05 13:11:33 -05:00
Michael Davidsaver
837c10a003 fair_queue: struct offsetof() only with POD struct
In C++ offsetof() is not specified on non-POD structs
(eg. having methods or non-POD members).
2016-01-05 11:49:32 -05:00
Matej Sekoranja
21a1dad07f server: multiple NIF support for UDP 2016-01-04 14:12:19 +01:00
Matej Sekoranja
63a0c71fe9 local multicast revised for multiple NIF (server side only) 2015-12-31 11:18:49 +01:00
Matej Sekoranja
91b5cc707d fixed testChannelAccess 2015-12-16 13:52:56 +01:00
Matej Sekoranja
d7eafcb9c5 EPICS base 3.14/clang compilation, TCPAcceptor shutdown on OSX (BSD) fixed 2015-12-16 11:46:58 +01:00