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>
