Commit Graph

211 Commits

Author SHA1 Message Date
Michael Davidsaver cc5d382930 client: monitor yield "complete" updates
Populate unchanged fields with most recently received value.
2022-11-27 08:20:13 -08:00
Michael Davidsaver 53f83b6429 Add Value::clear() 2022-11-27 08:20:13 -08:00
Michael Davidsaver bdcbf130d2 expand spam example/test
Add a fixed rate counter in addition to
variable rate/pipeline counters.
add eatspam client

Not really an reasonable example anymore
2022-11-27 08:20:13 -08:00
Michael Davidsaver a4c6540c97 Add TypeDef::as() overload to change Struct -> StructA 2022-11-25 08:03:32 -08:00
Michael Davidsaver 8333ce30ec re-define user bufferevent limits in terms of OS buffer size 2022-10-14 10:20:51 -07:00
Michael Davidsaver 06f1a8c2db fix Timer ownership 2022-10-14 10:20:51 -07:00
Michael Davidsaver 89c02b47db allow TypeDef to append StructA and UnionA 2022-10-11 09:15:58 -07:00
Michael Davidsaver 490f59ca55 update testtype 2022-09-26 16:01:35 -07:00
Michael Davidsaver ec8d0df1b3 allow override of sendBE and test all combinations
Cross-testing client/server with all byte order combinations.
2022-05-18 12:27:33 -07:00
Michael Davidsaver f2297691cc testxcode add cache test 2022-04-05 12:00:22 -07:00
Michael Davidsaver c2f1f13bb3 server: fix beacons TX on Linux 2022-04-05 07:57:16 -07:00
Michael Davidsaver bd9fcd8586 add testwild
test behavior when binding to ipv4/6 wildcard interfaces
2022-04-05 07:57:16 -07:00
Michael Davidsaver e809da219d evsocket::ipstack 2022-04-05 07:57:16 -07:00
Michael Davidsaver 1be0477ee6 evsocket::canIPv6 once 2022-04-05 07:57:16 -07:00
Michael Davidsaver 9b4ea35834 testget cover AF_INET6 2022-04-05 07:57:16 -07:00
Michael Davidsaver 8e56972dbc testsock check bind() order behavior for ipv4/6 2022-04-05 07:57:16 -07:00
Michael Davidsaver df4289b4e6 IPv6+mcast support 2022-04-05 07:57:16 -07:00
Michael Davidsaver f67f27e96b Portable capture of destination interface and IP address
Use recvmsg() and control messages IP_PKTINFO (Linux, OSX, Windows)
or IP_ORIGDSTADDR and IP_RECVIF (RTEMS w/ libbsd) to find the
index of the logical interface through which a UDP packet was received,
and the destination address from the IPv4 header.

Also, clear IP_MULTICAST_ALL on Linux to disable non-compliant legacy brokenness
and receive only those multicasts we are interested in.
2022-04-05 07:57:16 -07:00
Michael Davidsaver 49144445f7 minor 2021-10-28 10:04:25 -07:00
Michael Davidsaver bbfa429c72 change up client rawRequest()
.rawRequest(Value()) is a no-op.
A truly empty request structure makes no sense.
2021-09-13 19:24:07 -07:00
Michael Davidsaver 3382b35975 testStrMatch() portability 2021-08-30 21:14:17 -07:00
Michael Davidsaver 2ab0d662bf test de/re-encode w/ non-conformant field names 2021-08-26 10:36:05 -07:00
Michael Davidsaver c503eece31 spell check 2021-08-13 15:18:31 -07:00
Michael Davidsaver 98edf61de8 Add client/server fromEnv() without temporary Config on caller stack 2021-08-06 12:34:32 -07:00
Michael Davidsaver ed6fa0bd1a fix encoding of (Sub)Struct w/ valid set 2021-07-19 12:46:52 -07:00
Michael Davidsaver 5abe43f3d6 server: test Source ordering
when resolving duplicate a PV name
2021-07-17 10:36:07 -07:00
Michael Davidsaver dfbed0c850 server ExecOp timer 2021-07-17 08:22:25 -07:00
Michael Davidsaver 5fb81b88b1 ci: run tests w/ RTEMS5 2021-07-07 12:52:55 -07:00
Michael Davidsaver f7b3821e10 client: consistent Channel disconnect handling
More commonality betwee disconnect and CMD_DESTROY_CHANNEL.

squash! client: consistent Channel disconnect handling

Periodic cache cleaning
2021-07-06 18:32:36 -07:00
Michael Davidsaver 55f8b91ede testmon cover server close channel
int addition to server restart/disconnect
2021-07-02 16:44:02 -07:00
Michael Davidsaver 302557e46d fixup expert API handling 2021-07-02 16:44:02 -07:00
Michael Davidsaver b896b1804c optimize xcode of shared_array with POD elements 2021-07-02 16:44:02 -07:00
Michael Davidsaver 0e5bd37b6e minor 2021-07-02 13:15:50 -07:00
Michael Davidsaver f8cdcd4f91 RTEMS5/libbsd support 2021-06-27 10:17:14 -07:00
Michael Davidsaver e287ce5a58 data: Value in/out from enum{} 2021-06-27 10:17:14 -07:00
Michael Davidsaver a32f82ca35 unittest: harden string comparison
std::string::compare((char*)nullptr) crashes circa gcc 4.8
in call to strlen(nullptr).
2021-06-27 10:17:14 -07:00
Michael Davidsaver d33672a859 extend testdata 2021-06-27 10:17:14 -07:00
Michael Davidsaver 4ea98d61f6 test GUID printing 2021-06-27 10:17:13 -07:00
Michael Davidsaver c76c2806f3 add MPSCFIFO 2021-06-27 10:17:13 -07:00
Michael Davidsaver bb341e0e3e client: test bad pvRequest 2021-06-27 10:17:13 -07:00
Michael Davidsaver 3dd4dd6a66 client: different onInit() for monitor 2021-06-27 10:17:13 -07:00
Michael Davidsaver cd990fb459 reExecGet/Put() 2021-06-27 10:17:13 -07:00
Michael Davidsaver 708fbc8062 client: add *Builder::syncCancel(bool)
Option for asynchronous cancel (eg. implicitly through ~Operation).
2021-06-27 10:17:13 -07:00
Michael Davidsaver bcc46f0389 workaround limitations of moving std::function<void()> 2021-06-27 10:17:13 -07:00
Michael Davidsaver bd6fb00dd5 evhelper external/internal 2021-06-27 10:17:13 -07:00
Michael Davidsaver 8eac7c9941 client: relax exec() synchronization for connect() 2021-06-27 10:17:13 -07:00
Michael Davidsaver ccda2bd51e test client/server Report 2021-06-27 10:17:13 -07:00
Michael Davidsaver c15285c272 testutil show PVXS_VERSION 2021-06-27 10:17:13 -07:00
Michael Davidsaver dbed32309e add osdGetRoles() 2021-06-27 10:17:13 -07:00
Michael Davidsaver 904dff1c37 start testutil 2021-06-08 09:45:49 -07:00