summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--tests/nettester.c18
2 files changed, 16 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index d7c6e408..2c4d1145 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
---------------------------------------------------------------------------
Version 4.5.0 [DEVEL] (rgerhards), 2009-??-??
+- activation order of inputs changed, they are now activated only after
+ privileges are dropped. Thanks to Michael Terry for the patch.
- greatly improved performance
- greatly reduced memory requirements of msg object
to around half of the previous demand. This means that more messages can
diff --git a/tests/nettester.c b/tests/nettester.c
index b8816b7c..c9a978c5 100644
--- a/tests/nettester.c
+++ b/tests/nettester.c
@@ -107,6 +107,7 @@ tcpSend(char *buf, int lenBuf)
{
static int sock = INVALID_SOCKET;
struct sockaddr_in addr;
+ int retries;
if(sock == INVALID_SOCKET) {
/* first time, need to connect to target */
@@ -122,10 +123,19 @@ tcpSend(char *buf, int lenBuf)
fprintf(stderr, "inet_aton() failed\n");
return(1);
}
- if(connect(sock, (struct sockaddr*)&addr, sizeof(addr)) != 0) {
- fprintf(stderr, "connect() failed\n");
- return(1);
- }
+ retries = 0;
+ while(1) { /* loop broken inside */
+ if(connect(sock, (struct sockaddr*)&addr, sizeof(addr)) == 0) {
+ break;
+ } else {
+ if(retries++ == 3) {
+ fprintf(stderr, "connect() failed\n");
+ return(1);
+ } else {
+ sleep(1);
+ }
+ }
+ }
}
/* send test data */