Stream library provides stream connections between peers in GNUnet. This is a convenience library which hides the complexity of dividing data stream into packets, transmitting them and retransmitting them in case of communication errors. This library's API are similar to unix PIPE API. The user is expected to open a stream to a listening target peer. Once the stream is established, the user can use it as a pipe. Any data written into the stream at one peer will be readable by the other peer and vice versa. This library uses mesh API for establishing tunnels between peers.