Bug#490660: Cannot open abstract PF_UNIX sockets

Lubomir Rintel lkundrak at v3.sk
Wed Aug 26 12:51:38 UTC 2009


Hi Wouter,

> Unfortunately, when calling either pack_sockaddr_un or sockaddr_un 
> directly from within Perl, this null byte at the beginning of the string
> is filtered out, thus making it impossible to create a socket in the
> abstract namespace from within perl.

This is probably a duplicate of
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=329291

In fact the nul byte is not filtered out, but the routine that packs the
address structure specifies the length of the path as the longest
possible one, assuming it is a C nul-terminated string which is not true
for abstract sockets.

The fix was queued into Bleadperl, it's relatively small and safe; in
case you want to cherry-pick it:

http://perl5.git.perl.org/perl.git/commitdiff/99f13d4c3419e967e95c5ac6a3af61e9bb0fd3c0

Best Regards,
Lubo

--
Fedora 12 Alpha is out. Get it while it's hot! 
http://fedoraproject.org/get-prerelease







More information about the Perl-maintainers mailing list