New upstream version 0.3.8 upstream
authorDarshaka Pathirana <dpat@syn-net.org>
Sun, 19 Jan 2020 16:35:47 +0000 (17:35 +0100)
committerDarshaka Pathirana <dpat@syn-net.org>
Sun, 19 Jan 2020 16:35:47 +0000 (17:35 +0100)
17 files changed:
ChangeLog
contrib/build-openssl-mingw-cross.sh
contrib/make-mingw-release.sh
contrib/openssl-1.1.0h-configure.patch [new file with mode: 0644]
doc/anytun-config.8
doc/anytun-controld.8
doc/anytun-showtables.8
doc/anytun.8
doc/anytun.8.txt
src/Makefile
src/anytunError.h
src/configure
src/resolver.cpp
src/syncServer.cpp
src/syncTcpConnection.cpp
src/syncTcpConnection.h
version

index 9348e7e..097dce0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2020.01.06 -- version 0.3.8
+
+* fix build for Boost 1.71
+
 2018.06.08 -- version 0.3.7
 
 * fix build for new versions of GCC and Boost
 2018.06.08 -- version 0.3.7
 
 * fix build for new versions of GCC and Boost
index 4c00f5d..332ef61 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 set -e
 #!/bin/sh
 set -e
-OPENSSL=openssl-1.0.2h
+OPENSSL=openssl-1.1.0h
 BASE=`pwd`
 
 wget http://openssl.org/source/$OPENSSL.tar.gz -O - | tar xz
 BASE=`pwd`
 
 wget http://openssl.org/source/$OPENSSL.tar.gz -O - | tar xz
index 4df517a..673b73c 100755 (executable)
@@ -14,7 +14,7 @@ for target in w32 w64; do
   cp anytun-$target/*.exe anytun-$VER-$target
   cp $LIBGCC_DLL $LIBSTDCPP_DLL anytun-$VER-$target
   cp boost-$target/lib/libboost_{date_time,serialization,system,thread_win32,chrono}.dll anytun-$VER-$target
   cp anytun-$target/*.exe anytun-$VER-$target
   cp $LIBGCC_DLL $LIBSTDCPP_DLL anytun-$VER-$target
   cp boost-$target/lib/libboost_{date_time,serialization,system,thread_win32,chrono}.dll anytun-$VER-$target
-  cp openssl-$target/bin/libeay32.dll anytun-$VER-$target
+  cp openssl-$target/bin/{libeay32.dll,libcrypto*.dll} anytun-$VER-$target
   cp anytun-example.bat anytun-$VER-$target
   cp ../{AUTHORS,ChangeLog,LICENSE,README,version} anytun-$VER-$target
   cp -r tap?? anytun-$VER-$target
   cp anytun-example.bat anytun-$VER-$target
   cp ../{AUTHORS,ChangeLog,LICENSE,README,version} anytun-$VER-$target
   cp -r tap?? anytun-$VER-$target
diff --git a/contrib/openssl-1.1.0h-configure.patch b/contrib/openssl-1.1.0h-configure.patch
new file mode 100644 (file)
index 0000000..54363f6
--- /dev/null
@@ -0,0 +1,32 @@
+diff -Nur openssl-1.1.0h.orig/config openssl-1.1.0h/config
+--- openssl-1.1.0h.orig/config 2018-06-09 01:39:38.845245228 +0200
++++ openssl-1.1.0h/config      2018-06-09 01:43:01.715723809 +0200
+@@ -843,11 +843,11 @@
+   options="$options $CONFIG_OPTIONS"
+ fi
+-if expr "$options" : '.*no\-asm' > /dev/null; then :; else
+-  sh -c "$CROSS_COMPILE${CC:-gcc} -Wa,--help -c -o /tmp/null.$$.o -x assembler /dev/null && rm /tmp/null.$$.o" 2>&1 | \
+-  grep \\--noexecstack >/dev/null && \
+-  options="$options -Wa,--noexecstack"
+-fi
++#if expr "$options" : '.*no\-asm' > /dev/null; then :; else
++#  sh -c "$CROSS_COMPILE${CC:-gcc} -Wa,--help -c -o /tmp/null.$$.o -x assembler /dev/null && rm /tmp/null.$$.o" 2>&1 | \
++#  grep \\--noexecstack >/dev/null && \
++#  options="$options -Wa,--noexecstack"
++#fi
+ # gcc < 2.8 does not support -march=ultrasparc
+ if [ "$OUT" = solaris-sparcv9-gcc -a $GCCVER -lt 28 ]
+diff -Nur openssl-1.1.0h.orig/Configure openssl-1.1.0h/Configure
+--- openssl-1.1.0h.orig/Configure      2018-06-09 01:39:38.845245228 +0200
++++ openssl-1.1.0h/Configure   2018-06-09 01:47:30.473859795 +0200
+@@ -741,7 +741,7 @@
+               }
+       else
+               {
+-              die "target already defined - $target (offending arg: $_)\n" if ($target ne "");
++              # die "target already defined - $target (offending arg: $_)\n" if ($target ne "");
+               $target=$_;
+               }
+       unless ($_ eq $target || /^no-/ || /^disable-/)
index f958056..e0eca0d 100644 (file)
@@ -2,12 +2,12 @@
 .\"     Title: anytun-config
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
 .\"     Title: anytun-config
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
-.\"      Date: 06/09/2018
+.\"      Date: 01/06/2020
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
-.TH "ANYTUN\-CONFIG" "8" "06/09/2018" "\ \&" "\ \&"
+.TH "ANYTUN\-CONFIG" "8" "01/06/2020" "\ \&" "\ \&"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index a8ce738..b6b1741 100644 (file)
@@ -2,12 +2,12 @@
 .\"     Title: anytun-controld
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
 .\"     Title: anytun-controld
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
-.\"      Date: 06/09/2018
+.\"      Date: 01/06/2020
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
-.TH "ANYTUN\-CONTROLD" "8" "06/09/2018" "\ \&" "\ \&"
+.TH "ANYTUN\-CONTROLD" "8" "01/06/2020" "\ \&" "\ \&"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index f75de02..1fa86d0 100644 (file)
@@ -2,12 +2,12 @@
 .\"     Title: anytun-showtables
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
 .\"     Title: anytun-showtables
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
-.\"      Date: 06/09/2018
+.\"      Date: 01/06/2020
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
-.TH "ANYTUN\-SHOWTABLES" "8" "06/09/2018" "\ \&" "\ \&"
+.TH "ANYTUN\-SHOWTABLES" "8" "01/06/2020" "\ \&" "\ \&"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
index 2539aec..42933c2 100644 (file)
@@ -2,12 +2,12 @@
 .\"     Title: anytun
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
 .\"     Title: anytun
 .\"    Author: [see the "AUTHORS" section]
 .\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
-.\"      Date: 06/09/2018
+.\"      Date: 01/06/2020
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
 .\"    Manual: \ \&
 .\"    Source: \ \&
 .\"  Language: English
 .\"
-.TH "ANYTUN" "8" "06/09/2018" "\ \&" "\ \&"
+.TH "ANYTUN" "8" "01/06/2020" "\ \&" "\ \&"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -150,7 +150,7 @@ to run in debug mode\&. It implicits
 .PP
 \fB\-i, \-\-interface \fR\fB\fI<ip address>\fR\fR
 .RS 4
 .PP
 \fB\-i, \-\-interface \fR\fB\fI<ip address>\fR\fR
 .RS 4
-This IP address is used as the sender address for outgoing packets\&. In case of anycast tunnel endpoints, the anycast IP has to be used\&. In case of unicast endpoints, the address is usually derived correctly from the routing table\&. The default is to not use a special inteface and just bind on all interfaces\&.
+This IP address is used as the sender address for outgoing packets\&. In case of anycast tunnel endpoints, the anycast IP has to be used\&. In case of unicast endpoints, the address is usually derived correctly from the routing table\&. The default is to not use a special interface and just bind on all interfaces\&.
 .RE
 .PP
 \fB\-p, \-\-port \fR\fB\fI<port>\fR\fR
 .RE
 .PP
 \fB\-p, \-\-port \fR\fB\fI<port>\fR\fR
@@ -182,7 +182,7 @@ Resolv to IPv6 addresses only\&. The default is to resolv both IPv4 and IPv6 add
 .RS 4
 local unicast(sync) ip address to bind to
 
 .RS 4
 local unicast(sync) ip address to bind to
 
-This option is only needed for tunnel endpoints consisting of multiple anycast hosts\&. The unicast IP address of the anycast host can be used here\&. This is needed for communication with the other anycast hosts\&. The default is to not use a special inteface and just bind on all interfaces\&. However this is only the case if synchronisation is active see
+This option is only needed for tunnel endpoints consisting of multiple anycast hosts\&. The unicast IP address of the anycast host can be used here\&. This is needed for communication with the other anycast hosts\&. The default is to not use a special interface and just bind on all interfaces\&. However this is only the case if synchronisation is active see
 \fB\-\-sync\-port\fR\&.
 .RE
 .PP
 \fB\-\-sync\-port\fR\&.
 .RE
 .PP
@@ -255,7 +255,7 @@ the multiplex id to use\&. default: 0
 .PP
 \fB\-s, \-\-sender\-id \fR\fB\fI<sender id>\fR\fR
 .RS 4
 .PP
 \fB\-s, \-\-sender\-id \fR\fB\fI<sender id>\fR\fR
 .RS 4
-Each anycast tunnel endpoint needs a uniqe sender id (1, 2, 3, \&...)\&. It is needed to distinguish the senders in case of replay attacks\&. This option can be ignored on unicast endpoints\&. default: 0
+Each anycast tunnel endpoint needs a unique sender id (1, 2, 3, \&...)\&. It is needed to distinguish the senders in case of replay attacks\&. This option can be ignored on unicast endpoints\&. default: 0
 .RE
 .PP
 \fB\-w, \-\-window\-size \fR\fB\fI<window size>\fR\fR
 .RE
 .PP
 \fB\-w, \-\-window\-size \fR\fB\fI<window size>\fR\fR
index 7896dcd..8c5a3b6 100644 (file)
@@ -109,7 +109,7 @@ passed to the daemon:
    packets. In case of anycast tunnel endpoints, the anycast
    IP has to be used. In case of unicast endpoints, the
    address is usually derived correctly from the routing
    packets. In case of anycast tunnel endpoints, the anycast
    IP has to be used. In case of unicast endpoints, the
    address is usually derived correctly from the routing
-   table. The default is to not use a special inteface and just
+   table. The default is to not use a special interface and just
    bind on all interfaces.
 
 *-p, --port '<port>'*::
    bind on all interfaces.
 
 *-p, --port '<port>'*::
@@ -145,7 +145,7 @@ passed to the daemon:
    of multiple anycast hosts. The unicast IP address of
    the anycast host can be used here. This is needed for
    communication with the other anycast hosts. The default is to
    of multiple anycast hosts. The unicast IP address of
    the anycast host can be used here. This is needed for
    communication with the other anycast hosts. The default is to
-   not use a special inteface and just bind on all interfaces. However
+   not use a special interface and just bind on all interfaces. However
    this is only the case if synchronisation is active see *--sync-port*.
 
 *-S, --sync-port '<port>'*::
    this is only the case if synchronisation is active see *--sync-port*.
 
 *-S, --sync-port '<port>'*::
@@ -210,7 +210,7 @@ passed to the daemon:
    the multiplex id to use. default: 0
 
 *-s, --sender-id  '<sender id>'*::
    the multiplex id to use. default: 0
 
 *-s, --sender-id  '<sender id>'*::
-   Each anycast tunnel endpoint needs a uniqe sender id
+   Each anycast tunnel endpoint needs a unique sender id
    (1, 2, 3, ...). It is needed to distinguish the senders
    in case of replay attacks. This option can be ignored on
    unicast endpoints. default: 0
    (1, 2, 3, ...). It is needed to distinguish the senders
    in case of replay attacks. This option can be ignored on
    unicast endpoints. default: 0
index 9d29cb5..5fc6c2b 100644 (file)
@@ -177,7 +177,7 @@ all: $(EXECUTABLES) #libAnysync.a
 
 %.d: %.cpp
        @set -e; rm -f $@;                                    \
 
 %.d: %.cpp
        @set -e; rm -f $@;                                    \
-   $(CXX) -MM $(CXXFLAGS) $< > $@.$$$$;                 \
+   $(CXX) -MM $(CPPFLAGS) $< > $@.$$$$;                 \
    sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@;  \
    rm -f $@.$$$$; echo '(re)building $@'
 
    sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@;  \
    rm -f $@.$$$$; echo '(re)building $@'
 
@@ -199,7 +199,7 @@ anytun-nosync$(EXE): $(ANYTUNOBJS) anytun-nosync.o
        $(LD) $(ANYTUNOBJS) anytun-nosync.o -o $@ $(LDFLAGS)
 
 anytun-nosync.o: anytun.cpp
        $(LD) $(ANYTUNOBJS) anytun-nosync.o -o $@ $(LDFLAGS)
 
 anytun-nosync.o: anytun.cpp
-       $(CXX) $(CXXFLAGS) -DANYTUN_NOSYNC $< -c -o anytun-nosync.o
+       $(CXX) $(CPPFLAGS) $(CXXFLAGS) -DANYTUN_NOSYNC $< -c -o anytun-nosync.o
 
 anytun-showtables$(EXE): $(ANYSHOWOBJS) $(SYNCOBJS) anytun-showtables.o
        $(LD) $(ANYSHOWOBJS) $(SYNCOBJS) anytun-showtables.o -o $@ $(LDFLAGS)
 
 anytun-showtables$(EXE): $(ANYSHOWOBJS) $(SYNCOBJS) anytun-showtables.o
        $(LD) $(ANYSHOWOBJS) $(SYNCOBJS) anytun-showtables.o -o $@ $(LDFLAGS)
@@ -212,19 +212,19 @@ anytun-controld$(EXE): $(ANYCTROBJS) anytun-controld.o
 
 
 options.o: options.cpp
 
 
 options.o: options.cpp
-       $(CXX) $(CXXFLAGS) -DANYTUN_OPTIONS $< -c -o $@
+       $(CXX) $(CPPFLAGS) $(CXXFLAGS) -DANYTUN_OPTIONS $< -c -o $@
 
 anyCtrOptions.o: options.cpp
 
 anyCtrOptions.o: options.cpp
-       $(CXX) $(CXXFLAGS) -DANYCTR_OPTIONS $< -c -o $@
+       $(CXX) $(CPPFLAGS) $(CXXFLAGS) -DANYCTR_OPTIONS $< -c -o $@
 
 anyConfOptions.o: options.cpp
 
 anyConfOptions.o: options.cpp
-       $(CXX) $(CXXFLAGS) -DANYCONF_OPTIONS $< -c -o $@
+       $(CXX) $(CPPFLAGS) $(CXXFLAGS) -DANYCONF_OPTIONS $< -c -o $@
 
 nullOptions.o: options.cpp
 
 nullOptions.o: options.cpp
-       $(CXX) $(CXXFLAGS) $< -c -o $@
+       $(CXX) $(CPPFLAGS) $(CXXFLAGS) $< -c -o $@
 
 %.o: %.cpp
 
 %.o: %.cpp
-       $(CXX) $(CXXFLAGS) $< -c -o $@
+       $(CXX) $(CPPFLAGS) $(CXXFLAGS) $< -c -o $@
 
 
 libAnysync.a: $(OBJS)
 
 
 libAnysync.a: $(OBJS)
index 0505497..02293cd 100644 (file)
@@ -47,6 +47,7 @@
 #define ANYTUN_anytunError_h_INCLUDED
 
 #include <sstream>
 #define ANYTUN_anytunError_h_INCLUDED
 
 #include <sstream>
+#define BOOST_SYSTEM_ENABLE_DEPRECATED
 #include <boost/system/system_error.hpp>
 #include "datatypes.h"
 
 #include <boost/system/system_error.hpp>
 #include "datatypes.h"
 
index b8a7f3f..a1ac576 100755 (executable)
@@ -217,12 +217,12 @@ if [ -n "$ERRORS" ] && [ $EBUILD_COMPAT -ne 1 ]; then
 fi
 
 if [ $USE_CLANG -eq 0 ]; then
 fi
 
 if [ $USE_CLANG -eq 0 ]; then
-  CXXFLAGS='-g -Wall -Werror -Wno-error=unused-variable -O2'
-  LDFLAGS='-g -Wall -Werror -O2'
+  if [ -z "$CXXFLAGS" ]; then CXXFLAGS='-g -Wall -O2'; fi
+  if [ -z "$LDFLAGS" ]; then LDFLAGS='-g -Wall -O2'; fi
   COMPILER='g++'
 else
   COMPILER='g++'
 else
-  CXXFLAGS='-g -O2'
-  LDFLAGS='-g -O2'
+  if [ -z "$CXXFLAGS" ]; then CXXFLAGS='-g -O2'; fi
+  if [ -z "$LDFLAGS" ]; then LDFLAGS='-g -O2'; fi
   COMPILER='clang++'
 fi
 
   COMPILER='clang++'
 fi
 
@@ -254,8 +254,8 @@ case $TARGET in
     ln -sf posix/posixDaemon.h daemonService.h
     ln -sf posix/posixDaemon.cpp daemonService.cpp
     echo "loading BSD specific TUN Device"
     ln -sf posix/posixDaemon.h daemonService.h
     ln -sf posix/posixDaemon.cpp daemonService.cpp
     echo "loading BSD specific TUN Device"
-    CXXFLAGS=$CXXFLAGS' -I/usr/local/include'
-    LDFLAGS=$LDFLAGS' -L/usr/local/lib  -lboost_thread -lboost_serialization -lboost_system -lboost_date_time -lpthread'
+    CPPFLAGS=$CPPFLAGS' -I/usr/local/include'
+    LDFLAGS=$LDFLAGS' -L/usr/local/lib -lboost_thread -lboost_serialization -lboost_system -lboost_date_time -lpthread'
     LOG_TARGETS='-DLOG_SYSLOG -DLOG_FILE -DLOG_STDOUT'
     INSTALLSYSTEMD=0
   ;;
     LOG_TARGETS='-DLOG_SYSLOG -DLOG_FILE -DLOG_STDOUT'
     INSTALLSYSTEMD=0
   ;;
@@ -265,7 +265,7 @@ case $TARGET in
     rm -f sysExec.hpp
     rm -f daemonService.h daemonService.cpp
     echo "loading Windows specific TUN Device"
     rm -f sysExec.hpp
     rm -f daemonService.h daemonService.cpp
     echo "loading Windows specific TUN Device"
-    CXXFLAGS=$CXXFLAGS' -DMINGW -D_WIN32_WINNT=0x0501 -DWIN32_LEAN_AND_MEAN -DBOOST_WINDOWS -fno-strict-aliasing -DBOOST_THREAD_USE_LIB'
+    CPPFLAGS=$CPPFLAGS' -DMINGW -D_WIN32_WINNT=0x0501 -DWIN32_LEAN_AND_MEAN -DBOOST_WINDOWS -fno-strict-aliasing -DBOOST_THREAD_USE_LIB'
     LDFLAGS=$LDFLAGS'  -lboost_thread_win32 -lboost_serialization -lboost_system -lboost_date_time -lwsock32 -lws2_32'
     LOG_TARGETS='-DWIN_EVENTLOG -DLOG_FILE -DLOG_STDOUT'
     INSTALLSYSTEMD=0
     LDFLAGS=$LDFLAGS'  -lboost_thread_win32 -lboost_serialization -lboost_system -lboost_date_time -lwsock32 -lws2_32'
     LOG_TARGETS='-DWIN_EVENTLOG -DLOG_FILE -DLOG_STDOUT'
     INSTALLSYSTEMD=0
@@ -276,59 +276,59 @@ case $TARGET in
   ;;
 esac
 
   ;;
 esac
 
-CXXFLAGS="$CXXFLAGS $LOG_TARGETS"
+CPPFLAGS="$CPPFLAGS $LOG_TARGETS"
 
 if [ -n "$BOOST_PREFIX" ]; then
 
 if [ -n "$BOOST_PREFIX" ]; then
-  CXXFLAGS="$CXXFLAGS -I\"$BOOST_PREFIX/include\""
+  CPPFLAGS="$CPPFLAGS -I\"$BOOST_PREFIX/include\""
   LDFLAGS="$LDFLAGS -L\"$BOOST_PREFIX/lib\""
 fi
 
 CRYPTO_LIB_NAME=""
 case $CRYPTO_LIB in
   gcrypt)
   LDFLAGS="$LDFLAGS -L\"$BOOST_PREFIX/lib\""
 fi
 
 CRYPTO_LIB_NAME=""
 case $CRYPTO_LIB in
   gcrypt)
-    CXXFLAGS=$CXXFLAGS' -DUSE_GCRYPT'
+    CPPFLAGS=$CPPFLAGS' -DUSE_GCRYPT'
     LDFLAGS=$LDFLAGS' -lgcrypt -lgpg-error'
     if [ -n "$GCRYPT_PREFIX" ]; then
     LDFLAGS=$LDFLAGS' -lgcrypt -lgpg-error'
     if [ -n "$GCRYPT_PREFIX" ]; then
-      CXXFLAGS="$CXXFLAGS -I\"$GCRYPT_PREFIX/include\""
+      CPPFLAGS="$CPPFLAGS -I\"$GCRYPT_PREFIX/include\""
       LDFLAGS="$LDFLAGS -L\"$GCRYPT_PREFIX/lib\""
     fi
     CRYPTO_LIB_NAME="libgcrypt"
     echo "using gcrypt library"
   ;;
   nettle)
       LDFLAGS="$LDFLAGS -L\"$GCRYPT_PREFIX/lib\""
     fi
     CRYPTO_LIB_NAME="libgcrypt"
     echo "using gcrypt library"
   ;;
   nettle)
-    CXXFLAGS=$CXXFLAGS' -DUSE_NETTLE'
+    CPPFLAGS=$CPPFLAGS' -DUSE_NETTLE'
     LDFLAGS=$LDFLAGS' -lnettle'
     if [ -n "$NETTLE_PREFIX" ]; then
     LDFLAGS=$LDFLAGS' -lnettle'
     if [ -n "$NETTLE_PREFIX" ]; then
-      CXXFLAGS="$CXXFLAGS -I\"$NETTLE_PREFIX/include\""
+      CPPFLAGS="$CPPFLAGS -I\"$NETTLE_PREFIX/include\""
       LDFLAGS="$LDFLAGS -L\"$NETTLE_PREFIX/lib\""
     fi
     CRYPTO_LIB_NAME="Nettle"
     echo "using nettle library"
   ;;
   ssl)
       LDFLAGS="$LDFLAGS -L\"$NETTLE_PREFIX/lib\""
     fi
     CRYPTO_LIB_NAME="Nettle"
     echo "using nettle library"
   ;;
   ssl)
-    CXXFLAGS=$CXXFLAGS' -DUSE_SSL_CRYPTO'
+    CPPFLAGS=$CPPFLAGS' -DUSE_SSL_CRYPTO'
     LDFLAGS=$LDFLAGS' -lcrypto'
     if [ -n "$OPENSSL_PREFIX" ]; then
     LDFLAGS=$LDFLAGS' -lcrypto'
     if [ -n "$OPENSSL_PREFIX" ]; then
-      CXXFLAGS="$CXXFLAGS -I\"$OPENSSL_PREFIX/include\""
+      CPPFLAGS="$CPPFLAGS -I\"$OPENSSL_PREFIX/include\""
       LDFLAGS="$LDFLAGS -L\"$OPENSSL_PREFIX/lib\""
     fi
     CRYPTO_LIB_NAME="OpenSSL"
     echo "using openssl crypto library"
   ;;
   none)
       LDFLAGS="$LDFLAGS -L\"$OPENSSL_PREFIX/lib\""
     fi
     CRYPTO_LIB_NAME="OpenSSL"
     echo "using openssl crypto library"
   ;;
   none)
-    CXXFLAGS=$CXXFLAGS' -DNO_CRYPT'
+    CPPFLAGS=$CPPFLAGS' -DNO_CRYPT'
     CRYPTO_LIB_NAME="none"
     echo "disabling crypto"
   ;;
 esac
 
 if [ $PASSPHRASE -eq 0 ]; then
     CRYPTO_LIB_NAME="none"
     echo "disabling crypto"
   ;;
 esac
 
 if [ $PASSPHRASE -eq 0 ]; then
-  CXXFLAGS=$CXXFLAGS' -DNO_PASSPHRASE'
+  CPPFLAGS=$CPPFLAGS' -DNO_PASSPHRASE'
   echo "disabling master key and salt passphrase"
 fi
 
 if [ $ROUTING -eq 0 ]; then
   echo "disabling master key and salt passphrase"
 fi
 
 if [ $ROUTING -eq 0 ]; then
-  CXXFLAGS=$CXXFLAGS' -DNO_ROUTING'
+  CPPFLAGS=$CPPFLAGS' -DNO_ROUTING'
   echo "disabling built-in routing capability"
 fi
 
   echo "disabling built-in routing capability"
 fi
 
@@ -373,13 +373,14 @@ cat > include.mk <<EOF
 # do not edit this file directly
 # use ./configure instead
 
 # do not edit this file directly
 # use ./configure instead
 
-TARGET = $TARGET
-CXX = ${CROSS_PREFIX}$COMPILER
-CXXFLAGS = $CXXFLAGS
-LD = ${CROSS_PREFIX}$COMPILER
-LDFLAGS = $LDFLAGS
-STRIP = ${CROSS_PREFIX}strip
-INSTALL = install
+TARGET := $TARGET
+CXX := ${CROSS_PREFIX}$COMPILER
+CPPFLAGS := $CPPFLAGS
+CXXFLAGS := $CXXFLAGS
+LD := ${CROSS_PREFIX}$COMPILER
+LDFLAGS := $LDFLAGS
+STRIP := ${CROSS_PREFIX}strip
+INSTALL := install
 
 prefix := $PREFIX
 BINDIR := $BINDIR
 
 prefix := $PREFIX
 BINDIR := $BINDIR
index 81c30e3..905be19 100644 (file)
@@ -44,6 +44,7 @@
  */
 
 #include <boost/bind.hpp>
  */
 
 #include <boost/bind.hpp>
+#define BOOST_SYSTEM_ENABLE_DEPRECATED
 #include <boost/system/error_code.hpp>
 
 #include "resolver.h"
 #include <boost/system/error_code.hpp>
 
 #include "resolver.h"
index 1e6e352..21302c2 100644 (file)
@@ -125,7 +125,11 @@ void SyncServer::start_accept()
   std::list<AcceptorsElement>::iterator it = acceptors_.begin();
   for(; it != acceptors_.end(); ++it) {
     if(!it->started_) {
   std::list<AcceptorsElement>::iterator it = acceptors_.begin();
   for(; it != acceptors_.end(); ++it) {
     if(!it->started_) {
+#if BOOST_VERSION >= 107000
+      SyncTcpConnection::pointer new_connection = SyncTcpConnection::create(it->acceptor_->get_executor());
+#else
       SyncTcpConnection::pointer new_connection = SyncTcpConnection::create(it->acceptor_->get_io_service());
       SyncTcpConnection::pointer new_connection = SyncTcpConnection::create(it->acceptor_->get_io_service());
+#endif
       conns_.push_back(new_connection);
       it->acceptor_->async_accept(new_connection->socket(),
                                   boost::bind(&SyncServer::handle_accept, this, new_connection, boost::asio::placeholders::error, it));
       conns_.push_back(new_connection);
       it->acceptor_->async_accept(new_connection->socket(),
                                   boost::bind(&SyncServer::handle_accept, this, new_connection, boost::asio::placeholders::error, it));
index 027c775..9fe3dba 100644 (file)
@@ -66,10 +66,18 @@ void SyncTcpConnection::Send(std::string message)
                                        boost::asio::placeholders::error,
                                        boost::asio::placeholders::bytes_transferred));
 }
                                        boost::asio::placeholders::error,
                                        boost::asio::placeholders::bytes_transferred));
 }
+
+#if BOOST_VERSION >= 107000
+SyncTcpConnection::SyncTcpConnection(const boost::asio::executor& executor)
+  : socket_(executor)
+{
+}
+#else
 SyncTcpConnection::SyncTcpConnection(boost::asio::io_service& io_service)
   : socket_(io_service)
 {
 }
 SyncTcpConnection::SyncTcpConnection(boost::asio::io_service& io_service)
   : socket_(io_service)
 {
 }
+#endif
 
 void SyncTcpConnection::handle_write(const boost::system::error_code& /*error*/,
                                      size_t /*bytes_transferred*/)
 
 void SyncTcpConnection::handle_write(const boost::system::error_code& /*error*/,
                                      size_t /*bytes_transferred*/)
index a188610..d5f6ef1 100644 (file)
@@ -60,9 +60,15 @@ public:
   typedef boost::shared_ptr<SyncTcpConnection> pointer;
   typedef boost::asio::ip::tcp proto;
 
   typedef boost::shared_ptr<SyncTcpConnection> pointer;
   typedef boost::asio::ip::tcp proto;
 
+#if BOOST_VERSION >= 107000
+  static pointer create(const boost::asio::executor& executor) {
+    return pointer(new SyncTcpConnection(executor));
+  };
+#else
   static pointer create(boost::asio::io_service& io_service) {
     return pointer(new SyncTcpConnection(io_service));
   };
   static pointer create(boost::asio::io_service& io_service) {
     return pointer(new SyncTcpConnection(io_service));
   };
+#endif
 
   boost::function<void(SyncTcpConnection*)> onConnect;
   proto::socket& socket();
 
   boost::function<void(SyncTcpConnection*)> onConnect;
   proto::socket& socket();
@@ -70,7 +76,11 @@ public:
   void start();
   void Send(std::string message);
 private:
   void start();
   void Send(std::string message);
 private:
+#if BOOST_VERSION >= 107000
+  SyncTcpConnection(const boost::asio::executor& executor);
+#else
   SyncTcpConnection(boost::asio::io_service& io_service);
   SyncTcpConnection(boost::asio::io_service& io_service);
+#endif
 
   void handle_write(const boost::system::error_code & /*error*/,
                     size_t /*bytes_transferred*/);
 
   void handle_write(const boost::system::error_code & /*error*/,
                     size_t /*bytes_transferred*/);
diff --git a/version b/version
index 0f82685..6678432 100644 (file)
--- a/version
+++ b/version
@@ -1 +1 @@
-0.3.7
+0.3.8