git-svn: trunk@1557
Nigel Horne authored on 2005/05/19 18:34:17... | ... |
@@ -1,3 +1,8 @@ |
1 |
+Thu May 19 10:33:52 BST 2005 (njh) |
|
2 |
+---------------------------------- |
|
3 |
+ * clamav-milter: Used some of sendmail V8.13's features for sanity |
|
4 |
+ checks and logging |
|
5 |
+ |
|
1 | 6 |
Wed May 18 21:31:34 BST 2005 (njh) |
2 | 7 |
---------------------------------- |
3 | 8 |
* libclamav: Extract TNEF files even when the filename isn't known - problem |
... | ... |
@@ -188,7 +188,7 @@ You should have received a script to install into /etc/init.d as |
188 | 188 |
/etc/init.d/clamav-milter start |
189 | 189 |
/etc/init.d/sendmail restart |
190 | 190 |
|
191 |
-2.6 General Instalation Issues |
|
191 |
+2.6 General Installation Issues |
|
192 | 192 |
|
193 | 193 |
You may find INPUT_MAIL_FILTERS is not needed on your machine, however it |
194 | 194 |
is recommended by the Sendmail documentation and I recommend going along |
... | ... |
@@ -252,6 +252,12 @@ able to call sendmail, for example on a Fedora Linux system: |
252 | 252 |
To test that your clamAV system is now intercepting viruses, visit |
253 | 253 |
http://www.testvirus.org |
254 | 254 |
|
255 |
+If, under heavy strain on Linux, you see the message |
|
256 |
+ thread_create() failed: 12, abort |
|
257 |
+appearing in a log file, you will need to increase the number of threads on |
|
258 |
+your system (/proc/sys/kernel/threads-max), or decrease the value of |
|
259 |
+--max-children. |
|
260 |
+ |
|
255 | 261 |
3. CHANGE HISTORY |
256 | 262 |
|
257 | 263 |
Changes |
... | ... |
@@ -774,6 +780,10 @@ Changes |
774 | 774 |
0.85 11/5/05: Up-issue |
775 | 775 |
0.85a 12/5/05: Open /dev/console before dropping privilege, reported |
776 | 776 |
by David Crow <crow@orangeblood.org> |
777 |
+0.85b 19/5/05: Warn if TCPAddr doesn't allow connection from us |
|
778 |
+ Warn if notification email fails |
|
779 |
+ Enable some sendmail debug if LogVerbose is set |
|
780 |
+ Added sanity checks that the socket can be created |
|
777 | 781 |
|
778 | 782 |
4. INTERNATIONALISATION |
779 | 783 |
|
... | ... |
@@ -22,9 +22,9 @@ |
22 | 22 |
* |
23 | 23 |
* For installation instructions see the file INSTALL that came with this file |
24 | 24 |
*/ |
25 |
-static char const rcsid[] = "$Id: clamav-milter.c,v 1.200 2005/05/12 07:31:09 nigelhorne Exp $"; |
|
25 |
+static char const rcsid[] = "$Id: clamav-milter.c,v 1.201 2005/05/19 09:32:22 nigelhorne Exp $"; |
|
26 | 26 |
|
27 |
-#define CM_VERSION "0.85" |
|
27 |
+#define CM_VERSION "0.85b" |
|
28 | 28 |
|
29 | 29 |
#if HAVE_CONFIG_H |
30 | 30 |
#include "clamav-config.h" |
... | ... |
@@ -105,7 +105,6 @@ int deny_severity = LOG_NOTICE; |
105 | 105 |
|
106 | 106 |
#ifndef CL_DEBUG |
107 | 107 |
static const char *logFile; |
108 |
-static int logTime; |
|
109 | 108 |
static char console[] = "/dev/console"; |
110 | 109 |
#endif |
111 | 110 |
|
... | ... |
@@ -149,7 +148,6 @@ typedef unsigned int in_addr_t; |
149 | 149 |
* to get messages on the system console, see syslog.conf(5), also you |
150 | 150 |
* can use wall(1) in the VirusEvent entry in clamd.conf |
151 | 151 |
* TODO: build with libclamav.so rather than libclamav.a |
152 |
- * TODO: Warn if TCPAddr doesn't allow connection from us |
|
153 | 152 |
* TODO: Decide action (bounce, discard, reject etc.) based on the virus |
154 | 153 |
* found. Those with faked addresses, such as SCO.A want discarding, |
155 | 154 |
* others could be bounced properly. |
... | ... |
@@ -158,6 +156,8 @@ typedef unsigned int in_addr_t; |
158 | 158 |
* TODO: Files can be scanned with "SCAN" not "STREAM" if clamd is on the same |
159 | 159 |
* machine when talking via INET domain socket. |
160 | 160 |
* TODO: Load balancing, allow local machine to talk via UNIX domain socket. |
161 |
+ * TODO: allow each line in the whitelist file to specify a quarantine email |
|
162 |
+ * address |
|
161 | 163 |
*/ |
162 | 164 |
|
163 | 165 |
struct header_node_t { |
... | ... |
@@ -457,6 +457,9 @@ static int verifyIncomingSocketName(const char *sockName); |
457 | 457 |
static int isWhitelisted(const char *emailaddress); |
458 | 458 |
static void logger(const char *mess); |
459 | 459 |
|
460 |
+short logg_time, logg_lock, logok; |
|
461 |
+int logg_size; |
|
462 |
+ |
|
460 | 463 |
static void |
461 | 464 |
help(void) |
462 | 465 |
{ |
... | ... |
@@ -945,7 +948,7 @@ main(int argc, char **argv) |
945 | 945 |
cli_dbgmsg(_("Running as user %s (UID %d, GID %d)\n"), |
946 | 946 |
cpt->strarg, user->pw_uid, user->pw_gid); |
947 | 947 |
} else |
948 |
- fprintf(stderr, _("%s: running as root is not recommended (check \"User\" in clamd.conf)\n"), argv[0]); |
|
948 |
+ fprintf(stderr, _("%s: running as root is not recommended (check \"User\" in %s)\n"), argv[0], cfgfile); |
|
949 | 949 |
} else if(iface) { |
950 | 950 |
fprintf(stderr, _("%s: Only root can set an interface for --broadcast\n"), argv[0]); |
951 | 951 |
return EX_USAGE; |
... | ... |
@@ -1041,9 +1044,10 @@ main(int argc, char **argv) |
1041 | 1041 |
|
1042 | 1042 |
if(cfgopt(copt, "LogVerbose")) { |
1043 | 1043 |
logVerbose = 1; |
1044 |
-#if 0 |
|
1045 |
- /* Only supported by Sendmail >= V8.13 */ |
|
1046 |
- smfi_setdbg(6); |
|
1044 |
+#ifdef SENDMAIL_VERSION |
|
1045 |
+ if(strncmp(SENDMAIL_VERSION, "8.13", 4) == 0) |
|
1046 |
+ /* Only supported by Sendmail >= V8.13 */ |
|
1047 |
+ smfi_setdbg(6); |
|
1047 | 1048 |
#endif |
1048 | 1049 |
} |
1049 | 1050 |
use_syslog = 1; |
... | ... |
@@ -1230,6 +1234,11 @@ main(int argc, char **argv) |
1230 | 1230 |
else { |
1231 | 1231 |
cli_warnmsg(_("Can't talk to clamd server %s on port %d\n"), |
1232 | 1232 |
hostname, tcpSocket); |
1233 |
+ if(serverIPs[i] == (int)inet_addr("127.0.0.1")) { |
|
1234 |
+ if(cfgopt(copt, "TCPAddr") != NULL) |
|
1235 |
+ cli_warnmsg(_("Check the value for TCPAddr in %s\n"), cfgfile); |
|
1236 |
+ } else |
|
1237 |
+ cli_warnmsg(_("Check the value for TCPAddr in clamd.conf on %s\n"), hostname); |
|
1233 | 1238 |
} |
1234 | 1239 |
#endif |
1235 | 1240 |
|
... | ... |
@@ -1357,8 +1366,18 @@ main(int argc, char **argv) |
1357 | 1357 |
return EX_CONFIG; |
1358 | 1358 |
} |
1359 | 1359 |
if(open(logFile, O_WRONLY|O_APPEND) < 0) { |
1360 |
- perror(logFile); |
|
1361 |
- return EX_CANTCREAT; |
|
1360 |
+ if(errno == ENOENT) { |
|
1361 |
+ /* |
|
1362 |
+ * There is low risk race condition here |
|
1363 |
+ */ |
|
1364 |
+ if(open(logFile, O_WRONLY|O_CREAT, 0644) < 0) { |
|
1365 |
+ perror(logFile); |
|
1366 |
+ return EX_CANTCREAT; |
|
1367 |
+ } |
|
1368 |
+ } else { |
|
1369 |
+ perror(logFile); |
|
1370 |
+ return EX_CANTCREAT; |
|
1371 |
+ } |
|
1362 | 1372 |
} |
1363 | 1373 |
} else { |
1364 | 1374 |
logFile = console; |
... | ... |
@@ -1373,10 +1392,20 @@ main(int argc, char **argv) |
1373 | 1373 |
if(consolefd >= 0) |
1374 | 1374 |
close(consolefd); |
1375 | 1375 |
|
1376 |
- if(cfgopt(copt, "LogTime")) |
|
1377 |
- logTime++; |
|
1378 | 1376 |
#endif /*!CL_DEBUG*/ |
1379 | 1377 |
|
1378 |
+ if(cfgopt(copt, "LogTime")) |
|
1379 |
+ logg_time = 1; |
|
1380 |
+ if(cfgopt(copt, "LogFileUnlock")) |
|
1381 |
+ logg_lock = 0; |
|
1382 |
+ if(cfgopt(copt, "LogClean")) |
|
1383 |
+ logok = 1; |
|
1384 |
+ if((cpt = cfgopt(copt, "LogFileMaxSize"))) |
|
1385 |
+ logg_size = cpt->numarg; |
|
1386 |
+ else |
|
1387 |
+ logg_size = CL_DEFAULT_LOGSIZE; |
|
1388 |
+ |
|
1389 |
+ |
|
1380 | 1390 |
#ifdef HAVE_SETPGRP |
1381 | 1391 |
#ifdef SETPGRP_VOID |
1382 | 1392 |
setpgrp(); |
... | ... |
@@ -1537,12 +1566,13 @@ main(int argc, char **argv) |
1537 | 1537 |
return EX_UNAVAILABLE; |
1538 | 1538 |
} |
1539 | 1539 |
|
1540 |
-#if 0 |
|
1541 |
- /* Only supported by Sendmail >= V8.13 */ |
|
1542 |
- if(smfi_opensocket(1) == MI_FAILURE) { |
|
1543 |
- cli_errmsg("can't open/create %s\n", port); |
|
1544 |
- return EX_CONFIG; |
|
1545 |
- } |
|
1540 |
+#ifdef SENDMAIL_VERSION |
|
1541 |
+ if(strncmp(SENDMAIL_VERSION, "8.13", 4) == 0) |
|
1542 |
+ /* Only supported by Sendmail >= V8.13 */ |
|
1543 |
+ if(smfi_opensocket(1) == MI_FAILURE) { |
|
1544 |
+ cli_errmsg("Can't open/create %s\n", port); |
|
1545 |
+ return EX_CONFIG; |
|
1546 |
+ } |
|
1546 | 1547 |
#endif |
1547 | 1548 |
|
1548 | 1549 |
signal(SIGPIPE, SIG_IGN); /* libmilter probably does this as well */ |
... | ... |
@@ -2986,7 +3016,9 @@ clamfi_eom(SMFICTX *ctx) |
2986 | 2986 |
} |
2987 | 2987 |
|
2988 | 2988 |
cli_dbgmsg("Waiting for %s to finish\n", cmd); |
2989 |
- pclose(sendmail); |
|
2989 |
+ if(pclose(sendmail) != 0) |
|
2990 |
+ if(use_syslog) |
|
2991 |
+ syslog(LOG_ERR, "%s: Failed to notify clamAV interception - see dead.letter", sendmailId); |
|
2990 | 2992 |
} else if(use_syslog) |
2991 | 2993 |
syslog(LOG_WARNING, _("Can't execute '%s' to send virus notice"), cmd); |
2992 | 2994 |
} |
... | ... |
@@ -4428,7 +4460,7 @@ watchdog(void *a) |
4428 | 4428 |
|
4429 | 4429 |
while(n_children > 0) { |
4430 | 4430 |
pthread_cond_wait(&n_children_cond, &n_children_mutex); |
4431 |
- cli_warnmsg("Waiting for %d children until databae reload\n", n_children); |
|
4431 |
+ cli_warnmsg("Waiting for %d children until database reload\n", n_children); |
|
4432 | 4432 |
} |
4433 | 4433 |
|
4434 | 4434 |
cl_statfree(&dbstat); |
... | ... |
@@ -4619,7 +4651,7 @@ watchdog(void *a) |
4619 | 4619 |
|
4620 | 4620 |
while(n_children > 0) { |
4621 | 4621 |
pthread_cond_wait(&n_children_cond, &n_children_mutex); |
4622 |
- cli_warnmsg("Waiting for %d children until databae reload\n", n_children); |
|
4622 |
+ cli_warnmsg("Waiting for %d children until database reload\n", n_children); |
|
4623 | 4623 |
} |
4624 | 4624 |
cl_statfree(&dbstat); |
4625 | 4625 |
if(use_syslog) |
... | ... |
@@ -5093,7 +5125,7 @@ logger(const char *mess) |
5093 | 5093 |
if(fout == NULL) |
5094 | 5094 |
return; |
5095 | 5095 |
|
5096 |
- if(logTime) { |
|
5096 |
+ if(logg_time) { |
|
5097 | 5097 |
#ifdef HAVE_CTIME_R |
5098 | 5098 |
time_t currtime = time((time_t)0); |
5099 | 5099 |
char buf[27]; |
... | ... |
@@ -8,7 +8,7 @@ msgid "" |
8 | 8 |
msgstr "" |
9 | 9 |
"Project-Id-Version: PACKAGE VERSION\n" |
10 | 10 |
"Report-Msgid-Bugs-To: bugs@clamav.net\n" |
11 |
-"POT-Creation-Date: 2005-05-04 20:14+0100\n" |
|
11 |
+"POT-Creation-Date: 2005-05-19 10:31+0100\n" |
|
12 | 12 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
13 | 13 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
14 | 14 |
"Language-Team: LANGUAGE <LL@li.org>\n" |
... | ... |
@@ -16,717 +16,727 @@ msgstr "" |
16 | 16 |
"Content-Type: text/plain; charset=CHARSET\n" |
17 | 17 |
"Content-Transfer-Encoding: 8bit\n" |
18 | 18 |
|
19 |
-#: clamav-milter.c:464 |
|
19 |
+#: clamav-milter.c:469 |
|
20 | 20 |
msgid "\t--advisory\t\t-A\tFlag viruses rather than deleting them." |
21 | 21 |
msgstr "" |
22 | 22 |
|
23 |
-#: clamav-milter.c:465 |
|
23 |
+#: clamav-milter.c:470 |
|
24 | 24 |
msgid "\t--bounce\t\t-b\tSend a failure message to the sender." |
25 | 25 |
msgstr "" |
26 | 26 |
|
27 |
-#: clamav-milter.c:466 |
|
27 |
+#: clamav-milter.c:471 |
|
28 | 28 |
msgid "" |
29 | 29 |
"\t--broadcast\t\t-B [IFACE]\tBroadcast to a network manager when a virus is " |
30 | 30 |
"found." |
31 | 31 |
msgstr "" |
32 | 32 |
|
33 |
-#: clamav-milter.c:467 |
|
33 |
+#: clamav-milter.c:472 |
|
34 | 34 |
msgid "\t--config-file=FILE\t-c FILE\tRead configuration from FILE." |
35 | 35 |
msgstr "" |
36 | 36 |
|
37 |
-#: clamav-milter.c:468 |
|
37 |
+#: clamav-milter.c:473 |
|
38 | 38 |
msgid "\t--debug\t\t\t-D\tPrint debug messages." |
39 | 39 |
msgstr "" |
40 | 40 |
|
41 |
-#: clamav-milter.c:469 |
|
41 |
+#: clamav-milter.c:474 |
|
42 | 42 |
msgid "" |
43 | 43 |
"\t--detect-forged-local-address\t-L\tReject mails that claim to be from us." |
44 | 44 |
msgstr "" |
45 | 45 |
|
46 |
-#: clamav-milter.c:470 |
|
46 |
+#: clamav-milter.c:475 |
|
47 | 47 |
msgid "" |
48 | 48 |
"\t--dont-log-clean\t-C\tDon't add an entry to syslog that a mail is clean." |
49 | 49 |
msgstr "" |
50 | 50 |
|
51 |
-#: clamav-milter.c:471 |
|
51 |
+#: clamav-milter.c:476 |
|
52 | 52 |
msgid "" |
53 | 53 |
"\t--dont-scan-on-error\t-d\tPass e-mails through unscanned if a system error " |
54 | 54 |
"occurs." |
55 | 55 |
msgstr "" |
56 | 56 |
|
57 |
-#: clamav-milter.c:472 |
|
57 |
+#: clamav-milter.c:477 |
|
58 | 58 |
msgid "\t--dont-wait\t\t\tAsk remote end to resend if max-children exceeded." |
59 | 59 |
msgstr "" |
60 | 60 |
|
61 |
-#: clamav-milter.c:473 |
|
61 |
+#: clamav-milter.c:478 |
|
62 | 62 |
msgid "\t--external\t\t-e\tUse an external scanner (usually clamd)." |
63 | 63 |
msgstr "" |
64 | 64 |
|
65 |
-#: clamav-milter.c:474 |
|
65 |
+#: clamav-milter.c:479 |
|
66 | 66 |
msgid "\t--from=EMAIL\t\t-a EMAIL\tError messages come from here." |
67 | 67 |
msgstr "" |
68 | 68 |
|
69 |
-#: clamav-milter.c:475 |
|
69 |
+#: clamav-milter.c:480 |
|
70 | 70 |
msgid "\t--force-scan\t\t-f\tForce scan all messages (overrides (-o and -l)." |
71 | 71 |
msgstr "" |
72 | 72 |
|
73 |
-#: clamav-milter.c:476 |
|
73 |
+#: clamav-milter.c:481 |
|
74 | 74 |
msgid "\t--help\t\t\t-h\tThis message." |
75 | 75 |
msgstr "" |
76 | 76 |
|
77 |
-#: clamav-milter.c:477 |
|
77 |
+#: clamav-milter.c:482 |
|
78 | 78 |
msgid "\t--headers\t\t-H\tInclude original message headers in the report." |
79 | 79 |
msgstr "" |
80 | 80 |
|
81 |
-#: clamav-milter.c:478 |
|
81 |
+#: clamav-milter.c:483 |
|
82 | 82 |
msgid "\t--local\t\t\t-l\tScan messages sent from machines on our LAN." |
83 | 83 |
msgstr "" |
84 | 84 |
|
85 |
-#: clamav-milter.c:479 |
|
85 |
+#: clamav-milter.c:484 |
|
86 | 86 |
msgid "\t--max-childen\t\t-m\tMaximum number of concurrent scans." |
87 | 87 |
msgstr "" |
88 | 88 |
|
89 |
-#: clamav-milter.c:480 |
|
89 |
+#: clamav-milter.c:485 |
|
90 | 90 |
msgid "\t--outgoing\t\t-o\tScan outgoing messages from this machine." |
91 | 91 |
msgstr "" |
92 | 92 |
|
93 |
-#: clamav-milter.c:481 |
|
93 |
+#: clamav-milter.c:486 |
|
94 | 94 |
msgid "\t--noreject\t\t-N\tDon't reject viruses, silently throw them away." |
95 | 95 |
msgstr "" |
96 | 96 |
|
97 |
-#: clamav-milter.c:482 |
|
97 |
+#: clamav-milter.c:487 |
|
98 | 98 |
msgid "\t--noxheader\t\t-n\tSuppress X-Virus-Scanned/X-Virus-Status headers." |
99 | 99 |
msgstr "" |
100 | 100 |
|
101 |
-#: clamav-milter.c:483 |
|
101 |
+#: clamav-milter.c:488 |
|
102 | 102 |
msgid "\t--pidfile=FILE\t\t-i FILE\tLocation of pidfile." |
103 | 103 |
msgstr "" |
104 | 104 |
|
105 |
-#: clamav-milter.c:484 |
|
105 |
+#: clamav-milter.c:489 |
|
106 | 106 |
msgid "\t--postmaster\t\t-p EMAIL\tPostmaster address [default=postmaster]." |
107 | 107 |
msgstr "" |
108 | 108 |
|
109 |
-#: clamav-milter.c:485 |
|
109 |
+#: clamav-milter.c:490 |
|
110 | 110 |
msgid "\t--postmaster-only\t-P\tSend warnings only to the postmaster." |
111 | 111 |
msgstr "" |
112 | 112 |
|
113 |
-#: clamav-milter.c:486 |
|
113 |
+#: clamav-milter.c:491 |
|
114 | 114 |
msgid "\t--quiet\t\t\t-q\tDon't send e-mail notifications of interceptions." |
115 | 115 |
msgstr "" |
116 | 116 |
|
117 |
-#: clamav-milter.c:487 |
|
117 |
+#: clamav-milter.c:492 |
|
118 | 118 |
msgid "\t--quarantine=USER\t-Q EMAIL\tQuanrantine e-mail account." |
119 | 119 |
msgstr "" |
120 | 120 |
|
121 |
-#: clamav-milter.c:488 |
|
121 |
+#: clamav-milter.c:493 |
|
122 | 122 |
msgid "\t--quarantine-dir=DIR\t-U DIR\tDirectory to store infected emails." |
123 | 123 |
msgstr "" |
124 | 124 |
|
125 |
-#: clamav-milter.c:489 |
|
125 |
+#: clamav-milter.c:494 |
|
126 | 126 |
msgid "" |
127 | 127 |
"\t--server=SERVER\t\t-s SERVER\tHostname/IP address of server(s) running " |
128 | 128 |
"clamd (when using TCPsocket)." |
129 | 129 |
msgstr "" |
130 | 130 |
|
131 |
-#: clamav-milter.c:490 |
|
131 |
+#: clamav-milter.c:495 |
|
132 | 132 |
msgid "\t--sendmail-cf=FILE\t\tLocation of the sendmail.cf file to verify" |
133 | 133 |
msgstr "" |
134 | 134 |
|
135 |
-#: clamav-milter.c:491 |
|
135 |
+#: clamav-milter.c:496 |
|
136 | 136 |
msgid "\t--sign\t\t\t-S\tAdd a hard-coded signature to each scanned message." |
137 | 137 |
msgstr "" |
138 | 138 |
|
139 |
-#: clamav-milter.c:492 |
|
139 |
+#: clamav-milter.c:497 |
|
140 | 140 |
msgid "\t--signature-file=FILE\t-F FILE\tLocation of signature file." |
141 | 141 |
msgstr "" |
142 | 142 |
|
143 |
-#: clamav-milter.c:493 |
|
143 |
+#: clamav-milter.c:498 |
|
144 | 144 |
msgid "\t--template-file=FILE\t-t FILE\tLocation of e-mail template file." |
145 | 145 |
msgstr "" |
146 | 146 |
|
147 |
-#: clamav-milter.c:494 |
|
147 |
+#: clamav-milter.c:499 |
|
148 | 148 |
msgid "\t--timeout=SECS\t\t-T SECS\tTimeout waiting to childen to die." |
149 | 149 |
msgstr "" |
150 | 150 |
|
151 |
-#: clamav-milter.c:495 |
|
151 |
+#: clamav-milter.c:500 |
|
152 | 152 |
msgid "" |
153 | 153 |
"\t--whitelist-file=FILE\t-W FILE\tLocation of the file of whitelisted " |
154 | 154 |
"addresses" |
155 | 155 |
msgstr "" |
156 | 156 |
|
157 |
-#: clamav-milter.c:496 |
|
157 |
+#: clamav-milter.c:501 |
|
158 | 158 |
msgid "\t--version\t\t-V\tPrint the version number of this software." |
159 | 159 |
msgstr "" |
160 | 160 |
|
161 |
-#: clamav-milter.c:498 |
|
161 |
+#: clamav-milter.c:503 |
|
162 | 162 |
msgid "\t--debug-level=n\t\t-x n\tSets the debug level to 'n'." |
163 | 163 |
msgstr "" |
164 | 164 |
|
165 |
-#: clamav-milter.c:500 |
|
165 |
+#: clamav-milter.c:505 |
|
166 | 166 |
msgid "" |
167 | 167 |
"\n" |
168 | 168 |
"For more information type \"man clamav-milter\"." |
169 | 169 |
msgstr "" |
170 | 170 |
|
171 |
-#: clamav-milter.c:501 |
|
171 |
+#: clamav-milter.c:506 |
|
172 | 172 |
msgid "Report bugs to bugs@clamav.net." |
173 | 173 |
msgstr "" |
174 | 174 |
|
175 |
-#: clamav-milter.c:815 |
|
175 |
+#: clamav-milter.c:823 |
|
176 | 176 |
#, c-format |
177 | 177 |
msgid "%s: No socket-addr given\n" |
178 | 178 |
msgstr "" |
179 | 179 |
|
180 |
-#: clamav-milter.c:821 |
|
180 |
+#: clamav-milter.c:829 |
|
181 | 181 |
#, c-format |
182 | 182 |
msgid "%s: socket-addr (%s) doesn't agree with sendmail.cf\n" |
183 | 183 |
msgstr "" |
184 | 184 |
|
185 |
-#: clamav-milter.c:836 |
|
185 |
+#: clamav-milter.c:844 |
|
186 | 186 |
#, c-format |
187 | 187 |
msgid "%s: when using inet: connection to sendmail you must enable --local\n" |
188 | 188 |
msgstr "" |
189 | 189 |
|
190 |
-#: clamav-milter.c:844 |
|
190 |
+#: clamav-milter.c:852 |
|
191 | 191 |
#, c-format |
192 | 192 |
msgid "%s: Can't parse the config file %s\n" |
193 | 193 |
msgstr "" |
194 | 194 |
|
195 |
-#: clamav-milter.c:851 |
|
195 |
+#: clamav-milter.c:859 |
|
196 | 196 |
#, c-format |
197 | 197 |
msgid "%s: --detect-forged-local-addresses is not compatible with --outgoing\n" |
198 | 198 |
msgstr "" |
199 | 199 |
|
200 |
-#: clamav-milter.c:855 |
|
200 |
+#: clamav-milter.c:863 |
|
201 | 201 |
#, c-format |
202 | 202 |
msgid "%s: --detect-forged-local-addresses is not compatible with --local\n" |
203 | 203 |
msgstr "" |
204 | 204 |
|
205 |
-#: clamav-milter.c:859 |
|
205 |
+#: clamav-milter.c:867 |
|
206 | 206 |
#, c-format |
207 | 207 |
msgid "%s: --detect-forged-local-addresses is not compatible with --force\n" |
208 | 208 |
msgstr "" |
209 | 209 |
|
210 |
-#: clamav-milter.c:898 |
|
210 |
+#: clamav-milter.c:911 |
|
211 | 211 |
#, c-format |
212 | 212 |
msgid "" |
213 | 213 |
"%s: The iface option to --broadcast is not supported on your operating " |
214 | 214 |
"system\n" |
215 | 215 |
msgstr "" |
216 | 216 |
|
217 |
-#: clamav-milter.c:907 |
|
217 |
+#: clamav-milter.c:920 |
|
218 | 218 |
#, c-format |
219 | 219 |
msgid "%s: Can't get information about user %s\n" |
220 | 220 |
msgstr "" |
221 | 221 |
|
222 |
-#: clamav-milter.c:918 |
|
222 |
+#: clamav-milter.c:931 |
|
223 | 223 |
#, c-format |
224 | 224 |
msgid "%s: AllowSupplementaryGroups: initgroups not supported.\n" |
225 | 225 |
msgstr "" |
226 | 226 |
|
227 |
-#: clamav-milter.c:935 |
|
227 |
+#: clamav-milter.c:948 |
|
228 | 228 |
#, c-format |
229 | 229 |
msgid "Running as user %s (UID %d, GID %d)\n" |
230 | 230 |
msgstr "" |
231 | 231 |
|
232 |
-#: clamav-milter.c:938 |
|
232 |
+#: clamav-milter.c:951 |
|
233 | 233 |
#, c-format |
234 |
-msgid "%s: running as root is not recommended (check \"User\" in clamd.conf)\n" |
|
234 |
+msgid "%s: running as root is not recommended (check \"User\" in %s)\n" |
|
235 | 235 |
msgstr "" |
236 | 236 |
|
237 |
-#: clamav-milter.c:940 |
|
237 |
+#: clamav-milter.c:953 |
|
238 | 238 |
#, c-format |
239 | 239 |
msgid "%s: Only root can set an interface for --broadcast\n" |
240 | 240 |
msgstr "" |
241 | 241 |
|
242 |
-#: clamav-milter.c:945 |
|
242 |
+#: clamav-milter.c:958 |
|
243 | 243 |
#, c-format |
244 | 244 |
msgid "%s: Advisory mode doesn't work with quarantine mode\n" |
245 | 245 |
msgstr "" |
246 | 246 |
|
247 |
-#: clamav-milter.c:953 |
|
247 |
+#: clamav-milter.c:966 |
|
248 | 248 |
#, c-format |
249 | 249 |
msgid "%s: Advisory mode doesn't work with quarantine directories\n" |
250 | 250 |
msgstr "" |
251 | 251 |
|
252 |
-#: clamav-milter.c:959 |
|
252 |
+#: clamav-milter.c:972 |
|
253 | 253 |
#, c-format |
254 | 254 |
msgid "%s: the quarantine directory must not contain the string 'ERROR'\n" |
255 | 255 |
msgstr "" |
256 | 256 |
|
257 |
-#: clamav-milter.c:965 |
|
257 |
+#: clamav-milter.c:978 |
|
258 | 258 |
#, c-format |
259 | 259 |
msgid "%s: the quarantine directory must not contain the string 'FOUND'\n" |
260 | 260 |
msgstr "" |
261 | 261 |
|
262 |
-#: clamav-milter.c:971 |
|
262 |
+#: clamav-milter.c:984 |
|
263 | 263 |
#, c-format |
264 | 264 |
msgid "%s: the quarantine directory must not contain the string 'OK'\n" |
265 | 265 |
msgstr "" |
266 | 266 |
|
267 |
-#: clamav-milter.c:988 |
|
267 |
+#: clamav-milter.c:1001 |
|
268 | 268 |
#, c-format |
269 | 269 |
msgid "%s: insecure quarantine directory %s (mode 0%o)\n" |
270 | 270 |
msgstr "" |
271 | 271 |
|
272 |
-#: clamav-milter.c:1014 |
|
272 |
+#: clamav-milter.c:1027 |
|
273 | 273 |
#, c-format |
274 | 274 |
msgid "%s: ReadTimeout must not be negative in %s\n" |
275 | 275 |
msgstr "" |
276 | 276 |
|
277 |
-#: clamav-milter.c:1022 |
|
277 |
+#: clamav-milter.c:1035 |
|
278 | 278 |
#, c-format |
279 | 279 |
msgid "%s: StreamMaxLength must not be negative in %s\n" |
280 | 280 |
msgstr "" |
281 | 281 |
|
282 |
-#: clamav-milter.c:1050 |
|
282 |
+#: clamav-milter.c:1064 |
|
283 | 283 |
#, c-format |
284 | 284 |
msgid "" |
285 | 285 |
"%s: (-q && !LogSyslog): warning - all interception message methods are off\n" |
286 | 286 |
msgstr "" |
287 | 287 |
|
288 |
-#: clamav-milter.c:1060 |
|
288 |
+#: clamav-milter.c:1074 |
|
289 | 289 |
#, c-format |
290 | 290 |
msgid "%s: --max-children must be given if --external is not given\n" |
291 | 291 |
msgstr "" |
292 | 292 |
|
293 |
-#: clamav-milter.c:1064 |
|
293 |
+#: clamav-milter.c:1078 |
|
294 | 294 |
#, c-format |
295 | 295 |
msgid "%s: --timeout must not be given if --external is not given\n" |
296 | 296 |
msgstr "" |
297 | 297 |
|
298 |
-#: clamav-milter.c:1077 |
|
298 |
+#: clamav-milter.c:1091 |
|
299 | 299 |
#, c-format |
300 | 300 |
msgid "%s: You can select one server type only (local/TCP) in %s\n" |
301 | 301 |
msgstr "" |
302 | 302 |
|
303 |
-#: clamav-milter.c:1087 |
|
303 |
+#: clamav-milter.c:1101 |
|
304 | 304 |
#, c-format |
305 | 305 |
msgid "The connection from sendmail to %s (%s) must not\n" |
306 | 306 |
msgstr "" |
307 | 307 |
|
308 |
-#: clamav-milter.c:1089 |
|
308 |
+#: clamav-milter.c:1103 |
|
309 | 309 |
#, c-format |
310 | 310 |
msgid "be the same as the connection to clamd (%s) in %s\n" |
311 | 311 |
msgstr "" |
312 | 312 |
|
313 |
-#: clamav-milter.c:1099 clamav-milter.c:1122 |
|
313 |
+#: clamav-milter.c:1113 clamav-milter.c:1136 |
|
314 | 314 |
#, c-format |
315 | 315 |
msgid "Can't talk to clamd server via %s\n" |
316 | 316 |
msgstr "" |
317 | 317 |
|
318 |
-#: clamav-milter.c:1101 clamav-milter.c:1124 |
|
318 |
+#: clamav-milter.c:1115 clamav-milter.c:1138 |
|
319 | 319 |
#, c-format |
320 | 320 |
msgid "Check your entry for LocalSocket in %s\n" |
321 | 321 |
msgstr "" |
322 | 322 |
|
323 |
-#: clamav-milter.c:1135 |
|
323 |
+#: clamav-milter.c:1149 |
|
324 | 324 |
msgid "Can't create a clamd session" |
325 | 325 |
msgstr "" |
326 | 326 |
|
327 |
-#: clamav-milter.c:1152 |
|
327 |
+#: clamav-milter.c:1166 |
|
328 | 328 |
#, c-format |
329 | 329 |
msgid "%s: --quarantine-dir not supported for TCPSocket - use --quarantine\n" |
330 | 330 |
msgstr "" |
331 | 331 |
|
332 |
-#: clamav-milter.c:1167 |
|
332 |
+#: clamav-milter.c:1181 |
|
333 | 333 |
#, c-format |
334 | 334 |
msgid "%s: hostname %s is longer than %d characters\n" |
335 | 335 |
msgstr "" |
336 | 336 |
|
337 |
-#: clamav-milter.c:1186 clamav-milter.c:1271 |
|
337 |
+#: clamav-milter.c:1200 clamav-milter.c:1290 |
|
338 | 338 |
#, c-format |
339 | 339 |
msgid "%s: --max-children must be given in sessions mode\n" |
340 | 340 |
msgstr "" |
341 | 341 |
|
342 |
-#: clamav-milter.c:1209 |
|
342 |
+#: clamav-milter.c:1223 |
|
343 | 343 |
#, c-format |
344 | 344 |
msgid "%s: Unknown host %s\n" |
345 | 345 |
msgstr "" |
346 | 346 |
|
347 |
-#: clamav-milter.c:1221 |
|
347 |
+#: clamav-milter.c:1235 |
|
348 | 348 |
#, c-format |
349 | 349 |
msgid "Can't talk to clamd server %s on port %d\n" |
350 | 350 |
msgstr "" |
351 | 351 |
|
352 |
-#: clamav-milter.c:1238 |
|
352 |
+#: clamav-milter.c:1239 |
|
353 |
+#, c-format |
|
354 |
+msgid "Check the value for TCPAddr in %s\n" |
|
355 |
+msgstr "" |
|
356 |
+ |
|
357 |
+#: clamav-milter.c:1241 |
|
358 |
+#, c-format |
|
359 |
+msgid "Check the value for TCPAddr in clamd.conf on %s\n" |
|
360 |
+msgstr "" |
|
361 |
+ |
|
362 |
+#: clamav-milter.c:1257 |
|
353 | 363 |
msgid "Can't find any active clamd servers\n" |
354 | 364 |
msgstr "" |
355 | 365 |
|
356 |
-#: clamav-milter.c:1239 clamav-milter.c:1245 |
|
366 |
+#: clamav-milter.c:1258 clamav-milter.c:1264 |
|
357 | 367 |
#, c-format |
358 | 368 |
msgid "Check your entry for TCPSocket in %s\n" |
359 | 369 |
msgstr "" |
360 | 370 |
|
361 |
-#: clamav-milter.c:1244 |
|
371 |
+#: clamav-milter.c:1263 |
|
362 | 372 |
msgid "Can't find any clamd servers\n" |
363 | 373 |
msgstr "" |
364 | 374 |
|
365 |
-#: clamav-milter.c:1251 |
|
375 |
+#: clamav-milter.c:1270 |
|
366 | 376 |
#, c-format |
367 | 377 |
msgid "%s: You must select server type (local/TCP) in %s\n" |
368 | 378 |
msgstr "" |
369 | 379 |
|
370 |
-#: clamav-milter.c:1319 |
|
380 |
+#: clamav-milter.c:1338 |
|
371 | 381 |
#, c-format |
372 | 382 |
msgid "When debugging it is recommended that you use Foreground mode in %s\n" |
373 | 383 |
msgstr "" |
374 | 384 |
|
375 |
-#: clamav-milter.c:1320 |
|
385 |
+#: clamav-milter.c:1339 |
|
376 | 386 |
msgid "\tso that you can see all of the messages" |
377 | 387 |
msgstr "" |
378 | 388 |
|
379 |
-#: clamav-milter.c:1388 |
|
389 |
+#: clamav-milter.c:1430 |
|
380 | 390 |
#, c-format |
381 | 391 |
msgid "%s: ScanMail not defined in %s (needed without --external), enabling\n" |
382 | 392 |
msgstr "" |
383 | 393 |
|
384 |
-#: clamav-milter.c:1450 |
|
394 |
+#: clamav-milter.c:1492 |
|
385 | 395 |
msgid "Starting clamav-milter" |
386 | 396 |
msgstr "" |
387 | 397 |
|
388 |
-#: clamav-milter.c:1460 |
|
398 |
+#: clamav-milter.c:1502 |
|
389 | 399 |
#, c-format |
390 | 400 |
msgid "pidfile: '%s' must be a full pathname" |
391 | 401 |
msgstr "" |
392 | 402 |
|
393 |
-#: clamav-milter.c:1462 |
|
403 |
+#: clamav-milter.c:1504 |
|
394 | 404 |
#, c-format |
395 | 405 |
msgid "pidfile '%s' must be a full pathname\n" |
396 | 406 |
msgstr "" |
397 | 407 |
|
398 |
-#: clamav-milter.c:1476 |
|
408 |
+#: clamav-milter.c:1518 |
|
399 | 409 |
#, c-format |
400 | 410 |
msgid "Can't save PID in file %s" |
401 | 411 |
msgstr "" |
402 | 412 |
|
403 |
-#: clamav-milter.c:1478 |
|
413 |
+#: clamav-milter.c:1520 |
|
404 | 414 |
#, c-format |
405 | 415 |
msgid "Can't save PID in file %s\n" |
406 | 416 |
msgstr "" |
407 | 417 |
|
408 |
-#: clamav-milter.c:1541 |
|
418 |
+#: clamav-milter.c:1584 |
|
409 | 419 |
#, c-format |
410 | 420 |
msgid "Starting %s" |
411 | 421 |
msgstr "" |
412 | 422 |
|
413 |
-#: clamav-milter.c:1544 |
|
423 |
+#: clamav-milter.c:1587 |
|
414 | 424 |
msgid "Debugging is on" |
415 | 425 |
msgstr "" |
416 | 426 |
|
417 |
-#: clamav-milter.c:1611 clamav-milter.c:1870 |
|
427 |
+#: clamav-milter.c:1652 clamav-milter.c:1911 |
|
418 | 428 |
#, c-format |
419 | 429 |
msgid "Check clamd server %s - it may be down\n" |
420 | 430 |
msgstr "" |
421 | 431 |
|
422 |
-#: clamav-milter.c:1616 |
|
432 |
+#: clamav-milter.c:1657 |
|
423 | 433 |
msgid "Check clamd server - it may be down" |
424 | 434 |
msgstr "" |
425 | 435 |
|
426 |
-#: clamav-milter.c:1791 |
|
436 |
+#: clamav-milter.c:1832 |
|
427 | 437 |
msgid "No free clamd sessions\n" |
428 | 438 |
msgstr "" |
429 | 439 |
|
430 |
-#: clamav-milter.c:1873 |
|
440 |
+#: clamav-milter.c:1914 |
|
431 | 441 |
#, c-format |
432 | 442 |
msgid "Check clamd server %s - it may be down" |
433 | 443 |
msgstr "" |
434 | 444 |
|
435 |
-#: clamav-milter.c:1879 |
|
445 |
+#: clamav-milter.c:1920 |
|
436 | 446 |
msgid "Check clamd server - it may be down\n" |
437 | 447 |
msgstr "" |
438 | 448 |
|
439 |
-#: clamav-milter.c:1915 |
|
449 |
+#: clamav-milter.c:1956 |
|
440 | 450 |
msgid "findServer: select failed" |
441 | 451 |
msgstr "" |
442 | 452 |
|
443 |
-#: clamav-milter.c:1924 |
|
453 |
+#: clamav-milter.c:1965 |
|
444 | 454 |
#, c-format |
445 | 455 |
msgid "findServer: using server %d\n" |
446 | 456 |
msgstr "" |
447 | 457 |
|
448 |
-#: clamav-milter.c:1929 |
|
458 |
+#: clamav-milter.c:1970 |
|
449 | 459 |
msgid "findServer: No response from any server\n" |
450 | 460 |
msgstr "" |
451 | 461 |
|
452 |
-#: clamav-milter.c:1931 |
|
462 |
+#: clamav-milter.c:1972 |
|
453 | 463 |
msgid "findServer: No response from any server" |
454 | 464 |
msgstr "" |
455 | 465 |
|
456 |
-#: clamav-milter.c:1976 |
|
466 |
+#: clamav-milter.c:2017 |
|
457 | 467 |
msgid "clamfi_connect: ctx is null" |
458 | 468 |
msgstr "" |
459 | 469 |
|
460 |
-#: clamav-milter.c:1981 |
|
470 |
+#: clamav-milter.c:2022 |
|
461 | 471 |
msgid "clamfi_connect: hostname is null" |
462 | 472 |
msgstr "" |
463 | 473 |
|
464 |
-#: clamav-milter.c:2002 |
|
474 |
+#: clamav-milter.c:2043 |
|
465 | 475 |
msgid "clamfi_connect: remoteIP is null" |
466 | 476 |
msgstr "" |
467 | 477 |
|
468 |
-#: clamav-milter.c:2011 |
|
478 |
+#: clamav-milter.c:2052 |
|
469 | 479 |
#, c-format |
470 | 480 |
msgid "clamfi_connect: connection from %s" |
471 | 481 |
msgstr "" |
472 | 482 |
|
473 |
-#: clamav-milter.c:2012 |
|
483 |
+#: clamav-milter.c:2053 |
|
474 | 484 |
#, c-format |
475 | 485 |
msgid "clamfi_connect: connection from %s\n" |
476 | 486 |
msgstr "" |
477 | 487 |
|
478 |
-#: clamav-milter.c:2015 |
|
488 |
+#: clamav-milter.c:2056 |
|
479 | 489 |
#, c-format |
480 | 490 |
msgid "clamfi_connect: connection from %s [%s]" |
481 | 491 |
msgstr "" |
482 | 492 |
|
483 |
-#: clamav-milter.c:2016 |
|
493 |
+#: clamav-milter.c:2057 |
|
484 | 494 |
#, c-format |
485 | 495 |
msgid "clamfi_connect: connection from %s [%s]\n" |
486 | 496 |
msgstr "" |
487 | 497 |
|
488 |
-#: clamav-milter.c:2036 |
|
498 |
+#: clamav-milter.c:2077 |
|
489 | 499 |
msgid "Can't get sendmail hostname" |
490 | 500 |
msgstr "" |
491 | 501 |
|
492 |
-#: clamav-milter.c:2045 |
|
502 |
+#: clamav-milter.c:2086 |
|
493 | 503 |
#, c-format |
494 | 504 |
msgid "Access Denied: Host Unknown (%s)" |
495 | 505 |
msgstr "" |
496 | 506 |
|
497 |
-#: clamav-milter.c:2054 |
|
507 |
+#: clamav-milter.c:2095 |
|
498 | 508 |
#, c-format |
499 | 509 |
msgid "Can't find entry for IP address %s in DNS - check your DNS setting\n" |
500 | 510 |
msgstr "" |
501 | 511 |
|
502 |
-#: clamav-milter.c:2065 |
|
512 |
+#: clamav-milter.c:2106 |
|
503 | 513 |
#, c-format |
504 | 514 |
msgid "Access Denied: Can't get IP address for (%s)" |
505 | 515 |
msgstr "" |
506 | 516 |
|
507 |
-#: clamav-milter.c:2082 |
|
517 |
+#: clamav-milter.c:2123 |
|
508 | 518 |
#, c-format |
509 | 519 |
msgid "Access Denied for %s[%s]" |
510 | 520 |
msgstr "" |
511 | 521 |
|
512 |
-#: clamav-milter.c:2100 |
|
522 |
+#: clamav-milter.c:2141 |
|
513 | 523 |
msgid "clamfi_connect: not scanning outgoing messages" |
514 | 524 |
msgstr "" |
515 | 525 |
|
516 |
-#: clamav-milter.c:2101 |
|
526 |
+#: clamav-milter.c:2142 |
|
517 | 527 |
msgid "clamfi_connect: not scanning outgoing messages\n" |
518 | 528 |
msgstr "" |
519 | 529 |
|
520 |
-#: clamav-milter.c:2109 |
|
530 |
+#: clamav-milter.c:2150 |
|
521 | 531 |
msgid "clamfi_connect: not scanning local messages" |
522 | 532 |
msgstr "" |
523 | 533 |
|
524 |
-#: clamav-milter.c:2110 |
|
534 |
+#: clamav-milter.c:2151 |
|
525 | 535 |
msgid "clamfi_connect: not scanning local messages\n" |
526 | 536 |
msgstr "" |
527 | 537 |
|
528 |
-#: clamav-milter.c:2124 |
|
538 |
+#: clamav-milter.c:2165 |
|
529 | 539 |
msgid "clamfi_connect: gethostname failed" |
530 | 540 |
msgstr "" |
531 | 541 |
|
532 |
-#: clamav-milter.c:2129 |
|
542 |
+#: clamav-milter.c:2170 |
|
533 | 543 |
msgid "Rejected email falsely claiming to be from here" |
534 | 544 |
msgstr "" |
535 | 545 |
|
536 |
-#: clamav-milter.c:2130 |
|
546 |
+#: clamav-milter.c:2171 |
|
537 | 547 |
msgid "You have claimed to be me, but you are not" |
538 | 548 |
msgstr "" |
539 | 549 |
|
540 |
-#: clamav-milter.c:2131 clamav-milter.c:2415 |
|
550 |
+#: clamav-milter.c:2172 clamav-milter.c:2456 |
|
541 | 551 |
msgid "Forged local address detected" |
542 | 552 |
msgstr "" |
543 | 553 |
|
544 |
-#: clamav-milter.c:2159 |
|
554 |
+#: clamav-milter.c:2200 |
|
545 | 555 |
msgid "Rejected email with empty from field" |
546 | 556 |
msgstr "" |
547 | 557 |
|
548 |
-#: clamav-milter.c:2160 |
|
558 |
+#: clamav-milter.c:2201 |
|
549 | 559 |
msgid "You have not said who the email is from" |
550 | 560 |
msgstr "" |
551 | 561 |
|
552 |
-#: clamav-milter.c:2161 |
|
562 |
+#: clamav-milter.c:2202 |
|
553 | 563 |
msgid "Reject email with empty from field" |
554 | 564 |
msgstr "" |
555 | 565 |
|
556 |
-#: clamav-milter.c:2183 |
|
566 |
+#: clamav-milter.c:2224 |
|
557 | 567 |
#, c-format |
558 | 568 |
msgid "hit max-children limit (%u >= %u)\n" |
559 | 569 |
msgstr "" |
560 | 570 |
|
561 |
-#: clamav-milter.c:2184 |
|
571 |
+#: clamav-milter.c:2225 |
|
562 | 572 |
#, c-format |
563 | 573 |
msgid "hit max-children limit (%u >= %u): waiting for some to exit\n" |
564 | 574 |
msgstr "" |
565 | 575 |
|
566 |
-#: clamav-milter.c:2190 |
|
576 |
+#: clamav-milter.c:2231 |
|
567 | 577 |
#, c-format |
568 | 578 |
msgid "hit max-children limit (%u >= %u)" |
569 | 579 |
msgstr "" |
570 | 580 |
|
571 |
-#: clamav-milter.c:2191 |
|
581 |
+#: clamav-milter.c:2232 |
|
572 | 582 |
#, c-format |
573 | 583 |
msgid "hit max-children limit (%u >= %u): waiting for some to exit" |
574 | 584 |
msgstr "" |
575 | 585 |
|
576 |
-#: clamav-milter.c:2196 |
|
586 |
+#: clamav-milter.c:2237 |
|
577 | 587 |
msgid "AV system temporarily overloaded - please try later" |
578 | 588 |
msgstr "" |
579 | 589 |
|
580 |
-#: clamav-milter.c:2229 |
|
590 |
+#: clamav-milter.c:2270 |
|
581 | 591 |
#, c-format |
582 | 592 |
msgid ">n_children = %d\n" |
583 | 593 |
msgstr "" |
584 | 594 |
|
585 |
-#: clamav-milter.c:2235 |
|
595 |
+#: clamav-milter.c:2276 |
|
586 | 596 |
msgid "Timeout waiting for a child to die" |
587 | 597 |
msgstr "" |
588 | 598 |
|
589 |
-#: clamav-milter.c:2237 |
|
599 |
+#: clamav-milter.c:2278 |
|
590 | 600 |
msgid "Timeout waiting for a child to die\n" |
591 | 601 |
msgstr "" |
592 | 602 |
|
593 |
-#: clamav-milter.c:2380 |
|
603 |
+#: clamav-milter.c:2421 |
|
594 | 604 |
msgid "clamfi_eoh" |
595 | 605 |
msgstr "" |
596 | 606 |
|
597 |
-#: clamav-milter.c:2383 |
|
607 |
+#: clamav-milter.c:2424 |
|
598 | 608 |
msgid "clamfi_eoh\n" |
599 | 609 |
msgstr "" |
600 | 610 |
|
601 |
-#: clamav-milter.c:2407 |
|
611 |
+#: clamav-milter.c:2448 |
|
602 | 612 |
msgid "clamfi_eoh: gethostname failed" |
603 | 613 |
msgstr "" |
604 | 614 |
|
605 |
-#: clamav-milter.c:2413 |
|
615 |
+#: clamav-milter.c:2454 |
|
606 | 616 |
#, c-format |
607 | 617 |
msgid "Rejected email falsely claiming to be from %s" |
608 | 618 |
msgstr "" |
609 | 619 |
|
610 |
-#: clamav-milter.c:2414 |
|
620 |
+#: clamav-milter.c:2455 |
|
611 | 621 |
msgid "You have claimed to be from me, but you are not" |
612 | 622 |
msgstr "" |
613 | 623 |
|
614 |
-#: clamav-milter.c:2451 |
|
624 |
+#: clamav-milter.c:2492 |
|
615 | 625 |
msgid "clamfi_eoh: ignoring whitelisted message" |
616 | 626 |
msgstr "" |
617 | 627 |
|
618 |
-#: clamav-milter.c:2453 |
|
628 |
+#: clamav-milter.c:2494 |
|
619 | 629 |
msgid "clamfi_eoh: ignoring whitelisted message\n" |
620 | 630 |
msgstr "" |
621 | 631 |
|
622 |
-#: clamav-milter.c:2467 |
|
632 |
+#: clamav-milter.c:2508 |
|
623 | 633 |
#, c-format |
624 | 634 |
msgid "clamfi_envbody: %u bytes" |
625 | 635 |
msgstr "" |
626 | 636 |
|
627 |
-#: clamav-milter.c:2469 |
|
637 |
+#: clamav-milter.c:2510 |
|
628 | 638 |
#, c-format |
629 | 639 |
msgid "clamfi_envbody: %u bytes\n" |
630 | 640 |
msgstr "" |
631 | 641 |
|
632 |
-#: clamav-milter.c:2482 clamav-milter.c:2776 |
|
642 |
+#: clamav-milter.c:2523 clamav-milter.c:2817 |
|
633 | 643 |
#, c-format |
634 | 644 |
msgid "%s: Message more than StreamMaxLength (%ld) bytes - not scanned" |
635 | 645 |
msgstr "" |
636 | 646 |
|
637 |
-#: clamav-milter.c:2486 clamav-milter.c:2779 |
|
647 |
+#: clamav-milter.c:2527 clamav-milter.c:2820 |
|
638 | 648 |
msgid "Not Scanned - StreamMaxLength exceeded" |
639 | 649 |
msgstr "" |
640 | 650 |
|
641 |
-#: clamav-milter.c:2539 |
|
651 |
+#: clamav-milter.c:2580 |
|
642 | 652 |
#, c-format |
643 | 653 |
msgid "Failed to delete X-Virus-Status header %d" |
644 | 654 |
msgstr "" |
645 | 655 |
|
646 |
-#: clamav-milter.c:2602 |
|
656 |
+#: clamav-milter.c:2643 |
|
647 | 657 |
#, c-format |
648 | 658 |
msgid "failed to send SCAN %s command to clamd" |
649 | 659 |
msgstr "" |
650 | 660 |
|
651 |
-#: clamav-milter.c:2624 |
|
661 |
+#: clamav-milter.c:2665 |
|
652 | 662 |
msgid "failed to send SCAN command to clamd" |
653 | 663 |
msgstr "" |
654 | 664 |
|
655 |
-#: clamav-milter.c:2641 |
|
665 |
+#: clamav-milter.c:2682 |
|
656 | 666 |
#, c-format |
657 | 667 |
msgid "Waiting to read status from fd %d\n" |
658 | 668 |
msgstr "" |
659 | 669 |
|
660 |
-#: clamav-milter.c:2654 |
|
670 |
+#: clamav-milter.c:2695 |
|
661 | 671 |
#, c-format |
662 | 672 |
msgid "clamfi_eom: read %s" |
663 | 673 |
msgstr "" |
664 | 674 |
|
665 |
-#: clamav-milter.c:2655 |
|
675 |
+#: clamav-milter.c:2696 |
|
666 | 676 |
#, c-format |
667 | 677 |
msgid "clamfi_eom: read %s\n" |
668 | 678 |
msgstr "" |
669 | 679 |
|
670 |
-#: clamav-milter.c:2672 |
|
680 |
+#: clamav-milter.c:2713 |
|
671 | 681 |
#, c-format |
672 | 682 |
msgid "clamfi_eom: read nothing from clamd on %s" |
673 | 683 |
msgstr "" |
674 | 684 |
|
675 |
-#: clamav-milter.c:2674 |
|
685 |
+#: clamav-milter.c:2715 |
|
676 | 686 |
#, c-format |
677 | 687 |
msgid "clamfi_eom: read nothing from clamd on %s\n" |
678 | 688 |
msgstr "" |
679 | 689 |
|
680 |
-#: clamav-milter.c:2719 clamav-milter.c:2765 |
|
690 |
+#: clamav-milter.c:2760 clamav-milter.c:2806 |
|
681 | 691 |
msgid "Error determining host" |
682 | 692 |
msgstr "" |
683 | 693 |
|
684 |
-#: clamav-milter.c:2784 |
|
694 |
+#: clamav-milter.c:2825 |
|
685 | 695 |
msgid "Not Scanned" |
686 | 696 |
msgstr "" |
687 | 697 |
|
688 |
-#: clamav-milter.c:2813 |
|
698 |
+#: clamav-milter.c:2854 |
|
689 | 699 |
msgid "Infected with" |
690 | 700 |
msgstr "" |
691 | 701 |
|
692 |
-#: clamav-milter.c:2834 |
|
702 |
+#: clamav-milter.c:2875 |
|
693 | 703 |
#, c-format |
694 | 704 |
msgid "Intercepted virus from %s to" |
695 | 705 |
msgstr "" |
696 | 706 |
|
697 |
-#: clamav-milter.c:2927 |
|
707 |
+#: clamav-milter.c:2968 |
|
698 | 708 |
msgid "" |
699 | 709 |
"Subject: Virus intercepted\n" |
700 | 710 |
"\n" |
701 | 711 |
msgstr "" |
702 | 712 |
|
703 |
-#: clamav-milter.c:2935 |
|
713 |
+#: clamav-milter.c:2976 |
|
704 | 714 |
msgid "A message you sent to\n" |
705 | 715 |
msgstr "" |
706 | 716 |
|
707 |
-#: clamav-milter.c:2942 |
|
717 |
+#: clamav-milter.c:2983 |
|
708 | 718 |
#, c-format |
709 | 719 |
msgid "The message %1$s sent from %2$s to\n" |
710 | 720 |
msgstr "" |
711 | 721 |
|
712 |
-#: clamav-milter.c:2945 |
|
722 |
+#: clamav-milter.c:2986 |
|
713 | 723 |
#, c-format |
714 | 724 |
msgid "A message sent from %s to\n" |
715 | 725 |
msgstr "" |
716 | 726 |
|
717 |
-#: clamav-milter.c:2950 |
|
727 |
+#: clamav-milter.c:2991 |
|
718 | 728 |
#, c-format |
719 | 729 |
msgid "contained %s and has not been delivered.\n" |
720 | 730 |
msgstr "" |
721 | 731 |
|
722 |
-#: clamav-milter.c:2953 |
|
732 |
+#: clamav-milter.c:2994 |
|
723 | 733 |
#, c-format |
724 | 734 |
msgid "" |
725 | 735 |
"\n" |
726 | 736 |
"The message in question has been quarantined as %s\n" |
727 | 737 |
msgstr "" |
728 | 738 |
|
729 |
-#: clamav-milter.c:2956 |
|
739 |
+#: clamav-milter.c:2997 |
|
730 | 740 |
#, c-format |
731 | 741 |
msgid "" |
732 | 742 |
"\n" |
... | ... |
@@ -734,13 +744,13 @@ msgid "" |
734 | 734 |
"\n" |
735 | 735 |
msgstr "" |
736 | 736 |
|
737 |
-#: clamav-milter.c:2959 |
|
737 |
+#: clamav-milter.c:3000 |
|
738 | 738 |
msgid "" |
739 | 739 |
"For your information, the original message headers were:\n" |
740 | 740 |
"\n" |
741 | 741 |
msgstr "" |
742 | 742 |
|
743 |
-#: clamav-milter.c:2972 |
|
743 |
+#: clamav-milter.c:3013 |
|
744 | 744 |
#, c-format |
745 | 745 |
msgid "" |
746 | 746 |
"\n" |
... | ... |
@@ -748,240 +758,240 @@ msgid "" |
748 | 748 |
"%s\t\n" |
749 | 749 |
msgstr "" |
750 | 750 |
|
751 |
-#: clamav-milter.c:2980 |
|
751 |
+#: clamav-milter.c:3023 |
|
752 | 752 |
#, c-format |
753 | 753 |
msgid "Can't execute '%s' to send virus notice" |
754 | 754 |
msgstr "" |
755 | 755 |
|
756 |
-#: clamav-milter.c:2985 |
|
756 |
+#: clamav-milter.c:3028 |
|
757 | 757 |
#, c-format |
758 | 758 |
msgid "Quarantined infected mail as %s" |
759 | 759 |
msgstr "" |
760 | 760 |
|
761 |
-#: clamav-milter.c:3009 |
|
761 |
+#: clamav-milter.c:3052 |
|
762 | 762 |
#, c-format |
763 | 763 |
msgid "Can't set quarantine user %s" |
764 | 764 |
msgstr "" |
765 | 765 |
|
766 |
-#: clamav-milter.c:3011 |
|
766 |
+#: clamav-milter.c:3054 |
|
767 | 767 |
#, c-format |
768 | 768 |
msgid "Can't set quarantine user %s\n" |
769 | 769 |
msgstr "" |
770 | 770 |
|
771 |
-#: clamav-milter.c:3033 |
|
771 |
+#: clamav-milter.c:3076 |
|
772 | 772 |
#, c-format |
773 | 773 |
msgid "virus %s detected by ClamAV - http://www.clamav.net" |
774 | 774 |
msgstr "" |
775 | 775 |
|
776 |
-#: clamav-milter.c:3038 |
|
776 |
+#: clamav-milter.c:3081 |
|
777 | 777 |
msgid "Unknown" |
778 | 778 |
msgstr "" |
779 | 779 |
|
780 |
-#: clamav-milter.c:3040 |
|
780 |
+#: clamav-milter.c:3083 |
|
781 | 781 |
#, c-format |
782 | 782 |
msgid "%s: incorrect message \"%s\" from clamd" |
783 | 783 |
msgstr "" |
784 | 784 |
|
785 |
-#: clamav-milter.c:3046 |
|
785 |
+#: clamav-milter.c:3089 |
|
786 | 786 |
msgid "Clean" |
787 | 787 |
msgstr "" |
788 | 788 |
|
789 |
-#: clamav-milter.c:3050 |
|
789 |
+#: clamav-milter.c:3093 |
|
790 | 790 |
#, c-format |
791 | 791 |
msgid "%s: clean message from %s" |
792 | 792 |
msgstr "" |
793 | 793 |
|
794 |
-#: clamav-milter.c:3052 |
|
794 |
+#: clamav-milter.c:3095 |
|
795 | 795 |
msgid "an unknown sender" |
796 | 796 |
msgstr "" |
797 | 797 |
|
798 |
-#: clamav-milter.c:3156 |
|
798 |
+#: clamav-milter.c:3199 |
|
799 | 799 |
#, c-format |
800 | 800 |
msgid "Can't remove clean file %s" |
801 | 801 |
msgstr "" |
802 | 802 |
|
803 |
-#: clamav-milter.c:3339 clamav-milter.c:3342 |
|
803 |
+#: clamav-milter.c:3382 clamav-milter.c:3385 |
|
804 | 804 |
#, c-format |
805 | 805 |
msgid "write failure (%u bytes) to %s: %s" |
806 | 806 |
msgstr "" |
807 | 807 |
|
808 |
-#: clamav-milter.c:3356 clamav-milter.c:3359 |
|
808 |
+#: clamav-milter.c:3399 clamav-milter.c:3402 |
|
809 | 809 |
#, c-format |
810 | 810 |
msgid "write failure (%u bytes) to clamd: %s" |
811 | 811 |
msgstr "" |
812 | 812 |
|
813 |
-#: clamav-milter.c:3425 |
|
813 |
+#: clamav-milter.c:3468 |
|
814 | 814 |
#, c-format |
815 | 815 |
msgid "No data received from clamd in %d seconds\n" |
816 | 816 |
msgstr "" |
817 | 817 |
|
818 |
-#: clamav-milter.c:3447 |
|
818 |
+#: clamav-milter.c:3490 |
|
819 | 819 |
#, c-format |
820 | 820 |
msgid "Can't stat %s" |
821 | 821 |
msgstr "" |
822 | 822 |
|
823 |
-#: clamav-milter.c:3458 clamav-milter.c:3899 |
|
823 |
+#: clamav-milter.c:3501 clamav-milter.c:3942 |
|
824 | 824 |
#, c-format |
825 | 825 |
msgid "Can't open %s" |
826 | 826 |
msgstr "" |
827 | 827 |
|
828 |
-#: clamav-milter.c:3583 clamav-milter.c:4068 |
|
828 |
+#: clamav-milter.c:3626 clamav-milter.c:4111 |
|
829 | 829 |
#, c-format |
830 | 830 |
msgid "mkdir %s failed" |
831 | 831 |
msgstr "" |
832 | 832 |
|
833 |
-#: clamav-milter.c:3595 |
|
833 |
+#: clamav-milter.c:3638 |
|
834 | 834 |
#, c-format |
835 | 835 |
msgid "mktemp %s failed" |
836 | 836 |
msgstr "" |
837 | 837 |
|
838 |
-#: clamav-milter.c:3605 |
|
838 |
+#: clamav-milter.c:3648 |
|
839 | 839 |
#, c-format |
840 | 840 |
msgid "Temporary quarantine file %s creation failed" |
841 | 841 |
msgstr "" |
842 | 842 |
|
843 |
-#: clamav-milter.c:3708 |
|
843 |
+#: clamav-milter.c:3751 |
|
844 | 844 |
#, c-format |
845 | 845 |
msgid "failed to send STREAM command clamd server %d" |
846 | 846 |
msgstr "" |
847 | 847 |
|
848 |
-#: clamav-milter.c:3717 |
|
848 |
+#: clamav-milter.c:3760 |
|
849 | 849 |
msgid "failed to send STREAM command clamd" |
850 | 850 |
msgstr "" |
851 | 851 |
|
852 |
-#: clamav-milter.c:3729 |
|
852 |
+#: clamav-milter.c:3772 |
|
853 | 853 |
msgid "failed to create TCPSocket to talk to clamd" |
854 | 854 |
msgstr "" |
855 | 855 |
|
856 |
-#: clamav-milter.c:3741 clamav-milter.c:3757 |
|
856 |
+#: clamav-milter.c:3784 clamav-milter.c:3800 |
|
857 | 857 |
msgid "recv failed from clamd getting PORT" |
858 | 858 |
msgstr "" |
859 | 859 |
|
860 |
-#: clamav-milter.c:3745 clamav-milter.c:3759 |
|
860 |
+#: clamav-milter.c:3788 clamav-milter.c:3802 |
|
861 | 861 |
msgid "EOF from clamd getting PORT" |
862 | 862 |
msgstr "" |
863 | 863 |
|
864 |
-#: clamav-milter.c:3770 |
|
864 |
+#: clamav-milter.c:3813 |
|
865 | 865 |
#, c-format |
866 | 866 |
msgid "Expected port information from clamd, got '%s'" |
867 | 867 |
msgstr "" |
868 | 868 |
|
869 |
-#: clamav-milter.c:3773 |
|
869 |
+#: clamav-milter.c:3816 |
|
870 | 870 |
#, c-format |
871 | 871 |
msgid "Expected port information from clamd, got '%s'\n" |
872 | 872 |
msgstr "" |
873 | 873 |
|
874 |
-#: clamav-milter.c:3793 clamav-milter.c:3796 |
|
874 |
+#: clamav-milter.c:3836 clamav-milter.c:3839 |
|
875 | 875 |
#, c-format |
876 | 876 |
msgid "Connecting to local port %d - data %d cmd %d\n" |
877 | 877 |
msgstr "" |
878 | 878 |
|
879 |
-#: clamav-milter.c:3811 clamav-milter.c:3814 |
|
879 |
+#: clamav-milter.c:3854 clamav-milter.c:3857 |
|
880 | 880 |
#, c-format |
881 | 881 |
msgid "Failed to connect to port %d given by clamd: %s" |
882 | 882 |
msgstr "" |
883 | 883 |
|
884 |
-#: clamav-milter.c:3911 |
|
884 |
+#: clamav-milter.c:3954 |
|
885 | 885 |
#, c-format |
886 | 886 |
msgid "Clamd (pid %d) seems to have died" |
887 | 887 |
msgstr "" |
888 | 888 |
|
889 |
-#: clamav-milter.c:3937 |
|
889 |
+#: clamav-milter.c:3980 |
|
890 | 890 |
#, c-format |
891 | 891 |
msgid "Can't open e-mail template file %s" |
892 | 892 |
msgstr "" |
893 | 893 |
|
894 |
-#: clamav-milter.c:3946 |
|
894 |
+#: clamav-milter.c:3989 |
|
895 | 895 |
#, c-format |
896 | 896 |
msgid "Can't stat e-mail template file %s" |
897 | 897 |
msgstr "" |
898 | 898 |
|
899 |
-#: clamav-milter.c:3955 |
|
899 |
+#: clamav-milter.c:3998 |
|
900 | 900 |
msgid "Out of memory" |
901 | 901 |
msgstr "" |
902 | 902 |
|
903 |
-#: clamav-milter.c:3982 |
|
903 |
+#: clamav-milter.c:4025 |
|
904 | 904 |
#, c-format |
905 | 905 |
msgid "%s: Unknown clamAV variable \"%c\"\n" |
906 | 906 |
msgstr "" |
907 | 907 |
|
908 |
-#: clamav-milter.c:3993 |
|
908 |
+#: clamav-milter.c:4036 |
|
909 | 909 |
#, c-format |
910 | 910 |
msgid "%s: Unterminated sendmail variable \"%s\"\n" |
911 | 911 |
msgstr "" |
912 | 912 |
|
913 |
-#: clamav-milter.c:4004 |
|
913 |
+#: clamav-milter.c:4047 |
|
914 | 914 |
#, c-format |
915 | 915 |
msgid "%s: Unknown sendmail variable \"%s\"\n" |
916 | 916 |
msgstr "" |
917 | 917 |
|
918 |
-#: clamav-milter.c:4094 |
|
918 |
+#: clamav-milter.c:4137 |
|
919 | 919 |
#, c-format |
920 | 920 |
msgid "Can't rename %1$s to %2$s" |
921 | 921 |
msgstr "" |
922 | 922 |
|
923 |
-#: clamav-milter.c:4103 |
|
923 |
+#: clamav-milter.c:4146 |
|
924 | 924 |
#, c-format |
925 | 925 |
msgid "File quarantined as %s" |
926 | 926 |
msgstr "" |
927 | 927 |
|
928 |
-#: clamav-milter.c:4195 |
|
928 |
+#: clamav-milter.c:4238 |
|
929 | 929 |
#, c-format |
930 | 930 |
msgid "[Virus] %s" |
931 | 931 |
msgstr "" |
932 | 932 |
|
933 |
-#: clamav-milter.c:4289 |
|
933 |
+#: clamav-milter.c:4332 |
|
934 | 934 |
msgid "" |
935 | 935 |
"No response from any clamd server - your AV system is not scanning emails\n" |
936 | 936 |
msgstr "" |
937 | 937 |
|
938 |
-#: clamav-milter.c:4292 |
|
938 |
+#: clamav-milter.c:4335 |
|
939 | 939 |
msgid "" |
940 | 940 |
"No response from any clamd server - your AV system is not scanning emails" |
941 | 941 |
msgstr "" |
942 | 942 |
|
943 |
-#: clamav-milter.c:4310 |
|
943 |
+#: clamav-milter.c:4353 |
|
944 | 944 |
msgid "Subject: ClamAV Down\n" |
945 | 945 |
msgstr "" |
946 | 946 |
|
947 |
-#: clamav-milter.c:4313 |
|
947 |
+#: clamav-milter.c:4356 |
|
948 | 948 |
msgid "" |
949 | 949 |
"This is an automatic message\n" |
950 | 950 |
"\n" |
951 | 951 |
msgstr "" |
952 | 952 |
|
953 |
-#: clamav-milter.c:4316 |
|
953 |
+#: clamav-milter.c:4359 |
|
954 | 954 |
msgid "The clamd program cannot be contacted.\n" |
955 | 955 |
msgstr "" |
956 | 956 |
|
957 |
-#: clamav-milter.c:4318 |
|
957 |
+#: clamav-milter.c:4361 |
|
958 | 958 |
msgid "No clamd server can be contacted.\n" |
959 | 959 |
msgstr "" |
960 | 960 |
|
961 |
-#: clamav-milter.c:4320 |
|
961 |
+#: clamav-milter.c:4363 |
|
962 | 962 |
msgid "Emails may not be being scanned, please check your servers.\n" |
963 | 963 |
msgstr "" |
964 | 964 |
|
965 |
-#: clamav-milter.c:4400 clamav-milter.c:4423 clamav-milter.c:4589 |
|
966 |
-#: clamav-milter.c:4610 |
|
965 |
+#: clamav-milter.c:4443 clamav-milter.c:4468 clamav-milter.c:4634 |
|
966 |
+#: clamav-milter.c:4658 |
|
967 | 967 |
msgid "Loading new database" |
968 | 968 |
msgstr "" |
969 | 969 |
|
970 |
-#: clamav-milter.c:4730 |
|
970 |
+#: clamav-milter.c:4779 |
|
971 | 971 |
#, c-format |
972 | 972 |
msgid "Stopping %s" |
973 | 973 |
msgstr "" |
974 | 974 |
|
975 |
-#: clamav-milter.c:4776 |
|
975 |
+#: clamav-milter.c:4825 |
|
976 | 976 |
msgid "Stopping clamav-milter" |
977 | 977 |
msgstr "" |
978 | 978 |
|
979 |
-#: clamav-milter.c:4894 |
|
979 |
+#: clamav-milter.c:4943 |
|
980 | 980 |
#, c-format |
981 | 981 |
msgid "ClamAV: Protecting against %u viruses" |
982 | 982 |
msgstr "" |
983 | 983 |
|
984 |
-#: clamav-milter.c:4899 |
|
984 |
+#: clamav-milter.c:4948 |
|
985 | 985 |
#, c-format |
986 | 986 |
msgid "Loaded %s" |
987 | 987 |
msgstr "" |