Add CIDR support for expr (#62)

* feat: add cidr support for expr

* docs: add example for cidr

* minor code tweaks

---------

Co-authored-by: Toby <tobyxdd@gmail.com>
This commit is contained in:
Rinka
2024-02-17 14:21:12 -08:00
committed by GitHub
co-authored by Toby
parent 94cfe7b2c1
commit ebff4308e4
5 changed files with 74 additions and 1 deletions
+18
View File
@@ -0,0 +1,18 @@
package builtins
import (
"net"
)
func MatchCIDR(ip string, cidr *net.IPNet) bool {
ipAddr := net.ParseIP(ip)
if ipAddr == nil {
return false
}
return cidr.Contains(ipAddr)
}
func CompileCIDR(cidr string) (*net.IPNet, error) {
_, ipNet, err := net.ParseCIDR(cidr)
return ipNet, err
}