clamav/clamav-milter/netcode.c

540 lines
12 KiB
C
Raw Normal View History

Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
/*
* Copyright (C)2008 Sourcefire, Inc.
*
* Author: aCaB <acab@clamav.net>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*/
#if HAVE_CONFIG_H
#include "clamav-config.h"
#endif
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/time.h>
#include <sys/select.h>
#include <time.h>
#include <errno.h>
2008-12-04 16:26:24 +00:00
#include <netdb.h>
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
#include "shared/output.h"
#include "libclamav/others.h"
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
#include "netcode.h"
enum {
NON_SMTP,
INET_HOST,
INET6_HOST
};
struct LOCALNET {
struct LOCALNET *next;
/* most significant first */
uint32_t basehost[4];
uint32_t mask[4];
uint32_t family;
};
struct LOCALNET *lnet = NULL;
char *tempdir = NULL;
/* for connect and send */
#define TIMEOUT 30
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
/* for recv */
long readtimeout;
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
int nc_socket(struct CP_ENTRY *cpe) {
int flags, s = socket(cpe->server->sa_family, SOCK_STREAM, 0);
char er[256];
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
if (s == -1) {
strerror_r(errno, er, sizeof(er));
logg("!Failed to create socket: %s\n", er);
return -1;
}
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
flags = fcntl(s, F_GETFL, 0);
if (flags == -1) {
strerror_r(errno, er, sizeof(er));
logg("!fcntl_get failed: %s\n", er);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return -1;
}
flags |= O_NONBLOCK;
if (fcntl(s, F_SETFL, flags) == -1) {
strerror_r(errno, er, sizeof(er));
logg("!fcntl_set failed: %s\n", er);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return -1;
}
return s;
}
int nc_connect(int s, struct CP_ENTRY *cpe) {
time_t timeout = time(NULL) + TIMEOUT;
int res = connect(s, cpe->server, cpe->socklen);
struct timeval tv;
char er[256];
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
if (!res) return 0;
if (errno != EINPROGRESS) {
strerror_r(errno, er, sizeof(er));
2008-12-04 16:27:22 +00:00
logg("*connect failed: %s\n", er);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return -1;
}
tv.tv_sec = TIMEOUT;
tv.tv_usec = 0;
while(1) {
fd_set fds;
int s_err;
socklen_t s_len = sizeof(s_err);
FD_ZERO(&fds);
FD_SET(s, &fds);
res = select(s+1, NULL, &fds, NULL, &tv);
if(res < 1) {
time_t now;
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
if (res == -1 && errno == EINTR && ((now = time(NULL)) < timeout)) {
tv.tv_sec = timeout - now;
tv.tv_usec = 0;
continue;
}
2008-12-04 16:27:22 +00:00
logg("*Failed to establish a connection to clamd\n");
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return -1;
}
if (getsockopt(s, SOL_SOCKET, SO_ERROR, &s_err, &s_len) || s_err) {
2008-12-04 16:27:22 +00:00
logg("*Failed to establish a connection to clamd\n");
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return -1;
}
return 0;
}
}
2008-12-07 12:33:11 +00:00
int nc_send(int s, const void *buff, size_t len) {
char *buf = (char *)buff;
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
while(len) {
int res = send(s, buf, len, 0);
time_t timeout = time(NULL) + TIMEOUT;
struct timeval tv;
char er[256];
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
if(res!=-1) {
len-=res;
buf+=res;
continue;
}
if(errno != EAGAIN && errno != EWOULDBLOCK) {
strerror_r(errno, er, sizeof(er));
logg("!send failed: %s\n", er);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return 1;
}
tv.tv_sec = TIMEOUT;
tv.tv_usec = 0;
while(1) {
fd_set fds;
int s_err;
socklen_t s_len = sizeof(s_err);
FD_ZERO(&fds);
FD_SET(s, &fds);
res = select(s+1, NULL, &fds, NULL, &tv);
if(res < 1) {
time_t now;
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
if (res == -1 && errno == EINTR && ((now = time(NULL)) < timeout)) {
tv.tv_sec = timeout - now;
tv.tv_usec = 0;
continue;
}
logg("!Failed stream to clamd\n");
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return 1;
}
len-=s_len;
buf+=s_len;
break;
}
}
return 0;
}
int nc_sendmsg(int s, int fd) {
struct iovec iov[1];
struct msghdr msg;
struct cmsghdr *cmsg;
int ret;
unsigned char fdbuf[CMSG_SPACE(sizeof(int))];
char dummy[]="";
iov[0].iov_base = dummy;
iov[0].iov_len = 1;
memset(&msg, 0, sizeof(msg));
msg.msg_control = fdbuf;
msg.msg_iov = iov;
msg.msg_iovlen = 1;
msg.msg_controllen = CMSG_LEN(sizeof(int));
cmsg = CMSG_FIRSTHDR(&msg);
cmsg->cmsg_len = CMSG_LEN(sizeof(int));
cmsg->cmsg_level = SOL_SOCKET;
cmsg->cmsg_type = SCM_RIGHTS;
*(int *)CMSG_DATA(cmsg) = fd;
/* FIXME: nonblock code needed (?) */
if((ret = sendmsg(s, &msg, 0)) == -1) {
char er[256];
strerror_r(errno, er, sizeof(er));
logg("!clamfi_eom: FD send failed (%s)\n", er);
close(s);
}
return ret;
}
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
char *nc_recv(int s) {
2008-12-04 16:27:22 +00:00
char buf[128], *ret=NULL;
time_t now, timeout = time(NULL) + readtimeout;
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
struct timeval tv;
fd_set fds;
int res;
2008-12-04 16:27:22 +00:00
unsigned int len = 0;
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
while(1) {
2008-12-04 16:27:22 +00:00
now = time(NULL);
if(now >= timeout) {
logg("!Timed out while reading clamd reply\n");
close(s);
return NULL;
}
tv.tv_sec = timeout - now;
tv.tv_usec = 0;
FD_ZERO(&fds);
FD_SET(s, &fds);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
res = select(s+1, &fds, NULL, NULL, &tv);
if(res<1) {
2008-12-04 16:27:22 +00:00
if (res != -1 || errno != EINTR)
timeout = 0;
continue;
}
2008-12-04 16:27:22 +00:00
res = recv(s, &buf[len], sizeof(buf) - len, 0);
if(res==-1) {
char er[256];
strerror_r(errno, er, sizeof(er));
logg("!recv failed after successful select: %s\n", er);
close(s);
return NULL;
}
len += res;
if(len && buf[len-1] == '\n') break;
if(len >= sizeof(buf)) {
logg("!Overlong reply from clamd\n");
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return NULL;
}
}
2008-12-04 16:27:22 +00:00
if(!(ret = (char *)malloc(len+1))) {
logg("!malloc(%d) failed\n", len+1);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(s);
return NULL;
}
2008-12-04 16:27:22 +00:00
memcpy(ret, buf, len);
ret[len]='\0';
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
return ret;
}
int nc_connect_entry(struct CP_ENTRY *cpe) {
int s = nc_socket(cpe);
if(s==-1) return -1;
return nc_connect(s, cpe) ? -1 : s;
}
void nc_ping_entry(struct CP_ENTRY *cpe) {
int s = nc_connect_entry(cpe);
char *reply;
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
if (s!=-1 && !nc_send(s, "nPING\n", 6) && (reply = nc_recv(s))) {
cpe->dead = strcmp(reply, "PONG\n")!=0;
} else cpe->dead = 1;
return;
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
}
int nc_connect_rand(int *main, int *alt, int *local) {
2008-12-04 16:26:24 +00:00
struct CP_ENTRY *cpe = cpool_get_rand(main);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
if(!cpe) return 1;
2008-12-04 16:26:24 +00:00
*local = (cpe->server->sa_family == AF_UNIX);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
if(*local) {
char *unlinkme;
if(cli_gentempfd(tempdir, &unlinkme, alt) != CL_SUCCESS) {
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
logg("!Failed to create temporary file\n");
close(*main);
return 1;
}
unlink(unlinkme);
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
} else {
char *reply=NULL, *port;
int nport;
struct CP_ENTRY new_cpe;
union {
struct sockaddr_in sa4;
struct sockaddr_in6 sa6;
} sa;
if(nc_send(*main, "nSTREAM\n", 8) || !(reply = nc_recv(*main)) || !(port = strstr(reply, "PORT"))) {
logg("!Failed to communicate with clamd\n");
if(reply) {
free(reply);
close(*main);
}
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
return 1;
}
port+=5;
sscanf(port, "%d", &nport);
free(reply);
if(cpe->server->sa_family == AF_INET && cpe->socklen == sizeof(struct sockaddr_in)) {
memcpy(&sa, cpe->server, sizeof(struct sockaddr_in));
sa.sa4.sin_port = htons(nport);
new_cpe.socklen = sizeof(struct sockaddr_in);
} else if(cpe->server->sa_family == AF_INET6 && cpe->socklen == sizeof(struct sockaddr_in6)) {
memcpy(&sa, cpe->server, sizeof(struct sockaddr_in6));
sa.sa6.sin6_port = htons(nport);
new_cpe.socklen = sizeof(struct sockaddr_in6);
} else {
logg("!WTF WHY AM I DOING HERE???\n");
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
close(*main);
return 1;
}
new_cpe.server = (struct sockaddr *)&sa;
if ((*alt = nc_connect_entry(&new_cpe)) == -1) {
logg("!Failed to communicate with clamd for streaming\n");
close(*main);
return 1;
}
}
return 0;
}
2008-12-04 16:26:24 +00:00
int resolve(char *name, uint32_t *family, uint32_t *host) {
struct addrinfo hints, *res;
if(!name) {
/* l->basehost[0] = l->basehost[1] = l->basehost[2] = l->basehost[3] = 0; DONT BOTHER*/
2008-12-04 16:26:24 +00:00
*family = NON_SMTP;
return 0;
}
memset(&hints, 0, sizeof(hints));
hints.ai_family = AF_UNSPEC;
hints.ai_socktype = SOCK_STREAM;
if(getaddrinfo(name, NULL, &hints, &res)) {
logg("!Can't resolve LocalNet hostname %s\n", name);
return 1;
}
if(res->ai_addrlen == sizeof(struct sockaddr_in) && res->ai_addr->sa_family == AF_INET) {
struct sockaddr_in *sa = (struct sockaddr_in *)res->ai_addr;
*family = INET_HOST;
host[0] = htonl(sa->sin_addr.s_addr);
/* host[1] = host[2] = host[3] = 0; DONT BOTHER*/
2008-12-04 16:26:24 +00:00
} else if(res->ai_addrlen == sizeof(struct sockaddr_in6) && res->ai_addr->sa_family == AF_INET6) {
struct sockaddr_in6 *sa = (struct sockaddr_in6 *)res->ai_addr;
unsigned int i, j;
uint32_t u = 0;
*family = INET6_HOST;
for(i=0, j=0; i<16; i++) {
u += (sa->sin6_addr.s6_addr[i] << (8*j));
if(++j == 4) {
host[i>>2] = u;
2008-12-04 16:26:24 +00:00
j = u = 0;
}
}
} else {
logg("!Unsupported address type for LocalNet %s\n", name);
freeaddrinfo(res);
return 1;
}
freeaddrinfo(res);
return 0;
}
struct LOCALNET *localnet(char *name, char *mask) {
2008-12-04 16:26:24 +00:00
struct LOCALNET *l = (struct LOCALNET *)malloc(sizeof(*l));
uint32_t nmask;
unsigned int i;
if(!l) {
logg("!Out of memory while resolving LocalNet\n");
return NULL;
}
if(resolve(name, &l->family, l->basehost)) {
free(l);
return NULL;
}
if(l->family == NON_SMTP) {
l->mask[0] = l->mask[1] = l->mask[2] = l->mask[3] = 0x0;
2008-12-04 16:26:24 +00:00
return l;
}
if(!mask || !*mask) nmask = 32 + 96*(l->family == INET6_HOST);
2008-12-04 16:26:24 +00:00
else nmask = atoi(mask);
if((l->family == INET6_HOST && nmask > 128) || (l->family == INET_HOST && nmask > 32)) {
logg("!Bad netmask '/%s' for LocalNet %s\n", mask, name);
free(l);
return NULL;
}
2008-12-04 16:26:24 +00:00
l->mask[0] = l->mask[1] = l->mask[2] = l->mask[3] = 0;
for(i=0; i<nmask; i++)
l->mask[i>>5] |= 1<<(31-(i & 31));
l->basehost[0] &= l->mask[0];
l->basehost[1] &= l->mask[1];
l->basehost[2] &= l->mask[2];
l->basehost[3] &= l->mask[3];
2008-12-04 16:26:24 +00:00
return l;
}
static int islocalnet(uint32_t family, uint32_t *host) {
struct LOCALNET* l = lnet;
2008-12-04 16:26:24 +00:00
if(!l) return 0;
2008-12-04 16:26:24 +00:00
while(l) {
if(
(l->family == family) &&
(l->basehost[0] == (host[0] & l->mask[0])) && (l->basehost[1] == (host[1] & l->mask[1])) &&
(l->basehost[2] == (host[2] & l->mask[2])) && (l->basehost[3] == (host[3] & l->mask[3]))
) return 1;
2008-12-04 16:26:24 +00:00
l=l->next;
}
return 0;
}
int islocalnet_name(char *name) {
uint32_t host[4], family;
if(!lnet) return 0;
if(resolve(name, &family, host)) {
2008-12-04 16:27:22 +00:00
logg("*Cannot resolv %s\n", name);
return 0;
}
return islocalnet(family, host);
}
int islocalnet_sock(struct sockaddr *sa) {
uint32_t host[4], family;
if(!lnet) return 0;
if(sa->sa_family == AF_INET) {
struct sockaddr_in *sa4 = (struct sockaddr_in *)sa;
family = INET_HOST;
host[0] = htonl(sa4->sin_addr.s_addr);
} else if(sa->sa_family == AF_INET6) {
struct sockaddr_in6 *sa6 = (struct sockaddr_in6 *)sa;
unsigned int i, j;
uint32_t u = 0;
family = INET6_HOST;
for(i=0, j=0; i<16; i++) {
u += (sa6->sin6_addr.s6_addr[i] << (8*j));
if(++j == 4) {
host[i>>2] = u;
j = u = 0;
}
}
} else return 0;
return islocalnet(family, host);
}
void localnets_free(void) {
while(lnet) {
struct LOCALNET *l = lnet->next;
free(lnet);
lnet = l;
}
}
int localnets_init(struct cfgstruct *copt) {
const struct cfgstruct *cpt;
if((cpt = cfgopt(copt, "LocalNet"))->enabled) {
while(cpt) {
char *lnetname = cpt->strarg;
struct LOCALNET *l;
char *mask = strrchr(lnetname, '/');
if(mask) {
*mask='\0';
mask++;
}
if(!strcasecmp(lnetname, "local")) lnetname = NULL;
if((l = localnet(lnetname, mask)) == NULL) {
localnets_free();
return 1;
}
l->next = lnet;
lnet = l;
cpt = (struct cfgstruct *) cpt->nextarg;
}
}
return 0;
}
Squashed commit of the following: commit 0ddbd1a7117e207b8aa87079568a056691d5eb32 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 17:18:04 2008 +0100 to be committed commit 51f8010a275717b8a56a3ab22d49755899819518 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 15:18:40 2008 +0100 mangle body commit cd38463f4739f4a7778b6bf294cfb2166024656e Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 14:43:39 2008 +0100 parse clamd result commit 7b8a39495e59ac745342455f8e9aab09951d1041 Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 03:19:45 2008 +0100 handle calloc shifts commit a58b732af99f9e3f18d2327e977432f1117028ee Author: acab <acab@1337ness.(none)> Date: Thu Nov 27 02:07:19 2008 +0100 spam added, local is b0rked commit 22604b4b037cfdbc92d6b29986652e2f004bd1f3 Author: acab <acab@albe.digitalfuture.it> Date: Wed Nov 26 19:44:59 2008 +0100 free/close stuff commit 33a02aed984981d3e80ca4930a482f702624f08f Author: aCaB <acab@digitalfuture.it> Date: Wed Nov 26 03:11:29 2008 +0100 skeleton ready commit 4630d9902ee74b6137abf6526c6a9ad3e41fc597 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:59:41 2008 +0100 need to rebase commit 083f5f98aecfce2763870f20ae97643d5683613a Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 22:45:11 2008 +0100 in body() commit 08f040f67de1264810953415c0a47c95ec9acff0 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 19:51:15 2008 +0100 clamfi commit bc08fe8f72580b8be81791a7c03ec38952781af7 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 16:47:17 2008 +0100 adding milter commit 34dcebd9294a059f2c45ec9d1817bdb75f423cb3 Author: aCaB <acab@digitalfuture.it> Date: Tue Nov 25 00:35:11 2008 +0100 netcode works, fix to cfgparser commit 3cc0997d907e817954328c60e43cdcca0667d6f3 Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 23:46:05 2008 +0100 socket probe commit 0c3bbd6d03f8df931cb114b07150cd0b7dcd0aff Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 19:02:06 2008 +0100 nonblock started commit a1193ff0de0d0a3d9212d833110236b1329c1f2e Author: aCaB <acab@digitalfuture.it> Date: Mon Nov 24 11:17:41 2008 +0100 legacy options commit 90519c59ff8a4f44fceaf84e8c40116254c73045 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 19:41:26 2008 +0100 sockets pool commit 897b0c5f82503530ba3fbb2fcc3a9c007488e90a Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 23 01:02:59 2008 +0100 Logging done commit 4cf3a218756271c74782a1649f728e1c6e977ae5 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 23:31:34 2008 +0100 Config done commit 93b271579f680286c697476c00d8eec7effb2fc4 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 22:50:42 2008 +0100 Sanitise config file options commit bf5e81b8561b258daaef134894761fa80d44f5b1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 20:25:06 2008 +0100 cfgparser hacks to allow for milter own conf commit 8924e93b2567a1f378c2177b4011b67631b49cc1 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 19:03:45 2008 +0100 command line parser commit d2180e370f75948b6ce12f89979bda9e92ccd5f8 Author: aCaB <acab@digitalfuture.it> Date: Sat Nov 22 16:36:37 2008 +0100 restart from scratch commit 249d6cdbddbea622c949753aafbf48e526e0ef4d Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 19:39:12 2008 +0100 more diversion commit b948990103867b59c749da88d6384128c1e5e6d3 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:31:42 2008 +0100 milter separation (milter) commit 6dc259a5d4f8f6e4428953055510382160ef8df4 Author: aCaB <acab@digitalfuture.it> Date: Sun Nov 16 17:23:14 2008 +0100 milter separation git-svn: trunk@4519
2008-12-04 16:26:04 +00:00
/*
* Local Variables:
* mode: c
* c-basic-offset: 4
* tab-width: 8
* End:
* vim: set cindent smartindent autoindent softtabstop=4 shiftwidth=4 tabstop=8:
*/