You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
91 lines
3.4 KiB
91 lines
3.4 KiB
diff -urNp a/agent/mibgroup/host/hrh_filesys.c b/agent/mibgroup/host/hrh_filesys.c
|
|
--- a/agent/mibgroup/host/hrh_filesys.c 2021-06-09 10:30:07.744455758 +0200
|
|
+++ b/agent/mibgroup/host/hrh_filesys.c 2021-06-09 10:32:50.657160232 +0200
|
|
@@ -219,6 +219,7 @@ var_hrhfilesys(struct variable *vp,
|
|
{
|
|
int fsys_idx;
|
|
static char *string;
|
|
+ static char empty_str[1];
|
|
|
|
fsys_idx =
|
|
header_hrhfilesys(vp, name, length, exact, var_len, write_method);
|
|
@@ -235,7 +236,7 @@ var_hrhfilesys(struct variable *vp,
|
|
*var_len = 0;
|
|
if (asprintf(&string, "%s", HRFS_entry->path) >= 0)
|
|
*var_len = strlen(string);
|
|
- return (u_char *) string;
|
|
+ return (u_char *)(string ? string : empty_str);
|
|
case HRFSYS_RMOUNT:
|
|
free(string);
|
|
if (HRFS_entry->flags & NETSNMP_FS_FLAG_REMOTE) {
|
|
@@ -245,7 +246,7 @@ var_hrhfilesys(struct variable *vp,
|
|
string = strdup("");
|
|
}
|
|
*var_len = string ? strlen(string) : 0;
|
|
- return (u_char *) string;
|
|
+ return (u_char *)(string ? string : empty_str);
|
|
|
|
case HRFSYS_TYPE:
|
|
fsys_type_id[fsys_type_len - 1] =
|
|
diff -urNp a/agent/mibgroup/ucd-snmp/disk.c b/agent/mibgroup/ucd-snmp/disk.c
|
|
--- a/agent/mibgroup/ucd-snmp/disk.c 2021-06-09 10:30:07.728455689 +0200
|
|
+++ b/agent/mibgroup/ucd-snmp/disk.c 2021-06-09 10:34:32.722597366 +0200
|
|
@@ -842,6 +842,7 @@ var_extensible_disk(struct variable *vp,
|
|
struct dsk_entry entry;
|
|
static long long_ret;
|
|
static char *errmsg;
|
|
+ static char empty_str[1];
|
|
|
|
int i;
|
|
for (i = 0; i < numdisks; i++){
|
|
@@ -950,7 +951,7 @@ tryAgain:
|
|
*var_len = strlen(errmsg);
|
|
}
|
|
}
|
|
- return (u_char *) (errmsg);
|
|
+ return (u_char *)(errmsg ? errmsg : empty_str);
|
|
}
|
|
return NULL;
|
|
}
|
|
diff -urNp a/agent/mibgroup/ucd-snmp/disk_hw.c b/agent/mibgroup/ucd-snmp/disk_hw.c
|
|
--- a/agent/mibgroup/ucd-snmp/disk_hw.c 2021-06-09 10:30:07.727455684 +0200
|
|
+++ b/agent/mibgroup/ucd-snmp/disk_hw.c 2021-06-09 10:35:53.420943010 +0200
|
|
@@ -314,6 +314,7 @@ var_extensible_disk(struct variable *vp,
|
|
unsigned long long val;
|
|
static long long_ret;
|
|
static char *errmsg;
|
|
+ static char empty_str[1];
|
|
netsnmp_cache *cache;
|
|
|
|
/* Update the fsys H/W module */
|
|
@@ -432,7 +433,7 @@ tryAgain:
|
|
>= 0)) {
|
|
*var_len = strlen(errmsg);
|
|
}
|
|
- return (u_char *) errmsg;
|
|
+ return (u_char *)(errmsg ? errmsg : empty_str);
|
|
}
|
|
return NULL;
|
|
}
|
|
diff -urNp a/agent/mibgroup/ucd-snmp/proc.c b/agent/mibgroup/ucd-snmp/proc.c
|
|
--- a/agent/mibgroup/ucd-snmp/proc.c 2021-06-09 10:30:07.725455676 +0200
|
|
+++ b/agent/mibgroup/ucd-snmp/proc.c 2021-06-09 10:37:31.143361548 +0200
|
|
@@ -267,7 +267,7 @@ var_extensible_proc(struct variable *vp,
|
|
struct myproc *proc;
|
|
static long long_ret;
|
|
static char *errmsg;
|
|
-
|
|
+ static char empty_str[1];
|
|
|
|
if (header_simple_table
|
|
(vp, name, length, exact, var_len, write_method, numprocs))
|
|
@@ -330,7 +330,7 @@ var_extensible_proc(struct variable *vp,
|
|
}
|
|
}
|
|
*var_len = errmsg ? strlen(errmsg) : 0;
|
|
- return ((u_char *) errmsg);
|
|
+ return (u_char *)(errmsg ? errmsg : empty_str);
|
|
case ERRORFIX:
|
|
*write_method = fixProcError;
|
|
long_return = fixproc.result;
|