# Welcome

**postfix-policy-server** (or short: **pps**) provides a simple framework to create [Postfix SMTP Access Policy Delegation Servers](http://www.postfix.org/SMTPD_POLICY_README.html) in Go.

## Installation

First of all, [download](https://golang.org/dl/) and install Go. `1.17` or higher is required.

Installation can be done using the `go get` command:

```bash
$ go get -u github.com/wneessen/postfix-policy-server
```

## **Usage**

The **pps** framework allows you to start a new TCP (or other Go `net.Listener`) server that listens for incoming policy requests from a Postfix mail server.&#x20;

Once a new connection is established and the dataset from Postfix has been sent, the data will be processed as a [PolicySet](https://pkg.go.dev/github.com/wneessen/postfix-policy-server#PolicySet) and handed to a provided `Handle()` method that is given by the user, using the **pps** [Handler](https://pkg.go.dev/github.com/wneessen/postfix-policy-server#Handler) interface.
