libssh is a widely used open source C library implementing the SSH protocol. It allows us to remotely execute commands and transfer files using the SSH protocol.
libssh is structured in a way that abstracts network connections. We won't need to bother with the low-level networking APIs we've been using so far. The libssh library handles hostname resolution and creation of the needed TCP sockets for us.