diff -up sblim-gather-2.2.9/plugin/cimplugLocalFileSystem.c.orig sblim-gather-2.2.9/plugin/cimplugLocalFileSystem.c --- sblim-gather-2.2.9/plugin/cimplugLocalFileSystem.c.orig 2014-10-09 23:29:09.000000000 +0200 +++ sblim-gather-2.2.9/plugin/cimplugLocalFileSystem.c 2021-08-16 11:44:16.249428364 +0200 @@ -28,14 +28,15 @@ CMPIObjectPath* COP4VALID (CMPIBroker *b { CMPIObjectPath *cop; char *fsclass; - char fsname[300]; + char fsname[301]; char *fstype, *idx2; if (id==NULL || systemid==NULL) { return NULL; } - strncpy(fsname,id,sizeof(fsname)); + strncpy(fsname,id,sizeof(fsname)-1); + fsname[sizeof(fsname)-1] = '\0'; fstype = strchr(fsname,'('); idx2 = strchr(fsname,')'); if (fstype && idx2 && fstype < idx2) { diff -up sblim-gather-2.2.9/provider/OSBase_MetricIndicationProvider.c.orig sblim-gather-2.2.9/provider/OSBase_MetricIndicationProvider.c --- sblim-gather-2.2.9/provider/OSBase_MetricIndicationProvider.c.orig 2014-10-09 23:29:10.000000000 +0200 +++ sblim-gather-2.2.9/provider/OSBase_MetricIndicationProvider.c 2021-08-16 11:40:35.511820637 +0200 @@ -364,10 +364,13 @@ static int removeListenFilter(const CMPI free (lf->lf_namespace); } free(lf); + lf = NULL; state=0; } - prev = lf; - lf = lf->lf_next; + if (lf) { + prev = lf; + lf = lf->lf_next; + } } pthread_mutex_unlock(&listenMutex); return state; diff -up sblim-gather-2.2.9/provider/OSBase_MetricLifeCycleProvider.c.orig sblim-gather-2.2.9/provider/OSBase_MetricLifeCycleProvider.c --- sblim-gather-2.2.9/provider/OSBase_MetricLifeCycleProvider.c.orig 2014-10-09 23:29:10.000000000 +0200 +++ sblim-gather-2.2.9/provider/OSBase_MetricLifeCycleProvider.c 2021-08-16 11:40:35.511820637 +0200 @@ -384,10 +384,13 @@ static int removeListenFilter(const CMPI free (lf->lf_namespace); } free(lf); + lf = NULL; state=0; } - prev = lf; - lf = lf->lf_next; + if (lf) { + prev = lf; + lf = lf->lf_next; + } } pthread_mutex_unlock(&listenMutex); return state;