Michael Davidsaver
0fdfeb72d1
Add testudpfwd
2023-04-10 08:47:15 -07:00
Michael Davidsaver
b31a354915
improve localhost multicast forwarding
...
On Linux (at least) packets received through the LO
may have non-LO origin addresses...
2023-04-10 08:44:37 -07:00
Michael Davidsaver
303bc61079
apply loc_bad_alloc to owned_ptr
...
Distinguish location of owned_ptr failure
2023-03-28 15:21:39 -07:00
Michael Davidsaver
6f770d0ea3
final-ize some derived types
2023-03-20 09:41:41 -07:00
Michael Davidsaver
a9699be7e8
minor
2023-01-31 09:54:10 -08:00
Michael Davidsaver
db6b7ba34b
minor
2022-12-27 11:16:35 -08:00
Michael Davidsaver
c66c0fd100
fix printf() spec
2022-04-05 12:00:22 -07:00
Michael Davidsaver
9b4ea35834
testget cover AF_INET6
2022-04-05 07:57:16 -07:00
Michael Davidsaver
d0b62d695f
udp_collector: fix listener filtering
2022-04-05 07:57:16 -07:00
Michael Davidsaver
df4289b4e6
IPv6+mcast support
2022-04-05 07:57:16 -07:00
Michael Davidsaver
923c423055
epicsThreadOnce() wrapper
...
Ensure exceptions are propagated
2022-04-05 07:57:16 -07:00
Michael Davidsaver
7a65a85c99
client: add discover() and pvxlist
2022-04-05 07:57:16 -07:00
Michael Davidsaver
d77ef29b53
quiet warning
2022-04-05 07:57:16 -07:00
Michael Davidsaver
bd9c3cc338
UDPListener add mcast
2022-04-05 07:57:16 -07:00
Michael Davidsaver
47ebfd5371
Accept CMD_ORIGIN_TAG
...
Implement local mcast hack
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
4ee7ce2108
ignore beacons with proto!='tcp'
2021-08-30 13:54:12 -07:00
Michael Davidsaver
6c822ac51a
change UDPManager ownership
...
Avoid strong ref UDPCollector -> UDPManager
2021-07-28 13:07:25 -07:00
Michael Davidsaver
e3465b7ee8
plumb file+line through _to_wire/_from_wire
2021-06-27 10:17:14 -07:00
Michael Davidsaver
8981488cfa
minor
2021-05-17 09:51:31 -07:00
Michael Davidsaver
a064677e36
detect UDP RX buffer overflows
...
On Linux, use SO_RXQ_OVFL to snoop on the OS dropped packet
counter for our socket buffer. Does not detect drops on
ingress, or internal to, to OS IP stack.
2021-01-28 07:44:32 -08:00
Michael Davidsaver
76764cf978
xcode: capture file:line of fault()
2021-01-12 11:32:10 -08:00
Michael Davidsaver
c127e5ae1f
do beacon clean on UDP worker
2020-03-02 15:37:43 -08:00
Michael Davidsaver
187def97f9
fix UDPCollector sharing
2020-02-23 19:43:39 -08:00
Michael Davidsaver
99ce43c0eb
prefer log_*_printf()
2020-02-19 07:10:52 -08:00
Michael Davidsaver
fecdd52e70
update logging
2019-12-19 18:42:39 -08:00
Michael Davidsaver
92c513d6dd
de-templateize xcode
2019-12-10 19:28:54 -08:00
Michael Davidsaver
6292776629
normalize message names to CMD_*
2019-11-20 10:39:30 -08:00
Michael Davidsaver
083bad3e28
redo namespaces
2019-11-19 16:08:03 -08:00
Michael Davidsaver
bab82affb8
redo packet build/parse
...
now with evbuffer
2019-11-19 16:06:43 -08:00
Michael Davidsaver
06e780872b
progress
2019-11-19 16:06:43 -08:00
Michael Davidsaver
985687a54d
test UDP handling
2019-10-27 20:57:11 -07:00
Michael Davidsaver
c886205110
redo UDP handling
2019-10-27 16:19:59 -07:00
Michael Davidsaver
84ac6ed091
move sockaddr wrapper to public API
2019-10-24 10:38:25 -07:00
Michael Davidsaver
8c40929e5c
all sorts of changes
2019-10-23 13:29:31 -07:00
Michael Davidsaver
4f13e21e7b
avoid global static dtor
...
weak_ptr ctor is constexpr, but it has a dtor.
2019-10-23 10:21:44 -07:00
Michael Davidsaver
9ff6de6ecf
must stop c++ exception in C callbacks
2019-10-23 10:03:29 -07:00
Michael Davidsaver
5301785233
drop sockaddr_storage
2019-10-22 18:27:53 -07:00
Michael Davidsaver
c77281128f
log hex
2019-10-21 16:27:47 -07:00
Michael Davidsaver
466044d6a5
initial
2019-10-19 20:17:39 -07:00