arnaucube
arnaucube/goImgServerPublic Self-hosted repository
implemented filter by ip on posting new images
arnaucode idoctnef@openmailbox.org
Tue, 20 Jun 2017 23:16:48 +0200
commit

e72905e6b227fcfb5078f2786fd0994e0886ee4d

parent

5a47f730205e53898dbe7335f653ca7c5c7b2361

2 files changed, 24 insertions(+), 0 deletions(-)

jump to
M handlers.go → handlers.go

@@ -33,6 +33,11 @@ }

} func NewImage(w http.ResponseWriter, r *http.Request) { + err := ipFilter(r) + if err != nil { + fmt.Fprintln(w, err.Error()) + return + } file, handler, err := r.FormFile("file") if err != nil { fmt.Println(err)
A ipFilter.go

@@ -0,0 +1,19 @@

+package main + +import ( + "errors" + "fmt" + "net/http" + "strings" +) + +func ipFilter(r *http.Request) error { + var err error + fmt.Println(r.RemoteAddr) + ip := strings.Split(r.RemoteAddr, ":")[0] + if ip != "127.0.0.1" { + err = errors.New("ip not allowed to post images") + } + + return err +}