Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Aug 2017 02:01:03 +0000
From:      "James Alastair McLaughlin (PGR)" <j.a.mclaughlin@newcastle.ac.uk>
To:        "freebsd-current@freebsd.org" <freebsd-current@freebsd.org>
Subject:   Status of SO_PASSCRED in Linux compatibility
Message-ID:  <WM!631a7bad86b564163f88ab5c66fa5c2090c4972df76ed539d9a5011ff3864535d45eb55b6b0261d3ac9b18f03f84ffd2!@mailhub-mx2.ncl.ac.uk>
References:  <7174F105-C70E-40C6-BDEB-FBD6E6CD1DB6@newcastle.ac.uk>

index | next in thread | previous in thread | raw e-mail

Dear all,


I've been attempting to run Visual Studio Code[1] in an Ubuntu 16.04 chroot. VS Code is built using Electron, which is basically a minimal chromium to enable building desktop applications using web technology.


While I was able to install VS Code and all its dependencies in my chroot, I'm now stuck with the following error on attempting to run it:


    [5269:0816/001320.918234:FATAL:zygote_host_impl_linux.cc(140)] Check failed: base::UnixDomainSocket::EnableReceiveProcessId(fds[0]).


After investigating the Chromium source code, I've found that the EnableReceiveProcessId function calls setsockopt(2) with the SOL_SOCKET level and the option name SO_PASSCRED.  This fails because SO_PASSCRED Is not implemented in the Linux socket compatibility layer[2].


After some googling, I've found a patch[3] from 2010 to implement SO_PASSCRED that it seems has never been merged.  Does anyone know why, and if there are any plans to merge it?


Thanks,


James



[1] https://github.com/Microsoft/vscode

[2] https://github.com/freebsd/freebsd/blob/5451804107bd7fd8ab0fccba0293f3def6ccf0be/sys/compat/linux/linux_socket.c

[3] https://people.freebsd.org/~nox/linux-so_passcred.patch<https://people.freebsd.org/%7Enox/linux-so_passcred.patch>;



help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?WM!631a7bad86b564163f88ab5c66fa5c2090c4972df76ed539d9a5011ff3864535d45eb55b6b0261d3ac9b18f03f84ffd2!>