diff options
author | Hajimu UMEMOTO <ume@FreeBSD.org> | 2002-08-15 16:10:56 +0000 |
---|---|---|
committer | Hajimu UMEMOTO <ume@FreeBSD.org> | 2002-08-15 16:10:56 +0000 |
commit | ac74afcf8def3b9f233aee3650bd4071568e83c5 (patch) | |
tree | 64e29022e77198cfe0fce51efb9afc94c185c486 /mail | |
parent | Use time_t instead of assuming it to be of type long. (diff) |
It seems getpeername() returns with no error but doesn't fill struct
sockaddr correctly against PF_UNIX socket under 5-CURRENT. Because of
this behavior, PF_UNIX socket was always checked by libwrap. This
work around prevents PF_UNIX socket from checking by libwrap to always
allow LMTP.
Notes
Notes:
svn path=/head/; revision=64545
Diffstat (limited to 'mail')
-rw-r--r-- | mail/cyrus-imapd2/files/patch-df | 8 | ||||
-rw-r--r-- | mail/cyrus-imapd22/files/patch-df | 8 | ||||
-rw-r--r-- | mail/cyrus-imapd23/files/patch-df | 8 | ||||
-rw-r--r-- | mail/cyrus-imapd24/files/patch-df | 8 |
4 files changed, 20 insertions, 12 deletions
diff --git a/mail/cyrus-imapd2/files/patch-df b/mail/cyrus-imapd2/files/patch-df index 1b092230a8f3..e95e795d2092 100644 --- a/mail/cyrus-imapd2/files/patch-df +++ b/mail/cyrus-imapd2/files/patch-df @@ -1,10 +1,12 @@ Index: master/service.c diff -u master/service.c.orig master/service.c ---- master/service.c.orig Mon Dec 17 18:08:07 2001 -+++ master/service.c Mon Dec 17 18:08:38 2001 -@@ -101,7 +101,11 @@ +--- master/service.c.orig Thu Aug 15 06:02:41 2002 ++++ master/service.c Fri Aug 16 00:28:31 2002 +@@ -103,8 +103,13 @@ + socklen_t len = sizeof(sin); /* is this a connection from the local host? */ ++ memset(&sin, 0, len); if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) { - if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) { + switch (((struct sockaddr *)&sin)->sa_family) { diff --git a/mail/cyrus-imapd22/files/patch-df b/mail/cyrus-imapd22/files/patch-df index 1b092230a8f3..e95e795d2092 100644 --- a/mail/cyrus-imapd22/files/patch-df +++ b/mail/cyrus-imapd22/files/patch-df @@ -1,10 +1,12 @@ Index: master/service.c diff -u master/service.c.orig master/service.c ---- master/service.c.orig Mon Dec 17 18:08:07 2001 -+++ master/service.c Mon Dec 17 18:08:38 2001 -@@ -101,7 +101,11 @@ +--- master/service.c.orig Thu Aug 15 06:02:41 2002 ++++ master/service.c Fri Aug 16 00:28:31 2002 +@@ -103,8 +103,13 @@ + socklen_t len = sizeof(sin); /* is this a connection from the local host? */ ++ memset(&sin, 0, len); if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) { - if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) { + switch (((struct sockaddr *)&sin)->sa_family) { diff --git a/mail/cyrus-imapd23/files/patch-df b/mail/cyrus-imapd23/files/patch-df index 1b092230a8f3..e95e795d2092 100644 --- a/mail/cyrus-imapd23/files/patch-df +++ b/mail/cyrus-imapd23/files/patch-df @@ -1,10 +1,12 @@ Index: master/service.c diff -u master/service.c.orig master/service.c ---- master/service.c.orig Mon Dec 17 18:08:07 2001 -+++ master/service.c Mon Dec 17 18:08:38 2001 -@@ -101,7 +101,11 @@ +--- master/service.c.orig Thu Aug 15 06:02:41 2002 ++++ master/service.c Fri Aug 16 00:28:31 2002 +@@ -103,8 +103,13 @@ + socklen_t len = sizeof(sin); /* is this a connection from the local host? */ ++ memset(&sin, 0, len); if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) { - if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) { + switch (((struct sockaddr *)&sin)->sa_family) { diff --git a/mail/cyrus-imapd24/files/patch-df b/mail/cyrus-imapd24/files/patch-df index 1b092230a8f3..e95e795d2092 100644 --- a/mail/cyrus-imapd24/files/patch-df +++ b/mail/cyrus-imapd24/files/patch-df @@ -1,10 +1,12 @@ Index: master/service.c diff -u master/service.c.orig master/service.c ---- master/service.c.orig Mon Dec 17 18:08:07 2001 -+++ master/service.c Mon Dec 17 18:08:38 2001 -@@ -101,7 +101,11 @@ +--- master/service.c.orig Thu Aug 15 06:02:41 2002 ++++ master/service.c Fri Aug 16 00:28:31 2002 +@@ -103,8 +103,13 @@ + socklen_t len = sizeof(sin); /* is this a connection from the local host? */ ++ memset(&sin, 0, len); if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) { - if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) { + switch (((struct sockaddr *)&sin)->sa_family) { |