You don't need another library to use sockets. Under Linux/OSX/iOS they are part of libc. Under Windows you just have to link against wsock2 which is a system component. I don't know about Android but I'm quite sure it also has sockets.
So, if you use sockets, they should be available everywhere.
I do agree though, a wrapper to hide the platform differences would be nice. Maybe just copy the sockets API, with reduced functionality and always blocking. Something like:
3int my_socket(char const *protocol); // e.g. s = my_socket("udp6")
5int my_listen(int socket, char const *address); // e.g.my_listen(s, "0.0.0.0:8080");
7int my_connect(int socket, char const *address); // e.g. my_connect(s, "www.allegro.cc:80");
9int my_accept(int socket); // e.g. s2 = my_accept(s);
11int my_send(int socket, char const *buffer, int bytes); // would send all bytes, unlike the socket send()
13int my_recv(int socket, char *buffer, int max_bytes); // blocking
15int my_shutdown(int socket);
Each function would either return >= 0 if successful or a negative error code. Would probably only need one error code which tells to close the socket and recreate it.
I think it would take about half an hour to write, including the platform differences (e.g. under Windows, have to call WSAInit...). Still, I'd feel like a serious case of re-inventing the wheel