NaCl and networking

297 views
Skip to first unread message

Steven Anderson

unread,
Jul 21, 2015, 10:03:11 AM7/21/15
to native-cli...@googlegroups.com
Hi is there any linux networking drivers that have been ported to work with the NaCl networking API or does it follow a standard that will allow a generic linux driver to work with NaCl (enabling internet communications ?

thanks in advance 

Victor Khimenko

unread,
Jul 21, 2015, 10:37:18 AM7/21/15
to Native Client Discuss
On Tue, Jul 21, 2015 at 5:03 PM, Steven Anderson <wanfu...@gmail.com> wrote:
Hi is there any linux networking drivers that have been ported to work with the NaCl networking API or does it follow a standard that will allow a generic linux driver to work with NaCl (enabling internet communications ?

I'm not really sure what you are asking about. NaCl itself does not offer any networking APIs and thus, of course, does not need any drivers.

Chrome offers some PPAPI networking APIs to Native Client applications but it's just a regular (albeit very complex) application, thus it does not need any drivers either.

Steven Anderson

unread,
Jul 21, 2015, 12:19:14 PM7/21/15
to native-cli...@googlegroups.com
In order to build some kind of networking capability into linux in the browser.

What I figure is that perhaps I could use socks proxy or naclssh with tun adapter. I don't know if these or another method might work. Its one thing to be able to read a directory on a remote server its another thing entirely to make a tcp/ip connection to something like a website in the sandboxed NaCl instance.

 I am able to load a network interface and connect it to localhost on the NaCl sandboxed linux guest but this is running under qemu inside the sandbox which means that there is no connection between the sandbox and virtualized Linux instance.

I was hoping for some ideas in this respect.

thanks in advance.

Sam Clegg

unread,
Jul 21, 2015, 4:32:42 PM7/21/15
to native-cli...@googlegroups.com
The only way to get network access from NaCl running in chrome is via
the Pepper APIs. For packaged apps this includes TCP and UDP socket
support.

The NaCl SDK provides a library called nacl_io that implements the BSD
socket API on top of the Pepper APIs which should allow most code the
uses <socket.h> to function as intended. There are some corner cases
that are not supported and probable never will be, but most common
networking feature are supported (DNS, UDP, TCP, listening sockets,
multicast, select/poll).

cheers,
sam
> --
> You received this message because you are subscribed to the Google Groups
> "Native-Client-Discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to native-client-di...@googlegroups.com.
> To post to this group, send email to native-cli...@googlegroups.com.
> Visit this group at http://groups.google.com/group/native-client-discuss.
> For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages