]> git.ipfire.org Git - thirdparty/mlmmj.git/commitdiff
Factorize lowercase code
authorBaptiste Daroussin <bapt@FreeBSD.org>
Tue, 7 Dec 2021 10:01:47 +0000 (11:01 +0100)
committerBaptiste Daroussin <bapt@FreeBSD.org>
Tue, 7 Dec 2021 10:01:47 +0000 (11:01 +0100)
include/subscriberfuncs.h
src/mlmmj-bounce.c
src/mlmmj-sub.c
src/mlmmj-unsub.c
src/subscriberfuncs.c

index 9e3d275d5a81b3b8a78664c6a32b6d6971b52a33..fc63576ca31963f11c88211b7a40655b3a919712 100644 (file)
@@ -1,6 +1,6 @@
-/* Copyright (C) 2003 Mads Martin Joergensen <mmj at mmj.dk>
- *
- * $Id$
+/*
+ * Copyright (C) 2003 Mads Martin Joergensen <mmj at mmj.dk>
+ * Copyright (C) 2021 Baptiste Daroussin <bapt@FreeBSD.org>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a copy
  * of this software and associated documentation files (the "Software"), to
@@ -32,5 +32,6 @@ bool is_subbed_in(int fd, const char *address);
 enum subtype is_subbed(struct mlmmj_list *list, const char *address, int both);
 int open_subscriber_directory(struct mlmmj_list *list, enum subtype typesub, const char **subdir);
 void change_uid(struct mlmmj_list *list);
+char *lowercase(const char *address);
 
 #endif /* SUBSCRIBERFUNC_H */
index aec2bfc169ef59a3abe0cfe2306dc85049b7c9e3..1b7b2c1700eccb72964e72b22733fc4992bbf626 100644 (file)
@@ -175,10 +175,10 @@ static void print_help(const char *prg)
 int main(int argc, char **argv)
 {
        struct mlmmj_list list;
-       int opt, fd, dsnbounce = 0, i = 0;
+       int opt, fd, dsnbounce = 0;
        char *address = NULL, *number = NULL;
        char *bindir, *mlmmjsend, *savename;
-       char *mailname = NULL, *bfilename, *a, *buf, *lowcaseaddr;
+       char *mailname = NULL, *bfilename, *a, *buf;
        size_t len;
        time_t t;
        int probe = 0;
@@ -266,13 +266,7 @@ int main(int argc, char **argv)
        }
 
        /* Make the address lowercase */
-       lowcaseaddr = mystrdup(address);
-       i = 0;
-       while(lowcaseaddr[i]) {
-               lowcaseaddr[i] = tolower(lowcaseaddr[i]);
-               i++;
-       }
-       address = lowcaseaddr;
+       address = lowercase(address);
 
        if(number != NULL && probe != 0) {
                fprintf(stderr, "You can only specify one of -n or -p\n");
index 16be6019b65625c7bace04229cb9d6391aea576b..bebd6e160ade8bdb17609a1068140dc77b14cf0d 100644 (file)
@@ -573,12 +573,12 @@ int main(int argc, char **argv)
 {
        struct mlmmj_list list;
        char *mlmmjsend, *mlmmjunsub, *bindir;
-       char *address = NULL, *lowcaseaddr, *modstr = NULL;
+       char *address = NULL, *modstr = NULL;
        const char *flag = NULL;
        int opt, subconfirm = 0, confirmsub = 0, notifysub;
        int changeuid = 1, status, digest = 0, nomail = 0, both = 0;
        int nogensubscribed = 0;
-       int force = 0, quiet = 0, i = 0;
+       int force = 0, quiet = 0;
        enum subtype subbed;
        pid_t pid, childpid = 0;
        enum subtype typesub = SUB_NORMAL;
@@ -690,13 +690,7 @@ int main(int argc, char **argv)
        }
 
        /* Make the address lowercase */
-       lowcaseaddr = mystrdup(address);
-       i = 0;
-       while(lowcaseaddr[i]) {
-               lowcaseaddr[i] = tolower(lowcaseaddr[i]);
-               i++;
-       }
-       address = lowcaseaddr;
+       address = lowercase(address);
 
        /* get the list address */
        if(strncasecmp(list.addr, address, strlen(list.addr)) == 0) {
index b0797276fa286d7b1ab9c730cdd54ec0ea1a8fce..e6e6a013c12109c43610aa99c12e7b1861518b96 100644 (file)
@@ -420,10 +420,9 @@ int main(int argc, char **argv)
        int normal = 0, digest = 0, nomail = 0, subbed;
        int confirmunsub = 0, unsubconfirm = 0, notifysub = 0;
        int changeuid = 1, quiet = 0;
-       int nogennotsubscribed = 0, i = 0;
+       int nogennotsubscribed = 0;
        char *address = NULL;
        struct mlmmj_list list;
-       char *lowcaseaddr;
        enum subtype typesub = SUB_ALL;
        enum subreason reasonsub = SUB_ADMIN;
 
@@ -519,13 +518,7 @@ int main(int argc, char **argv)
        }
 
        /* Make the address lowercase */
-       lowcaseaddr = mystrdup(address);
-       i = 0;
-       while(lowcaseaddr[i]) {
-               lowcaseaddr[i] = tolower(lowcaseaddr[i]);
-               i++;
-       }
-       address = lowcaseaddr;
+       address = lowercase(address);
 
        if(changeuid)
                change_uid(&list);
index c539681e1bc8cb643ed1a52661362559f3a84e59..8f2709edf1f7901303a0cda80b070bbe0fa472c0 100644 (file)
@@ -1,6 +1,6 @@
-/* Copyright (C) 2003 Mads Martin Joergensen <mmj at mmj.dk>
- *
- * $Id$
+/*
+ * Copyright (C) 2003 Mads Martin Joergensen <mmj at mmj.dk>
+ * Copyright (C) 2021 Baptiste Daroussin <bapt@FreeBSD.org>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a copy
  * of this software and associated documentation files (the "Software"), to
@@ -222,3 +222,18 @@ change_uid(struct mlmmj_list *list)
                }
        }
 }
+
+char *
+lowercase(const char *address)
+{
+       char *loweraddress;
+       int i = 0;
+
+       loweraddress = mystrdup(address);
+       while (loweraddress[i] != '\0') {
+               loweraddress[i] = tolower(loweraddress[i]);
+               i++;
+       }
+       return (loweraddress);
+}
+