CVE-2020-28024: Heap buffer underflow in smtp_ungetc()
[exim.git] / src / exim_monitor / em_init.c
index c9ef66a7e4c5df5d9465ad2bf8e6108659865179..56cb298860ce7b9e95fc1c0546bdfa9569b41563 100644 (file)
@@ -3,6 +3,7 @@
 *************************************************/
 
 /* 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
@@ -70,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);
@@ -231,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 */