Unix domain accept() and getperrname() doesn't return the client address.

Corinna Vinschen corinna-cygwin@cygwin.com
Thu Mar 7 14:38:00 GMT 2013

On Mar  7 22:48, Tanaka Akira wrote:
> 2013/3/4 Corinna Vinschen:
> > It's not exactly intentional, but known.  The socket's peername is not
> > transmitted during the local socket credential exchange.  So far the
> > server assumes an unbound socket on the client side because, well, I
> > guess the reason is "nobody asked for it yet".  This could probably
> > be implemented with not too much effort, if necessary.
> I see.  Thank you.
> Is it also known that recvfrom() on Unix domain datagram socket
> returns an AF_INET address?

Not really, no.  This is another "nobody asked for it yet", but I think
that's a bug.  I'll have a look to fix that for 1.7.18.  But the above
restriction will apply.  If we have no peer address, you get a
sockaddr_un with empty path.


Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

More information about the Cygwin mailing list