opnsense-src/sys/netlink
Igor Ostapenko 18fb9174cd netlink: fix snl_writer and linear_buffer re-allocation logic
- Use the correct base pointer after re-allocation to avoid buffer
  overflows.

- Maintain correct snl_writer.size, which avoids redundant memory
  allocation, e.g. a need for ~1k bytes may end up with ~32k
  linear_buffer actually allocated.

This fixes a pfctl regression at least for armv7 after the addrule logic
migration to netlink:
  ffbf25951e7b ("pf: convert rule addition to netlink")

The add rule command creates a bigger than default size netlink requests
which triggers the re-allocation logic.

Reviewed by:	kp
MFC after:	2 weeks
Differnetial Revision:	https://reviews.freebsd.org/D43003

(cherry picked from commit 0c511bafdd5b309505c13c8dc7c6816686d1e103)
2023-12-27 22:01:38 +01:00
..
route netlink: fix potential llentry lock leak in newneigh handler 2023-11-01 10:05:49 +01:00
ktest_netlink_message_writer.c netlink: move NETLINK define to opt_global.h 2023-10-16 09:42:33 +02:00
ktest_netlink_message_writer.h netlink: use netlink mbufs in the mbuf chains. 2023-06-02 13:14:20 +00:00
netlink.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
netlink_bitset.h netlink: dump interface capabilities with other interface data. 2023-06-16 15:33:49 +00:00
netlink_ctl.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
netlink_debug.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
netlink_domain.c netlink: move NETLINK define to opt_global.h 2023-10-16 09:42:33 +02:00
netlink_generic.c netlink: move NETLINK define to opt_global.h 2023-10-16 09:42:33 +02:00
netlink_generic.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
netlink_generic_kpi.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
netlink_glue.c netlink: move NETLINK define to opt_global.h 2023-10-16 09:42:33 +02:00
netlink_io.c netlink: move NETLINK define to opt_global.h 2023-10-16 09:42:33 +02:00
netlink_linux.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
netlink_message_parser.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
netlink_message_parser.h netlink: Align allocations on __max_align_t, not uint64_t. 2023-08-10 11:12:52 -07:00
netlink_message_writer.c netlink: move NETLINK define to opt_global.h 2023-10-16 09:42:33 +02:00
netlink_message_writer.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
netlink_module.c netlink: move NETLINK define to opt_global.h 2023-10-16 09:42:33 +02:00
netlink_route.c netlink: add unregister call in cleanup 2023-09-25 09:45:06 -04:00
netlink_route.h netlink: dump interface capabilities with other interface data. 2023-06-16 15:33:49 +00:00
netlink_snl.h netlink: fix snl_writer and linear_buffer re-allocation logic 2023-12-27 22:01:38 +01:00
netlink_snl_generic.h netlink: cope with growing requests 2023-10-24 09:45:20 +02:00
netlink_snl_route.h netlink: add IPv4/IPv6 attribute writers using in[6]_addr instead of 2023-05-19 09:45:49 +00:00
netlink_snl_route_compat.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
netlink_snl_route_parsers.h netlink: dump interface capabilities with other interface data. 2023-06-16 15:33:49 +00:00
netlink_sysevent.c kern: Move devctl_systems[] out of sys/sys/devctl.h 2023-06-08 12:28:04 -04:00
netlink_sysevent.h nlsysevent: add default command to the events 2023-06-02 14:22:10 +02:00
netlink_var.h netlink: use custom uma zone for the mbuf storage. 2023-06-01 06:43:39 +00:00