]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
bsmtp: Add the possibility to add emails separated with a comma as recipient list
authorEric Bollengier <eric@baculasystems.com>
Fri, 15 Jan 2021 10:10:48 +0000 (11:10 +0100)
committerEric Bollengier <eric@baculasystems.com>
Thu, 24 Mar 2022 08:02:59 +0000 (09:02 +0100)
bacula/src/tools/bsmtp.c

index d1c5ecbdb999a68d2d2e9241e83e20592c3d423f..4a5aade9390ca929064142488b5a3232c0757256 100644 (file)
@@ -589,8 +589,21 @@ lookup_host:
    chat("MAIL FROM:%s\r\n", cleanup_addr(from_addr, buf, sizeof(buf)));
    
    for (i = 0; i < argc; i++) {
-      Dmsg1(20, "rcpt to: %s\n", argv[i]);
-      chat("RCPT TO:%s\r\n", cleanup_addr(argv[i], buf, sizeof(buf)));
+      char *m = argv[i];
+      if (m) {
+         /* email1,email2,email3 */
+         for (char *end = strchr(m, ','); end ; end = strchr(m, ',')) {
+            *end = 0;
+            Dmsg1(20, "rcpt to: %s\n", argv[i]);
+            chat("RCPT TO:%s\r\n", cleanup_addr(m, buf, sizeof(buf)));
+            m = end+1;            // Move forward
+            *end = ',';           // Get the original string back
+         }
+         if (*m) {              // We should have a last one
+            Dmsg1(20, "rcpt to: %s\n", argv[i]);
+            chat("RCPT TO:%s\r\n", cleanup_addr(m, buf, sizeof(buf)));
+         }
+      }
    }
 
    if (cc_addr) {