Consequently: - fixes #9 Arbitrary memory read while parsing malicious mDNS queries (mdns.c); - fixes #10 Denial of Service vulnerability (infinite loop) while parsing malicious mDNS queries (mdns.c); - fixes #11 Heap-based buffer overread (off-by-one) (mdns.c); - fixes #12 Heap-based buffer overread while parsing mDNS RR section (off-by-one) (mdns.c).
45 lines
645 B
Makefile
45 lines
645 B
Makefile
#
|
|
# Makefile for tinysvcmdns
|
|
#
|
|
|
|
CFLAGS += -Wall -pedantic -std=gnu99
|
|
CFLAGS += -g
|
|
CFLAGS += -O2
|
|
#CFLAGS += -DNDEBUG
|
|
LDLIBS = -lpthread
|
|
|
|
ifneq ($(CROSS_COMPILE),)
|
|
CC = gcc
|
|
CC := $(CROSS_COMPILE)$(CC)
|
|
AR := $(CROSS_COMPILE)$(AR)
|
|
endif
|
|
|
|
BIN=testmdnsd
|
|
|
|
LIBTINYSVCMDNS_OBJS = mdns.o mdnsd.o
|
|
|
|
.PHONY: all clean
|
|
|
|
all: $(BIN) libtinysvcmdns.a
|
|
|
|
clean:
|
|
-$(RM) *.o
|
|
-$(RM) *.bin
|
|
-$(RM) mdns
|
|
-$(RM) $(BIN)
|
|
-$(RM) libtinysvcmdns.a
|
|
|
|
mdns.o: mdns.h
|
|
|
|
mdnsd.o: mdns.h mdnsd.h
|
|
|
|
testmdnsd.o: mdnsd.h
|
|
|
|
testmdnsd: testmdnsd.o libtinysvcmdns.a
|
|
|
|
libtinysvcmdns.a: $(patsubst %, libtinysvcmdns.a(%), $(LIBTINYSVCMDNS_OBJS))
|
|
|
|
mdnsd: testmdnsd
|
|
strip -o $@ $<
|
|
|