Fix lsearch ret=full
[users/jgh/exim.git] / src / src / lookups / nis.c
index 10ecf74c95d6af000175415c4094fffc7aa51ea2..3747f83d4866b2cb576f0be54d8470c9970c6059 100644 (file)
@@ -3,6 +3,7 @@
 *************************************************/
 
 /* Copyright (c) University of Cambridge 1995 - 2015 */
+/* Copyright (c) The Exim Maintainers 2020 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 #include "../exim.h"
@@ -42,7 +43,8 @@ code. */
 
 static int
 nis_find(void * handle, const uschar * filename, const uschar * keystring,
-  int length, uschar ** result, uschar ** errmsg, uint * do_cache)
+  int length, uschar ** result, uschar ** errmsg, uint * do_cache,
+  const uschar * opts)
 {
 int rc;
 uschar *nis_data;
@@ -68,7 +70,8 @@ return (rc == YPERR_KEY || rc == YPERR_MAP)? FAIL : DEFER;
 
 static int
 nis0_find(void * handle, const uschar * filename, const uschar * keystring,
-  int length, uschar ** result, uschar ** errmsg, uint * do_cache)
+  int length, uschar ** result, uschar ** errmsg, uint * do_cache,
+  const uschar * opts)
 {
 int rc;
 uschar *nis_data;
@@ -104,27 +107,27 @@ fprintf(f, "Library version: NIS: Exim version %s\n", EXIM_VERSION_STR);
 
 
 static lookup_info nis_lookup_info = {
-  US"nis",                       /* lookup name */
-  0,                             /* not abs file, not query style*/
-  nis_open,                      /* open function */
-  NULL,                          /* check function */
-  nis_find,                      /* find function */
-  NULL,                          /* no close function */
-  NULL,                          /* no tidy function */
-  NULL,                          /* no quoting function */
-  nis_version_report             /* version reporting */
+  .name = US"nis",                     /* lookup name */
+  .type = 0,                           /* not abs file, not query style*/
+  .open = nis_open,                    /* open function */
+  .check = NULL,                       /* check function */
+  .find = nis_find,                    /* find function */
+  .close = NULL,                       /* no close function */
+  .tidy = NULL,                                /* no tidy function */
+  .quote = NULL,                       /* no quoting function */
+  .version_report = nis_version_report             /* version reporting */
 };
 
 static lookup_info nis0_lookup_info = {
-  US"nis0",                      /* lookup name */
-  0,                             /* not absfile, not query style */
-  nis_open,    /* sic */         /* open function */
-  NULL,                          /* check function */
-  nis0_find,                     /* find function */
-  NULL,                          /* no close function */
-  NULL,                          /* no tidy function */
-  NULL,                          /* no quoting function */
-  NULL                           /* no version reporting (redundant) */
+  .name = US"nis0",                    /* lookup name */
+  .type = 0,                           /* not absfile, not query style */
+  .open = nis_open,                    /* sic */         /* open function */
+  .check = NULL,                       /* check function */
+  .find = nis0_find,                   /* find function */
+  .close = NULL,                       /* no close function */
+  .tidy = NULL,                                /* no tidy function */
+  .quote = NULL,                       /* no quoting function */
+  .version_report = NULL                           /* no version reporting (redundant) */
 };
 
 #ifdef DYNLOOKUP