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: coverity issues
[exim.git]
/
src
/
src
/
queue.c
diff --git
a/src/src/queue.c
b/src/src/queue.c
index b3dbd2c4ea8dcd30592bdcfcbdf84b3d2abe4c76..bf62aea886c8f360976fae1d51fc0064be11555b 100644
(file)
--- a/
src/src/queue.c
+++ b/
src/src/queue.c
@@
-2,7
+2,7
@@
* Exim - an Internet mail transport agent *
*************************************************/
* Exim - an Internet mail transport agent *
*************************************************/
-/* Copyright (c) University of Cambridge 1995 - 20
09
*/
+/* Copyright (c) University of Cambridge 1995 - 20
15
*/
/* See the file NOTICE for conditions of use and distribution. */
/* Functions that operate on the input queue. */
/* See the file NOTICE for conditions of use and distribution. */
/* Functions that operate on the input queue. */
@@
-650,7
+650,8
@@
for (i = (queue_run_in_order? -1 : 0);
the mere fact that read() unblocks is enough. */
set_process_info("running queue: waiting for children of %d", pid);
the mere fact that read() unblocks is enough. */
set_process_info("running queue: waiting for children of %d", pid);
- (void)read(pfd[pipe_read], buffer, sizeof(buffer));
+ if (read(pfd[pipe_read], buffer, sizeof(buffer)) > 0)
+ log_write(0, LOG_MAIN|LOG_PANIC, "queue run: unexpected data on pipe");
(void)close(pfd[pipe_read]);
set_process_info("running queue");
(void)close(pfd[pipe_read]);
set_process_info("running queue");
@@
-1018,7
+1019,7
@@
if (action >= MSG_SHOW_BODY)
}
while((rc = read(fd, big_buffer, big_buffer_size)) > 0)
}
while((rc = read(fd, big_buffer, big_buffer_size)) > 0)
-
(void)
write(fileno(stdout), big_buffer, rc);
+
rc =
write(fileno(stdout), big_buffer, rc);
(void)close(fd);
return TRUE;
(void)close(fd);
return TRUE;
@@
-1273,6
+1274,9
@@
switch(action)
{
if (action == MSG_ADD_RECIPIENT)
{
{
if (action == MSG_ADD_RECIPIENT)
{
+#ifdef SUPPORT_I18N
+ if (string_is_utf8(recipient)) allow_utf8_domains = message_smtputf8 = TRUE;
+#endif
receive_add_recipient(recipient, -1);
log_write(0, LOG_MAIN, "recipient <%s> added by %s",
recipient, username);
receive_add_recipient(recipient, -1);
log_write(0, LOG_MAIN, "recipient <%s> added by %s",
recipient, username);
@@
-1296,6
+1300,9
@@
switch(action)
}
else /* MSG_EDIT_SENDER */
{
}
else /* MSG_EDIT_SENDER */
{
+#ifdef SUPPORT_I18N
+ if (string_is_utf8(recipient)) allow_utf8_domains = message_smtputf8 = TRUE;
+#endif
sender_address = recipient;
log_write(0, LOG_MAIN, "sender address changed to <%s> by %s",
recipient, username);
sender_address = recipient;
log_write(0, LOG_MAIN, "sender address changed to <%s> by %s",
recipient, username);
@@
-1344,7
+1351,8
@@
queue_check_only(void)
BOOL *set;
int sep = 0;
struct stat statbuf;
BOOL *set;
int sep = 0;
struct stat statbuf;
-uschar *s, *ss, *name;
+const uschar *s;
+uschar *ss, *name;
uschar buffer[1024];
if (queue_only_file == NULL) return;
uschar buffer[1024];
if (queue_only_file == NULL) return;