net-snmp: fix compilation with GCC 14

Refresh 900-musl-compat.patch, add missing headers & fixes incompatible pointer type is now an error.

Signed-off-by: Aditya Nugraha <vortexilation@gmail.com>
This commit is contained in:
Aditya Nugraha 2024-05-14 07:43:33 +07:00 committed by Rosen Penev
parent df3cc00bdd
commit fe5fd2c2b1
3 changed files with 30 additions and 10 deletions

View File

@ -1,6 +1,6 @@
--- /dev/null --- /dev/null
+++ b/agent/mibgroup/ieee802dot11.c +++ b/agent/mibgroup/ieee802dot11.c
@@ -0,0 +1,4915 @@ @@ -0,0 +1,4916 @@
+/**************************************************************************** +/****************************************************************************
+* * +* *
+* File Name: ieee802dot11.c * +* File Name: ieee802dot11.c *
@ -30,6 +30,7 @@
+#include <net-snmp/agent/net-snmp-agent-includes.h> +#include <net-snmp/agent/net-snmp-agent-includes.h>
+#include "ieee802dot11.h" +#include "ieee802dot11.h"
+#include "iwlib.h" +#include "iwlib.h"
+#include "util_funcs/header_generic.h"
+ +
+/**************************************************************************** +/****************************************************************************
+* Defines * +* Defines *
@ -4700,12 +4701,12 @@
+addList ( char *l, char *data, int len ) +addList ( char *l, char *data, int len )
+{ +{
+ char uid[256]; + char uid[256];
+ LIST_HEAD ( , avNode ) *list; + avList_t *list;
+ +
+ // NOTE: this assumes the UID is at the beginning of the + // NOTE: this assumes the UID is at the beginning of the
+ // data structure and that UIDs are strings + // data structure and that UIDs are strings
+ +
+ list = ( LIST_HEAD ( , avNode ) * ) l; // NOTE: don't know how to get + list = ( avList_t * ) l; // NOTE: don't know how to get
+ strcpy ( uid, data ); // rid of compiler warning on + strcpy ( uid, data ); // rid of compiler warning on
+ // LISTHEAD typecast + // LISTHEAD typecast
+ // create a new node and the data that goes in it + // create a new node and the data that goes in it
@ -4787,9 +4788,9 @@
+****************************************************************************/ +****************************************************************************/
+static void flushList ( char *l ) +static void flushList ( char *l )
+{ +{
+ LIST_HEAD ( , avNode ) *list; + avList_t *list;
+ +
+ list = ( LIST_HEAD ( , avNode ) * ) l; // NOTE: don't know how to get + list = ( avList_t * ) l; // NOTE: don't know how to get
+ while ( !LIST_EMPTY ( list )) { // rid of compiler warning on + while ( !LIST_EMPTY ( list )) { // rid of compiler warning on
+ np = LIST_FIRST ( list ); // LISTHEAD typecast + np = LIST_FIRST ( list ); // LISTHEAD typecast
+ if ( np->data ) + if ( np->data )
@ -4918,7 +4919,7 @@
+ +
--- /dev/null --- /dev/null
+++ b/agent/mibgroup/ieee802dot11.h +++ b/agent/mibgroup/ieee802dot11.h
@@ -0,0 +1,730 @@ @@ -0,0 +1,732 @@
+/**************************************************************************** +/****************************************************************************
+* * +* *
+* File Name: ieee802dot11.h * +* File Name: ieee802dot11.h *
@ -5648,10 +5649,12 @@
+WriteMethod write_dot11SupportedRxAntenna; +WriteMethod write_dot11SupportedRxAntenna;
+WriteMethod write_dot11DiversitySelectionRx; +WriteMethod write_dot11DiversitySelectionRx;
+ +
+void shutdown_ieee802dot11 ( void );
+
+#endif /* _MIBGROUP_IEEE802DOT11_H */ +#endif /* _MIBGROUP_IEEE802DOT11_H */
--- /dev/null --- /dev/null
+++ b/agent/mibgroup/iwlib.h +++ b/agent/mibgroup/iwlib.h
@@ -0,0 +1,502 @@ @@ -0,0 +1,509 @@
+/* +/*
+ * Wireless Tools + * Wireless Tools
+ * + *
@ -5683,6 +5686,9 @@
+#include <unistd.h> +#include <unistd.h>
+#include <netdb.h> /* gethostbyname, getnetbyname */ +#include <netdb.h> /* gethostbyname, getnetbyname */
+#include <net/ethernet.h> /* struct ether_addr */ +#include <net/ethernet.h> /* struct ether_addr */
+#ifdef HAVE_NET_IF_H
+#include <net/if.h>
+#endif
+#include <sys/time.h> /* struct timeval */ +#include <sys/time.h> /* struct timeval */
+#include <unistd.h> +#include <unistd.h>
+ +
@ -5739,6 +5745,10 @@
+ && LINUX_VERSION_CODE < KERNEL_VERSION(2,1,0) + && LINUX_VERSION_CODE < KERNEL_VERSION(2,1,0)
+#define LIBC5_HEADERS +#define LIBC5_HEADERS
+ +
+/* Musl */
+#elif !defined(__GLIBC__) && LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0)
+#define GENERIC_HEADERS
+
+/* Unsupported combination */ +/* Unsupported combination */
+#else +#else
+#error "Your kernel/libc combination is not supported" +#error "Your kernel/libc combination is not supported"

View File

@ -0,0 +1,10 @@
--- a/agent/mib_modules.c
+++ b/agent/mib_modules.c
@@ -42,6 +42,7 @@
#include <net-snmp/agent/table.h>
#include <net-snmp/agent/table_iterator.h>
#include "mib_module_includes.h"
+#include "mibgroup/ieee802dot11.h"
static int need_shutdown = 0;

View File

@ -1,8 +1,8 @@
--- a/agent/mibgroup/iwlib.h --- a/agent/mibgroup/iwlib.h
+++ b/agent/mibgroup/iwlib.h +++ b/agent/mibgroup/iwlib.h
@@ -85,6 +85,10 @@ @@ -92,6 +92,10 @@
&& LINUX_VERSION_CODE < KERNEL_VERSION(2,1,0) #elif !defined(__GLIBC__) && LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0)
#define LIBC5_HEADERS #define GENERIC_HEADERS
+/* Musl */ +/* Musl */
+#elif !defined(__GLIBC__) && LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#elif !defined(__GLIBC__) && LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0)