[exim-cvs] tidying

Αρχική Σελίδα
Delete this message
Reply to this message
Συντάκτης: Exim Git Commits Mailing List
Ημερομηνία:  
Προς: exim-cvs
Αντικείμενο: [exim-cvs] tidying
Gitweb: https://git.exim.org/exim.git/commitdiff/9995dd161eda29d2f5213f124e0042ec01a5ab5e
Commit:     9995dd161eda29d2f5213f124e0042ec01a5ab5e
Parent:     f21ef9002ba244954c722b636b1265b5b141dbaa
Author:     Jeremy Harris <jgh146exb@???>
AuthorDate: Tue Aug 13 09:47:17 2024 +0100
Committer:  Jeremy Harris <jgh146exb@???>
CommitDate: Wed Aug 14 09:01:27 2024 +0100


    tidying
---
 src/src/functions.h |  4 ++--
 src/src/readconf.c  | 30 ++++++++++++++++--------------
 src/src/route.c     |  6 +++---
 src/src/transport.c |  8 ++++----
 4 files changed, 25 insertions(+), 23 deletions(-)


diff --git a/src/src/functions.h b/src/src/functions.h
index e13f8044e..dbfad63eb 100644
--- a/src/src/functions.h
+++ b/src/src/functions.h
@@ -423,8 +423,8 @@ extern int     rda_interpret(redirect_block *, int, const uschar *,
         uschar **, error_block **, int *, const uschar *);
 extern int     rda_is_filter(const uschar *);
 extern BOOL    readconf_depends(driver_instance *, uschar *);
-extern void    readconf_driver_init(uschar *, driver_instance **,
-                 driver_info *, int, void *, int, optionlist *, int);
+extern void    readconf_driver_init(driver_instance **, driver_info *, int,
+        void *, int, optionlist *, int, const uschar *);
 extern const uschar *readconf_find_option(void *);
 extern void    readconf_main(BOOL);
 extern void    readconf_options_from_list(optionlist *, unsigned, const uschar *, uschar *);
diff --git a/src/src/readconf.c b/src/src/readconf.c
index 231d3feb6..d8f9a53e4 100644
--- a/src/src/readconf.c
+++ b/src/src/readconf.c
@@ -3715,10 +3715,11 @@ Returns:              pointer to the driver info block
 */


 static driver_info *
-init_driver(driver_instance *d, driver_info *drivers_available,
-  int size_of_info, uschar *class)
+init_driver(driver_instance * d, driver_info * drivers_available,
+  int size_of_info, const uschar * class)
 {
-for (driver_info * dd = drivers_available; dd->driver_name[0] != 0;
+/*XXX this is walking the old-array */
+for (driver_info * dd = drivers_available; *dd->driver_name;
      dd = (driver_info *)((US dd) + size_of_info))
   if (Ustrcmp(d->driver_name, dd->driver_name) == 0)
     {
@@ -3726,7 +3727,7 @@ for (driver_info * dd = drivers_available; dd->driver_name[0] != 0;
     d->info = dd;
     d->options_block = store_get_perm(len, GET_UNTAINTED);
     memcpy(d->options_block, dd->options_block, len);
-    for (int i = 0; i < *(dd->options_count); i++)
+    for (int i = 0; i < *dd->options_count; i++)
       dd->options[i].type &= ~opt_set;
     return dd;
     }
@@ -3767,7 +3768,6 @@ driver_instance must map the first portions of all the _info and _instance
 blocks for this shared code to work.


 Arguments:
-  class                      "router", "transport", or "authenticator"
   anchor                     &routers, &transports, &auths
   drivers_available          available drivers
   size_of_info               size of each info block
@@ -3775,20 +3775,22 @@ Arguments:
   instance_size              size of instance block
   driver_optionlist          generic option list
   driver_optionlist_count    count of generic option list
+  class                      "router", "transport", or "authenticator"
+                  for error message


 Returns:                     nothing
 */


void
readconf_driver_init(
- uschar *class,
- driver_instance **anchor,
- driver_info *drivers_available,
+ driver_instance ** anchor,
+ driver_info * drivers_available,
int size_of_info,
- void *instance_default,
+ void * instance_default,
int instance_size,
- optionlist *driver_optionlist,
- int driver_optionlist_count)
+ optionlist * driver_optionlist,
+ int driver_optionlist_count,
+ const uschar * class)
{
driver_instance ** p = anchor;
driver_instance * d = NULL;
@@ -4243,14 +4245,14 @@ auths_init(void)
int nauths = 0;
#endif

-readconf_driver_init(US"authenticator",
-  (driver_instance **)(&auths),      /* chain anchor */
+readconf_driver_init((driver_instance **)&auths,      /* chain anchor */
   (driver_info *)auths_available,    /* available drivers */
   sizeof(auth_info),                 /* size of info block */
   &auth_defaults,                    /* default values for generic options */
   sizeof(auth_instance),             /* size of instance block */
   optionlist_auths,                  /* generic options */
-  optionlist_auths_size);
+  optionlist_auths_size,
+  US"authenticator");


 for (auth_instance * au = auths; au; au = au->drinst.next)
   {
diff --git a/src/src/route.c b/src/src/route.c
index b20e1ca0b..0c7de556d 100644
--- a/src/src/route.c
+++ b/src/src/route.c
@@ -227,14 +227,14 @@ function. */
 void
 route_init(void)
 {
-readconf_driver_init(US"router",
-  (driver_instance **)(&routers),     /* chain anchor */
+readconf_driver_init((driver_instance **)&routers,     /* chain anchor */
   (driver_info *)routers_available,   /* available drivers */
   sizeof(router_info),                /* size of info blocks */
   &router_defaults,                   /* default values for generic options */
   sizeof(router_instance),            /* size of instance block */
   optionlist_routers,                 /* generic options */
-  optionlist_routers_size);
+  optionlist_routers_size,
+  US"router");


 for (router_instance * r = routers; r; r = r->drinst.next)
   {
diff --git a/src/src/transport.c b/src/src/transport.c
index 3889a8529..febe7c117 100644
--- a/src/src/transport.c
+++ b/src/src/transport.c
@@ -145,14 +145,14 @@ the work. */
 void
 transport_init(void)
 {
-readconf_driver_init(US"transport",
-  (driver_instance **)(&transports),     /* chain anchor */
+readconf_driver_init((driver_instance **)&transports,     /* chain anchor */
   (driver_info *)transports_available,   /* available drivers */
   sizeof(transport_info),                /* size of info block */
-  &transport_defaults,                   /* default values for generic options */
+  &transport_defaults,                   /* default values for generic options*/
   sizeof(transport_instance),            /* size of instance block */
   optionlist_transports,                 /* generic options */
-  optionlist_transports_size);
+  optionlist_transports_size,
+  US"transport");


/* Now scan the configured transports and check inconsistencies. A shadow
transport is permitted only for local transports. */

--
## subscription configuration (requires account):
## https://lists.exim.org/mailman3/postorius/lists/exim-cvs.lists.exim.org/
## unsubscribe (doesn't require an account):
## exim-cvs-unsubscribe@???
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/