git://git.exim.org
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
tidying
[exim.git]
/
src
/
src
/
dummies.c
diff --git
a/src/src/dummies.c
b/src/src/dummies.c
index 2e1ad11f5864fb1c1e24a9ba3bba3a9248719bbb..38b514b6c46946c8192216c73f5c48656e215df0 100644
(file)
--- a/
src/src/dummies.c
+++ b/
src/src/dummies.c
@@
-3,6
+3,7
@@
*************************************************/
/* Copyright (c) University of Cambridge 1995 - 2009 */
*************************************************/
/* Copyright (c) University of Cambridge 1995 - 2009 */
+/* Copyright (c) The Exim Maintainers 2021 */
/* See the file NOTICE for conditions of use and distribution. */
/* This file is not part of the main Exim code. There are little bits of test
/* See the file NOTICE for conditions of use and distribution. */
/* This file is not part of the main Exim code. There are little bits of test
@@
-20,7
+21,7
@@
alternates. */
/* We don't have the full Exim headers dragged in, but this function
is used for debugging output. */
/* We don't have the full Exim headers dragged in, but this function
is used for debugging output. */
-extern gstring * string_vformat(gstring *,
BOOL
, const char *, va_list);
+extern gstring * string_vformat(gstring *,
unsigned
, const char *, va_list);
/*************************************************
/*************************************************
@@
-47,8
+48,6
@@
va_start(ap, format);
vfprintf(stderr, format, ap);
fprintf(stderr, "\n");
va_end(ap);
vfprintf(stderr, format, ap);
fprintf(stderr, "\n");
va_end(ap);
-selector = selector; /* Keep picky compilers happy */
-flags = flags;
}
}
@@
-56,7
+55,9
@@
flags = flags;
* Handle calls to print debug output *
*************************************************/
* Handle calls to print debug output *
*************************************************/
-/* The message just gets written to stderr
+/* The message just gets written to stderr.
+We use tainted memory to format into just so that we can handle
+tainted arguments.
Arguments:
format a printf() format
Arguments:
format a printf() format
@@
-69,12
+70,12
@@
void
debug_printf(char *format, ...)
{
va_list ap;
debug_printf(char *format, ...)
{
va_list ap;
-
gstring * g = string_get(1024
);
-
void * reset_point = g
;
+
rmark reset_point = store_mark(
);
+
gstring * g = string_get_tainted(1024, TRUE)
;
va_start(ap, format);
va_start(ap, format);
-if (!string_vformat(g,
FALSE
, format, ap))
+if (!string_vformat(g,
0
, format, ap))
{
char * s = "**** debug string overflowed buffer ****\n";
char * p = CS g->s + g->ptr;
{
char * s = "**** debug string overflowed buffer ****\n";
char * p = CS g->s + g->ptr;
@@
-101,7
+102,6
@@
extern int sigalrm_seen;
void
sigalrm_handler(int sig)
{
void
sigalrm_handler(int sig)
{
-sig = sig; /* Keep picky compilers happy */
sigalrm_seen = TRUE;
}
sigalrm_seen = TRUE;
}
@@
-114,19
+114,12
@@
sigalrm_seen = TRUE;
int
header_checkname(void *h, char *name, int len)
{
int
header_checkname(void *h, char *name, int len)
{
-h = h; /* Keep picky compilers happy */
-name = name;
-len = len;
return 0;
}
void
directory_make(char *parent, char *name, int mode, int panic)
{
return 0;
}
void
directory_make(char *parent, char *name, int mode, int panic)
{
-parent = parent; /* Keep picky compilers happy */
-name = name;
-mode = mode;
-panic = panic;
}
void
}
void
@@
-138,10
+131,6
@@
host_build_sender_fullhost(void) { }
char *
host_ntoa(int type, const void *arg, char *buffer, int *portptr)
{
char *
host_ntoa(int type, const void *arg, char *buffer, int *portptr)
{
-type = type; /* Keep picky compilers happy */
-arg = arg;
-buffer = buffer;
-portptr = portptr;
return NULL;
}
#endif
return NULL;
}
#endif