From 43d849086f67a695459f20744c68c22ea51ab34c Mon Sep 17 00:00:00 2001 From: Yang Luo Date: Fri, 13 Oct 2023 23:29:37 +0800 Subject: [PATCH] Fix 127.0.0.1 bug in isHostIntranet() --- controllers/casbin_api.go | 5 +++++ routers/base.go | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/controllers/casbin_api.go b/controllers/casbin_api.go index 4d72f9bb..cede5b76 100644 --- a/controllers/casbin_api.go +++ b/controllers/casbin_api.go @@ -37,6 +37,11 @@ func (c *ApiController) Enforce() { resourceId := c.Input().Get("resourceId") enforcerId := c.Input().Get("enforcerId") + if len(c.Ctx.Input.RequestBody) == 0 { + c.ResponseError("The request body should not be empty") + return + } + var request object.CasbinRequest err := json.Unmarshal(c.Ctx.Input.RequestBody, &request) if err != nil { diff --git a/routers/base.go b/routers/base.go index 997d1d99..d92572ed 100644 --- a/routers/base.go +++ b/routers/base.go @@ -190,5 +190,5 @@ func isHostIntranet(s string) bool { return false } - return ip.IsPrivate() + return ip.IsPrivate() || ip.IsLoopback() || ip.IsLinkLocalUnicast() || ip.IsLinkLocalMulticast() }