Subject: Re: bug#23068: 25.1.50; unix socket address in abstract namespace

From: Mark Oteiza <[email-masked]>
Date: Sun, 20 Mar 2016 13:02:12 -0400

On 20/03/16 at 06:32pm, Eli Zaretskii wrote:
> > From: Mark Oteiza <[email-masked]>
> > Date: Sat, 19 Mar 2016 23:18:35 -0400
> > 
> > For the wishlist: teach emacs how to handle unix domain sockets with
> > an abstract address.  For instance, connecting to an abstract address
> > might look like:
> > 
> >   (make-network-process
> >    :name "dog" :buffer " *woof*"
> >    :service "\0sock" :family 'local)
> > 
> > the salient part being that the first element of the address is a null
> > byte. unix(7) has details.
> 
> Which parts of this don't already work?

For testing purposes, the socket is bound with

  socat -vd abstract-listen:sock,fork TCP:host:port

and I'm able to connect to it otherwise. The above elisp does:

  socket(PF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC, 0) = 8
  connect(8, {sa_family=AF_LOCAL, sun_path=@""}, 110) = -1 ECONNREFUSED (Connection refused)
  close(8)