refactor: restructure project
All checks were successful
ci/woodpecker/push/lint Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/build Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful

This commit is contained in:
Tom Neuber 2024-11-26 13:35:54 +01:00
parent 1bde2041e1
commit 8215e1f13a
Signed by: tom
GPG key ID: F17EFE4272D89FF6
21 changed files with 850 additions and 269 deletions

View file

@ -1,22 +1,24 @@
package geoloc
import (
"fmt"
"errors"
"math"
"net"
"github.com/praserx/ipconv"
)
func GetIPInfo(ipaddress string) (uint, error) {
var ErrNoValidIP = errors.New("no valid IP address")
func CalculateIPNum(ipaddress string) (uint, error) {
ip := net.ParseIP(ipaddress)
if ip == nil {
return 0, fmt.Errorf("no valid IP address")
return 0, ErrNoValidIP
}
ipnum, err := ipconv.IPv4ToInt(ip)
if err != nil {
return 0, err
}
ipnumfrom := uint(math.Floor(float64(ipnum)/float64(256))) * 256
ipnumfrom := uint(math.Floor(float64(ipnum)/float64(CalculationValue))) * CalculationValue
return ipnumfrom, nil
}