Yahoo Groups archive

Milter-greylist

Index last updated: 2026-04-28 23:32 UTC

Message

Re: [milter-greylist] milter-greylist 1.6rc1 and Solaris 9 (sparc)

2004-12-16 by Matthias Scheler

On Thu, Dec 16, 2004 at 05:16:57AM +0000, Matthias Scheler wrote:
> > Could you please provide output from "truss -f" for this bug?
> Better make that "truss -v all -o trussfile -f ...".

Here is the output which Fredrik kindly provided:

7906/4:         so_socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP, "", 1) = 8
7906/4:         bind(8, 0x000632E8, 16, 3)                      Err#126 EADDRNOTAVAIL
7906/4:                 AF_INET  name = 151.156.192.100  port = 0

So bind() worked as expected. The question is why errno got overwritten.
Looking at the code the code in "sync.c" ...

	if (bind(sfd, sa, salen) == -1) {
		if (errno != EADDRNOTAVAIL) {
			syslog(LOG_ERR, "local_addr: bind failed: %s\n",
			    strerror(errno));
			islocal = -1;
		} else {
			islocal = 0;
		}
	} else {
		islocal = 1;
	}

... I cannot see why it was overwritten unless this code has been
interrupted by a signal handler.

	Kind regards 

-- 
Matthias Scheler                                  http://scheler.de/~matthias/

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.