1diff -urN libnl-3.7.0/lib/nl.c libnl-3.7.0_new/lib/nl.c 2--- libnl-3.7.0/lib/nl.c 2022-05-04 00:50:34.000000000 +0800 3+++ libnl-3.7.0_new/lib/nl.c 2024-08-08 15:28:38.266789900 +0800 4@@ -481,7 +481,7 @@ 5 nlh->nlmsg_pid = nl_socket_get_local_port(sk); 6 7 if (nlh->nlmsg_seq == NL_AUTO_SEQ) 8- nlh->nlmsg_seq = sk->s_seq_next++; 9+ nlh->nlmsg_seq = nl_socket_use_seq(sk); 10 11 if (msg->nm_protocol == -1) 12 msg->nm_protocol = sk->s_proto; 13diff -urN libnl-3.7.0/lib/socket.c libnl-3.7.0_new/lib/socket.c 14--- libnl-3.7.0/lib/socket.c 2022-05-24 16:55:12.000000000 +0800 15+++ libnl-3.7.0_new/lib/socket.c 2024-08-08 15:29:22.409796400 +0800 16@@ -22,7 +22,7 @@ 17 */ 18 19 #include "defs.h" 20- 21+#include <limits.h> 22 #include "sys/socket.h" 23 24 #include <netlink-private/netlink.h> 25@@ -291,6 +291,10 @@ 26 */ 27 unsigned int nl_socket_use_seq(struct nl_sock *sk) 28 { 29+ if (sk->s_seq_next == UINT_MAX) { 30+ sk->s_seq_next = 0; 31+ return UINT_MAX; 32+ } 33 return sk->s_seq_next++; 34 } 35 36