X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/55afa6a4e8886b665eb1c75d377b626314eb224e..2b60a54adb3b0bf5a9b927708085492b816a6015:/sbr/context_find.c diff --git a/sbr/context_find.c b/sbr/context_find.c index ad70f069..4d89fbc5 100644 --- a/sbr/context_find.c +++ b/sbr/context_find.c @@ -1,6 +1,4 @@ - -/* - * context_find.c -- find an entry in the context/profile list +/* context_find.c -- find an entry in the context/profile list * * This code is Copyright (c) 2002, by the authors of nmh. See the * COPYRIGHT file in the root directory of the nmh distribution for @@ -16,7 +14,7 @@ context_find (const char *str) struct node *np; for (np = m_defs; np; np = np->n_next) - if (!strcasecmp (np->n_name ? np->n_name : "", str ? str : "")) + if (!strcasecmp (FENDNULL(np->n_name), FENDNULL(str))) return (np->n_field); return NULL; @@ -52,3 +50,21 @@ context_find_by_type (const char *string, const char *type, return value; } + + +/* + * Helper function to search profile an entry with name beginning with prefix. + * The search is case insensitive. + */ +int +context_find_prefix (const char *prefix) { + struct node *np; + + for (np = m_defs; np; np = np->n_next) { + if (np->n_name && ! strncasecmp (np->n_name, prefix, strlen(prefix))) { + return 1; + } + } + + return 0; +}