add json config and updaet pkgbuild
This commit is contained in:
2
.dep.inc
2
.dep.inc
@@ -1,5 +1,5 @@
|
||||
# This code depends on make tool being used
|
||||
DEPFILES=$(wildcard $(addsuffix .d, ${OBJECTFILES}))
|
||||
DEPFILES=$(wildcard $(addsuffix .d, ${OBJECTFILES} ${TESTOBJECTFILES}))
|
||||
ifneq (${DEPFILES},)
|
||||
include ${DEPFILES}
|
||||
endif
|
||||
|
||||
4
CMakeLists.txt
Normal file
4
CMakeLists.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
cmake_minimum_required(VERSION 3.3.2)
|
||||
project (121Nat)
|
||||
ADD_SUBDIRECTORY(src)
|
||||
|
||||
26
dist/package/PKGBUILD
vendored
Normal file
26
dist/package/PKGBUILD
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
pkgname=121Nat
|
||||
pkgver=1.0 # note: if the pkgver had been '0.99-10' then use an underscore. like '0.99_10'
|
||||
pkgrel=1
|
||||
pkgdesc="transparent one to one nat"
|
||||
arch=(any)
|
||||
url="http://www.foo.org"
|
||||
license=('MIT')
|
||||
depends=('pth' 'jsoncpp')
|
||||
makedepends=('cmake')
|
||||
source=(./$pkgname-$pkgver.tar.gz)
|
||||
md5sums=('0e1494ebbcf0b0ca1bfa8475c5078f21')
|
||||
|
||||
build() {
|
||||
cd $srcdir/$pkgname
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DCMAKE_INSTALL_PREFIX=/usr ../
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd $srcdir/$pkgname/build
|
||||
make DESTDIR=$pkgdir install
|
||||
mkdir -p $pkgdir/etc/$pkgname
|
||||
cp ../src/config.json $pkgdir/etc/$pkgname/config-example.json
|
||||
}
|
||||
@@ -21,7 +21,7 @@ FC=gfortran
|
||||
AS=as
|
||||
|
||||
# Macros
|
||||
CND_PLATFORM=GNU-Linux-x86
|
||||
CND_PLATFORM=GNU-Linux
|
||||
CND_DLIB_EXT=so
|
||||
CND_CONF=Debug
|
||||
CND_DISTDIR=dist
|
||||
@@ -46,8 +46,16 @@ TESTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tests
|
||||
|
||||
# Test Files
|
||||
TESTFILES= \
|
||||
${TESTDIR}/TestFiles/f2 \
|
||||
${TESTDIR}/TestFiles/f1
|
||||
|
||||
# Test Object Files
|
||||
TESTOBJECTFILES= \
|
||||
${TESTDIR}/tests/jsontest.o \
|
||||
${TESTDIR}/tests/jsontestrunner.o \
|
||||
${TESTDIR}/tests/nattest.o \
|
||||
${TESTDIR}/tests/nattestrunner.o
|
||||
|
||||
# C Compiler Flags
|
||||
CFLAGS=
|
||||
|
||||
@@ -62,61 +70,79 @@ FFLAGS=
|
||||
ASFLAGS=
|
||||
|
||||
# Link Libraries and Options
|
||||
LDLIBSOPTIONS=-ltins -lpthread
|
||||
LDLIBSOPTIONS=-ltins -lpthread `pkg-config --libs jsoncpp`
|
||||
|
||||
# Build Targets
|
||||
.build-conf: ${BUILD_SUBPROJECTS}
|
||||
"${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
"${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
|
||||
${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat: ${OBJECTFILES}
|
||||
${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat: ${OBJECTFILES}
|
||||
${MKDIR} -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}
|
||||
${LINK.cc} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat ${OBJECTFILES} ${LDLIBSOPTIONS}
|
||||
${LINK.cc} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat ${OBJECTFILES} ${LDLIBSOPTIONS}
|
||||
|
||||
${OBJECTDIR}/src/PduSender.o: src/PduSender.cpp
|
||||
${MKDIR} -p ${OBJECTDIR}/src
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/PduSender.o src/PduSender.cpp
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/PduSender.o src/PduSender.cpp
|
||||
|
||||
${OBJECTDIR}/src/PduSniffer.o: src/PduSniffer.cpp
|
||||
${MKDIR} -p ${OBJECTDIR}/src
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/PduSniffer.o src/PduSniffer.cpp
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/PduSniffer.o src/PduSniffer.cpp
|
||||
|
||||
${OBJECTDIR}/src/main.o: src/main.cpp
|
||||
${MKDIR} -p ${OBJECTDIR}/src
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/main.o src/main.cpp
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/main.o src/main.cpp
|
||||
|
||||
${OBJECTDIR}/src/map/NatRange.o: src/map/NatRange.cpp
|
||||
${MKDIR} -p ${OBJECTDIR}/src/map
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/map/NatRange.o src/map/NatRange.cpp
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/map/NatRange.o src/map/NatRange.cpp
|
||||
|
||||
${OBJECTDIR}/src/map/natmap.o: src/map/natmap.cpp
|
||||
${MKDIR} -p ${OBJECTDIR}/src/map
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/map/natmap.o src/map/natmap.cpp
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/map/natmap.o src/map/natmap.cpp
|
||||
|
||||
# Subprojects
|
||||
.build-subprojects:
|
||||
|
||||
# Build Test Targets
|
||||
.build-tests-conf: .build-conf ${TESTFILES}
|
||||
.build-tests-conf: .build-tests-subprojects .build-conf ${TESTFILES}
|
||||
.build-tests-subprojects:
|
||||
|
||||
${TESTDIR}/TestFiles/f2: ${TESTDIR}/tests/jsontest.o ${TESTDIR}/tests/jsontestrunner.o ${OBJECTFILES:%.o=%_nomain.o}
|
||||
${MKDIR} -p ${TESTDIR}/TestFiles
|
||||
${LINK.cc} -o ${TESTDIR}/TestFiles/f2 $^ ${LDLIBSOPTIONS} `cppunit-config --libs`
|
||||
|
||||
${TESTDIR}/TestFiles/f1: ${TESTDIR}/tests/nattest.o ${TESTDIR}/tests/nattestrunner.o ${OBJECTFILES:%.o=%_nomain.o}
|
||||
${MKDIR} -p ${TESTDIR}/TestFiles
|
||||
${LINK.cc} -o ${TESTDIR}/TestFiles/f1 $^ ${LDLIBSOPTIONS} `cppunit-config --libs`
|
||||
|
||||
|
||||
${TESTDIR}/tests/jsontest.o: tests/jsontest.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/jsontest.o tests/jsontest.cpp
|
||||
|
||||
|
||||
${TESTDIR}/tests/jsontestrunner.o: tests/jsontestrunner.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/jsontestrunner.o tests/jsontestrunner.cpp
|
||||
|
||||
|
||||
${TESTDIR}/tests/nattest.o: tests/nattest.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall -I. -std=c++11 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/nattest.o tests/nattest.cpp
|
||||
$(COMPILE.cc) -g -Wall -I. `pkg-config --cflags jsoncpp` -std=c++11 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/nattest.o tests/nattest.cpp
|
||||
|
||||
|
||||
${TESTDIR}/tests/nattestrunner.o: tests/nattestrunner.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Wall -I. -std=c++11 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/nattestrunner.o tests/nattestrunner.cpp
|
||||
$(COMPILE.cc) -g -Wall -I. `pkg-config --cflags jsoncpp` -std=c++11 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/nattestrunner.o tests/nattestrunner.cpp
|
||||
|
||||
|
||||
${OBJECTDIR}/src/PduSender_nomain.o: ${OBJECTDIR}/src/PduSender.o src/PduSender.cpp
|
||||
@@ -127,7 +153,7 @@ ${OBJECTDIR}/src/PduSender_nomain.o: ${OBJECTDIR}/src/PduSender.o src/PduSender.
|
||||
(echo "$$NMOUTPUT" | ${GREP} 'T _main$$'); \
|
||||
then \
|
||||
${RM} "$@.d";\
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/PduSender_nomain.o src/PduSender.cpp;\
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/PduSender_nomain.o src/PduSender.cpp;\
|
||||
else \
|
||||
${CP} ${OBJECTDIR}/src/PduSender.o ${OBJECTDIR}/src/PduSender_nomain.o;\
|
||||
fi
|
||||
@@ -140,7 +166,7 @@ ${OBJECTDIR}/src/PduSniffer_nomain.o: ${OBJECTDIR}/src/PduSniffer.o src/PduSniff
|
||||
(echo "$$NMOUTPUT" | ${GREP} 'T _main$$'); \
|
||||
then \
|
||||
${RM} "$@.d";\
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/PduSniffer_nomain.o src/PduSniffer.cpp;\
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/PduSniffer_nomain.o src/PduSniffer.cpp;\
|
||||
else \
|
||||
${CP} ${OBJECTDIR}/src/PduSniffer.o ${OBJECTDIR}/src/PduSniffer_nomain.o;\
|
||||
fi
|
||||
@@ -153,7 +179,7 @@ ${OBJECTDIR}/src/main_nomain.o: ${OBJECTDIR}/src/main.o src/main.cpp
|
||||
(echo "$$NMOUTPUT" | ${GREP} 'T _main$$'); \
|
||||
then \
|
||||
${RM} "$@.d";\
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/main_nomain.o src/main.cpp;\
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/main_nomain.o src/main.cpp;\
|
||||
else \
|
||||
${CP} ${OBJECTDIR}/src/main.o ${OBJECTDIR}/src/main_nomain.o;\
|
||||
fi
|
||||
@@ -166,7 +192,7 @@ ${OBJECTDIR}/src/map/NatRange_nomain.o: ${OBJECTDIR}/src/map/NatRange.o src/map/
|
||||
(echo "$$NMOUTPUT" | ${GREP} 'T _main$$'); \
|
||||
then \
|
||||
${RM} "$@.d";\
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/map/NatRange_nomain.o src/map/NatRange.cpp;\
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/map/NatRange_nomain.o src/map/NatRange.cpp;\
|
||||
else \
|
||||
${CP} ${OBJECTDIR}/src/map/NatRange.o ${OBJECTDIR}/src/map/NatRange_nomain.o;\
|
||||
fi
|
||||
@@ -179,7 +205,7 @@ ${OBJECTDIR}/src/map/natmap_nomain.o: ${OBJECTDIR}/src/map/natmap.o src/map/natm
|
||||
(echo "$$NMOUTPUT" | ${GREP} 'T _main$$'); \
|
||||
then \
|
||||
${RM} "$@.d";\
|
||||
$(COMPILE.cc) -g -Wall -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/map/natmap_nomain.o src/map/natmap.cpp;\
|
||||
$(COMPILE.cc) -g -Wall `pkg-config --cflags jsoncpp` -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/src/map/natmap_nomain.o src/map/natmap.cpp;\
|
||||
else \
|
||||
${CP} ${OBJECTDIR}/src/map/natmap.o ${OBJECTDIR}/src/map/natmap_nomain.o;\
|
||||
fi
|
||||
@@ -188,6 +214,7 @@ ${OBJECTDIR}/src/map/natmap_nomain.o: ${OBJECTDIR}/src/map/natmap.o src/map/natm
|
||||
.test-conf:
|
||||
@if [ "${TEST}" = "" ]; \
|
||||
then \
|
||||
${TESTDIR}/TestFiles/f2 || true; \
|
||||
${TESTDIR}/TestFiles/f1 || true; \
|
||||
else \
|
||||
./${TEST} || true; \
|
||||
@@ -196,7 +223,7 @@ ${OBJECTDIR}/src/map/natmap_nomain.o: ${OBJECTDIR}/src/map/natmap.o src/map/natm
|
||||
# Clean Targets
|
||||
.clean-conf: ${CLEAN_SUBPROJECTS}
|
||||
${RM} -r ${CND_BUILDDIR}/${CND_CONF}
|
||||
${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
|
||||
# Subprojects
|
||||
.clean-subprojects:
|
||||
|
||||
@@ -21,7 +21,7 @@ FC=gfortran
|
||||
AS=as
|
||||
|
||||
# Macros
|
||||
CND_PLATFORM=GNU-Linux-x86
|
||||
CND_PLATFORM=GNU-Linux
|
||||
CND_DLIB_EXT=so
|
||||
CND_CONF=Release
|
||||
CND_DISTDIR=dist
|
||||
@@ -46,8 +46,16 @@ TESTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tests
|
||||
|
||||
# Test Files
|
||||
TESTFILES= \
|
||||
${TESTDIR}/TestFiles/f2 \
|
||||
${TESTDIR}/TestFiles/f1
|
||||
|
||||
# Test Object Files
|
||||
TESTOBJECTFILES= \
|
||||
${TESTDIR}/tests/jsontest.o \
|
||||
${TESTDIR}/tests/jsontestrunner.o \
|
||||
${TESTDIR}/tests/nattest.o \
|
||||
${TESTDIR}/tests/nattestrunner.o
|
||||
|
||||
# C Compiler Flags
|
||||
CFLAGS=
|
||||
|
||||
@@ -66,11 +74,11 @@ LDLIBSOPTIONS=
|
||||
|
||||
# Build Targets
|
||||
.build-conf: ${BUILD_SUBPROJECTS}
|
||||
"${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
"${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
|
||||
${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat: ${OBJECTFILES}
|
||||
${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat: ${OBJECTFILES}
|
||||
${MKDIR} -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}
|
||||
${LINK.cc} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat ${OBJECTFILES} ${LDLIBSOPTIONS}
|
||||
${LINK.cc} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat ${OBJECTFILES} ${LDLIBSOPTIONS}
|
||||
|
||||
${OBJECTDIR}/src/PduSender.o: src/PduSender.cpp
|
||||
${MKDIR} -p ${OBJECTDIR}/src
|
||||
@@ -101,12 +109,30 @@ ${OBJECTDIR}/src/map/natmap.o: src/map/natmap.cpp
|
||||
.build-subprojects:
|
||||
|
||||
# Build Test Targets
|
||||
.build-tests-conf: .build-conf ${TESTFILES}
|
||||
.build-tests-conf: .build-tests-subprojects .build-conf ${TESTFILES}
|
||||
.build-tests-subprojects:
|
||||
|
||||
${TESTDIR}/TestFiles/f2: ${TESTDIR}/tests/jsontest.o ${TESTDIR}/tests/jsontestrunner.o ${OBJECTFILES:%.o=%_nomain.o}
|
||||
${MKDIR} -p ${TESTDIR}/TestFiles
|
||||
${LINK.cc} -o ${TESTDIR}/TestFiles/f2 $^ ${LDLIBSOPTIONS} `cppunit-config --libs`
|
||||
|
||||
${TESTDIR}/TestFiles/f1: ${TESTDIR}/tests/nattest.o ${TESTDIR}/tests/nattestrunner.o ${OBJECTFILES:%.o=%_nomain.o}
|
||||
${MKDIR} -p ${TESTDIR}/TestFiles
|
||||
${LINK.cc} -o ${TESTDIR}/TestFiles/f1 $^ ${LDLIBSOPTIONS} `cppunit-config --libs`
|
||||
|
||||
|
||||
${TESTDIR}/tests/jsontest.o: tests/jsontest.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -O2 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/jsontest.o tests/jsontest.cpp
|
||||
|
||||
|
||||
${TESTDIR}/tests/jsontestrunner.o: tests/jsontestrunner.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -O2 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/jsontestrunner.o tests/jsontestrunner.cpp
|
||||
|
||||
|
||||
${TESTDIR}/tests/nattest.o: tests/nattest.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
@@ -188,6 +214,7 @@ ${OBJECTDIR}/src/map/natmap_nomain.o: ${OBJECTDIR}/src/map/natmap.o src/map/natm
|
||||
.test-conf:
|
||||
@if [ "${TEST}" = "" ]; \
|
||||
then \
|
||||
${TESTDIR}/TestFiles/f2 || true; \
|
||||
${TESTDIR}/TestFiles/f1 || true; \
|
||||
else \
|
||||
./${TEST} || true; \
|
||||
@@ -196,7 +223,7 @@ ${OBJECTDIR}/src/map/natmap_nomain.o: ${OBJECTDIR}/src/map/natmap.o src/map/natm
|
||||
# Clean Targets
|
||||
.clean-conf: ${CLEAN_SUBPROJECTS}
|
||||
${RM} -r ${CND_BUILDDIR}/${CND_CONF}
|
||||
${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
|
||||
# Subprojects
|
||||
.clean-subprojects:
|
||||
|
||||
@@ -21,7 +21,7 @@ FC=gfortran
|
||||
AS=as
|
||||
|
||||
# Macros
|
||||
CND_PLATFORM=GNU-Linux-x86
|
||||
CND_PLATFORM=GNU-Linux
|
||||
CND_DLIB_EXT=so
|
||||
CND_CONF=Unitest
|
||||
CND_DISTDIR=dist
|
||||
@@ -46,8 +46,16 @@ TESTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tests
|
||||
|
||||
# Test Files
|
||||
TESTFILES= \
|
||||
${TESTDIR}/TestFiles/f2 \
|
||||
${TESTDIR}/TestFiles/f1
|
||||
|
||||
# Test Object Files
|
||||
TESTOBJECTFILES= \
|
||||
${TESTDIR}/tests/jsontest.o \
|
||||
${TESTDIR}/tests/jsontestrunner.o \
|
||||
${TESTDIR}/tests/nattest.o \
|
||||
${TESTDIR}/tests/nattestrunner.o
|
||||
|
||||
# C Compiler Flags
|
||||
CFLAGS=
|
||||
|
||||
@@ -66,11 +74,11 @@ LDLIBSOPTIONS=
|
||||
|
||||
# Build Targets
|
||||
.build-conf: ${BUILD_SUBPROJECTS}
|
||||
"${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
"${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
|
||||
${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat: ${OBJECTFILES}
|
||||
${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat: ${OBJECTFILES}
|
||||
${MKDIR} -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}
|
||||
${LINK.cc} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat ${OBJECTFILES} ${LDLIBSOPTIONS}
|
||||
${LINK.cc} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat ${OBJECTFILES} ${LDLIBSOPTIONS}
|
||||
|
||||
${OBJECTDIR}/src/PduSender.o: src/PduSender.cpp
|
||||
${MKDIR} -p ${OBJECTDIR}/src
|
||||
@@ -101,12 +109,30 @@ ${OBJECTDIR}/src/map/natmap.o: src/map/natmap.cpp
|
||||
.build-subprojects:
|
||||
|
||||
# Build Test Targets
|
||||
.build-tests-conf: .build-conf ${TESTFILES}
|
||||
.build-tests-conf: .build-tests-subprojects .build-conf ${TESTFILES}
|
||||
.build-tests-subprojects:
|
||||
|
||||
${TESTDIR}/TestFiles/f2: ${TESTDIR}/tests/jsontest.o ${TESTDIR}/tests/jsontestrunner.o ${OBJECTFILES:%.o=%_nomain.o}
|
||||
${MKDIR} -p ${TESTDIR}/TestFiles
|
||||
${LINK.cc} -o ${TESTDIR}/TestFiles/f2 $^ ${LDLIBSOPTIONS} `cppunit-config --libs`
|
||||
|
||||
${TESTDIR}/TestFiles/f1: ${TESTDIR}/tests/nattest.o ${TESTDIR}/tests/nattestrunner.o ${OBJECTFILES:%.o=%_nomain.o}
|
||||
${MKDIR} -p ${TESTDIR}/TestFiles
|
||||
${LINK.cc} -o ${TESTDIR}/TestFiles/f1 $^ ${LDLIBSOPTIONS} `cppunit-config --libs`
|
||||
|
||||
|
||||
${TESTDIR}/tests/jsontest.o: tests/jsontest.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Itest -std=c++11 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/jsontest.o tests/jsontest.cpp
|
||||
|
||||
|
||||
${TESTDIR}/tests/jsontestrunner.o: tests/jsontestrunner.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
$(COMPILE.cc) -g -Itest -std=c++11 `cppunit-config --cflags` -MMD -MP -MF "$@.d" -o ${TESTDIR}/tests/jsontestrunner.o tests/jsontestrunner.cpp
|
||||
|
||||
|
||||
${TESTDIR}/tests/nattest.o: tests/nattest.cpp
|
||||
${MKDIR} -p ${TESTDIR}/tests
|
||||
${RM} "$@.d"
|
||||
@@ -188,6 +214,7 @@ ${OBJECTDIR}/src/map/natmap_nomain.o: ${OBJECTDIR}/src/map/natmap.o src/map/natm
|
||||
.test-conf:
|
||||
@if [ "${TEST}" = "" ]; \
|
||||
then \
|
||||
${TESTDIR}/TestFiles/f2 || true; \
|
||||
${TESTDIR}/TestFiles/f1 || true; \
|
||||
else \
|
||||
./${TEST} || true; \
|
||||
@@ -196,7 +223,7 @@ ${OBJECTDIR}/src/map/natmap_nomain.o: ${OBJECTDIR}/src/map/natmap.o src/map/natm
|
||||
# Clean Targets
|
||||
.clean-conf: ${CLEAN_SUBPROJECTS}
|
||||
${RM} -r ${CND_BUILDDIR}/${CND_CONF}
|
||||
${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
|
||||
# Subprojects
|
||||
.clean-subprojects:
|
||||
|
||||
@@ -24,7 +24,7 @@ CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}}
|
||||
|
||||
|
||||
# Project Name
|
||||
PROJECTNAME=1T1NAT
|
||||
PROJECTNAME=121Nat
|
||||
|
||||
# Active Configuration
|
||||
DEFAULTCONF=Debug
|
||||
@@ -76,7 +76,7 @@ ALLCONFS=Debug Release Unitest
|
||||
.depcheck-impl:
|
||||
@echo "# This code depends on make tool being used" >.dep.inc
|
||||
@if [ -n "${MAKE_VERSION}" ]; then \
|
||||
echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \
|
||||
echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES} \$${TESTOBJECTFILES}))" >>.dep.inc; \
|
||||
echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \
|
||||
echo "include \$${DEPFILES}" >>.dep.inc; \
|
||||
echo "endif" >>.dep.inc; \
|
||||
|
||||
@@ -7,29 +7,29 @@ CND_BASEDIR=`pwd`
|
||||
CND_BUILDDIR=build
|
||||
CND_DISTDIR=dist
|
||||
# Debug configuration
|
||||
CND_PLATFORM_Debug=GNU-Linux-x86
|
||||
CND_ARTIFACT_DIR_Debug=dist/Debug/GNU-Linux-x86
|
||||
CND_ARTIFACT_NAME_Debug=1t1nat
|
||||
CND_ARTIFACT_PATH_Debug=dist/Debug/GNU-Linux-x86/1t1nat
|
||||
CND_PACKAGE_DIR_Debug=dist/Debug/GNU-Linux-x86/package
|
||||
CND_PACKAGE_NAME_Debug=1t1nat.tar
|
||||
CND_PACKAGE_PATH_Debug=dist/Debug/GNU-Linux-x86/package/1t1nat.tar
|
||||
CND_PLATFORM_Debug=GNU-Linux
|
||||
CND_ARTIFACT_DIR_Debug=dist/Debug/GNU-Linux
|
||||
CND_ARTIFACT_NAME_Debug=121nat
|
||||
CND_ARTIFACT_PATH_Debug=dist/Debug/GNU-Linux/121nat
|
||||
CND_PACKAGE_DIR_Debug=dist/Debug/GNU-Linux/package
|
||||
CND_PACKAGE_NAME_Debug=121nat.tar
|
||||
CND_PACKAGE_PATH_Debug=dist/Debug/GNU-Linux/package/121nat.tar
|
||||
# Release configuration
|
||||
CND_PLATFORM_Release=GNU-Linux-x86
|
||||
CND_ARTIFACT_DIR_Release=dist/Release/GNU-Linux-x86
|
||||
CND_ARTIFACT_NAME_Release=1t1nat
|
||||
CND_ARTIFACT_PATH_Release=dist/Release/GNU-Linux-x86/1t1nat
|
||||
CND_PACKAGE_DIR_Release=dist/Release/GNU-Linux-x86/package
|
||||
CND_PACKAGE_NAME_Release=1t1nat.tar
|
||||
CND_PACKAGE_PATH_Release=dist/Release/GNU-Linux-x86/package/1t1nat.tar
|
||||
CND_PLATFORM_Release=GNU-Linux
|
||||
CND_ARTIFACT_DIR_Release=dist/Release/GNU-Linux
|
||||
CND_ARTIFACT_NAME_Release=121nat
|
||||
CND_ARTIFACT_PATH_Release=dist/Release/GNU-Linux/121nat
|
||||
CND_PACKAGE_DIR_Release=dist/Release/GNU-Linux/package
|
||||
CND_PACKAGE_NAME_Release=121nat.tar
|
||||
CND_PACKAGE_PATH_Release=dist/Release/GNU-Linux/package/121nat.tar
|
||||
# Unitest configuration
|
||||
CND_PLATFORM_Unitest=GNU-Linux-x86
|
||||
CND_ARTIFACT_DIR_Unitest=dist/Unitest/GNU-Linux-x86
|
||||
CND_ARTIFACT_NAME_Unitest=1t1nat
|
||||
CND_ARTIFACT_PATH_Unitest=dist/Unitest/GNU-Linux-x86/1t1nat
|
||||
CND_PACKAGE_DIR_Unitest=dist/Unitest/GNU-Linux-x86/package
|
||||
CND_PACKAGE_NAME_Unitest=1t1nat.tar
|
||||
CND_PACKAGE_PATH_Unitest=dist/Unitest/GNU-Linux-x86/package/1t1nat.tar
|
||||
CND_PLATFORM_Unitest=GNU-Linux
|
||||
CND_ARTIFACT_DIR_Unitest=dist/Unitest/GNU-Linux
|
||||
CND_ARTIFACT_NAME_Unitest=121nat
|
||||
CND_ARTIFACT_PATH_Unitest=dist/Unitest/GNU-Linux/121nat
|
||||
CND_PACKAGE_DIR_Unitest=dist/Unitest/GNU-Linux/package
|
||||
CND_PACKAGE_NAME_Unitest=121nat.tar
|
||||
CND_PACKAGE_PATH_Unitest=dist/Unitest/GNU-Linux/package/121nat.tar
|
||||
#
|
||||
# include compiler specific variables
|
||||
#
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
# Macros
|
||||
TOP=`pwd`
|
||||
CND_PLATFORM=GNU-Linux-x86
|
||||
CND_PLATFORM=GNU-Linux
|
||||
CND_CONF=Debug
|
||||
CND_DISTDIR=dist
|
||||
CND_BUILDDIR=build
|
||||
CND_DLIB_EXT=so
|
||||
NBTMPDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tmp-packaging
|
||||
TMPDIRNAME=tmp-packaging
|
||||
OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
OUTPUT_BASENAME=1t1nat
|
||||
PACKAGE_TOP_DIR=1t1nat/
|
||||
OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
OUTPUT_BASENAME=121nat
|
||||
PACKAGE_TOP_DIR=121nat/
|
||||
|
||||
# Functions
|
||||
function checkReturnCode
|
||||
@@ -60,15 +60,15 @@ mkdir -p ${NBTMPDIR}
|
||||
|
||||
# Copy files and create directories and links
|
||||
cd "${TOP}"
|
||||
makeDirectory "${NBTMPDIR}/1t1nat/bin"
|
||||
makeDirectory "${NBTMPDIR}/121nat/bin"
|
||||
copyFileToTmpDir "${OUTPUT_PATH}" "${NBTMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755
|
||||
|
||||
|
||||
# Generate tar file
|
||||
cd "${TOP}"
|
||||
rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/1t1nat.tar
|
||||
rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/121nat.tar
|
||||
cd ${NBTMPDIR}
|
||||
tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/1t1nat.tar *
|
||||
tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/121nat.tar *
|
||||
checkReturnCode
|
||||
|
||||
# Cleanup
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
# Macros
|
||||
TOP=`pwd`
|
||||
CND_PLATFORM=GNU-Linux-x86
|
||||
CND_PLATFORM=GNU-Linux
|
||||
CND_CONF=Release
|
||||
CND_DISTDIR=dist
|
||||
CND_BUILDDIR=build
|
||||
CND_DLIB_EXT=so
|
||||
NBTMPDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tmp-packaging
|
||||
TMPDIRNAME=tmp-packaging
|
||||
OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
OUTPUT_BASENAME=1t1nat
|
||||
PACKAGE_TOP_DIR=1t1nat/
|
||||
OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
OUTPUT_BASENAME=121nat
|
||||
PACKAGE_TOP_DIR=121nat/
|
||||
|
||||
# Functions
|
||||
function checkReturnCode
|
||||
@@ -60,15 +60,15 @@ mkdir -p ${NBTMPDIR}
|
||||
|
||||
# Copy files and create directories and links
|
||||
cd "${TOP}"
|
||||
makeDirectory "${NBTMPDIR}/1t1nat/bin"
|
||||
makeDirectory "${NBTMPDIR}/121nat/bin"
|
||||
copyFileToTmpDir "${OUTPUT_PATH}" "${NBTMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755
|
||||
|
||||
|
||||
# Generate tar file
|
||||
cd "${TOP}"
|
||||
rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/1t1nat.tar
|
||||
rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/121nat.tar
|
||||
cd ${NBTMPDIR}
|
||||
tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/1t1nat.tar *
|
||||
tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/121nat.tar *
|
||||
checkReturnCode
|
||||
|
||||
# Cleanup
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
# Macros
|
||||
TOP=`pwd`
|
||||
CND_PLATFORM=GNU-Linux-x86
|
||||
CND_PLATFORM=GNU-Linux
|
||||
CND_CONF=Unitest
|
||||
CND_DISTDIR=dist
|
||||
CND_BUILDDIR=build
|
||||
CND_DLIB_EXT=so
|
||||
NBTMPDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tmp-packaging
|
||||
TMPDIRNAME=tmp-packaging
|
||||
OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/1t1nat
|
||||
OUTPUT_BASENAME=1t1nat
|
||||
PACKAGE_TOP_DIR=1t1nat/
|
||||
OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/121nat
|
||||
OUTPUT_BASENAME=121nat
|
||||
PACKAGE_TOP_DIR=121nat/
|
||||
|
||||
# Functions
|
||||
function checkReturnCode
|
||||
@@ -60,15 +60,15 @@ mkdir -p ${NBTMPDIR}
|
||||
|
||||
# Copy files and create directories and links
|
||||
cd "${TOP}"
|
||||
makeDirectory "${NBTMPDIR}/1t1nat/bin"
|
||||
makeDirectory "${NBTMPDIR}/121nat/bin"
|
||||
copyFileToTmpDir "${OUTPUT_PATH}" "${NBTMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}" 0755
|
||||
|
||||
|
||||
# Generate tar file
|
||||
cd "${TOP}"
|
||||
rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/1t1nat.tar
|
||||
rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/121nat.tar
|
||||
cd ${NBTMPDIR}
|
||||
tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/1t1nat.tar *
|
||||
tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/121nat.tar *
|
||||
checkReturnCode
|
||||
|
||||
# Cleanup
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configurationDescriptor version="95">
|
||||
<configurationDescriptor version="97">
|
||||
<logicalFolder name="root" displayName="root" projectFiles="true" kind="ROOT">
|
||||
<logicalFolder name="HeaderFiles"
|
||||
displayName="Header Files"
|
||||
@@ -14,6 +14,7 @@
|
||||
<logicalFolder name="ResourceFiles"
|
||||
displayName="Resource Files"
|
||||
projectFiles="true">
|
||||
<itemPath>src/config.json</itemPath>
|
||||
</logicalFolder>
|
||||
<logicalFolder name="SourceFiles"
|
||||
displayName="Source Files"
|
||||
@@ -30,6 +31,11 @@
|
||||
displayName="Test Files"
|
||||
projectFiles="false"
|
||||
kind="TEST_LOGICAL_FOLDER">
|
||||
<logicalFolder name="f2" displayName="JsonTest" projectFiles="true" kind="TEST">
|
||||
<itemPath>tests/jsontest.cpp</itemPath>
|
||||
<itemPath>tests/jsontest.h</itemPath>
|
||||
<itemPath>tests/jsontestrunner.cpp</itemPath>
|
||||
</logicalFolder>
|
||||
<logicalFolder name="f1" displayName="nattest" projectFiles="true" kind="TEST">
|
||||
<itemPath>tests/nattest.cpp</itemPath>
|
||||
<itemPath>tests/nattest.h</itemPath>
|
||||
@@ -60,6 +66,7 @@
|
||||
<linkerLibItems>
|
||||
<linkerLibLibItem>tins</linkerLibLibItem>
|
||||
<linkerLibLibItem>pthread</linkerLibLibItem>
|
||||
<linkerOptionItem>`pkg-config --libs jsoncpp`</linkerOptionItem>
|
||||
</linkerLibItems>
|
||||
</linkerTool>
|
||||
</compileType>
|
||||
@@ -83,6 +90,20 @@
|
||||
</linkerLibItems>
|
||||
</linkerTool>
|
||||
</folder>
|
||||
<folder path="TestFiles/f2">
|
||||
<cTool>
|
||||
<commandLine>`cppunit-config --cflags`</commandLine>
|
||||
</cTool>
|
||||
<ccTool>
|
||||
<commandLine>`cppunit-config --cflags`</commandLine>
|
||||
</ccTool>
|
||||
<linkerTool>
|
||||
<output>${TESTDIR}/TestFiles/f2</output>
|
||||
<linkerLibItems>
|
||||
<linkerOptionItem>`cppunit-config --libs`</linkerOptionItem>
|
||||
</linkerLibItems>
|
||||
</linkerTool>
|
||||
</folder>
|
||||
<item path="src/PduSender.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="src/PduSender.h" ex="false" tool="3" flavor2="0">
|
||||
@@ -91,6 +112,8 @@
|
||||
</item>
|
||||
<item path="src/PduSniffer.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="src/config.json" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="src/main.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="src/map/NatRange.cpp" ex="false" tool="1" flavor2="0">
|
||||
@@ -101,6 +124,12 @@
|
||||
</item>
|
||||
<item path="src/map/natmap.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontest.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontest.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontestrunner.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/nattest.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/nattest.h" ex="false" tool="3" flavor2="0">
|
||||
@@ -148,6 +177,20 @@
|
||||
</linkerLibItems>
|
||||
</linkerTool>
|
||||
</folder>
|
||||
<folder path="TestFiles/f2">
|
||||
<cTool>
|
||||
<commandLine>`cppunit-config --cflags`</commandLine>
|
||||
</cTool>
|
||||
<ccTool>
|
||||
<commandLine>`cppunit-config --cflags`</commandLine>
|
||||
</ccTool>
|
||||
<linkerTool>
|
||||
<output>${TESTDIR}/TestFiles/f2</output>
|
||||
<linkerLibItems>
|
||||
<linkerOptionItem>`cppunit-config --libs`</linkerOptionItem>
|
||||
</linkerLibItems>
|
||||
</linkerTool>
|
||||
</folder>
|
||||
<item path="src/PduSender.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="src/PduSender.h" ex="false" tool="3" flavor2="0">
|
||||
@@ -156,6 +199,8 @@
|
||||
</item>
|
||||
<item path="src/PduSniffer.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="src/config.json" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="src/main.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="src/map/NatRange.cpp" ex="false" tool="1" flavor2="0">
|
||||
@@ -166,6 +211,12 @@
|
||||
</item>
|
||||
<item path="src/map/natmap.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontest.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontest.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontestrunner.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/nattest.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/nattest.h" ex="false" tool="3" flavor2="0">
|
||||
@@ -207,6 +258,20 @@
|
||||
</linkerLibItems>
|
||||
</linkerTool>
|
||||
</folder>
|
||||
<folder path="TestFiles/f2">
|
||||
<cTool>
|
||||
<commandLine>`cppunit-config --cflags`</commandLine>
|
||||
</cTool>
|
||||
<ccTool>
|
||||
<commandLine>`cppunit-config --cflags`</commandLine>
|
||||
</ccTool>
|
||||
<linkerTool>
|
||||
<output>${TESTDIR}/TestFiles/f2</output>
|
||||
<linkerLibItems>
|
||||
<linkerOptionItem>`cppunit-config --libs`</linkerOptionItem>
|
||||
</linkerLibItems>
|
||||
</linkerTool>
|
||||
</folder>
|
||||
<item path="src/PduSender.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="src/PduSender.h" ex="false" tool="3" flavor2="0">
|
||||
@@ -215,6 +280,8 @@
|
||||
</item>
|
||||
<item path="src/PduSniffer.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="src/config.json" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="src/main.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="src/map/NatRange.cpp" ex="false" tool="1" flavor2="0">
|
||||
@@ -225,6 +292,12 @@
|
||||
</item>
|
||||
<item path="src/map/natmap.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontest.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontest.h" ex="false" tool="3" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/jsontestrunner.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/nattest.cpp" ex="false" tool="1" flavor2="0">
|
||||
</item>
|
||||
<item path="tests/nattest.h" ex="false" tool="3" flavor2="0">
|
||||
|
||||
8
src/CMakeLists.txt
Normal file
8
src/CMakeLists.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
file(GLOB_RECURSE 121Nat_Src_Files "*.h" "*.cpp")
|
||||
add_executable(121Nat ${121Nat_Src_Files})
|
||||
target_link_libraries (121Nat tins pthread jsoncpp)
|
||||
target_compile_features(121Nat PRIVATE cxx_range_for)
|
||||
install(TARGETS 121Nat
|
||||
RUNTIME DESTINATION bin
|
||||
)
|
||||
|
||||
12
src/config.json
Normal file
12
src/config.json
Normal file
@@ -0,0 +1,12 @@
|
||||
[{
|
||||
"vboxnet0": {
|
||||
"rangeIpAddr": "10.0.0.0",
|
||||
"rangeNetmask": "255.255.240.0"
|
||||
}
|
||||
}, {
|
||||
"vboxnet1": {
|
||||
"rangeIpAddr": "172.27.0.0",
|
||||
"rangeNetmask": "255.255.0.0"
|
||||
}
|
||||
}]
|
||||
|
||||
39
src/main.cpp
39
src/main.cpp
@@ -4,27 +4,42 @@
|
||||
#include "map/natmap.h"
|
||||
#include "PduSniffer.h"
|
||||
#include "PduSender.h"
|
||||
|
||||
int main()
|
||||
#include <json/json.h>
|
||||
#include <json/value.h>
|
||||
#include <fstream>
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
Tins::NetworkInterface net1("vboxnet0");
|
||||
Tins::NetworkInterface net2("vboxnet1");
|
||||
otonat::NatRange range1(net1, "10.0.0.0", "255.255.240.0");
|
||||
otonat::NatRange range2(net2, "172.27.0.0", "255.255.0.0");
|
||||
if (argc < 2){
|
||||
return 0;
|
||||
}
|
||||
|
||||
otonat::NatMap::NatRangeList list;
|
||||
list.push_back(range1);
|
||||
list.push_back(range2);
|
||||
std::ifstream config_doc(argv[1], std::ifstream::binary);
|
||||
Json::Value root;
|
||||
config_doc >> root;
|
||||
const Json::Value netcards = root;
|
||||
for (Json::Value netcard : netcards) {
|
||||
const std::string name = netcard.getMemberNames()[0].c_str();
|
||||
const Json::Value cardMember = netcard[name];
|
||||
const std::string ipStr = cardMember["rangeIpAddr"].asString();
|
||||
const std::string maskStr = cardMember["rangeNetmask"].asString();
|
||||
|
||||
const Tins::NetworkInterface net(name);
|
||||
const otonat::NatRange netRange(net, Tins::IPv4Address(ipStr), Tins::IPv4Address(maskStr));
|
||||
list.push_back(netRange);
|
||||
}
|
||||
|
||||
otonat::NatMap natMap = otonat::NatMap(list);
|
||||
otonat::PduSniffer sniffer(&natMap);
|
||||
otonat::PduSender sender(&natMap);
|
||||
std::thread * mapThread = natMap.translateThread();
|
||||
std::thread * senderThread = sender.SendPdusFromQueueThread();
|
||||
std::thread * snifferThread1 = sniffer.SniffInterfaceInNewThread(net1);
|
||||
std::thread * snifferThread2 = sniffer.SniffInterfaceInNewThread(net2);
|
||||
for (otonat::NatRange & net : list) {
|
||||
sniffer.SniffInterfaceInNewThread(net.interface);
|
||||
}
|
||||
|
||||
mapThread->join();
|
||||
senderThread->join();
|
||||
snifferThread1->join();
|
||||
snifferThread2->join();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
58
tests/jsontest.cpp
Normal file
58
tests/jsontest.cpp
Normal file
@@ -0,0 +1,58 @@
|
||||
/*
|
||||
* To change this license header, choose License Headers in Project Properties.
|
||||
* To change this template file, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
/*
|
||||
* File: jsontest.cpp
|
||||
* Author: dev
|
||||
*
|
||||
* Created on 18.11.2015, 20:41:37
|
||||
*/
|
||||
|
||||
#include "jsontest.h"
|
||||
#include <json/json.h>
|
||||
#include <json/value.h>
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <string.h>
|
||||
#include "../src/map/NatRange.h"
|
||||
#include <tins/tins.h>
|
||||
CPPUNIT_TEST_SUITE_REGISTRATION(jsontest);
|
||||
|
||||
jsontest::jsontest() {
|
||||
}
|
||||
|
||||
jsontest::~jsontest() {
|
||||
}
|
||||
|
||||
void jsontest::setUp() {
|
||||
}
|
||||
|
||||
void jsontest::tearDown() {
|
||||
}
|
||||
|
||||
void jsontest::testReadConfig() {
|
||||
std::ifstream config_doc("src/config.json", std::ifstream::binary);
|
||||
Json::Value root;
|
||||
config_doc >> root;
|
||||
const Json::Value netcards = root;
|
||||
for (Json::Value netcard : netcards) {
|
||||
const std::string name = netcard.getMemberNames()[0].c_str();
|
||||
const Json::Value cardMember = netcard[name];
|
||||
const std::string ipStr = cardMember["rangeIpAddr"].asString();
|
||||
const std::string maskStr = cardMember["rangeNetmask"].asString();
|
||||
CPPUNIT_ASSERT(name == "vboxnet0" || name == "vboxnet1");
|
||||
CPPUNIT_ASSERT(ipStr == "10.0.0.0" || ipStr == "172.27.0.0");
|
||||
CPPUNIT_ASSERT(maskStr == "255.255.240.0" || maskStr == "255.255.0.0");
|
||||
const Tins::NetworkInterface net(name);
|
||||
const otonat::NatRange netRange(net, Tins::IPv4Address(ipStr), Tins::IPv4Address(maskStr));
|
||||
CPPUNIT_ASSERT(name == netRange.interface.name());
|
||||
CPPUNIT_ASSERT(ipStr == netRange.rangeIpAddr.to_string());
|
||||
CPPUNIT_ASSERT(maskStr == netRange.rangeNetmask.to_string());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
37
tests/jsontest.h
Normal file
37
tests/jsontest.h
Normal file
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* To change this license header, choose License Headers in Project Properties.
|
||||
* To change this template file, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
/*
|
||||
* File: jsontest.h
|
||||
* Author: dev
|
||||
*
|
||||
* Created on 18.11.2015, 20:41:37
|
||||
*/
|
||||
|
||||
#ifndef JSONTEST_H
|
||||
#define JSONTEST_H
|
||||
|
||||
#include <cppunit/extensions/HelperMacros.h>
|
||||
|
||||
class jsontest : public CPPUNIT_NS::TestFixture {
|
||||
CPPUNIT_TEST_SUITE(jsontest);
|
||||
|
||||
CPPUNIT_TEST(testReadConfig);
|
||||
CPPUNIT_TEST_SUITE_END();
|
||||
|
||||
public:
|
||||
jsontest();
|
||||
virtual ~jsontest();
|
||||
void setUp();
|
||||
void tearDown();
|
||||
|
||||
private:
|
||||
void testReadConfig();
|
||||
|
||||
};
|
||||
|
||||
#endif /* JSONTEST_H */
|
||||
|
||||
89
tests/jsontestrunner.cpp
Normal file
89
tests/jsontestrunner.cpp
Normal file
@@ -0,0 +1,89 @@
|
||||
/*
|
||||
* To change this license header, choose License Headers in Project Properties.
|
||||
* To change this template file, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
/*
|
||||
* File: newtestrunner.cpp
|
||||
* Author: dev
|
||||
*
|
||||
* Created on 18.11.2015, 20:41:38
|
||||
*/
|
||||
|
||||
// CppUnit site http://sourceforge.net/projects/cppunit/files
|
||||
|
||||
#include <cppunit/BriefTestProgressListener.h>
|
||||
#include <cppunit/CompilerOutputter.h>
|
||||
#include <cppunit/extensions/TestFactoryRegistry.h>
|
||||
#include <cppunit/TestResult.h>
|
||||
#include <cppunit/TestResultCollector.h>
|
||||
#include <cppunit/TestRunner.h>
|
||||
|
||||
#include <cppunit/Test.h>
|
||||
#include <cppunit/TestFailure.h>
|
||||
#include <cppunit/portability/Stream.h>
|
||||
|
||||
class ProgressListener : public CPPUNIT_NS::TestListener {
|
||||
public:
|
||||
|
||||
ProgressListener()
|
||||
: m_lastTestFailed(false) {
|
||||
}
|
||||
|
||||
~ProgressListener() {
|
||||
}
|
||||
|
||||
void startTest(CPPUNIT_NS::Test *test) {
|
||||
CPPUNIT_NS::stdCOut() << test->getName();
|
||||
CPPUNIT_NS::stdCOut() << "\n";
|
||||
CPPUNIT_NS::stdCOut().flush();
|
||||
|
||||
m_lastTestFailed = false;
|
||||
}
|
||||
|
||||
void addFailure(const CPPUNIT_NS::TestFailure &failure) {
|
||||
CPPUNIT_NS::stdCOut() << " : " << (failure.isError() ? "error" : "assertion");
|
||||
m_lastTestFailed = true;
|
||||
}
|
||||
|
||||
void endTest(CPPUNIT_NS::Test *test) {
|
||||
if (!m_lastTestFailed)
|
||||
CPPUNIT_NS::stdCOut() << " : OK";
|
||||
CPPUNIT_NS::stdCOut() << "\n";
|
||||
}
|
||||
|
||||
private:
|
||||
/// Prevents the use of the copy constructor.
|
||||
ProgressListener(const ProgressListener ©);
|
||||
|
||||
/// Prevents the use of the copy operator.
|
||||
void operator=(const ProgressListener ©);
|
||||
|
||||
private:
|
||||
bool m_lastTestFailed;
|
||||
};
|
||||
|
||||
int main() {
|
||||
// Create the event manager and test controller
|
||||
CPPUNIT_NS::TestResult controller;
|
||||
|
||||
// Add a listener that colllects test result
|
||||
CPPUNIT_NS::TestResultCollector result;
|
||||
controller.addListener(&result);
|
||||
|
||||
// Add a listener that print dots as test run.
|
||||
ProgressListener progress;
|
||||
controller.addListener(&progress);
|
||||
|
||||
// Add the top suite to the test runner
|
||||
CPPUNIT_NS::TestRunner runner;
|
||||
runner.addTest(CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest());
|
||||
runner.run(controller);
|
||||
|
||||
// Print test in a compiler compatible format.
|
||||
CPPUNIT_NS::CompilerOutputter outputter(&result, CPPUNIT_NS::stdCOut());
|
||||
outputter.write();
|
||||
|
||||
return result.wasSuccessful() ? 0 : 1;
|
||||
}
|
||||
Reference in New Issue
Block a user