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
Michael Davidsaver
3b565d0c56
server GetField ensure no duplicate reply
2017-11-06 16:48:34 -06:00
Michael Davidsaver
84a0729bcf
minor
2017-11-06 16:27:52 -06:00
Michael Davidsaver
c469d49ecb
server: keep most recent GetFieldRequester alive
2017-11-06 16:27:43 -06:00
Michael Davidsaver
0ec4e16373
skip unnecessary static_pointer_casts
2017-11-06 16:12:13 -06:00
Michael Davidsaver
576b241faa
consolidate TransportClient and ChannelImpl as ClientChannelImpl
2017-11-06 15:51:43 -06:00
Michael Davidsaver
7118e34222
merge DataResponse into ResponseRequest
...
DataResponse is only sub-"interface"/class of ResponseRequest.
2017-11-06 15:26:05 -06:00
Michael Davidsaver
3154e3431e
consolidate SubscriptionRequest with BaseRequestImpl
...
"interface" with a single implementation.
combine and de-virtualize
2017-11-06 15:22:09 -06:00
Michael Davidsaver
073c77b1ef
consolidate ServerChannel and ServerChannelImpl
...
"interface" with a single implementation.
combine and de-virtualize.
2017-11-06 15:14:41 -06:00
Michael Davidsaver
46df4c07ca
cleanup ServerChannelImpl
...
const-ify and remove descriptive comments
2017-11-06 14:58:15 -06:00
Michael Davidsaver
5f78671b36
compose ServerResponseHandler
2017-11-06 14:47:10 -06:00
Michael Davidsaver
1d7f15de25
combine AbstractResponseHandler and ResponseHandler
2017-11-06 14:27:46 -06:00
Michael Davidsaver
3071a06000
cleanup server response handlers
...
avoid unnecessary dynamic_cast and ref. counter activity
2017-11-06 14:07:02 -06:00
Michael Davidsaver
aaef110507
eliminate ChannelHostingTransport
...
an "interface" used once. Drop it and de-virtualize.
2017-11-06 13:41:58 -06:00
Michael Davidsaver
02a11fc539
drop long defunct test code
2017-11-06 12:52:26 -06:00
Michael Davidsaver
dcb74b781d
be explicit about epics::auto_ptr
2017-11-06 12:46:13 -06:00
Michael Davidsaver
9bf03fbfbe
no more returning auto_ptr
2017-11-06 12:44:36 -06:00
Michael Davidsaver
0fde239f23
std::auto_ptr -> epics::auto_ptr
2017-11-06 12:37:42 -06:00
Michael Davidsaver
f91b593aea
no need to dllexport inline class w/o virtuals
2017-11-06 11:02:08 -06:00
Michael Davidsaver
161280220e
avoid std::min
2017-11-06 10:57:09 -06:00
Michael Davidsaver
7b301c4c98
pvasr() call Channel::printInfo()
2017-11-05 17:26:52 -06:00
Michael Davidsaver
8d5c27143b
pvasr list client channels
2017-11-05 17:11:28 -06:00
Michael Davidsaver
49173ec884
disable pvAccessMB and unused ref-counting boilerplate
2017-11-05 16:54:10 -06:00
Michael Davidsaver
5e900b1f11
remove super abstract authNZInitialize(void*)
...
with separate client and server calls.
Still dynamic_cast ugliness as Transport and Codec
hierarchies don't have a common root.
2017-11-05 16:41:59 -06:00
Michael Davidsaver
47332fdf90
server status reporting via iocsh
2017-11-05 15:59:01 -06:00
Michael Davidsaver
dc99e2ae4c
add ChannelProviderRegistry::addSingleton()
...
Helper for providers of singleton resources.
Useful for process-wide resources like the PDB.
2017-11-05 12:22:39 -06:00
Michael Davidsaver
5f96f5722e
pvac: client monitor locking
2017-11-05 12:19:10 -06:00
Michael Davidsaver
7ca0688326
second destroy() is a no-op
2017-11-01 14:17:55 -05:00
Michael Davidsaver
e7c7d28339
add PVACommonRegister.dbd and iocreftrack.h
...
Allow use reftrack iocsh commands
w/o pulling in server (or client) singleton,
or including any .dbd (for P2P).
2017-11-01 14:17:55 -05:00
Michael Davidsaver
29edd9a884
rename configure/CONFIG_PVACCESS_VERSION
2017-11-01 14:17:55 -05:00
Marty Kraimer
153c146ed5
Merge pull request #67 from mrkraimer/master
...
caProvider: use weak_pointer where required
2017-10-18 06:14:52 -04:00
mrkraimer
84976121d3
remove obsolete reference counting
2017-10-10 10:09:49 -04:00
mrkraimer
adcf13f02f
Merge https://github.com/epics-base/pvAccessCPP
2017-10-10 09:00:14 -04:00
Ralph Lange
6206c2cdc3
jenkins: remove Micro-Benchmark builds
2017-10-06 16:32:15 +02:00
Michael Davidsaver
2a1ba9418e
pvtools: make -V show version, -v show full structure
2017-10-06 14:36:27 +02:00