Portable lightweight C++ sockets wrapper

rusbi picture rusbi · Dec 17, 2010 · Viewed 22k times · Source

I really thought this would be easier to find...

I need a portable c++ sockets wrapper. I'm planning to use it for a windows server application and a client that will be running on a embedded device running ulinux (or something similar). I would use Boost but I need it to be lightweight and easy to add to the embedded device project.

Also I would like it to be a "higher level" wrapper... so it starts a background thread to read data and informs be over a callback...

Any ideas?

Answer

Sam Miller picture Sam Miller · Dec 17, 2010

I'd suggest Boost.Asio. Despite it's name, you are not forced to use asynchronous I/O. You could use synchronous I/O and threads, as your question implies.

Boost.Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach.