Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Dec 2001 01:08:28 +1100
From:      Edwin Groothuis <edwin@mavetju.org>
To:        Lance Bland <lbland@vvi.com>
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: bind() error on stale port ...
Message-ID:  <20011204010828.C546@k7.mavetju.org>
In-Reply-To: <069E8AC2-E7F7-11D5-A5E1-0030659A531A@vvi.com>; from lbland@vvi.com on Mon, Dec 03, 2001 at 09:07:03AM -0500
References:  <20011203234721.B546@k7.mavetju.org> <069E8AC2-E7F7-11D5-A5E1-0030659A531A@vvi.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Dec 03, 2001 at 09:07:03AM -0500, Lance Bland wrote:
> 
> On Monday, December 3, 2001, at 07:47 AM, Edwin Groothuis wrote:
> 
> > You do it with setsockopt and SO_REUSEADDR:
> >
> >     int x=1;
> >     if (setsockopt(fd6,SOL_SOCKET,SO_REUSEADDR,(char 
> > *)&x,sizeof(x))<0) {
> > 	bugf("init_socket6(): SO_REUSEADDR: %s",ERROR);
> > 	exit(1);
> >     }
> 
> Why would I NOT want to set that socket option? It seems like something 
> I would always want to do.

This is only needed for server applications, which need to bind to
a specific port. For client applications, this port can be random
(i.e. the port number is determined by the kernel and not by the
application)

> I have 1000 pages of unix socket books and also man pages, but they 
> don't seem to be comprehensive enough. Is there a book that describes 
> all the features of setsockopt() (for example)? For example,the man page 
> I have doesn't describe the optional parameters (e.g.: &x) to 
> setsockopt().

I have good experiences with Richard Stevens "Unix Networking
Programming". Search amazon.com for it. But the only ones which
are always up to date for your operating system are the man-pages
on your machine.

Edwin

-- 
Edwin Groothuis   |              Personal website: http://www.MavEtJu.org
edwin@mavetju.org |           Interested in MUDs? Visit Fatal Dimensions:
------------------+                       http://www.FatalDimensions.org/

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011204010828.C546>