CVE-2020-28024: Heap buffer underflow in smtp_ungetc()
[exim.git] / src / exim_monitor / em_init.c
index ca71eb5f0f05a1c2e377b161c95fecdd02793757..56cb298860ce7b9e95fc1c0546bdfa9569b41563 100644 (file)
@@ -1,10 +1,9 @@
-/* $Cambridge: exim/src/exim_monitor/em_init.c,v 1.1 2004/10/07 10:39:01 ph10 Exp $ */
-
 /*************************************************
 *                  Exim monitor                  *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2004 */
+/* Copyright (c) University of Cambridge 1995 - 2009 */
+/* Copyright (c) The Exim Maintainers 2020 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 /* This module contains code to initialize things from the
@@ -72,9 +71,8 @@ for (i = 0; i <= 1; i++)
         {
         int offset;
         const uschar *error;
-        stripchart_regex[indx] = pcre_compile(CS buffer, PCRE_COPT,
-          (const char **)&error, &offset, NULL);
-        if (stripchart_regex[indx] == NULL)
+        if (!(stripchart_regex[indx] = pcre_compile(CS buffer, PCRE_COPT,
+          CCSS &error, &offset, NULL)))
           {
           printf("regular expression error: %s at offset %d "
             "while compiling %s\n", error, offset, buffer);
@@ -233,7 +231,7 @@ queue_stripchart_name = (s != NULL)? string_copy(s) : US"queue";
 /* Compile the regex for matching yyyy-mm-dd at the start of a string. */
 
 yyyymmdd_regex = pcre_compile("^\\d{4}-\\d\\d-\\d\\d\\s", PCRE_COPT,
-  (const char **)&error, &erroroffset, NULL);
+  CCSS &error, &erroroffset, NULL);
 }
 
 /* End of em_init.c */