diff --git a/CHANGES b/CHANGES index be7f515..e4ee1d3 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,11 @@ +v3.1 - Sun Aug 24 21:39:43 ART 2014 + +- Fixed ICMPv6 checksum error on serialization. + +- Fixed empty domain name encoding on DNS. + +- Changed the build system to CMake. + v3.0 - Thu Aug 7 21:39:09 ART 2014 - Timestamps can now be constructed from std::chrono::duration. diff --git a/CMakeLists.txt b/CMakeLists.txt index 6eb8cbe..437a690 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,7 +28,7 @@ ENDIF(LIBTINS_BUILD_SHARED) # The version number. SET(LIBTINS_VERSION_MAJOR 3) -SET(LIBTINS_VERSION_MINOR 0) +SET(LIBTINS_VERSION_MINOR 1) SET(LIBTINS_CPP_VERSION "${LIBTINS_VERSION_MAJOR}.${LIBTINS_VERSION_MINOR}") # Required Packages diff --git a/README.md b/README.md index 34f0644..7eac394 100644 --- a/README.md +++ b/README.md @@ -23,41 +23,49 @@ if some features of the library are disabled. In order to compile, execute: ```Shell -./configure +# Create the build directory +mkdir build +cd build + +# Configure the project. Add any relevant configuration flags +cmake ../ + +# Compile! make ``` Note that by default, only the shared object is compiled. If you would -like to generate a static library file as well, run: +like to generate a static library file, run: ```Shell -./configure --enable-static +cmake ../ -DLIBTINS_BUILD_SHARED=0 ``` -The generated static/shared library files will be located in the .libs -directory. +The generated static/shared library files will be located in the +_build/lib_ directory. -libtins is noticeable faster if you enable C++11 support. Therefore, if -your compiler supports this standard, then you should enable it. In -order to do so, use the --enable-c++11 switch: +libtins is noticeable faster if you enable _C++11_ support. Therefore, +if your compiler supports this standard, then you should enable it. +In order to do so, use the _LIBTINS_ENABLE_CXX11_ switch: ```Shell -./configure --enable-c++11 +cmake ../ -DLIBTINS_ENABLE_CXX11=1 ``` -If you want to disable WPA2 decryption support, which will remove -openssl as a dependency for compilation, use the --disable-wpa2 switch: +If you want to disable _WPA2_ decryption support, which will remove +openssl as a dependency for compilation, use the +_LIBTINS_ENABLE_WPA2_ switch: ```Shell -./configure --disable-wpa2 +cmake ../ -DLIBTINS_ENABLE_WPA2=0 ``` If you want to disable IEEE 802.11 support(this will also disable RadioTap and WPA2 decryption), which will reduce the size of the -resulting library in around 20%, use the --disable-dot11 switch: +resulting library in around 20%, use the _LIBTINS_ENABLE_DOT11_ switch: ```Shell -./configure --disable-dot11 +cmake ../ -DLIBTINS_ENABLE_DOT11=0 ``` ## Installing ## @@ -69,7 +77,7 @@ shared object, execute as root: make install ``` -This will install the shared object typically in /usr/local/lib. Note +This will install the shared object typically in _/usr/local/lib_. Note that you might have to update ldconfig's cache before using it, so in order to invalidate it, you should run(as root): diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index 28db244..3077d83 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -37,13 +37,15 @@ IF(libtins_FOUND) ENDIF(HAVE_CXX11) ADD_EXECUTABLE(beacon_display EXCLUDE_FROM_ALL beacon_display.cpp) - ADD_EXECUTABLE(portscan EXCLUDE_FROM_ALL portscan.cpp) - ADD_EXECUTABLE(traceroute EXCLUDE_FROM_ALL traceroute.cpp) if(THREADS_FOUND) + ADD_EXECUTABLE(portscan EXCLUDE_FROM_ALL portscan.cpp) + ADD_EXECUTABLE(traceroute EXCLUDE_FROM_ALL traceroute.cpp) + TARGET_LINK_LIBRARIES(portscan ${CMAKE_THREAD_LIBS_INIT}) + TARGET_LINK_LIBRARIES(traceroute ${CMAKE_THREAD_LIBS_INIT}) ELSE(THREADS_FOUND) - MESSAGE(WARNING "Disabling portscan example since pthreads library was not found.") + MESSAGE(WARNING "Disabling portscan and traceroute examples since pthreads library was not found.") ENDIF(THREADS_FOUND) ELSE(libtins_FOUND) MESSAGE(