d133c5
diff --git a/cmd/modutil/install.c b/cmd/modutil/install.c
d133c5
--- a/cmd/modutil/install.c
d133c5
+++ b/cmd/modutil/install.c
d133c5
@@ -825,17 +825,20 @@ rm_dash_r(char *path)
d133c5
 
d133c5
         dir = PR_OpenDir(path);
d133c5
         if (!dir) {
d133c5
             return -1;
d133c5
         }
d133c5
 
d133c5
         /* Recursively delete all entries in the directory */
d133c5
         while ((entry = PR_ReadDir(dir, PR_SKIP_BOTH)) != NULL) {
d133c5
-            sprintf(filename, "%s/%s", path, entry->name);
d133c5
+            if (snprintf(filename, sizeof(filename), "%s/%s", path, entry->name) >= sizeof(filename)) {
d133c5
+                PR_CloseDir(dir);
d133c5
+                return -1;
d133c5
+            }
d133c5
             if (rm_dash_r(filename)) {
d133c5
                 PR_CloseDir(dir);
d133c5
                 return -1;
d133c5
             }
d133c5
         }
d133c5
 
d133c5
         if (PR_CloseDir(dir) != PR_SUCCESS) {
d133c5
             return -1;
d133c5
diff --git a/cmd/signtool/util.c b/cmd/signtool/util.c
d133c5
--- a/cmd/signtool/util.c
d133c5
+++ b/cmd/signtool/util.c
d133c5
@@ -138,6 +138,12 @@ rm_dash_r(char *path)
d133c5
         /* Recursively delete all entries in the directory */
d133c5
         while ((entry = PR_ReadDir(dir, PR_SKIP_BOTH)) != NULL) {
d133c5
             sprintf(filename, "%s/%s", path, entry->name);
d133c5
+            if (snprintf(filename, sizeof(filename), "%s/%s", path, entry->name
d133c5
+) >= sizeof(filename)) {
d133c5
+                errorCount++;
d133c5
+                PR_CloseDir(dir);
d133c5
+                return -1;
d133c5
+            }
d133c5
             if (rm_dash_r(filename)) {
d133c5
                 PR_CloseDir(dir);
d133c5
                 return -1;
d133c5
diff --git a/lib/libpkix/pkix/util/pkix_list.c b/lib/libpkix/pkix/util/pkix_list.c
d133c5
--- a/lib/libpkix/pkix/util/pkix_list.c
d133c5
+++ b/lib/libpkix/pkix/util/pkix_list.c
d133c5
@@ -1530,17 +1530,17 @@ cleanup:
d133c5
  */
d133c5
 PKIX_Error *
d133c5
 PKIX_List_SetItem(
d133c5
         PKIX_List *list,
d133c5
         PKIX_UInt32 index,
d133c5
         PKIX_PL_Object *item,
d133c5
         void *plContext)
d133c5
 {
d133c5
-        PKIX_List *element;
d133c5
+        PKIX_List *element = NULL;
d133c5
 
d133c5
         PKIX_ENTER(LIST, "PKIX_List_SetItem");
d133c5
         PKIX_NULLCHECK_ONE(list);
d133c5
 
d133c5
         if (list->immutable){
d133c5
                 PKIX_ERROR(PKIX_OPERATIONNOTPERMITTEDONIMMUTABLELIST);
d133c5
         }
d133c5
 
d133c5
diff --git a/lib/libpkix/pkix_pl_nss/system/pkix_pl_oid.c b/lib/libpkix/pkix_pl_nss/system/pkix_pl_oid.c
d133c5
--- a/lib/libpkix/pkix_pl_nss/system/pkix_pl_oid.c
d133c5
+++ b/lib/libpkix/pkix_pl_nss/system/pkix_pl_oid.c
d133c5
@@ -102,17 +102,17 @@ cleanup:
d133c5
  */
d133c5
 static PKIX_Error *
d133c5
 pkix_pl_OID_Equals(
d133c5
         PKIX_PL_Object *first,
d133c5
         PKIX_PL_Object *second,
d133c5
         PKIX_Boolean *pResult,
d133c5
         void *plContext)
d133c5
 {
d133c5
-        PKIX_Int32 cmpResult;
d133c5
+        PKIX_Int32 cmpResult = 0;
d133c5
 
d133c5
         PKIX_ENTER(OID, "pkix_pl_OID_Equals");
d133c5
         PKIX_NULLCHECK_THREE(first, second, pResult);
d133c5
 
d133c5
         PKIX_CHECK(pkix_pl_OID_Comparator
d133c5
                     (first, second, &cmpResult, plContext),
d133c5
                     PKIX_OIDCOMPARATORFAILED);
d133c5