|
Packit |
71e9d6 |
USE_GEOIP?=no
|
|
Packit |
71e9d6 |
USE_MAXMIND?=yes
|
|
Packit |
71e9d6 |
USE_RUNTIME_LINKING?=yes
|
|
Packit |
71e9d6 |
|
|
Packit |
71e9d6 |
LIBPATH?=/usr/lib64
|
|
Packit |
71e9d6 |
#LIBPATH=/usr/lib/x86_64-linux-gnu
|
|
Packit |
71e9d6 |
|
|
Packit |
71e9d6 |
LIBS?=
|
|
Packit |
71e9d6 |
VERSION=0.2.4
|
|
Packit |
71e9d6 |
CC?=gcc
|
|
Packit |
71e9d6 |
CFLAGS?=-O2 -g -Wall
|
|
Packit |
71e9d6 |
LDFLAGS=$(LIBS)
|
|
Packit |
71e9d6 |
|
|
Packit |
71e9d6 |
ifeq ($(USE_GEOIP),yes)
|
|
Packit |
71e9d6 |
ifeq ($(USE_RUNTIME_LINKING),yes)
|
|
Packit |
71e9d6 |
LDFLAGS+=-ldl
|
|
Packit |
71e9d6 |
CFLAGS+=-DUSE_GEOIP -DUSE_RUNTIME_LINKING -DLIBPATH="\"$(LIBPATH)\""
|
|
Packit |
71e9d6 |
else
|
|
Packit |
71e9d6 |
LDFLAGS+=-lGeoIP
|
|
Packit |
71e9d6 |
CFLAGS+=-DUSE_GEOIP
|
|
Packit |
71e9d6 |
endif # DYN GEOIP
|
|
Packit |
71e9d6 |
else # GEOIP
|
|
Packit |
71e9d6 |
ifeq ($(USE_MAXMIND),yes)
|
|
Packit |
71e9d6 |
ifeq ($(USE_RUNTIME_LINKING),yes)
|
|
Packit |
71e9d6 |
LDFLAGS+=-ldl
|
|
Packit |
71e9d6 |
CFLAGS+=-DUSE_MAXMIND -DUSE_RUNTIME_LINKING -DLIBPATH="\"$(LIBPATH)\""
|
|
Packit |
71e9d6 |
else
|
|
Packit |
71e9d6 |
LDFLAGS+=-lmaxminddb
|
|
Packit |
71e9d6 |
CFLAGS+=-DUSE_MAXMIND
|
|
Packit |
71e9d6 |
endif # DYN MAXMIND
|
|
Packit |
71e9d6 |
endif # MAXMIND
|
|
Packit |
71e9d6 |
endif # not GEOIP
|
|
Packit |
71e9d6 |
|
|
Packit |
71e9d6 |
all: ipcalc
|
|
Packit |
71e9d6 |
|
|
Packit |
71e9d6 |
ipcalc: ipcalc.c ipcalc-geoip.c ipcalc-maxmind.c ipcalc-reverse.c ipcalc-utils.c netsplit.c
|
|
Packit |
71e9d6 |
$(CC) $(CFLAGS) -DVERSION="\"$(VERSION)\"" $^ -o $@ $(LDFLAGS)
|
|
Packit |
71e9d6 |
|
|
Packit |
71e9d6 |
clean:
|
|
Packit |
71e9d6 |
rm -f ipcalc
|
|
Packit |
71e9d6 |
|
|
Packit |
71e9d6 |
SPLIT_LINES="$(shell ./ipcalc -S 29 192.168.5.0/24 | grep ^Network | wc -l)"
|
|
Packit |
71e9d6 |
SPLIT_TOTAL="$(shell ./ipcalc -S 29 192.168.5.0/24|grep ^Total|cut -d ':' -f 2|tr -d '[:space:]')"
|
|
Packit |
71e9d6 |
SPLIT_LINES_IPV6="$(shell ./ipcalc -S 120 fcfa:b4ca:f1d8:125b:dc00::/112 | grep ^Network | wc -l)"
|
|
Packit |
71e9d6 |
SPLIT_TOTAL_IPV6="$(shell ./ipcalc -S 120 fcfa:b4ca:f1d8:125b:dc00::/112|grep ^Total|cut -d ':' -f 2|tr -d '[:space:]')"
|
|
Packit |
71e9d6 |
|
|
Packit |
71e9d6 |
check: ipcalc
|
|
Packit |
71e9d6 |
./ipcalc -bmnp 12.15.1.5 --class-prefix > out.tmp && cmp out.tmp tests/12.15.1.5
|
|
Packit |
71e9d6 |
./ipcalc -bmnp 129.15.31.5 --class-prefix > out.tmp && cmp out.tmp tests/129.15.31.5
|
|
Packit |
71e9d6 |
./ipcalc -bmnp 193.92.31.0 --class-prefix > out.tmp && cmp out.tmp tests/193.92.31.0
|
|
Packit |
71e9d6 |
./ipcalc -bmnp 192.168.1.5/31 > out.tmp && cmp out.tmp tests/192.168.1.5-31
|
|
Packit |
71e9d6 |
./ipcalc -bmnp 10.10.10.5/24 > out.tmp && cmp out.tmp tests/192.168.1.5-24
|
|
Packit |
71e9d6 |
./ipcalc -bmnp 10.100.4.1/30 > out.tmp && cmp out.tmp tests/192.168.1.5-30
|
|
Packit |
71e9d6 |
./ipcalc -bmnp 10.100.4.1/16 > out.tmp && cmp out.tmp tests/192.168.1.5-16
|
|
Packit |
71e9d6 |
./ipcalc -bmnp 10.10.10.10/8 > out.tmp && cmp out.tmp tests/192.168.1.5-8
|
|
Packit |
71e9d6 |
./ipcalc -S 18 10.10.10.10/16 > out.tmp && cmp out.tmp tests/split-10.10.10.0-16-18
|
|
Packit |
71e9d6 |
./ipcalc -S 24 10.10.10.0/16 > out.tmp && cmp out.tmp tests/split-10.10.10.0-16-24
|
|
Packit |
71e9d6 |
./ipcalc -S 26 192.168.5.45/24 > out.tmp && cmp out.tmp tests/split-192.168.5.45-24-26
|
|
Packit |
71e9d6 |
./ipcalc -S 29 192.168.5.0/24 > out.tmp && cmp out.tmp tests/split-192.168.5.0-24-29
|
|
Packit |
71e9d6 |
./ipcalc -S 31 192.168.5.0/24 > out.tmp && cmp out.tmp tests/split-192.168.5.0-24-31
|
|
Packit |
71e9d6 |
./ipcalc -S 32 192.168.5.0/24 > out.tmp && cmp out.tmp tests/split-192.168.5.0-24-32
|
|
Packit |
71e9d6 |
./ipcalc -S 64 2a03:2880:20:4f06:face::/56 > out.tmp && cmp out.tmp tests/split-2a03:2880:20:4f06:face::-56-64
|
|
Packit |
71e9d6 |
./ipcalc -S 128 fcfa:b4ca:f1d8:125b:dc00::/127 > out.tmp && cmp out.tmp tests/split-fcfa:b4ca:f1d8:125b:dc00::-127-128
|
|
Packit |
71e9d6 |
./ipcalc -S 120 fcfa:b4ca:f1d8:125b:dc00::/112 > out.tmp && cmp out.tmp tests/split-fcfa:b4ca:f1d8:125b:dc00::-112-120
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 18 10.10.10.10/16 > out.tmp && cmp out.tmp tests/nsplit-10.10.10.0-16-18
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 24 10.10.10.0/16 > out.tmp && cmp out.tmp tests/nsplit-10.10.10.0-16-24
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 26 192.168.5.45/24 > out.tmp && cmp out.tmp tests/nsplit-192.168.5.45-24-26
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 29 192.168.5.0/24 > out.tmp && cmp out.tmp tests/nsplit-192.168.5.0-24-29
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 31 192.168.5.0/24 > out.tmp && cmp out.tmp tests/nsplit-192.168.5.0-24-31
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 32 192.168.5.0/24 > out.tmp && cmp out.tmp tests/nsplit-192.168.5.0-24-32
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 64 2a03:2880:20:4f06:face::/56 > out.tmp && cmp out.tmp tests/nsplit-2a03:2880:20:4f06:face::-56-64
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 128 fcfa:b4ca:f1d8:125b:dc00::/127 > out.tmp && cmp out.tmp tests/nsplit-fcfa:b4ca:f1d8:125b:dc00::-127-128
|
|
Packit |
71e9d6 |
./ipcalc --no-decorate -S 120 fcfa:b4ca:f1d8:125b:dc00::/112 > out.tmp && cmp out.tmp tests/nsplit-fcfa:b4ca:f1d8:125b:dc00::-112-120
|
|
Packit |
71e9d6 |
./ipcalc --addrspace -bmnp 193.92.150.3/24 > out.tmp && cmp out.tmp tests/193.92.150.3-24
|
|
Packit |
71e9d6 |
./ipcalc --addrspace -bmnp fd95:6be5:0ae0:84a5::/64 > out.tmp && cmp out.tmp tests/fd95:6be5:0ae0:84a5::-64
|
|
Packit |
71e9d6 |
./ipcalc --addrspace -bmnp fd0b:a336:4e7d::/48 > out.tmp && cmp out.tmp tests/fd0b:a336:4e7d::-48
|
|
Packit |
71e9d6 |
./ipcalc -i 2a03:2880:20:4f06:face:b00c:0:1 > out.tmp && cmp out.tmp tests/i-2a03:2880:20:4f06:face:b00c:0:1
|
|
Packit |
71e9d6 |
./ipcalc -i fd0b:a336:4e7d::/48 > out.tmp && cmp out.tmp tests/i-fd0b:a336:4e7d::-48
|
|
Packit |
71e9d6 |
test "$(SPLIT_LINES_IPV6)" = "$(SPLIT_TOTAL_IPV6)"
|
|
Packit |
71e9d6 |
test "$(SPLIT_LINES)" = "$(SPLIT_TOTAL)"
|
|
Packit |
71e9d6 |
./ipcalc-tests
|
|
Packit |
71e9d6 |
|