Commit Graph

75 Commits

Author SHA1 Message Date
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
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
7ccb64eea6 Fix includes on wrong side of epicsExportSharedSymbols 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
Andrew Johnson
5ffdb89450 Lower-case windows header filename for MinGW builds 2016-03-29 17:18:00 -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
Matej Sekoranja
5279d247ca general indent beautification 2016-03-10 23:36:16 +01:00
Matej Sekoranja
f0417995d0 UDP transport: memory issues fixed 2016-03-09 22:59:21 +01:00
Matej Sekoranja
b1539df759 remote client context: context-provider relationship removed, unnecessary dangling transport creation (server on multiple NIFs) 2016-03-08 22:25:21 +01:00
Matej Sekoranja
87c11d83d2 win32 port 2016-03-06 21:21:26 +01:00
Matej Sekoranja
9b6fdaaaff rtems: reference to 'Thread' is ambiguous 2016-03-03 00:29:54 +01:00
Matej Sekoranja
39739c8437 fixed tricky UDP transport replayTo issue 2016-03-02 22:24:22 +01:00
Matej Sekoranja
c149f81cba std::tr1::static_pointer_cast missing 2016-03-02 13:44:19 +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
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
Michael Davidsaver
069555a524 remove use of throw() specifier 2016-02-10 12:06:35 -05:00
Michael Davidsaver
2cfcee0e2d fixup inconsistent includes 2016-01-26 15:51:10 -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
9eae48aef4 client: multiple NIF support 2016-01-04 19:28:17 +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
fed3bba0dc more descriptive error logs 2015-12-17 14:36:18 +01:00
Matej Sekoranja
523af71b7f duplicate search responses from the same server bound to multiple NIFs filtered out 2015-12-17 14:02:11 +01:00
Matej Sekoranja
125822d18f one instance of responseHandler per context 2015-12-17 09:12:33 +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
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
5d744dbebe BlockingUDPTransport: add replyTransport
allow replies to be sent out on a different socket.
Needed when binding the an interface broadcast address.

Also, expose the ctor and deprecate pointless create() method.
2015-12-14 17:04:58 -05:00
Michael Davidsaver
5206966875 BlockingTCPAcceptor allow bind to specific interface 2015-12-14 17:04:58 -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
4a1bfff40f Remove clearSendQueue
Use BreakTransport exception instead
2015-12-14 16:59:55 -05:00
Michael Davidsaver
f2b47ef5e9 thread shutdown 2015-12-14 16:59:55 -05:00
Michael Davidsaver
730d30fe54 AbstractCodec use fair_queue 2015-12-14 16:59:55 -05:00
Michael Davidsaver
d68b19e703 BlockingTCPAcceptor: smaller listen queue
No good can come from making this large.
2015-12-14 16:59:55 -05:00
Michael Davidsaver
6254525cba use epicsThread and Thread::Config
Catches errant c++ exceptions and is joinable
2015-12-14 16:59:47 -05:00
Michael Davidsaver
b4048c3bfd blockingUDP: error checking 2015-12-14 14:25:20 -05:00
Michael Davidsaver
0fd7b111a1 pre-processor fun 2015-11-24 14:51:25 -05:00
Michael Davidsaver
be01b418f2 use CMD_* instead of magic number 2015-11-23 16:41:31 -05:00
Michael Davidsaver
f561cb97dc shorten thread names
so more of the interesting part is shown by epicsThreadShowAll()
2015-11-23 16:41:31 -05:00
Michael Davidsaver
2e64b1b785 Message for unhandled exceptions in UDP message processing 2015-11-23 16:41:31 -05:00
Michael Davidsaver
839faf66c0 AtomicValue use epicsAtomic if available 2015-11-23 16:41:31 -05:00
Michael Davidsaver
c59715f687 cleanup commented code blocks 2015-11-23 16:41:31 -05:00
Matej Sekoranja
c8c0498cdf using new copy API 2015-02-18 10:03:18 +01:00
Matej Sekoranja
1d58caf40d partialCopy: missing inverse for substructures 2015-02-16 11:38:59 +01:00
Matej Sekoranja
4473fe41c6 statis_pointer_cast namespace fix 2015-02-16 11:27:51 +01:00
Matej Sekoranja
d8ae646e70 unchecked copy 2015-02-16 11:21:13 +01:00