## Proxy Protocol
A pure erlang parser for HAProxy's proxy protocol standard
## Warning
This library is still in flux.
It should not be considered stable until version 0.2.0 is released.
## Documentation
The official documentation for the protocol can be found at
https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt
## Usage
The proxy_protocol module has a single exported function `parse` which
will handle either v1 or v2 of the proxy protocol.
The code accepts a binary argument and returns a two item tuple with the first element
containing `ok` or `error` and the second containing a map with the following keys:
body: The rest of the request (binary)
header: Contains a record with the following schema
```
{
dest_address: (IPAddress tuple, or binary)
dest_port: (Integer or undefined),
inet: string in ["AF_UNIX", "TCP4", "TCP6", "UDP4", "UDP6", "UNKNOWN"],
src_address: (IPAddress tuple, or Path binary),
src_port (Integer or undefined),
vsn: string in ["1", "2"]
}
```
message: (only for errors)
The reason why there was an error