Michael Davidsaver
6fcfd60bd5
BlockingUDPTransport wrap close() to break ref. loop
2017-06-02 12:32:12 +02:00
Michael Davidsaver
48b3b648ef
add ServerContext::getCurrentConfig()
2017-06-01 01:56:46 +02:00
Michael Davidsaver
8971d2771c
ServerContextImpl::destroyAllTransports()
...
Better check for ref. leaks
2017-05-31 15:58:15 +02:00
Michael Davidsaver
3fa6a4e4cc
TransportRegistry composed
...
no need for a seperate allocation and shared_ptr
2017-05-31 15:48:30 +02:00
Michael Davidsaver
3ad27665e8
BlockingTCPTransportCodec::close() wait for threads
2017-05-31 15:47:46 +02:00
Michael Davidsaver
634e50e011
startPVAServer() has to keep the pointer
2017-05-31 12:18:42 +02:00
Michael Davidsaver
ce25f0b175
ServerContext ref. loop breaking and threading
...
Drop unnecessary "worker" thread which does no work.
Ensure that returned shared_ptr is unique()==true.
Add ServerContext::create() to start a new server
with specific config and/or providers
2017-05-31 11:40:51 +02:00
Michael Davidsaver
277e5c33fb
privatize some API details
...
hide a number of APIs which should not
be public APIs.
2017-05-30 17:12:31 +02:00
Michael Davidsaver
7c85e6073b
move ServerContextImpl into private header
2017-05-30 12:07:23 +02:00
Michael Davidsaver
b05e7699b5
remove no-op lock/unlock from Lock sub-classes
2017-05-24 17:20:17 -04:00
Michael Davidsaver
4a9d79f019
sockAddrToA -> sockAddrToDottedIP
...
Avoid blocking host name lookup for debug log messages.
Can cause long delays when DNS not available.
2017-04-15 11:48:24 -04:00
Matej Sekoranja
4e264f2295
win32: moved osiSockAttach() call before loadConfiguration
...
should fix #45
2016-04-26 20:48:27 +02:00
Andrew Johnson
6698bb86fb
Additional includes needed for MSVC
2016-04-06 17:02:03 -05:00
Andrew Johnson
9a8644033d
Prevent redefinition of NOMINMAX
...
While this protection is not strictly necessary here, if someone
does a cut-and-paste into a header file it should be included.
2016-04-06 15:22:11 -05:00
Andrew Johnson
0ad8ece840
Define and use GETPID() macro
2016-04-06 15:19:35 -05: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
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
85e881fbcd
send udp transport initialization order, search response broadcast transport null check
...
closes #39
2016-03-23 21:10:04 +01:00
Michael Davidsaver
15449dde6b
used aliased names for Monitor*
2016-03-18 15:01:48 -04:00
Matej Sekoranja
5279d247ca
general indent beautification
2016-03-10 23:36:16 +01:00
Matej Sekoranja
56b6279035
manual merge
2016-03-02 13:34:05 +01:00
Matej Sekoranja
0db4a9a342
udp transport initialization refactoring (deduplication)
2016-03-02 12:37:58 +01:00
Matej Sekoranja
87fa71070d
automatic broadcast port
2016-03-02 11:08:58 +01:00
Matej Sekoranja
1ca3918afa
local multicast reimplemented
2016-03-01 12:11:25 +01:00
Matej Sekoranja
7bfe58f1e2
UDP transport shutdown fixed
2016-02-25 10:37:01 +01:00
Matej Sekoranja
f0ca714214
AUTO_ADDR_LIST - no fallback (as in CA)
2016-02-25 10:30:09 +01:00
Matej Sekoranja
53d658e190
pipeline server: missing ensureData on free elements report
2016-02-19 15:09:17 +01:00
Michael Davidsaver
069555a524
remove use of throw() specifier
2016-02-10 12:06:35 -05: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
5019969d8a
getSubField -> getSubFieldT to avoid potential NULL de-ref.
2016-01-25 12:30:25 -05:00
Matej Sekoranja
0beb3149a1
server: channel destroyed before CHANNEL_CREATE message is sent
2016-01-06 22:35:30 +01:00
Michael Davidsaver
d7e0365f1e
ServerChannelRequesterImpl::channelStateChange not everything is disconnect
2016-01-05 20:04:48 -05:00
Matej Sekoranja
db002e51c8
TODO cleanup
2016-01-04 20:12:09 +01:00
Matej Sekoranja
21a1dad07f
server: multiple NIF support for UDP
2016-01-04 14:12:19 +01:00
Matej Sekoranja
708379ec0a
udp init cleanup, auto beacon addr list
2015-12-31 11:53:12 +01:00
Matej Sekoranja
63a0c71fe9
local multicast revised for multiple NIF (server side only)
2015-12-31 11:18:49 +01:00
Matej Sekoranja
52161dff60
udp cntd
2015-12-17 22:05:25 +01:00
Matej Sekoranja
fed3bba0dc
more descriptive error logs
2015-12-17 14:36:18 +01:00
Matej Sekoranja
125822d18f
one instance of responseHandler per context
2015-12-17 09:12:33 +01:00
Matej Sekoranja
a692546170
ServerChannelRequesterImpl::getRequesterName() returns client's address
2015-12-16 23:30:53 +01:00
Matej Sekoranja
4a7f057af1
server channel destroy notification to the client
2015-12-16 14:45:20 +01:00
Michael Davidsaver
76b414dac6
todo: disable local mcast fanout
2015-12-14 17:04:58 -05:00
Michael Davidsaver
96deab1e77
todo: placeholder needs to be filled in
2015-12-14 17:04:58 -05:00
Michael Davidsaver
7b72669860
todo: locking in channelmonitor
2015-12-14 17:04:58 -05:00
Michael Davidsaver
b3d58266a7
ServerContextImpl: bind to a single interface
...
Allow config option EPICS_PVAS_INTF_ADDR_LIST specify a single
interface (multiple interfaces to be handled later)
Bind TCP listen and UDP sender to the interface address.
For non-windows, bind a second UDP socket to the interface
broadcast address.
Allow dynamic broadcast port
2015-12-14 17:04:58 -05:00
Michael Davidsaver
03e5b0c747
Allow ServerContextImpl to be created w/ specific conf.
2015-12-14 17:04:57 -05:00
Michael Davidsaver
b9dd9e8e6c
getRemoteName()
...
Cache the TCP peer address as a string and pass it to createChannel().
2015-12-14 17:04:57 -05:00
Michael Davidsaver
f2b47ef5e9
thread shutdown
2015-12-14 16:59:55 -05:00