blob: de74bd5193f98c4b7459f93f2b6363db796ec420 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
ifeq ($(origin $(KLIB)), undefined)
KLIB := /lib/modules/$(shell uname -r)
endif
KLIB_BUILD ?= $(KLIB)/build
CFLAGS += -Wall -g3
#CFLAGS += -DUSE_OPENSSL
#LDFLAGS += -lssl
ifneq ($(COMPAT_TREE),)
CFLAGS += -I$(COMPAT_TREE)/include/
endif
CFLAGS += -I$(KLIB_BUILD)/include -DUSE_GCRYPT
LDFLAGS += -lgcrypt
MKDIR ?= mkdir -p
INSTALL ?= install
CRDA_LIB = "/usr/lib/crda/"
all: regulatory.bin warn crda
@$(MAKE) --no-print-directory -f Makefile verify
regulatory.bin: db2bin.py key.priv.pem db.txt dbparse.py
@./db2bin.py regulatory.bin db.txt key.priv.pem
crda: keys-gcrypt.c keys-ssl.c crda.c regdb.h
$(CC) $(CFLAGS) $(LDFLAGS) -lnl -o $@ crda.c
clean:
@rm -f regulatory.bin dump *~ *.pyc keys-*.c crda
warn:
@if test ! -f key.priv.pem || diff -qNs test-key key.priv.pem >/dev/null ; then \
echo '**************************************';\
echo '** WARNING! **';\
echo '** No key found, using TEST key! **';\
echo '**************************************';\
fi
key.priv.pem:
cp test-key key.priv.pem
generate_key:
openssl genrsa -out key.priv.pem 2048
dump: dump.c regdb.h keys-ssl.c keys-gcrypt.c
$(CC) $(CFLAGS) $(LDFLAGS) dump.c -o dump
keys-ssl.c: key2pub.py $(wildcard *.pem)
@./key2pub.py --ssl *.pem > keys-ssl.c
keys-gcrypt.c: key2pub.py *.pem
@./key2pub.py --gcrypt *.pem > keys-gcrypt.c
verify: dump
@./dump regulatory.bin >/dev/null
install: regulatory.bin crda
$(MKDIR) $(DESTDIR)$(CRDA_LIB)
$(INSTALL) -m 644 -t $(DESTDIR)$(CRDA_LIB) regulatory.bin
$(INSTALL) -m 755 -t $(DESTDIR)/sbin/ crda
$(INSTALL) -m 644 -t $(DESTDIR)/etc/udev/rules.d/ regulatory.rules
|