Attention is currently required from: flichtenheld, ordex, plaisthos, 
ralf_lici, stipa.

cron2 has posted comments on this change. ( 
http://gerrit.openvpn.net/c/openvpn/+/1084?usp=email )

Change subject: dco: Add support for float notifications
......................................................................


Patch Set 5:

(1 comment)

Patchset:

PS5:
So, it segfaulted again - which is a different bug than the AF_INET6 thing 
(which seems fixed).  Not sure how to trigger it yet... I had 2 sockets, and 3 
clients this time (something stable on the udp6 socket with peer-id 0 + 1, and 
the floating client on the udp4 socket with peer-id 2).

It got confused again about "something", then tried to delete the peer, and 
segfaulted at the same place (race condition between userspace already having 
deleted half the peer info and then kernel sending up a message?)

Trying to extract the interesting bits

```
2025-07-18 10:32:39 us=870590 dco_do_read
2025-07-18 10:32:39 us=870769 ovpn-dco: received CMD_PEER_FLOAT_NTF, ifindex: 
5651, peer-id 2, address: [AF_INET]193.149.48.173:62227
2025-07-18 10:32:39 us=870881 peer 2 (cron2-freebsd-tc-amd64) floated from 
udp4:193.149.48.172:62227 to [AF_INET]193.149.48.173:62227
2025-07-18 10:32:43 us=883102 dco_do_read
2025-07-18 10:32:43 us=883230 ovpn-dco: received CMD_PEER_FLOAT_NTF, ifindex: 
5651, peer-id 2, address: [AF_INET]193.149.48.172:62227
2025-07-18 10:32:43 us=883293 peer 2 (cron2-freebsd-tc-amd64) floated from 
udp4:193.149.48.173:62227 to [AF_INET]193.149.48.172:62227
(everything fine)

2025-07-18 10:32:55 us=935486 dco_get_peer_stats_multi
2025-07-18 10:32:55 us=935798 dco_parse_peer_multi: parsing message...
2025-07-18 10:32:55 us=935851 dco_update_peer_stat: no link RX bytes provided 
in reply for peer 2
2025-07-18 10:32:55 us=935881 dco_update_peer_stat: no link TX bytes provided 
in reply for peer 2
2025-07-18 10:32:55 us=935900 dco_update_peer_stat: no VPN RX bytes provided in 
reply for peer 2
2025-07-18 10:32:55 us=935919 dco_update_peer_stat: no VPN TX bytes provided in 
reply for peer 2
2025-07-18 10:32:55 us=937904 dco_parse_peer_multi: parsing message...
2025-07-18 10:32:55 us=937991 dco_update_peer_stat / dco_read_bytes: 976
2025-07-18 10:32:55 us=938052 dco_update_peer_stat / dco_write_bytes: 440
2025-07-18 10:32:55 us=938098 dco_update_peer_stat / tun_read_bytes: 0
2025-07-18 10:32:55 us=938151 dco_update_peer_stat / tun_write_bytes: 0
2025-07-18 10:32:55 us=938212 dco_parse_peer_multi: parsing message...
2025-07-18 10:32:55 us=938270 dco_update_peer_stat / dco_read_bytes: 400
2025-07-18 10:32:55 us=938322 dco_update_peer_stat / dco_write_bytes: 440
2025-07-18 10:32:55 us=938366 dco_update_peer_stat / tun_read_bytes: 0
2025-07-18 10:32:55 us=938425 dco_update_peer_stat / tun_write_bytes: 0
2025-07-18 10:32:55 us=938483 dco_parse_peer_multi: parsing message...
2025-07-18 10:32:55 us=938535 dco_update_peer_stat / dco_read_bytes: 13840
2025-07-18 10:32:55 us=938579 dco_update_peer_stat / dco_write_bytes: 13440
2025-07-18 10:32:55 us=938638 dco_update_peer_stat / tun_read_bytes: 10920
2025-07-18 10:32:55 us=938695 dco_update_peer_stat / tun_write_bytes: 10920
2025-07-18 10:32:55 us=939599 dco_do_read
2025-07-18 10:32:55 us=939755 dco_do_read: netlink reports error (-4): Try again

(this "no RX bytes for peer 2" is what I saw yesterday as well, and the "Try 
again")

2025-07-18 10:33:00 us=100235 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 TLS: soft reset sec=56/56 bytes=0/-1 pkts=0/0 
aead_limit_send=0/60129542137 aead_limit_recv=0/60129542137
2025-07-18 10:33:00 us=100434 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 Sent warning SSL alert: close notify
2025-07-18 10:33:00 us=100719 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 dco_del_key: peer-id 2, slot 1

(this still looks normal, skipping the UDP read/write)

2025-07-18 10:33:00 us=132607 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 VERIFY OK: depth=1, C=US, ST=California, L=Pleasanton, O=OpenVPN 
community project, CN=OpenVPN community project CA, 
emailAddress=sam...@openvpn.net
2025-07-18 10:33:00 us=132851 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 VERIFY OK: depth=0, C=DE, ST=Bavaria, L=Munich, O=OpenVPN community 
project, OU=Server Testing, CN=cron2-freebsd-tc-amd64, 
emailAddress=g...@greenie.net
2025-07-18 10:33:00 us=133145 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_VER=2.7_alpha2
2025-07-18 10:33:00 us=133198 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_PLAT=mac
2025-07-18 10:33:00 us=133238 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_TCPNL=1
2025-07-18 10:33:00 us=133283 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_MTU=1600
2025-07-18 10:33:00 us=133315 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_NCP=2
2025-07-18 10:33:00 us=133348 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_CIPHERS=AES-256-GCM:AES-128-GCM:CHACHA20-POLY1305
2025-07-18 10:33:00 us=133385 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_PROTO=3998
2025-07-18 10:33:00 us=133418 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_LZ4=1
2025-07-18 10:33:00 us=133453 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_LZ4v2=1
2025-07-18 10:33:00 us=133487 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_LZO=1
2025-07-18 10:33:00 us=133521 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_COMP_STUB=1
2025-07-18 10:33:00 us=133553 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 peer info: IV_COMP_STUBv2=1
2025-07-18 10:33:00 us=133592 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 Note: 'compress migrate' detected remote peer with compression 
enabled.
2025-07-18 10:33:00 us=133743 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 UDPv4 WRITE [236] to [AF_INET]193.149.48.172:62227: P_CONTROL_V1 
kid=2 [ ] pid=4456 DATA len=222
2025-07-18 10:33:00 us=133834 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 UDPv4 WRITE [287] to [AF_INET]193.149.48.172:62227: P_CONTROL_V1 
kid=2 [ ] pid=4712 DATA len=273
2025-07-18 10:33:00 us=137204 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 UDPv4 READ [78] from [AF_INET]193.149.48.172:62227: P_ACK_V1 kid=2 [ 
] DATA len=68
2025-07-18 10:33:00 us=140572 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 UDPv4 READ [82] from [AF_INET]193.149.48.172:62227: P_ACK_V1 kid=2 [ 
] DATA len=72
2025-07-18 10:33:00 us=140640 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 Control Channel: TLSv1.3, cipher TLSv1.3 TLS_AES_256_GCM_SHA384, peer 
certificate: 2048 bits RSA, signature: RSA-SHA1, peer temporary key: 253 bits 
X25519, peer signing digest/type: SHA256 RSASSA-PSS
2025-07-18 10:33:00 us=140720 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 dco_install_key: peer_id=2 keyid=2, currently 1 keys installed
2025-07-18 10:33:00 us=140767 cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 
peer-id=2 dco_new_key: slot 1, key-id 2, peer-id 2, cipher AES-256-GCM
2025-07-18 10:33:00 us=951542 dco_do_read
2025-07-18 10:33:00 us=951670 ovpn-dco: received CMD_PEER_FLOAT_NTF, ifindex: 
5651, peer-id 2, address: [AF_INET]193.149.48.172:62227
2025-07-18 10:33:00 us=951736 closing instance 
cron2-freebsd-tc-amd64/udp4:193.149.48.172:62227 peer-id=2
2025-07-18 10:33:00 us=951806 dco_get_peer_stats_multi
2025-07-18 10:33:00 us=952053 dco_parse_peer_multi: parsing message...
2025-07-18 10:33:00 us=952099 dco_update_peer_stat / dco_read_bytes: 976
2025-07-18 10:33:00 us=952135 dco_update_peer_stat / dco_write_bytes: 440
2025-07-18 10:33:00 us=952169 dco_update_peer_stat / tun_read_bytes: 0
2025-07-18 10:33:00 us=952478 dco_update_peer_stat / tun_write_bytes: 0
2025-07-18 10:33:00 us=952541 dco_parse_peer_multi: parsing message...
2025-07-18 10:33:00 us=952580 dco_update_peer_stat / dco_read_bytes: 400
2025-07-18 10:33:00 us=952614 dco_update_peer_stat / dco_write_bytes: 440
2025-07-18 10:33:00 us=952663 dco_update_peer_stat / tun_read_bytes: 0
2025-07-18 10:33:00 us=952707 dco_update_peer_stat / tun_write_bytes: 0
2025-07-18 10:33:00 us=952754 dco_parse_peer_multi: parsing message...
2025-07-18 10:33:00 us=952791 dco_parse_peer_multi: cannot store DCO stats for 
peer 2
2025-07-18 10:33:00 us=952892 register signal: SIGTERM (close_context)
2025-07-18 10:33:00 us=952943 dco_del_peer: peer-id 2
2025-07-18 10:33:00 us=972424 Sent warning SSL alert: close notify
2025-07-18 10:33:00 us=972698 Sent warning SSL alert: close notify

Program received signal SIGSEGV, Segmentation fault.
0x0000555555599ef3 in multi_process_float (m=m@entry=0x7fffffffbcc0, 
mi=mi@entry=0x5555556a2050, sock=0x55555564dbe0) at multi.c:3258
3258        msg(D_MULTI_MEDIUM, "peer %" PRIu32 " (%s) floated from %s to %s",
(gdb) list
3253
3254            msg(D_MULTI_MEDIUM, "closing instance %s", 
multi_instance_string(ex_mi, false, &gc));
3255            multi_close_instance(m, ex_mi, false);
3256        }
3257
3258        msg(D_MULTI_MEDIUM, "peer %" PRIu32 " (%s) floated from %s to %s",
3259            mi->context.c2.tls_multi->peer_id,
3260            tls_common_name(mi->context.c2.tls_multi, false),
3261            mroute_addr_print(&mi->real, &gc),
3262            print_link_socket_actual(&m->top.c2.from, &gc));
(gdb) print mi->context.c2.tls_multi
$1 = (struct tls_multi *) 0x0
```



--
To view, visit http://gerrit.openvpn.net/c/openvpn/+/1084?usp=email
To unsubscribe, or for help writing mail filters, visit 
http://gerrit.openvpn.net/settings

Gerrit-Project: openvpn
Gerrit-Branch: master
Gerrit-Change-Id: I33e9272b4196c7634db2fb33a75ae4261660867f
Gerrit-Change-Number: 1084
Gerrit-PatchSet: 5
Gerrit-Owner: ralf_lici <r...@mandelbit.com>
Gerrit-Reviewer: cron2 <g...@greenie.muc.de>
Gerrit-Reviewer: flichtenheld <fr...@lichtenheld.com>
Gerrit-Reviewer: ordex <anto...@mandelbit.com>
Gerrit-Reviewer: plaisthos <arne-open...@rfc2549.org>
Gerrit-Reviewer: stipa <lstipa...@gmail.com>
Gerrit-CC: openvpn-devel <openvpn-devel@lists.sourceforge.net>
Gerrit-Attention: plaisthos <arne-open...@rfc2549.org>
Gerrit-Attention: flichtenheld <fr...@lichtenheld.com>
Gerrit-Attention: ordex <anto...@mandelbit.com>
Gerrit-Attention: ralf_lici <r...@mandelbit.com>
Gerrit-Attention: stipa <lstipa...@gmail.com>
Gerrit-Comment-Date: Fri, 18 Jul 2025 08:39:45 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to