aboutsummaryrefslogtreecommitdiff
path: root/auth.go
diff options
context:
space:
mode:
authorHimbeerserverDE <himbeerserverde@gmail.com>2021-09-11 11:45:25 +0200
committerHimbeerserverDE <himbeerserverde@gmail.com>2021-09-11 11:45:25 +0200
commitce6a8413b1f833ef8a925e208d4dc67126c150cf (patch)
tree58a1dbd91ef8a8bce6f16cc062e19dfc4d0e7269 /auth.go
parentf46ce4b0028ccc06482064bdf5c392a198989853 (diff)
Add ban API
Diffstat (limited to 'auth.go')
-rw-r--r--auth.go14
1 files changed, 13 insertions, 1 deletions
diff --git a/auth.go b/auth.go
index 4feec77..2fefd3b 100644
--- a/auth.go
+++ b/auth.go
@@ -2,6 +2,7 @@ package proxy
import (
"errors"
+ "net"
"time"
)
@@ -15,13 +16,24 @@ type user struct {
timestamp time.Time
}
+type ban struct {
+ addr string
+ name string
+}
+
type authBackend interface {
Exists(name string) bool
Passwd(name string) (salt, verifier []byte, err error)
SetPasswd(name string, salt, verifier []byte) error
Timestamp(name string) (time.Time, error)
- Import(data []user)
+ Import(in []user)
Export() ([]user, error)
+
+ Ban(addr, name string) error
+ Unban(id string) error
+ Banned(addr *net.IPAddr) bool
+ ImportBans(in []ban)
+ ExportBans() ([]ban, error)
}
func setAuthBackend(ab authBackend) error {