Commit Graph

1456 Commits

Author SHA1 Message Date
Michael Davidsaver
abce3faa86 fix 'pva' provider registration during static linking
Move 'pva' provider registration into registry singleton
construction to ensure that it is done.
2018-01-31 11:51:13 -08:00
Michael Davidsaver
b05ec689d0 pvget/pvinfo check for NULL channel 2018-01-31 11:51:13 -08:00
Michael Davidsaver
c6b1786008 minor doc 2018-01-31 11:51:13 -08:00
Michael Davidsaver
9daf7a0cad remove unnecessary includes 2018-01-31 11:51:13 -08:00
Michael Davidsaver
cce7e10ac4 minor 2018-01-31 11:51:13 -08:00
Michael Davidsaver
d1fca67cf2 ioc: shutdown PVA server via epicsAtExit()
Otherwise is shutdown in global dtor.
Better to use epicsAtExit() which has
some ordering
2017-12-28 11:08:13 -06:00
Michael Davidsaver
903d117485 pvAccessLog() add EPICS_PRINTF_STYLE()
and fixup incorrect specifiers
2017-12-28 10:49:54 -06:00
Michael Davidsaver
f076adc1ae remove unnecessary atexit
The client factory is installed by global
ctor.
2017-12-28 10:38:05 -06:00
Michael Davidsaver
c30d4347d0 notate BlockingUDPTransport w/ OVERRIDE FINAL
and de-virtualize methods never actual overridden
2017-12-19 11:38:26 -06:00
Michael Davidsaver
a10534d74d eliminate Connector interface
no code generically creates UDP or TCP connections,
so this abstraction results only in unnecessary
virtual calls and casts.
2017-12-19 11:38:26 -06:00
Michael Davidsaver
c4fe7150c9 caChannel: no need for weak pvRequest
Operations should keep their pvRequest alive.
The only danger of ref. loops with pvRequest
is via PVUnion, which is outside the scope
of pvAccessCPP.
2017-12-19 11:38:26 -06:00
Ralph Lange
b80e27ed80 jenkins-ci: fix/update CloudBees jobs 2017-12-19 09:00:54 +01:00
Andrew Johnson
0fe7cce7df Update version number after tagging release 2017-12-14 18:39:52 -06:00
Andrew Johnson
8c4353bd57 Reset DEVELOPMENT_FLAG for 6.0.0 release 6.0.0 2017-12-14 18:35:45 -06:00
Michael Davidsaver
457d03508d reduce noise 2017-12-12 09:57:24 -06:00
Michael Davidsaver
4dcc8bffe1 minor 2017-12-12 09:57:24 -06:00
Andrew Johnson
736f7c3ff3 Move EPICS_BASE_PVA_CORE_LIBS to new cfg/CONFIG_PVACCESS_MODULE file
... following the practice of other Base modules.
2017-12-06 22:35:54 -06:00
Andrew Johnson
af43c18765 Include <top>/../RELEASE.<host>.local 2017-12-06 20:36:59 -06:00
Andrew Johnson
2ca5744bb9 Unify .gitignore files 2017-11-30 12:02:10 -06:00
Andrew Johnson
098578c7ba Use 'make test-results' in travis-build script 2017-11-29 16:44:44 -06:00
Andrew Johnson
65b0ac1a32 Fixes needed for older VxWorks GCC 2017-11-29 16:44:19 -06:00
Michael Davidsaver
4e743f2d95 eget remove broken "-m" monitor mode 2017-11-28 17:54:25 -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
bc0892a1ad workaround for older gcc 2017-11-28 17:54:25 -06:00
Michael Davidsaver
d4eb31e729 silence warning
the 'done' flag avoids actual use of uninitialized 'size'.
2017-11-28 17:54:25 -06:00
Andrew Johnson
e61d10200e Merge pull request #74 from mrkraimer/master
This fixes the problems raised in issue #71
2017-11-28 09:04:47 -06:00
Michael Davidsaver
955c1896a1 pvget: always print Timeout 2017-11-27 20:10:33 -06:00
Michael Davidsaver
d1cbb0abd5 pvac: ensure that listeners are done in ClientChannel
ensure no concurrent callback in progress
when removing listeners.
2017-11-22 14:20:26 -06:00
Michael Davidsaver
6055dbb983 pvac user internal/external refs. 2017-11-22 14:14:05 -06:00
Michael Davidsaver
250826ffb9 add reftrack to pvac 2017-11-22 12:32:38 -06:00
mrkraimer
46b19866c7 Merge https://github.com/epics-base/pvAccessCPP 2017-11-20 08:46:58 -05:00
mrkraimer
e4182d0b00 fix incorrect logic 2017-11-18 07:05:34 -05:00
mrkraimer
32d0ece858 fix all problems raised in issue #71 2017-11-17 15:18:21 -05:00
Michael Davidsaver
3f51c74ba1 fix mingw build error 2017-11-16 18:47:39 -06:00
Michael Davidsaver
cf7827ceab quiet mingw include order warning
#warning Please include winsock2.h before windows.h
2017-11-16 18:45:44 -06:00
Michael Davidsaver
e626ca0aaf client const-ify where possible 2017-11-16 17:38:11 -06:00
Michael Davidsaver
f45de1de68 client minor locking 2017-11-16 17:38:11 -06:00
Michael Davidsaver
8e846b02bc tighten up validation 2017-11-16 17:38:11 -06:00
Michael Davidsaver
cc9c666731 Improve client pvRequest option parsing
Give some notice of parse errors
2017-11-16 17:38:11 -06:00
Michael Davidsaver
00e01d5211 tighten up client operation send state handling 2017-11-16 17:03:10 -06:00
Michael Davidsaver
1d56ee7283 pva client ignore CMD_DESTROY_REQUEST reply.
Presently CMD_DESTROY_REQUEST and CMD_CANCEL_REQUEST aren't acknowledged.
This allows ambiguity in when the request ioid goes out of scope.

Currently, the client forgets about an ioid as soon as the destroy request is sent.
So any in-flight response will be erroneously flagged as "Undecipherable message".

Similarly, a cancel request can cross paths with a reply.
This creates confusion in the event the client starts a new
request immediately after canceling the first.

Let's build some forward compatibility by ignoring replies to
cancel and destroy requests.
2017-11-16 17:03:10 -06:00
Michael Davidsaver
b3fcffb18e avoid magic number 2017-11-16 14:56:59 -06:00
Michael Davidsaver
6f39f02f3a more client locking violations
As with #72 more use of m_pendingRequest w/o locking
2017-11-16 14:56:48 -06:00
Michael Davidsaver
ba3b777978 missed one
cf 2f0bb7d448
2017-11-16 11:18:13 -06:00
Michael Davidsaver
5bcbc0d717 Incorrect locking in client monitor 2017-11-15 20:02:25 -06:00
Michael Davidsaver
2f0bb7d448 "Not-a-first segmented message" is a critical error
Let's try to scare users into reporting it more promptly.
2017-11-15 19:38:26 -06:00
Ralph Lange
8a208c5aaa jenkins: remove pvCommon dependency from CB build 2017-11-15 17:23:59 +01:00
Andrew Johnson
dac9337bab Merge pull request #70 from mrkraimer/master
Remove lastRequest messages; in activate() only do callbacks when connected; more weak pointer changes.
2017-11-14 14:26:33 -06:00
mrkraimer
784c6665a6 make pvRequest weak_pointer for get, put, and monitor 2017-11-14 09:11:27 -05:00
mrkraimer
6cd7de069a remove lastRequest messages; in activate only make callback if connected 2017-11-13 05:53:24 -05:00