249c4b1aadf33329c352c4127b2bffa62faaf039
jcasper
  Wed Jan 28 00:58:52 2026 -0800
Added hash function to see if any keys match a wildcard value, refs #36320

diff --git src/lib/hash.c src/lib/hash.c
index c65f836e3e1..5b3280f1be9 100644
--- src/lib/hash.c
+++ src/lib/hash.c
@@ -836,16 +836,32 @@
 for (i=0; i<nameCount; ++i)
     hashAdd(hash, nameArray[i], NULL);
 return hash;
 }
 
 struct hash *hashFromNameValArray(char *nameVal[][2], int nameValCount)
 /* Make up a hash from nameVal array */
 {
 struct hash *hash = newHash(0);
 int i;
 for (i=0; i<nameValCount; ++i)
     hashAdd(hash, nameVal[i][0], nameVal[i][1]);
 return hash;
 }
 
+boolean hashItemExistsLike(struct hash *hash, char *wildcard)
+/* Return TRUE if a variable matching the wildcard is in the hash table. */
+{
+struct hashEl *el, *elList = hashElListHash(hash);
+slSort(&elList, hashElCmp);
+for (el = elList; el != NULL; el = el->next)
+    {
+    if (wildMatch(wildcard, el->name))
+        {
+        hashElFreeList(&elList);
+        return TRUE;
+        }
+    }
+hashElFreeList(&elList);
+return FALSE;
+}