https://github.com/lichtso/netlink
Socket and Networking Library using msgpack.org[C++11]
https://github.com/lichtso/netlink
c-plus-plus-11 cross-platform ipv4 ipv6 msgpack multicast networking tcp udp utf-8
Last synced: about 2 months ago
JSON representation
Socket and Networking Library using msgpack.org[C++11]
- Host: GitHub
- URL: https://github.com/lichtso/netlink
- Owner: Lichtso
- License: gpl-3.0
- Created: 2013-03-29T08:07:34.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2023-07-05T16:36:14.000Z (almost 2 years ago)
- Last Synced: 2025-04-09T15:08:46.850Z (about 2 months ago)
- Topics: c-plus-plus-11, cross-platform, ipv4, ipv6, msgpack, multicast, networking, tcp, udp, utf-8
- Language: C++
- Homepage:
- Size: 1.14 MB
- Stars: 216
- Watchers: 22
- Forks: 48
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# netLink
C++ 11 KISS principle networking library.
[](https://www.gnu.org/licenses/gpl-3.0.en.html)
[](https://github.com/Lichtso/netLink/actions/workflows/actions.yml)## Features:
* C++ 11
* IPv4, IPv6
* Protocols: TCP, UDP
* Enable/Disable blocking mode
* Join/Leave UDP-Multicast groups
* UDP-IPv4-Broadcast
* Operating Systems: Mac OS, Linux, Windows
* MsgPack v5 support: http://msgpack.org so it can communicate with programs running in other programming languages
* Optional: Upgrade std::string with UTF8 support
* Socket can be used as std::streambuf
* SocketManager calls various events for (dis)connecting, receiving data, connection requests and status changes
* Event callbacks: onConnectRequest, onStatusChange, onReceiveRaw, onReceiveMsgPack## Example Code:
[UDP](https://github.com/Lichtso/netLink/blob/master/src/examples/udp.cpp),
[TCP](https://github.com/Lichtso/netLink/blob/master/src/examples/tcp.cpp)## Wiki:
[Doxygen online documentation](http://lichtso.github.io/netLink/doc/annotated.html)[MsgPack tutorial](https://github.com/Lichtso/netLink/wiki/MsgPack)
## History:
This library was inspired by the ["NetLink Sockets C++ Library"](https://sourceforge.net/projects/netlinksockets/files/release/1.0.0-pre-3/) from [Pedro Francisco Pareja Ruiz](https://github.com/PedroPareja), from which it got its general topic and name.