sorbo / tcpcrypt

Fast TCP encryption
http://tcpcrypt.org
Other
242 stars 106 forks source link

Doesn't work on OSX. :( #18

Open skull-squadron opened 11 years ago

skull-squadron commented 11 years ago

The UI version doesn't do anything.

Compiling from source, hacking up the .sh to do the right things and globally setting DYLD_FALLBACK_LIBRARY_PATH still does not result in a successful http://tcpcrypt.org/test.php

Pretty much broken FAIAP.

skull-squadron commented 11 years ago

So tcpcryptd appears to be running:

666 9229 0.0 0.3 2456416 20976 ?? S 2:22AM 0:00.45 /usr/local/bin/tcpcryptd -p 666

Also tried this:

  1. Copying the tcpcrypt libs to a created directory /usr/local/lib/tcpcrypt
  2. (export DYLD_LIBRARY_PATH=/usr/local/lib/tcpcrypt ; /Applications/Firefox.app/Contents/MacOS/firefox)
sqs commented 11 years ago

What version of OS X are you using?

skull-squadron commented 11 years ago

10.7.5, XCode 4.6.2, brew

Open to reinstalling in a canonical known-good way, whether source or binary.

Whichever way is easiest.

skull-squadron commented 11 years ago

Binary built from master HEAD @ 0e07772316061ad67b8770e7d98d5dd099c9c7c7

The usual way...

TL;DR doesn't work (libtool, autoconf, automake, pkg-config are installed via brew):

(skip down to see another way that buids)

~/src/tcpcrypt/user git:master ❯❯❯ ./configure
checking for a BSD-compatible install... /usr/local/bin/ginstall -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking whether ln -s works... yes
checking build system type... i386-apple-darwin11.4.2
checking host system type... i386-apple-darwin11.4.2
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
checking the name lister (/usr/bin/nm) interface... BSD nm
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm output from gcc object... ok
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fno-common -DPIC
checking if gcc PIC flag -fno-common -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin11.4.2 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking dependency style of gcc... gcc3
checking OS... darwin11.4.2
checking whether to use asm checksum routine... no
checking for cap_set_flag in -lcap... no
checking for EVP_OpenInit in -lcrypto... yes
checking for nfq_open in -lnetfilter_queue... no
checking for nfnl_rcvbufsiz in -lnfnetlink... no
checking for pthread_create in -lpthread... yes
checking for clock_gettime in -lrt... no
checking for EC_POINT_new in -lssl... yes
checking for compress in -lz... yes
checking for bind in -lwsock32... no
checking for GetAdaptersInfo in -liphlpapi... no
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for strings.h... (cached) yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for inline... inline
checking for mode_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking for uint16_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for uint8_t... yes
checking for ptrdiff_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for pid_t... yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for bzero... yes
checking for clock_gettime... no
checking for gettimeofday... yes
checking for inet_ntoa... yes
checking for memmove... yes
checking for memset... yes
checking for select... yes
checking for socket... yes
checking for strchr... yes
checking for strdup... yes
checking for strtoul... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating lib/Makefile
config.status: creating src/Makefile
config.status: creating test/Makefile
config.status: creating util/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
~/src/tcpcrypt/user git:master ❯❯❯ make
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run aclocal-1.11 -I m4
/Users/username/src/tcpcrypt/user/config/missing: line 52: aclocal-1.11: command not found
WARNING: `aclocal-1.11' is missing on your system.  You should only need it if
         you modified `acinclude.m4' or `configure.ac'.  You might want
         to install the `Automake' and `Perl' packages.  Grab them from
         any GNU archive site.
 cd . && /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run automake-1.11 --foreign
/Users/username/src/tcpcrypt/user/config/missing: line 52: automake-1.11: command not found
WARNING: `automake-1.11' is missing on your system.  You should only need it if
         you modified `Makefile.am', `acinclude.m4' or `configure.ac'.
         You might want to install the `Automake' and `Perl' packages.
         Grab them from any GNU archive site.
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run autoconf
configure.ac:10: error: possibly undefined macro: AM_INIT_AUTOMAKE
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
configure.ac:15: error: possibly undefined macro: AC_PROG_LIBTOOL
configure.ac:16: error: possibly undefined macro: AM_PROG_AS
configure.ac:21: error: possibly undefined macro: AM_CONDITIONAL
make: *** [configure] Error 1

Fresh git clone and try again:

~/src/tcpcrypt/user git:master ❯❯❯ make distcheck
/bin/sh ./config.status --recheck
running CONFIG_SHELL=/bin/sh /bin/sh ./configure --no-create --no-recursion
checking for a BSD-compatible install... /usr/local/bin/ginstall -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking whether ln -s works... yes
checking build system type... i386-apple-darwin11.4.2
checking host system type... i386-apple-darwin11.4.2
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
checking the name lister (/usr/bin/nm) interface... BSD nm
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm output from gcc object... ok
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fno-common -DPIC
checking if gcc PIC flag -fno-common -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin11.4.2 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking dependency style of gcc... gcc3
checking OS... darwin11.4.2
checking whether to use asm checksum routine... no
checking for cap_set_flag in -lcap... no
checking for EVP_OpenInit in -lcrypto... yes
checking for nfq_open in -lnetfilter_queue... no
checking for nfnl_rcvbufsiz in -lnfnetlink... no
checking for pthread_create in -lpthread... yes
checking for clock_gettime in -lrt... no
checking for EC_POINT_new in -lssl... yes
checking for compress in -lz... yes
checking for bind in -lwsock32... no
checking for GetAdaptersInfo in -liphlpapi... no
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for strings.h... (cached) yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for inline... inline
checking for mode_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking for uint16_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for uint8_t... yes
checking for ptrdiff_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for pid_t... yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for bzero... yes
checking for clock_gettime... no
checking for gettimeofday... yes
checking for inet_ntoa... yes
checking for memmove... yes
checking for memset... yes
checking for select... yes
checking for socket... yes
checking for strchr... yes
checking for strdup... yes
checking for strtoul... yes
configure: creating ./config.status
 /bin/sh ./config.status
config.status: creating Makefile
config.status: creating lib/Makefile
config.status: creating src/Makefile
config.status: creating test/Makefile
config.status: creating util/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run autoheader)
rm -f stamp-h1
touch config.h.in
{ test ! -d "tcpcrypt-0.1" || { find "tcpcrypt-0.1" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -fr "tcpcrypt-0.1"; }; }
test -d "tcpcrypt-0.1" || mkdir "tcpcrypt-0.1"
 (cd lib && make  top_distdir=../tcpcrypt-0.1 distdir=../tcpcrypt-0.1/lib \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
 (cd src && make  top_distdir=../tcpcrypt-0.1 distdir=../tcpcrypt-0.1/src \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
 (cd test && make  top_distdir=../tcpcrypt-0.1 distdir=../tcpcrypt-0.1/test \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
 (cd util && make  top_distdir=../tcpcrypt-0.1 distdir=../tcpcrypt-0.1/util \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
test -n "" \
    || find "tcpcrypt-0.1" -type d ! -perm -755 \
        -exec chmod u+rwx,go+rx {} \; -o \
      ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
      ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
      ! -type d ! -perm -444 -exec /bin/sh /Users/username/src/tcpcrypt/user/config/install-sh -c -m a+r {} {} \; \
    || chmod -R a+r "tcpcrypt-0.1"
tardir=tcpcrypt-0.1 && /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run tar chof - "$tardir" | GZIP=--best gzip -c >tcpcrypt-0.1.tar.gz
{ test ! -d "tcpcrypt-0.1" || { find "tcpcrypt-0.1" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -fr "tcpcrypt-0.1"; }; }
case 'tcpcrypt-0.1.tar.gz' in \
    *.tar.gz*) \
      GZIP=--best gzip -dc tcpcrypt-0.1.tar.gz | /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run tar xf - ;;\
    *.tar.bz2*) \
      bzip2 -dc tcpcrypt-0.1.tar.bz2 | /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run tar xf - ;;\
    *.tar.lzma*) \
      lzma -dc tcpcrypt-0.1.tar.lzma | /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run tar xf - ;;\
    *.tar.xz*) \
      xz -dc tcpcrypt-0.1.tar.xz | /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run tar xf - ;;\
    *.tar.Z*) \
      uncompress -c tcpcrypt-0.1.tar.Z | /bin/sh /Users/username/src/tcpcrypt/user/config/missing --run tar xf - ;;\
    *.shar.gz*) \
      GZIP=--best gzip -dc tcpcrypt-0.1.shar.gz | unshar ;;\
    *.zip*) \
      unzip tcpcrypt-0.1.zip ;;\
    esac
chmod -R a-w tcpcrypt-0.1; chmod a+w tcpcrypt-0.1
mkdir tcpcrypt-0.1/_build
mkdir tcpcrypt-0.1/_inst
chmod a-w tcpcrypt-0.1
test -d tcpcrypt-0.1/_build || exit 0; \
    dc_install_base=`CDPATH="${ZSH_VERSION+.}:" && cd tcpcrypt-0.1/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
      && dc_destdir="${TMPDIR-/tmp}/am-dc-$$/" \
      && am__cwd=`pwd` \
      && CDPATH="${ZSH_VERSION+.}:" && cd tcpcrypt-0.1/_build \
      && ../configure --srcdir=.. --prefix="$dc_install_base" \
         \
      && make  \
      && make  dvi \
      && make  check \
      && make  install \
      && make  installcheck \
      && make  uninstall \
      && make  distuninstallcheck_dir="$dc_install_base" \
            distuninstallcheck \
      && chmod -R a-w "$dc_install_base" \
      && ({ \
           (cd ../.. && umask 077 && mkdir "$dc_destdir") \
           && make  DESTDIR="$dc_destdir" install \
           && make  DESTDIR="$dc_destdir" uninstall \
           && make  DESTDIR="$dc_destdir" \
                distuninstallcheck_dir="$dc_destdir" distuninstallcheck; \
          } || { rm -rf "$dc_destdir"; exit 1; }) \
      && rm -rf "$dc_destdir" \
      && make  dist \
      && rm -rf tcpcrypt-0.1.tar.gz \
      && make  distcleancheck \
      && cd "$am__cwd" \
      || exit 1
checking for a BSD-compatible install... /usr/local/bin/ginstall -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking whether ln -s works... yes
checking build system type... i386-apple-darwin11.4.2
checking host system type... i386-apple-darwin11.4.2
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
checking the name lister (/usr/bin/nm) interface... BSD nm
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm output from gcc object... ok
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fno-common -DPIC
checking if gcc PIC flag -fno-common -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin11.4.2 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking dependency style of gcc... gcc3
checking OS... darwin11.4.2
checking whether to use asm checksum routine... no
checking for cap_set_flag in -lcap... no
checking for EVP_OpenInit in -lcrypto... yes
checking for nfq_open in -lnetfilter_queue... no
checking for nfnl_rcvbufsiz in -lnfnetlink... no
checking for pthread_create in -lpthread... yes
checking for clock_gettime in -lrt... no
checking for EC_POINT_new in -lssl... yes
checking for compress in -lz... yes
checking for bind in -lwsock32... no
checking for GetAdaptersInfo in -liphlpapi... no
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for strings.h... (cached) yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for inline... inline
checking for mode_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking for uint16_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for uint8_t... yes
checking for ptrdiff_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for pid_t... yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for bzero... yes
checking for clock_gettime... no
checking for gettimeofday... yes
checking for inet_ntoa... yes
checking for memmove... yes
checking for memset... yes
checking for select... yes
checking for socket... yes
checking for strchr... yes
checking for strdup... yes
checking for strtoul... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating lib/Makefile
config.status: creating src/Makefile
config.status: creating test/Makefile
config.status: creating util/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
make  all-recursive
Making all in lib
/bin/sh ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../lib -I..    -I../../include/ -g -O2 -MT libtcpcrypt_la-sockopt.lo -MD -MP -MF .deps/libtcpcrypt_la-sockopt.Tpo -c -o libtcpcrypt_la-sockopt.lo `test -f 'sockopt.c' || echo '../../lib/'`sockopt.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../lib -I.. -I../../include/ -g -O2 -MT libtcpcrypt_la-sockopt.lo -MD -MP -MF .deps/libtcpcrypt_la-sockopt.Tpo -c ../../lib/sockopt.c  -fno-common -DPIC -o .libs/libtcpcrypt_la-sockopt.o
../../lib/sockopt.c:11:30: error: src/tcpcrypt_ctl.h: No such file or directory
../../lib/sockopt.c:31: error: field ‘cf_sun’ has incomplete type
../../lib/sockopt.c:36: error: ‘TCPCRYPT_CTLPATH’ undeclared here (not in a function)
../../lib/sockopt.c:41: error: field ‘in’ has incomplete type
../../lib/sockopt.c:42: error: field ‘in6’ has incomplete type
../../lib/sockopt.c: In function ‘set_addr’:
../../lib/sockopt.c:49: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:49: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:51: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:52: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:53: error: dereferencing pointer to incomplete type
../../lib/sockopt.c: In function ‘do_sockopt’:
../../lib/sockopt.c:125: error: ‘TCC_SET’ undeclared (first use in this function)
../../lib/sockopt.c:125: error: (Each undeclared identifier is reported only once
../../lib/sockopt.c:125: error: for each function it appears in.)
../../lib/sockopt.c:127: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
../../lib/sockopt.c:138: warning: incompatible implicit declaration of built-in function ‘alloca’
../../lib/sockopt.c:138: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:138: warning: assignment from incompatible pointer type
../../lib/sockopt.c:142: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:142: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:143: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:167: error: ‘INADDR_ANY’ undeclared (first use in this function)
../../lib/sockopt.c:173: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:173: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:177: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:177: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:180: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:181: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:182: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:184: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:208: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:208: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:208: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:211: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:214: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:214: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:216: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:217: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:218: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:221: error: dereferencing pointer to incomplete type
../../lib/sockopt.c: In function ‘probe_imp’:
../../lib/sockopt.c:232: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
../../lib/sockopt.c: In function ‘setsockopt_kernel’:
../../lib/sockopt.c:260: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
../../lib/sockopt.c: In function ‘getsockopt_kernel’:
../../lib/sockopt.c:274: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
../../lib/sockopt.c: In function ‘tcpcrypt_setsockopt’:
../../lib/sockopt.c:303: error: ‘TCC_SET’ undeclared (first use in this function)
../../lib/sockopt.c: In function ‘__open_socket_for_getsessid’:
../../lib/sockopt.c:310: error: storage size of ‘s_in’ isn’t known
../../lib/sockopt.c:320: error: ‘INADDR_ANY’ undeclared (first use in this function)
../../lib/sockopt.c:322: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
../../lib/sockopt.c: In function ‘tcpcrypt_getsessid’:
../../lib/sockopt.c:341: error: storage size of ‘dip’ isn’t known
../../lib/sockopt.c:358: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
../../lib/sockopt.c:361: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:362: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:362: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:362: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:362: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:364: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:367: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:367: error: invalid application of ‘sizeof’ to incomplete type ‘struct in_addr’
../../lib/sockopt.c:368: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:368: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:368: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:368: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:370: error: dereferencing pointer to incomplete type
../../lib/sockopt.c:374: error: dereferencing pointer to incomplete type
make[3]: *** [libtcpcrypt_la-sockopt.lo] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all] Error 2
make: *** [distcheck] Error 1
~/src/tcpcrypt/user git:master ❯❯❯ make                                 ⏎ ✱ ◼
cd . && /bin/sh ./config.status config.h
config.status: creating config.h
make  all-recursive
Making all in lib
/bin/sh ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT libtcpcrypt_la-sockopt.lo -MD -MP -MF .deps/libtcpcrypt_la-sockopt.Tpo -c -o libtcpcrypt_la-sockopt.lo `test -f 'sockopt.c' || echo './'`sockopt.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I../include/ -g -O2 -MT libtcpcrypt_la-sockopt.lo -MD -MP -MF .deps/libtcpcrypt_la-sockopt.Tpo -c sockopt.c  -fno-common -DPIC -o .libs/libtcpcrypt_la-sockopt.o
sockopt.c: In function ‘do_sockopt’:
sockopt.c:138: warning: incompatible implicit declaration of built-in function ‘alloca’
sockopt.c:138: warning: assignment from incompatible pointer type
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I../include/ -g -O2 -MT libtcpcrypt_la-sockopt.lo -MD -MP -MF .deps/libtcpcrypt_la-sockopt.Tpo -c sockopt.c -o libtcpcrypt_la-sockopt.o >/dev/null 2>&1
mv -f .deps/libtcpcrypt_la-sockopt.Tpo .deps/libtcpcrypt_la-sockopt.Plo
/bin/sh ../libtool --tag=CC   --mode=link gcc -I../include/ -g -O2 -version-info 0:0:0 -L/usr/local/lib -o libtcpcrypt.la -rpath /usr/local/lib libtcpcrypt_la-sockopt.lo  -lz -lssl -lpthread -lcrypto
libtool: link: gcc -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o .libs/libtcpcrypt.0.dylib  .libs/libtcpcrypt_la-sockopt.o   -L/usr/local/lib -lz -lssl -lpthread -lcrypto    -install_name  /usr/local/lib/libtcpcrypt.0.dylib -compatibility_version 1 -current_version 1.0 -Wl,-single_module
libtool: link: dsymutil .libs/libtcpcrypt.0.dylib || :
libtool: link: (cd ".libs" && rm -f "libtcpcrypt.dylib" && ln -s "libtcpcrypt.0.dylib" "libtcpcrypt.dylib")
libtool: link: ar cru .libs/libtcpcrypt.a  libtcpcrypt_la-sockopt.o
libtool: link: ranlib .libs/libtcpcrypt.a
libtool: link: ( cd ".libs" && rm -f "libtcpcrypt.la" && ln -s "../libtcpcrypt.la" "libtcpcrypt.la" )
Making all in src
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-tcpcryptd.o -MD -MP -MF .deps/tcpcryptd-tcpcryptd.Tpo -c -o tcpcryptd-tcpcryptd.o `test -f 'tcpcryptd.c' || echo './'`tcpcryptd.c
tcpcryptd.c: In function ‘errssl’:
tcpcryptd.c:542: warning: ‘ERR_error_string’ is deprecated (declared at /usr/include/openssl/err.h:279)
tcpcryptd.c:542: warning: ‘ERR_get_error’ is deprecated (declared at /usr/include/openssl/err.h:266)
mv -f .deps/tcpcryptd-tcpcryptd.Tpo .deps/tcpcryptd-tcpcryptd.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-tcpcrypt.o -MD -MP -MF .deps/tcpcryptd-tcpcrypt.Tpo -c -o tcpcryptd-tcpcrypt.o `test -f 'tcpcrypt.c' || echo './'`tcpcrypt.c
mv -f .deps/tcpcryptd-tcpcrypt.Tpo .deps/tcpcryptd-tcpcrypt.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-crypto.o -MD -MP -MF .deps/tcpcryptd-crypto.Tpo -c -o tcpcryptd-crypto.o `test -f 'crypto.c' || echo './'`crypto.c
mv -f .deps/tcpcryptd-crypto.Tpo .deps/tcpcryptd-crypto.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-crypto_rsa.o -MD -MP -MF .deps/tcpcryptd-crypto_rsa.Tpo -c -o tcpcryptd-crypto_rsa.o `test -f 'crypto_rsa.c' || echo './'`crypto_rsa.c
crypto_rsa.c: In function ‘generate_key’:
crypto_rsa.c:49: warning: ‘RSA_generate_key’ is deprecated (declared at /usr/include/openssl/rsa.h:261)
crypto_rsa.c: In function ‘generate_keys’:
crypto_rsa.c:66: warning: ‘RSA_free’ is deprecated (declared at /usr/include/openssl/rsa.h:282)
crypto_rsa.c:72: warning: ‘BN_num_bits’ is deprecated (declared at /usr/include/openssl/bn.h:415)
crypto_rsa.c:74: warning: ‘BN_bn2bin’ is deprecated (declared at /usr/include/openssl/bn.h:423)
crypto_rsa.c: In function ‘rsa_finish’:
crypto_rsa.c:117: warning: ‘RSA_free’ is deprecated (declared at /usr/include/openssl/rsa.h:282)
crypto_rsa.c: In function ‘rsa_encrypt’:
crypto_rsa.c:131: warning: ‘RSA_size’ is deprecated (declared at /usr/include/openssl/rsa.h:256)
crypto_rsa.c:136: warning: ‘RSA_public_encrypt’ is deprecated (declared at /usr/include/openssl/rsa.h:275)
crypto_rsa.c: In function ‘rsa_decrypt’:
crypto_rsa.c:156: warning: ‘RSA_private_decrypt’ is deprecated (declared at /usr/include/openssl/rsa.h:281)
crypto_rsa.c: In function ‘rsa_set_key’:
crypto_rsa.c:198: warning: ‘RSA_new’ is deprecated (declared at /usr/include/openssl/rsa.h:254)
crypto_rsa.c:202: warning: ‘BN_bin2bn’ is deprecated (declared at /usr/include/openssl/bn.h:422)
crypto_rsa.c:206: warning: ‘BN_num_bits’ is deprecated (declared at /usr/include/openssl/bn.h:415)
crypto_rsa.c: In function ‘rsa_prop’:
crypto_rsa.c:243: warning: ‘RSA_size’ is deprecated (declared at /usr/include/openssl/rsa.h:256)
mv -f .deps/tcpcryptd-crypto_rsa.Tpo .deps/tcpcryptd-crypto_rsa.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-crypto_aes.o -MD -MP -MF .deps/tcpcryptd-crypto_aes.Tpo -c -o tcpcryptd-crypto_aes.o `test -f 'crypto_aes.c' || echo './'`crypto_aes.c
crypto_aes.c: In function ‘aes_init’:
crypto_aes.c:30: warning: ‘EVP_CIPHER_CTX_init’ is deprecated (declared at /usr/include/openssl/evp.h:636)
crypto_aes.c: In function ‘aes_finish’:
crypto_aes.c:40: warning: ‘EVP_CIPHER_CTX_cleanup’ is deprecated (declared at /usr/include/openssl/evp.h:637)
crypto_aes.c: In function ‘do_aes’:
crypto_aes.c:94: warning: ‘EVP_EncryptUpdate’ is deprecated (declared at /usr/include/openssl/evp.h:583)
crypto_aes.c: In function ‘aes_set_key’:
crypto_aes.c:169: warning: ‘EVP_EncryptInit’ is deprecated (declared at /usr/include/openssl/evp.h:579)
crypto_aes.c:169: warning: ‘EVP_aes_128_ecb’ is deprecated (declared at /usr/include/openssl/evp.h:765)
mv -f .deps/tcpcryptd-crypto_aes.Tpo .deps/tcpcryptd-crypto_aes.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-crypto_hmac.o -MD -MP -MF .deps/tcpcryptd-crypto_hmac.Tpo -c -o tcpcryptd-crypto_hmac.o `test -f 'crypto_hmac.c' || echo './'`crypto_hmac.c
crypto_hmac.c: In function ‘hmac_init’:
crypto_hmac.c:31: warning: ‘HMAC_CTX_init’ is deprecated (declared at /usr/include/openssl/hmac.h:90)
crypto_hmac.c:32: warning: ‘HMAC_Init_ex’ is deprecated (declared at /usr/include/openssl/hmac.h:98)
crypto_hmac.c:32: warning: ‘EVP_sha1’ is deprecated (declared at /usr/include/openssl/evp.h:666)
crypto_hmac.c: In function ‘hmac_finish’:
crypto_hmac.c:42: warning: ‘HMAC_CTX_cleanup’ is deprecated (declared at /usr/include/openssl/hmac.h:91)
crypto_hmac.c: In function ‘hmac_mac’:
crypto_hmac.c:59: warning: ‘HMAC_Init_ex’ is deprecated (declared at /usr/include/openssl/hmac.h:98)
crypto_hmac.c:64: warning: ‘HMAC_Update’ is deprecated (declared at /usr/include/openssl/hmac.h:99)
crypto_hmac.c:69: warning: ‘HMAC_Final’ is deprecated (declared at /usr/include/openssl/hmac.h:100)
crypto_hmac.c: In function ‘hmac_set_key’:
crypto_hmac.c:87: warning: ‘HMAC_Init_ex’ is deprecated (declared at /usr/include/openssl/hmac.h:98)
mv -f .deps/tcpcryptd-crypto_hmac.Tpo .deps/tcpcryptd-crypto_hmac.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-crypto_dummy.o -MD -MP -MF .deps/tcpcryptd-crypto_dummy.Tpo -c -o tcpcryptd-crypto_dummy.o `test -f 'crypto_dummy.c' || echo './'`crypto_dummy.c
mv -f .deps/tcpcryptd-crypto_dummy.Tpo .deps/tcpcryptd-crypto_dummy.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-profile.o -MD -MP -MF .deps/tcpcryptd-profile.Tpo -c -o tcpcryptd-profile.o `test -f 'profile.c' || echo './'`profile.c
mv -f .deps/tcpcryptd-profile.Tpo .deps/tcpcryptd-profile.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-checksum.o -MD -MP -MF .deps/tcpcryptd-checksum.Tpo -c -o tcpcryptd-checksum.o `test -f 'checksum.c' || echo './'`checksum.c
mv -f .deps/tcpcryptd-checksum.Tpo .deps/tcpcryptd-checksum.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-test.o -MD -MP -MF .deps/tcpcryptd-test.Tpo -c -o tcpcryptd-test.o `test -f 'test.c' || echo './'`test.c
mv -f .deps/tcpcryptd-test.Tpo .deps/tcpcryptd-test.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-crypto_rc4.o -MD -MP -MF .deps/tcpcryptd-crypto_rc4.Tpo -c -o tcpcryptd-crypto_rc4.o `test -f 'crypto_rc4.c' || echo './'`crypto_rc4.c
crypto_rc4.c: In function ‘rc4_init’:
crypto_rc4.c:50: warning: ‘EVP_CIPHER_CTX_init’ is deprecated (declared at /usr/include/openssl/evp.h:636)
crypto_rc4.c:51: warning: ‘EVP_CipherInit_ex’ is deprecated (declared at /usr/include/openssl/evp.h:601)
crypto_rc4.c:51: warning: ‘EVP_rc4’ is deprecated (declared at /usr/include/openssl/evp.h:724)
crypto_rc4.c: In function ‘rc4_finish’:
crypto_rc4.c:64: warning: ‘EVP_CIPHER_CTX_cleanup’ is deprecated (declared at /usr/include/openssl/evp.h:637)
crypto_rc4.c: In function ‘do_rc4’:
crypto_rc4.c:122: warning: ‘EVP_EncryptUpdate’ is deprecated (declared at /usr/include/openssl/evp.h:583)
crypto_rc4.c: In function ‘rc4_set_key’:
crypto_rc4.c:192: warning: ‘EVP_CIPHER_CTX_key_length’ is deprecated (declared at /usr/include/openssl/evp.h:502)
crypto_rc4.c:194: warning: ‘EVP_CipherInit_ex’ is deprecated (declared at /usr/include/openssl/evp.h:601)
mv -f .deps/tcpcryptd-crypto_rc4.Tpo .deps/tcpcryptd-crypto_rc4.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-crypto_umac.o -MD -MP -MF .deps/tcpcryptd-crypto_umac.Tpo -c -o tcpcryptd-crypto_umac.o `test -f 'crypto_umac.c' || echo './'`crypto_umac.c
mv -f .deps/tcpcryptd-crypto_umac.Tpo .deps/tcpcryptd-crypto_umac.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-umac.o -MD -MP -MF .deps/tcpcryptd-umac.Tpo -c -o tcpcryptd-umac.o `test -f '../contrib/umac.c' || echo './'`../contrib/umac.c
mv -f .deps/tcpcryptd-umac.Tpo .deps/tcpcryptd-umac.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-rijndael-alg-fst.o -MD -MP -MF .deps/tcpcryptd-rijndael-alg-fst.Tpo -c -o tcpcryptd-rijndael-alg-fst.o `test -f '../contrib/rijndael-alg-fst.c' || echo './'`../contrib/rijndael-alg-fst.c
mv -f .deps/tcpcryptd-rijndael-alg-fst.Tpo .deps/tcpcryptd-rijndael-alg-fst.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-freebsd.o -MD -MP -MF .deps/tcpcryptd-freebsd.Tpo -c -o tcpcryptd-freebsd.o `test -f 'freebsd.c' || echo './'`freebsd.c
mv -f .deps/tcpcryptd-freebsd.Tpo .deps/tcpcryptd-freebsd.Po
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcpcryptd-unix.o -MD -MP -MF .deps/tcpcryptd-unix.Tpo -c -o tcpcryptd-unix.o `test -f 'unix.c' || echo './'`unix.c
mv -f .deps/tcpcryptd-unix.Tpo .deps/tcpcryptd-unix.Po
/bin/sh ../libtool --tag=CC   --mode=link gcc -I../include/ -g -O2  -L/usr/local/lib -o tcpcryptd tcpcryptd-tcpcryptd.o tcpcryptd-tcpcrypt.o tcpcryptd-crypto.o tcpcryptd-crypto_rsa.o tcpcryptd-crypto_aes.o tcpcryptd-crypto_hmac.o tcpcryptd-crypto_dummy.o tcpcryptd-profile.o tcpcryptd-checksum.o tcpcryptd-test.o tcpcryptd-crypto_rc4.o tcpcryptd-crypto_umac.o tcpcryptd-umac.o tcpcryptd-rijndael-alg-fst.o tcpcryptd-freebsd.o   tcpcryptd-unix.o  -lcrypto   -lz -lssl -lpthread -lcrypto
libtool: link: gcc -I../include/ -g -O2 -o tcpcryptd tcpcryptd-tcpcryptd.o tcpcryptd-tcpcrypt.o tcpcryptd-crypto.o tcpcryptd-crypto_rsa.o tcpcryptd-crypto_aes.o tcpcryptd-crypto_hmac.o tcpcryptd-crypto_dummy.o tcpcryptd-profile.o tcpcryptd-checksum.o tcpcryptd-test.o tcpcryptd-crypto_rc4.o tcpcryptd-crypto_umac.o tcpcryptd-umac.o tcpcryptd-rijndael-alg-fst.o tcpcryptd-freebsd.o tcpcryptd-unix.o  -L/usr/local/lib -lz -lssl -lpthread -lcrypto
Making all in test
make[2]: Nothing to be done for `all'.
Making all in util
gcc -DHAVE_CONFIG_H -I. -I..    -I../include/ -g -O2 -MT tcnetstat-tcnetstat.o -MD -MP -MF .deps/tcnetstat-tcnetstat.Tpo -c -o tcnetstat-tcnetstat.o `test -f 'tcnetstat.c' || echo './'`tcnetstat.c
mv -f .deps/tcnetstat-tcnetstat.Tpo .deps/tcnetstat-tcnetstat.Po
/bin/sh ../libtool --tag=CC   --mode=link gcc -I../include/ -g -O2  -L/usr/local/lib -o tcnetstat tcnetstat-tcnetstat.o ../lib/libtcpcrypt.la   -lz -lssl -lpthread -lcrypto
libtool: link: gcc -I../include/ -g -O2 -o .libs/tcnetstat tcnetstat-tcnetstat.o  -L/usr/local/lib ../lib/.libs/libtcpcrypt.dylib -lz -lssl -lpthread -lcrypto
make[2]: Nothing to be done for `all-am'.
~/src/tcpcrypt/user git:master ❯❯❯

Finally.

Also, some osx-hacks:

/Library/LaunchAgents/tcpcrypt.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>KeepAlive</key>
  <true/>
  <key>Label</key>
  <string>tcpcrypt</string>
  <key>Program</key>
  <string>/usr/local/sbin/launch_tcpcryptd.sh</string>
  <key>ProgramArguments</key>
  <array>
  </array>
</dict>
</plist>

/usr/local/sbin/launch_tcpcryptd.sh

#!/usr/bin/env bash

PORT=${1:-80}
PORT2=${2:-7777}

TCPCRYPTD=/usr/local/bin/tcpcryptd
DIVERT_PORT=666
PIDFILE=/usr/local/var/run/tcpcrypt.pid

start_tcpcryptd() {
    LD_LIBRARY_PATH=/usr/local/lib $TCPCRYPTD $OPTS -p $DIVERT_PORT &
    echo $! > $PIDFILE
    wait $!
}

bsd_set_ipfw() {
    echo Tcpcrypting port 80 and local traffic on port 7777...
    ipfw 02 add divert $DIVERT_PORT tcp from any to any $PORT
    ipfw 03 add divert $DIVERT_PORT tcp from any $PORT to any
    ipfw 04 add divert $DIVERT_PORT tcp from any to any $PORT2 via lo0
    ipfw 05 add divert $DIVERT_PORT tcp from any $PORT2 to any via lo0
}

bsd_unset_ipfw() {
    echo Removing ipfw rules and quitting tcpcryptd...
    ipfw delete 02 03 04 05
    exit
}

check_root() {
    if [ `whoami` != "root" ]
    then
        echo "must be root"
        exit 1
    fi
}

kill_existing_tcpcryptd() {
    ps axo pid,comm | grep $TCPCRYPTD | grep -v grep | awk '{print$1}' | xargs -L1 kill -9
}

check_root
bsd_set_ipfw
trap bsd_unset_ipfw INT TERM QUIT ERR EXIT
kill_existing_tcpcryptd
start_tcpcryptd
bsd_unset_ipfw
skull-squadron commented 11 years ago

tcpcrypt-osx.tgz (63 KB) https://mega.co.nz/#!q8g0gCza!c4PPDHR0BQeoIekMpsvnC0F_-6xrqJ0wyJ2SMdonEo8

If you trust that I didn't put a goatse MITM and bitcoin miner in there.

tclancy commented 10 years ago

I installed by hand as per this and it works fine. Added the two files listed above, but it doesn't seem to be running after restart.

launchctl load /Library/LaunchAgents/tcpcrypt.plist
tcpcrypt: Already loaded

but the test page does not reflect that.