summaryrefslogtreecommitdiff
path: root/main/openvpn/sample
diff options
context:
space:
mode:
authorArne Schwabe <arne@rfc2549.org>2014-02-13 15:53:13 +0100
committerArne Schwabe <arne@rfc2549.org>2014-02-13 15:53:13 +0100
commitdfd5ef42cf6b68bd7ee7b522ac3c9a55cd54c889 (patch)
tree39061cd184fac30537df44c379a4ecb18d119bc6 /main/openvpn/sample
parentb91aedc11393608ba7fb38f358c35ece662fd1b7 (diff)
Move to new gradle project structure (drop Eclipse support, add initial remote demo project)
--HG-- rename : build.gradle => main/build.gradle rename : jni/Android.mk => main/jni/Android.mk rename : jni/Application.mk => main/jni/Application.mk rename : jni/dummy.cpp => main/jni/dummy.cpp rename : jni/jbcrypto.cpp => main/jni/jbcrypto.cpp rename : jni/jniglue.c => main/jni/jniglue.c rename : jni/jniglue.h => main/jni/jniglue.h rename : jni/minivpn.c => main/jni/minivpn.c rename : lzo/AUTHORS => main/lzo/AUTHORS rename : lzo/Android.mk => main/lzo/Android.mk rename : lzo/B/00README.TXT => main/lzo/B/00README.TXT rename : lzo/B/clean.bat => main/lzo/B/clean.bat rename : lzo/B/done.bat => main/lzo/B/done.bat rename : lzo/B/dos16/bc.bat => main/lzo/B/dos16/bc.bat rename : lzo/B/dos16/bc.rsp => main/lzo/B/dos16/bc.rsp rename : lzo/B/dos16/bc_286.bat => main/lzo/B/dos16/bc_286.bat rename : lzo/B/dos16/bc_pp.bat => main/lzo/B/dos16/bc_pp.bat rename : lzo/B/dos16/dm.bat => main/lzo/B/dos16/dm.bat rename : lzo/B/dos16/mc.bat => main/lzo/B/dos16/mc.bat rename : lzo/B/dos16/mc_qc.bat => main/lzo/B/dos16/mc_qc.bat rename : lzo/B/dos16/qc.bat => main/lzo/B/dos16/qc.bat rename : lzo/B/dos16/sc.bat => main/lzo/B/dos16/sc.bat rename : lzo/B/dos16/tc.bat => main/lzo/B/dos16/tc.bat rename : lzo/B/dos16/vc.bat => main/lzo/B/dos16/vc.bat rename : lzo/B/dos16/vc_qc.bat => main/lzo/B/dos16/vc_qc.bat rename : lzo/B/dos16/wc.bat => main/lzo/B/dos16/wc.bat rename : lzo/B/dos16/wc.rsp => main/lzo/B/dos16/wc.rsp rename : lzo/B/dos32/bc_pp.bat => main/lzo/B/dos32/bc_pp.bat rename : lzo/B/dos32/dj2.bat => main/lzo/B/dos32/dj2.bat rename : lzo/B/dos32/dj2.opt => main/lzo/B/dos32/dj2.opt rename : lzo/B/dos32/dm.bat => main/lzo/B/dos32/dm.bat rename : lzo/B/dos32/emx.bat => main/lzo/B/dos32/emx.bat rename : lzo/B/dos32/highc.bat => main/lzo/B/dos32/highc.bat rename : lzo/B/dos32/highc.rsp => main/lzo/B/dos32/highc.rsp rename : lzo/B/dos32/ndp.bat => main/lzo/B/dos32/ndp.bat rename : lzo/B/dos32/ndp.rsp => main/lzo/B/dos32/ndp.rsp rename : lzo/B/dos32/sc.bat => main/lzo/B/dos32/sc.bat rename : lzo/B/dos32/wc.bat => main/lzo/B/dos32/wc.bat rename : lzo/B/dos32/zc.bat => main/lzo/B/dos32/zc.bat rename : lzo/B/generic/Makefile => main/lzo/B/generic/Makefile rename : lzo/B/generic/build.sh => main/lzo/B/generic/build.sh rename : lzo/B/generic/build_freestanding.sh => main/lzo/B/generic/build_freestanding.sh rename : lzo/B/generic/build_gcc.sh => main/lzo/B/generic/build_gcc.sh rename : lzo/B/generic/clean.sh => main/lzo/B/generic/clean.sh rename : lzo/B/os2/emx.bat => main/lzo/B/os2/emx.bat rename : lzo/B/os2/wc.bat => main/lzo/B/os2/wc.bat rename : lzo/B/os2/zc.bat => main/lzo/B/os2/zc.bat rename : lzo/B/os2_16/mc.bat => main/lzo/B/os2_16/mc.bat rename : lzo/B/os2_16/wc.bat => main/lzo/B/os2_16/wc.bat rename : lzo/B/prepare.bat => main/lzo/B/prepare.bat rename : lzo/B/src.rsp => main/lzo/B/src.rsp rename : lzo/B/unset.bat => main/lzo/B/unset.bat rename : lzo/B/win16/bc.bat => main/lzo/B/win16/bc.bat rename : lzo/B/win16/dm.bat => main/lzo/B/win16/dm.bat rename : lzo/B/win16/mc.bat => main/lzo/B/win16/mc.bat rename : lzo/B/win16/sc.bat => main/lzo/B/win16/sc.bat rename : lzo/B/win16/vc.bat => main/lzo/B/win16/vc.bat rename : lzo/B/win16/wc.bat => main/lzo/B/win16/wc.bat rename : lzo/B/win32/bc.bat => main/lzo/B/win32/bc.bat rename : lzo/B/win32/bc.rsp => main/lzo/B/win32/bc.rsp rename : lzo/B/win32/cygwin.bat => main/lzo/B/win32/cygwin.bat rename : lzo/B/win32/cygwin.rsp => main/lzo/B/win32/cygwin.rsp rename : lzo/B/win32/dm.bat => main/lzo/B/win32/dm.bat rename : lzo/B/win32/ic.bat => main/lzo/B/win32/ic.bat rename : lzo/B/win32/lccwin32.bat => main/lzo/B/win32/lccwin32.bat rename : lzo/B/win32/mingw.bat => main/lzo/B/win32/mingw.bat rename : lzo/B/win32/mwerks.bat => main/lzo/B/win32/mwerks.bat rename : lzo/B/win32/pellesc.bat => main/lzo/B/win32/pellesc.bat rename : lzo/B/win32/pgi.bat => main/lzo/B/win32/pgi.bat rename : lzo/B/win32/pw32.bat => main/lzo/B/win32/pw32.bat rename : lzo/B/win32/rsxnt.bat => main/lzo/B/win32/rsxnt.bat rename : lzo/B/win32/sc.bat => main/lzo/B/win32/sc.bat rename : lzo/B/win32/vc.bat => main/lzo/B/win32/vc.bat rename : lzo/B/win32/vc.rsp => main/lzo/B/win32/vc.rsp rename : lzo/B/win32/vc_dll.bat => main/lzo/B/win32/vc_dll.bat rename : lzo/B/win32/vc_dll.def => main/lzo/B/win32/vc_dll.def rename : lzo/B/win32/wc.bat => main/lzo/B/win32/wc.bat rename : lzo/B/win32/wc.rsp => main/lzo/B/win32/wc.rsp rename : lzo/B/win64/ic.bat => main/lzo/B/win64/ic.bat rename : lzo/B/win64/ic_dll.bat => main/lzo/B/win64/ic_dll.bat rename : lzo/B/win64/vc.bat => main/lzo/B/win64/vc.bat rename : lzo/B/win64/vc.rsp => main/lzo/B/win64/vc.rsp rename : lzo/B/win64/vc_dll.bat => main/lzo/B/win64/vc_dll.bat rename : lzo/B/win64/vc_dll.def => main/lzo/B/win64/vc_dll.def rename : lzo/BUGS => main/lzo/BUGS rename : lzo/COPYING => main/lzo/COPYING rename : lzo/ChangeLog => main/lzo/ChangeLog rename : lzo/INSTALL => main/lzo/INSTALL rename : lzo/Makefile => main/lzo/Makefile rename : lzo/Makefile.am => main/lzo/Makefile.am rename : lzo/Makefile.in => main/lzo/Makefile.in rename : lzo/NEWS => main/lzo/NEWS rename : lzo/README => main/lzo/README rename : lzo/README.ANDROID => main/lzo/README.ANDROID rename : lzo/THANKS => main/lzo/THANKS rename : lzo/aclocal.m4 => main/lzo/aclocal.m4 rename : lzo/asm/i386/00README.TXT => main/lzo/asm/i386/00README.TXT rename : lzo/asm/i386/obj/coff32/lzo1c_s1.o => main/lzo/asm/i386/obj/coff32/lzo1c_s1.o rename : lzo/asm/i386/obj/coff32/lzo1c_s2.o => main/lzo/asm/i386/obj/coff32/lzo1c_s2.o rename : lzo/asm/i386/obj/coff32/lzo1f_f1.o => main/lzo/asm/i386/obj/coff32/lzo1f_f1.o rename : lzo/asm/i386/obj/coff32/lzo1f_f2.o => main/lzo/asm/i386/obj/coff32/lzo1f_f2.o rename : lzo/asm/i386/obj/coff32/lzo1x_f1.o => main/lzo/asm/i386/obj/coff32/lzo1x_f1.o rename : lzo/asm/i386/obj/coff32/lzo1x_f2.o => main/lzo/asm/i386/obj/coff32/lzo1x_f2.o rename : lzo/asm/i386/obj/coff32/lzo1x_s1.o => main/lzo/asm/i386/obj/coff32/lzo1x_s1.o rename : lzo/asm/i386/obj/coff32/lzo1x_s2.o => main/lzo/asm/i386/obj/coff32/lzo1x_s2.o rename : lzo/asm/i386/obj/coff32/lzo1y_f1.o => main/lzo/asm/i386/obj/coff32/lzo1y_f1.o rename : lzo/asm/i386/obj/coff32/lzo1y_f2.o => main/lzo/asm/i386/obj/coff32/lzo1y_f2.o rename : lzo/asm/i386/obj/coff32/lzo1y_s1.o => main/lzo/asm/i386/obj/coff32/lzo1y_s1.o rename : lzo/asm/i386/obj/coff32/lzo1y_s2.o => main/lzo/asm/i386/obj/coff32/lzo1y_s2.o rename : lzo/asm/i386/obj/elf32/lzo1c_s1.o => main/lzo/asm/i386/obj/elf32/lzo1c_s1.o rename : lzo/asm/i386/obj/elf32/lzo1c_s2.o => main/lzo/asm/i386/obj/elf32/lzo1c_s2.o rename : lzo/asm/i386/obj/elf32/lzo1f_f1.o => main/lzo/asm/i386/obj/elf32/lzo1f_f1.o rename : lzo/asm/i386/obj/elf32/lzo1f_f2.o => main/lzo/asm/i386/obj/elf32/lzo1f_f2.o rename : lzo/asm/i386/obj/elf32/lzo1x_f1.o => main/lzo/asm/i386/obj/elf32/lzo1x_f1.o rename : lzo/asm/i386/obj/elf32/lzo1x_f2.o => main/lzo/asm/i386/obj/elf32/lzo1x_f2.o rename : lzo/asm/i386/obj/elf32/lzo1x_s1.o => main/lzo/asm/i386/obj/elf32/lzo1x_s1.o rename : lzo/asm/i386/obj/elf32/lzo1x_s2.o => main/lzo/asm/i386/obj/elf32/lzo1x_s2.o rename : lzo/asm/i386/obj/elf32/lzo1y_f1.o => main/lzo/asm/i386/obj/elf32/lzo1y_f1.o rename : lzo/asm/i386/obj/elf32/lzo1y_f2.o => main/lzo/asm/i386/obj/elf32/lzo1y_f2.o rename : lzo/asm/i386/obj/elf32/lzo1y_s1.o => main/lzo/asm/i386/obj/elf32/lzo1y_s1.o rename : lzo/asm/i386/obj/elf32/lzo1y_s2.o => main/lzo/asm/i386/obj/elf32/lzo1y_s2.o rename : lzo/asm/i386/obj/omf32/lzo1c_s1.obj => main/lzo/asm/i386/obj/omf32/lzo1c_s1.obj rename : lzo/asm/i386/obj/omf32/lzo1c_s2.obj => main/lzo/asm/i386/obj/omf32/lzo1c_s2.obj rename : lzo/asm/i386/obj/omf32/lzo1f_f1.obj => main/lzo/asm/i386/obj/omf32/lzo1f_f1.obj rename : lzo/asm/i386/obj/omf32/lzo1f_f2.obj => main/lzo/asm/i386/obj/omf32/lzo1f_f2.obj rename : lzo/asm/i386/obj/omf32/lzo1x_f1.obj => main/lzo/asm/i386/obj/omf32/lzo1x_f1.obj rename : lzo/asm/i386/obj/omf32/lzo1x_f2.obj => main/lzo/asm/i386/obj/omf32/lzo1x_f2.obj rename : lzo/asm/i386/obj/omf32/lzo1x_s1.obj => main/lzo/asm/i386/obj/omf32/lzo1x_s1.obj rename : lzo/asm/i386/obj/omf32/lzo1x_s2.obj => main/lzo/asm/i386/obj/omf32/lzo1x_s2.obj rename : lzo/asm/i386/obj/omf32/lzo1y_f1.obj => main/lzo/asm/i386/obj/omf32/lzo1y_f1.obj rename : lzo/asm/i386/obj/omf32/lzo1y_f2.obj => main/lzo/asm/i386/obj/omf32/lzo1y_f2.obj rename : lzo/asm/i386/obj/omf32/lzo1y_s1.obj => main/lzo/asm/i386/obj/omf32/lzo1y_s1.obj rename : lzo/asm/i386/obj/omf32/lzo1y_s2.obj => main/lzo/asm/i386/obj/omf32/lzo1y_s2.obj rename : lzo/asm/i386/obj/win32/lzo1c_s1.obj => main/lzo/asm/i386/obj/win32/lzo1c_s1.obj rename : lzo/asm/i386/obj/win32/lzo1c_s2.obj => main/lzo/asm/i386/obj/win32/lzo1c_s2.obj rename : lzo/asm/i386/obj/win32/lzo1f_f1.obj => main/lzo/asm/i386/obj/win32/lzo1f_f1.obj rename : lzo/asm/i386/obj/win32/lzo1f_f2.obj => main/lzo/asm/i386/obj/win32/lzo1f_f2.obj rename : lzo/asm/i386/obj/win32/lzo1x_f1.obj => main/lzo/asm/i386/obj/win32/lzo1x_f1.obj rename : lzo/asm/i386/obj/win32/lzo1x_f2.obj => main/lzo/asm/i386/obj/win32/lzo1x_f2.obj rename : lzo/asm/i386/obj/win32/lzo1x_s1.obj => main/lzo/asm/i386/obj/win32/lzo1x_s1.obj rename : lzo/asm/i386/obj/win32/lzo1x_s2.obj => main/lzo/asm/i386/obj/win32/lzo1x_s2.obj rename : lzo/asm/i386/obj/win32/lzo1y_f1.obj => main/lzo/asm/i386/obj/win32/lzo1y_f1.obj rename : lzo/asm/i386/obj/win32/lzo1y_f2.obj => main/lzo/asm/i386/obj/win32/lzo1y_f2.obj rename : lzo/asm/i386/obj/win32/lzo1y_s1.obj => main/lzo/asm/i386/obj/win32/lzo1y_s1.obj rename : lzo/asm/i386/obj/win32/lzo1y_s2.obj => main/lzo/asm/i386/obj/win32/lzo1y_s2.obj rename : lzo/asm/i386/src/enter.ash => main/lzo/asm/i386/src/enter.ash rename : lzo/asm/i386/src/leave.ash => main/lzo/asm/i386/src/leave.ash rename : lzo/asm/i386/src/lzo1c_d.ash => main/lzo/asm/i386/src/lzo1c_d.ash rename : lzo/asm/i386/src/lzo1c_s1.S => main/lzo/asm/i386/src/lzo1c_s1.S rename : lzo/asm/i386/src/lzo1c_s2.S => main/lzo/asm/i386/src/lzo1c_s2.S rename : lzo/asm/i386/src/lzo1f_d.ash => main/lzo/asm/i386/src/lzo1f_d.ash rename : lzo/asm/i386/src/lzo1f_f1.S => main/lzo/asm/i386/src/lzo1f_f1.S rename : lzo/asm/i386/src/lzo1f_f2.S => main/lzo/asm/i386/src/lzo1f_f2.S rename : lzo/asm/i386/src/lzo1x_d.ash => main/lzo/asm/i386/src/lzo1x_d.ash rename : lzo/asm/i386/src/lzo1x_f1.S => main/lzo/asm/i386/src/lzo1x_f1.S rename : lzo/asm/i386/src/lzo1x_f2.S => main/lzo/asm/i386/src/lzo1x_f2.S rename : lzo/asm/i386/src/lzo1x_s1.S => main/lzo/asm/i386/src/lzo1x_s1.S rename : lzo/asm/i386/src/lzo1x_s2.S => main/lzo/asm/i386/src/lzo1x_s2.S rename : lzo/asm/i386/src/lzo1y_f1.S => main/lzo/asm/i386/src/lzo1y_f1.S rename : lzo/asm/i386/src/lzo1y_f2.S => main/lzo/asm/i386/src/lzo1y_f2.S rename : lzo/asm/i386/src/lzo1y_s1.S => main/lzo/asm/i386/src/lzo1y_s1.S rename : lzo/asm/i386/src/lzo1y_s2.S => main/lzo/asm/i386/src/lzo1y_s2.S rename : lzo/asm/i386/src/lzo_asm.h => main/lzo/asm/i386/src/lzo_asm.h rename : lzo/asm/i386/src_gas/all/asm_all.S => main/lzo/asm/i386/src_gas/all/asm_all.S rename : lzo/asm/i386/src_gas/asminit.def => main/lzo/asm/i386/src_gas/asminit.def rename : lzo/asm/i386/src_gas/lzo1c_s1.S => main/lzo/asm/i386/src_gas/lzo1c_s1.S rename : lzo/asm/i386/src_gas/lzo1c_s2.S => main/lzo/asm/i386/src_gas/lzo1c_s2.S rename : lzo/asm/i386/src_gas/lzo1f_f1.S => main/lzo/asm/i386/src_gas/lzo1f_f1.S rename : lzo/asm/i386/src_gas/lzo1f_f2.S => main/lzo/asm/i386/src_gas/lzo1f_f2.S rename : lzo/asm/i386/src_gas/lzo1x_f1.S => main/lzo/asm/i386/src_gas/lzo1x_f1.S rename : lzo/asm/i386/src_gas/lzo1x_f2.S => main/lzo/asm/i386/src_gas/lzo1x_f2.S rename : lzo/asm/i386/src_gas/lzo1x_s1.S => main/lzo/asm/i386/src_gas/lzo1x_s1.S rename : lzo/asm/i386/src_gas/lzo1x_s2.S => main/lzo/asm/i386/src_gas/lzo1x_s2.S rename : lzo/asm/i386/src_gas/lzo1y_f1.S => main/lzo/asm/i386/src_gas/lzo1y_f1.S rename : lzo/asm/i386/src_gas/lzo1y_f2.S => main/lzo/asm/i386/src_gas/lzo1y_f2.S rename : lzo/asm/i386/src_gas/lzo1y_s1.S => main/lzo/asm/i386/src_gas/lzo1y_s1.S rename : lzo/asm/i386/src_gas/lzo1y_s2.S => main/lzo/asm/i386/src_gas/lzo1y_s2.S rename : lzo/asm/i386/src_masm/all/asm_all.asm => main/lzo/asm/i386/src_masm/all/asm_all.asm rename : lzo/asm/i386/src_masm/asminit.def => main/lzo/asm/i386/src_masm/asminit.def rename : lzo/asm/i386/src_masm/lzo1c_s1.asm => main/lzo/asm/i386/src_masm/lzo1c_s1.asm rename : lzo/asm/i386/src_masm/lzo1c_s2.asm => main/lzo/asm/i386/src_masm/lzo1c_s2.asm rename : lzo/asm/i386/src_masm/lzo1f_f1.asm => main/lzo/asm/i386/src_masm/lzo1f_f1.asm rename : lzo/asm/i386/src_masm/lzo1f_f2.asm => main/lzo/asm/i386/src_masm/lzo1f_f2.asm rename : lzo/asm/i386/src_masm/lzo1x_f1.asm => main/lzo/asm/i386/src_masm/lzo1x_f1.asm rename : lzo/asm/i386/src_masm/lzo1x_f2.asm => main/lzo/asm/i386/src_masm/lzo1x_f2.asm rename : lzo/asm/i386/src_masm/lzo1x_s1.asm => main/lzo/asm/i386/src_masm/lzo1x_s1.asm rename : lzo/asm/i386/src_masm/lzo1x_s2.asm => main/lzo/asm/i386/src_masm/lzo1x_s2.asm rename : lzo/asm/i386/src_masm/lzo1y_f1.asm => main/lzo/asm/i386/src_masm/lzo1y_f1.asm rename : lzo/asm/i386/src_masm/lzo1y_f2.asm => main/lzo/asm/i386/src_masm/lzo1y_f2.asm rename : lzo/asm/i386/src_masm/lzo1y_s1.asm => main/lzo/asm/i386/src_masm/lzo1y_s1.asm rename : lzo/asm/i386/src_masm/lzo1y_s2.asm => main/lzo/asm/i386/src_masm/lzo1y_s2.asm rename : lzo/asm/i386/src_nasm/all/asm_all.asm => main/lzo/asm/i386/src_nasm/all/asm_all.asm rename : lzo/asm/i386/src_nasm/asminit.def => main/lzo/asm/i386/src_nasm/asminit.def rename : lzo/asm/i386/src_nasm/lzo1c_s1.asm => main/lzo/asm/i386/src_nasm/lzo1c_s1.asm rename : lzo/asm/i386/src_nasm/lzo1c_s2.asm => main/lzo/asm/i386/src_nasm/lzo1c_s2.asm rename : lzo/asm/i386/src_nasm/lzo1f_f1.asm => main/lzo/asm/i386/src_nasm/lzo1f_f1.asm rename : lzo/asm/i386/src_nasm/lzo1f_f2.asm => main/lzo/asm/i386/src_nasm/lzo1f_f2.asm rename : lzo/asm/i386/src_nasm/lzo1x_f1.asm => main/lzo/asm/i386/src_nasm/lzo1x_f1.asm rename : lzo/asm/i386/src_nasm/lzo1x_f2.asm => main/lzo/asm/i386/src_nasm/lzo1x_f2.asm rename : lzo/asm/i386/src_nasm/lzo1x_s1.asm => main/lzo/asm/i386/src_nasm/lzo1x_s1.asm rename : lzo/asm/i386/src_nasm/lzo1x_s2.asm => main/lzo/asm/i386/src_nasm/lzo1x_s2.asm rename : lzo/asm/i386/src_nasm/lzo1y_f1.asm => main/lzo/asm/i386/src_nasm/lzo1y_f1.asm rename : lzo/asm/i386/src_nasm/lzo1y_f2.asm => main/lzo/asm/i386/src_nasm/lzo1y_f2.asm rename : lzo/asm/i386/src_nasm/lzo1y_s1.asm => main/lzo/asm/i386/src_nasm/lzo1y_s1.asm rename : lzo/asm/i386/src_nasm/lzo1y_s2.asm => main/lzo/asm/i386/src_nasm/lzo1y_s2.asm rename : lzo/autoconf/compile => main/lzo/autoconf/compile rename : lzo/autoconf/config.guess => main/lzo/autoconf/config.guess rename : lzo/autoconf/config.rpath => main/lzo/autoconf/config.rpath rename : lzo/autoconf/config.sub => main/lzo/autoconf/config.sub rename : lzo/autoconf/depcomp => main/lzo/autoconf/depcomp rename : lzo/autoconf/install-sh => main/lzo/autoconf/install-sh rename : lzo/autoconf/local.m4 => main/lzo/autoconf/local.m4 rename : lzo/autoconf/ltmain.sh => main/lzo/autoconf/ltmain.sh rename : lzo/autoconf/mdate-sh => main/lzo/autoconf/mdate-sh rename : lzo/autoconf/missing => main/lzo/autoconf/missing rename : lzo/autoconf/mkinstalldirs => main/lzo/autoconf/mkinstalldirs rename : lzo/autoconf/py-compile => main/lzo/autoconf/py-compile rename : lzo/autoconf/shtool => main/lzo/autoconf/shtool rename : lzo/autoconf/ylwrap => main/lzo/autoconf/ylwrap rename : lzo/config.h => main/lzo/config.h rename : lzo/config.hin => main/lzo/config.hin rename : lzo/config.log => main/lzo/config.log rename : lzo/config.status => main/lzo/config.status rename : lzo/configure => main/lzo/configure rename : lzo/configure.ac => main/lzo/configure.ac rename : lzo/doc/LZO.FAQ => main/lzo/doc/LZO.FAQ rename : lzo/doc/LZO.TXT => main/lzo/doc/LZO.TXT rename : lzo/doc/LZOAPI.TXT => main/lzo/doc/LZOAPI.TXT rename : lzo/doc/LZOTEST.TXT => main/lzo/doc/LZOTEST.TXT rename : lzo/examples/.deps/dict.Po => main/lzo/examples/.deps/dict.Po rename : lzo/examples/.deps/lzopack.Po => main/lzo/examples/.deps/lzopack.Po rename : lzo/examples/.deps/overlap.Po => main/lzo/examples/.deps/overlap.Po rename : lzo/examples/.deps/precomp.Po => main/lzo/examples/.deps/precomp.Po rename : lzo/examples/.deps/precomp2.Po => main/lzo/examples/.deps/precomp2.Po rename : lzo/examples/.deps/simple.Po => main/lzo/examples/.deps/simple.Po rename : lzo/examples/Makefile => main/lzo/examples/Makefile rename : lzo/examples/Makefile.am => main/lzo/examples/Makefile.am rename : lzo/examples/Makefile.in => main/lzo/examples/Makefile.in rename : lzo/examples/dict.c => main/lzo/examples/dict.c rename : lzo/examples/lzopack.c => main/lzo/examples/lzopack.c rename : lzo/examples/overlap.c => main/lzo/examples/overlap.c rename : lzo/examples/portab.h => main/lzo/examples/portab.h rename : lzo/examples/portab_a.h => main/lzo/examples/portab_a.h rename : lzo/examples/precomp.c => main/lzo/examples/precomp.c rename : lzo/examples/precomp2.c => main/lzo/examples/precomp2.c rename : lzo/examples/simple.c => main/lzo/examples/simple.c rename : lzo/include/Makefile => main/lzo/include/Makefile rename : lzo/include/Makefile.am => main/lzo/include/Makefile.am rename : lzo/include/Makefile.in => main/lzo/include/Makefile.in rename : lzo/include/lzo/Makefile => main/lzo/include/lzo/Makefile rename : lzo/include/lzo/Makefile.am => main/lzo/include/lzo/Makefile.am rename : lzo/include/lzo/Makefile.in => main/lzo/include/lzo/Makefile.in rename : lzo/include/lzo/lzo1.h => main/lzo/include/lzo/lzo1.h rename : lzo/include/lzo/lzo1a.h => main/lzo/include/lzo/lzo1a.h rename : lzo/include/lzo/lzo1b.h => main/lzo/include/lzo/lzo1b.h rename : lzo/include/lzo/lzo1c.h => main/lzo/include/lzo/lzo1c.h rename : lzo/include/lzo/lzo1f.h => main/lzo/include/lzo/lzo1f.h rename : lzo/include/lzo/lzo1x.h => main/lzo/include/lzo/lzo1x.h rename : lzo/include/lzo/lzo1y.h => main/lzo/include/lzo/lzo1y.h rename : lzo/include/lzo/lzo1z.h => main/lzo/include/lzo/lzo1z.h rename : lzo/include/lzo/lzo2a.h => main/lzo/include/lzo/lzo2a.h rename : lzo/include/lzo/lzo_asm.h => main/lzo/include/lzo/lzo_asm.h rename : lzo/include/lzo/lzoconf.h => main/lzo/include/lzo/lzoconf.h rename : lzo/include/lzo/lzodefs.h => main/lzo/include/lzo/lzodefs.h rename : lzo/include/lzo/lzoutil.h => main/lzo/include/lzo/lzoutil.h rename : lzo/libtool => main/lzo/libtool rename : lzo/lzotest/.deps/lzotest.Po => main/lzo/lzotest/.deps/lzotest.Po rename : lzo/lzotest/Makefile => main/lzo/lzotest/Makefile rename : lzo/lzotest/Makefile.am => main/lzo/lzotest/Makefile.am rename : lzo/lzotest/Makefile.in => main/lzo/lzotest/Makefile.in rename : lzo/lzotest/asm.h => main/lzo/lzotest/asm.h rename : lzo/lzotest/db.h => main/lzo/lzotest/db.h rename : lzo/lzotest/lzotest.c => main/lzo/lzotest/lzotest.c rename : lzo/lzotest/mygetopt.ch => main/lzo/lzotest/mygetopt.ch rename : lzo/lzotest/mygetopt.h => main/lzo/lzotest/mygetopt.h rename : lzo/lzotest/wrap.h => main/lzo/lzotest/wrap.h rename : lzo/lzotest/wrapmisc.h => main/lzo/lzotest/wrapmisc.h rename : lzo/minilzo/.deps/minilzo.Po => main/lzo/minilzo/.deps/minilzo.Po rename : lzo/minilzo/.deps/testmini.Po => main/lzo/minilzo/.deps/testmini.Po rename : lzo/minilzo/Makefile => main/lzo/minilzo/Makefile rename : lzo/minilzo/Makefile.am => main/lzo/minilzo/Makefile.am rename : lzo/minilzo/Makefile.in => main/lzo/minilzo/Makefile.in rename : lzo/minilzo/Makefile.minilzo => main/lzo/minilzo/Makefile.minilzo rename : lzo/minilzo/README.LZO => main/lzo/minilzo/README.LZO rename : lzo/minilzo/minilzo.c => main/lzo/minilzo/minilzo.c rename : lzo/minilzo/minilzo.h => main/lzo/minilzo/minilzo.h rename : lzo/minilzo/testmini.c => main/lzo/minilzo/testmini.c rename : lzo/src/.deps/lzo1.Plo => main/lzo/src/.deps/lzo1.Plo rename : lzo/src/.deps/lzo1_99.Plo => main/lzo/src/.deps/lzo1_99.Plo rename : lzo/src/.deps/lzo1a.Plo => main/lzo/src/.deps/lzo1a.Plo rename : lzo/src/.deps/lzo1a_99.Plo => main/lzo/src/.deps/lzo1a_99.Plo rename : lzo/src/.deps/lzo1b_1.Plo => main/lzo/src/.deps/lzo1b_1.Plo rename : lzo/src/.deps/lzo1b_2.Plo => main/lzo/src/.deps/lzo1b_2.Plo rename : lzo/src/.deps/lzo1b_3.Plo => main/lzo/src/.deps/lzo1b_3.Plo rename : lzo/src/.deps/lzo1b_4.Plo => main/lzo/src/.deps/lzo1b_4.Plo rename : lzo/src/.deps/lzo1b_5.Plo => main/lzo/src/.deps/lzo1b_5.Plo rename : lzo/src/.deps/lzo1b_6.Plo => main/lzo/src/.deps/lzo1b_6.Plo rename : lzo/src/.deps/lzo1b_7.Plo => main/lzo/src/.deps/lzo1b_7.Plo rename : lzo/src/.deps/lzo1b_8.Plo => main/lzo/src/.deps/lzo1b_8.Plo rename : lzo/src/.deps/lzo1b_9.Plo => main/lzo/src/.deps/lzo1b_9.Plo rename : lzo/src/.deps/lzo1b_99.Plo => main/lzo/src/.deps/lzo1b_99.Plo rename : lzo/src/.deps/lzo1b_9x.Plo => main/lzo/src/.deps/lzo1b_9x.Plo rename : lzo/src/.deps/lzo1b_cc.Plo => main/lzo/src/.deps/lzo1b_cc.Plo rename : lzo/src/.deps/lzo1b_d1.Plo => main/lzo/src/.deps/lzo1b_d1.Plo rename : lzo/src/.deps/lzo1b_d2.Plo => main/lzo/src/.deps/lzo1b_d2.Plo rename : lzo/src/.deps/lzo1b_rr.Plo => main/lzo/src/.deps/lzo1b_rr.Plo rename : lzo/src/.deps/lzo1b_xx.Plo => main/lzo/src/.deps/lzo1b_xx.Plo rename : lzo/src/.deps/lzo1c_1.Plo => main/lzo/src/.deps/lzo1c_1.Plo rename : lzo/src/.deps/lzo1c_2.Plo => main/lzo/src/.deps/lzo1c_2.Plo rename : lzo/src/.deps/lzo1c_3.Plo => main/lzo/src/.deps/lzo1c_3.Plo rename : lzo/src/.deps/lzo1c_4.Plo => main/lzo/src/.deps/lzo1c_4.Plo rename : lzo/src/.deps/lzo1c_5.Plo => main/lzo/src/.deps/lzo1c_5.Plo rename : lzo/src/.deps/lzo1c_6.Plo => main/lzo/src/.deps/lzo1c_6.Plo rename : lzo/src/.deps/lzo1c_7.Plo => main/lzo/src/.deps/lzo1c_7.Plo rename : lzo/src/.deps/lzo1c_8.Plo => main/lzo/src/.deps/lzo1c_8.Plo rename : lzo/src/.deps/lzo1c_9.Plo => main/lzo/src/.deps/lzo1c_9.Plo rename : lzo/src/.deps/lzo1c_99.Plo => main/lzo/src/.deps/lzo1c_99.Plo rename : lzo/src/.deps/lzo1c_9x.Plo => main/lzo/src/.deps/lzo1c_9x.Plo rename : lzo/src/.deps/lzo1c_cc.Plo => main/lzo/src/.deps/lzo1c_cc.Plo rename : lzo/src/.deps/lzo1c_d1.Plo => main/lzo/src/.deps/lzo1c_d1.Plo rename : lzo/src/.deps/lzo1c_d2.Plo => main/lzo/src/.deps/lzo1c_d2.Plo rename : lzo/src/.deps/lzo1c_rr.Plo => main/lzo/src/.deps/lzo1c_rr.Plo rename : lzo/src/.deps/lzo1c_xx.Plo => main/lzo/src/.deps/lzo1c_xx.Plo rename : lzo/src/.deps/lzo1f_1.Plo => main/lzo/src/.deps/lzo1f_1.Plo rename : lzo/src/.deps/lzo1f_9x.Plo => main/lzo/src/.deps/lzo1f_9x.Plo rename : lzo/src/.deps/lzo1f_d1.Plo => main/lzo/src/.deps/lzo1f_d1.Plo rename : lzo/src/.deps/lzo1f_d2.Plo => main/lzo/src/.deps/lzo1f_d2.Plo rename : lzo/src/.deps/lzo1x_1.Plo => main/lzo/src/.deps/lzo1x_1.Plo rename : lzo/src/.deps/lzo1x_1k.Plo => main/lzo/src/.deps/lzo1x_1k.Plo rename : lzo/src/.deps/lzo1x_1l.Plo => main/lzo/src/.deps/lzo1x_1l.Plo rename : lzo/src/.deps/lzo1x_1o.Plo => main/lzo/src/.deps/lzo1x_1o.Plo rename : lzo/src/.deps/lzo1x_9x.Plo => main/lzo/src/.deps/lzo1x_9x.Plo rename : lzo/src/.deps/lzo1x_d1.Plo => main/lzo/src/.deps/lzo1x_d1.Plo rename : lzo/src/.deps/lzo1x_d2.Plo => main/lzo/src/.deps/lzo1x_d2.Plo rename : lzo/src/.deps/lzo1x_d3.Plo => main/lzo/src/.deps/lzo1x_d3.Plo rename : lzo/src/.deps/lzo1x_o.Plo => main/lzo/src/.deps/lzo1x_o.Plo rename : lzo/src/.deps/lzo1y_1.Plo => main/lzo/src/.deps/lzo1y_1.Plo rename : lzo/src/.deps/lzo1y_9x.Plo => main/lzo/src/.deps/lzo1y_9x.Plo rename : lzo/src/.deps/lzo1y_d1.Plo => main/lzo/src/.deps/lzo1y_d1.Plo rename : lzo/src/.deps/lzo1y_d2.Plo => main/lzo/src/.deps/lzo1y_d2.Plo rename : lzo/src/.deps/lzo1y_d3.Plo => main/lzo/src/.deps/lzo1y_d3.Plo rename : lzo/src/.deps/lzo1y_o.Plo => main/lzo/src/.deps/lzo1y_o.Plo rename : lzo/src/.deps/lzo1z_9x.Plo => main/lzo/src/.deps/lzo1z_9x.Plo rename : lzo/src/.deps/lzo1z_d1.Plo => main/lzo/src/.deps/lzo1z_d1.Plo rename : lzo/src/.deps/lzo1z_d2.Plo => main/lzo/src/.deps/lzo1z_d2.Plo rename : lzo/src/.deps/lzo1z_d3.Plo => main/lzo/src/.deps/lzo1z_d3.Plo rename : lzo/src/.deps/lzo2a_9x.Plo => main/lzo/src/.deps/lzo2a_9x.Plo rename : lzo/src/.deps/lzo2a_d1.Plo => main/lzo/src/.deps/lzo2a_d1.Plo rename : lzo/src/.deps/lzo2a_d2.Plo => main/lzo/src/.deps/lzo2a_d2.Plo rename : lzo/src/.deps/lzo_crc.Plo => main/lzo/src/.deps/lzo_crc.Plo rename : lzo/src/.deps/lzo_init.Plo => main/lzo/src/.deps/lzo_init.Plo rename : lzo/src/.deps/lzo_ptr.Plo => main/lzo/src/.deps/lzo_ptr.Plo rename : lzo/src/.deps/lzo_str.Plo => main/lzo/src/.deps/lzo_str.Plo rename : lzo/src/.deps/lzo_util.Plo => main/lzo/src/.deps/lzo_util.Plo rename : lzo/src/Makefile => main/lzo/src/Makefile rename : lzo/src/Makefile.am => main/lzo/src/Makefile.am rename : lzo/src/Makefile.in => main/lzo/src/Makefile.in rename : lzo/src/compr1b.h => main/lzo/src/compr1b.h rename : lzo/src/compr1c.h => main/lzo/src/compr1c.h rename : lzo/src/config1.h => main/lzo/src/config1.h rename : lzo/src/config1a.h => main/lzo/src/config1a.h rename : lzo/src/config1b.h => main/lzo/src/config1b.h rename : lzo/src/config1c.h => main/lzo/src/config1c.h rename : lzo/src/config1f.h => main/lzo/src/config1f.h rename : lzo/src/config1x.h => main/lzo/src/config1x.h rename : lzo/src/config1y.h => main/lzo/src/config1y.h rename : lzo/src/config1z.h => main/lzo/src/config1z.h rename : lzo/src/config2a.h => main/lzo/src/config2a.h rename : lzo/src/lzo1.c => main/lzo/src/lzo1.c rename : lzo/src/lzo1_99.c => main/lzo/src/lzo1_99.c rename : lzo/src/lzo1_cm.ch => main/lzo/src/lzo1_cm.ch rename : lzo/src/lzo1_d.ch => main/lzo/src/lzo1_d.ch rename : lzo/src/lzo1a.c => main/lzo/src/lzo1a.c rename : lzo/src/lzo1a_99.c => main/lzo/src/lzo1a_99.c rename : lzo/src/lzo1a_cm.ch => main/lzo/src/lzo1a_cm.ch rename : lzo/src/lzo1a_cr.ch => main/lzo/src/lzo1a_cr.ch rename : lzo/src/lzo1a_de.h => main/lzo/src/lzo1a_de.h rename : lzo/src/lzo1b_1.c => main/lzo/src/lzo1b_1.c rename : lzo/src/lzo1b_2.c => main/lzo/src/lzo1b_2.c rename : lzo/src/lzo1b_3.c => main/lzo/src/lzo1b_3.c rename : lzo/src/lzo1b_4.c => main/lzo/src/lzo1b_4.c rename : lzo/src/lzo1b_5.c => main/lzo/src/lzo1b_5.c rename : lzo/src/lzo1b_6.c => main/lzo/src/lzo1b_6.c rename : lzo/src/lzo1b_7.c => main/lzo/src/lzo1b_7.c rename : lzo/src/lzo1b_8.c => main/lzo/src/lzo1b_8.c rename : lzo/src/lzo1b_9.c => main/lzo/src/lzo1b_9.c rename : lzo/src/lzo1b_99.c => main/lzo/src/lzo1b_99.c rename : lzo/src/lzo1b_9x.c => main/lzo/src/lzo1b_9x.c rename : lzo/src/lzo1b_c.ch => main/lzo/src/lzo1b_c.ch rename : lzo/src/lzo1b_cc.c => main/lzo/src/lzo1b_cc.c rename : lzo/src/lzo1b_cc.h => main/lzo/src/lzo1b_cc.h rename : lzo/src/lzo1b_cm.ch => main/lzo/src/lzo1b_cm.ch rename : lzo/src/lzo1b_cr.ch => main/lzo/src/lzo1b_cr.ch rename : lzo/src/lzo1b_d.ch => main/lzo/src/lzo1b_d.ch rename : lzo/src/lzo1b_d1.c => main/lzo/src/lzo1b_d1.c rename : lzo/src/lzo1b_d2.c => main/lzo/src/lzo1b_d2.c rename : lzo/src/lzo1b_de.h => main/lzo/src/lzo1b_de.h rename : lzo/src/lzo1b_r.ch => main/lzo/src/lzo1b_r.ch rename : lzo/src/lzo1b_rr.c => main/lzo/src/lzo1b_rr.c rename : lzo/src/lzo1b_sm.ch => main/lzo/src/lzo1b_sm.ch rename : lzo/src/lzo1b_tm.ch => main/lzo/src/lzo1b_tm.ch rename : lzo/src/lzo1b_xx.c => main/lzo/src/lzo1b_xx.c rename : lzo/src/lzo1c_1.c => main/lzo/src/lzo1c_1.c rename : lzo/src/lzo1c_2.c => main/lzo/src/lzo1c_2.c rename : lzo/src/lzo1c_3.c => main/lzo/src/lzo1c_3.c rename : lzo/src/lzo1c_4.c => main/lzo/src/lzo1c_4.c rename : lzo/src/lzo1c_5.c => main/lzo/src/lzo1c_5.c rename : lzo/src/lzo1c_6.c => main/lzo/src/lzo1c_6.c rename : lzo/src/lzo1c_7.c => main/lzo/src/lzo1c_7.c rename : lzo/src/lzo1c_8.c => main/lzo/src/lzo1c_8.c rename : lzo/src/lzo1c_9.c => main/lzo/src/lzo1c_9.c rename : lzo/src/lzo1c_99.c => main/lzo/src/lzo1c_99.c rename : lzo/src/lzo1c_9x.c => main/lzo/src/lzo1c_9x.c rename : lzo/src/lzo1c_cc.c => main/lzo/src/lzo1c_cc.c rename : lzo/src/lzo1c_cc.h => main/lzo/src/lzo1c_cc.h rename : lzo/src/lzo1c_d1.c => main/lzo/src/lzo1c_d1.c rename : lzo/src/lzo1c_d2.c => main/lzo/src/lzo1c_d2.c rename : lzo/src/lzo1c_rr.c => main/lzo/src/lzo1c_rr.c rename : lzo/src/lzo1c_xx.c => main/lzo/src/lzo1c_xx.c rename : lzo/src/lzo1f_1.c => main/lzo/src/lzo1f_1.c rename : lzo/src/lzo1f_9x.c => main/lzo/src/lzo1f_9x.c rename : lzo/src/lzo1f_d.ch => main/lzo/src/lzo1f_d.ch rename : lzo/src/lzo1f_d1.c => main/lzo/src/lzo1f_d1.c rename : lzo/src/lzo1f_d2.c => main/lzo/src/lzo1f_d2.c rename : lzo/src/lzo1x_1.c => main/lzo/src/lzo1x_1.c rename : lzo/src/lzo1x_1k.c => main/lzo/src/lzo1x_1k.c rename : lzo/src/lzo1x_1l.c => main/lzo/src/lzo1x_1l.c rename : lzo/src/lzo1x_1o.c => main/lzo/src/lzo1x_1o.c rename : lzo/src/lzo1x_9x.c => main/lzo/src/lzo1x_9x.c rename : lzo/src/lzo1x_c.ch => main/lzo/src/lzo1x_c.ch rename : lzo/src/lzo1x_d.ch => main/lzo/src/lzo1x_d.ch rename : lzo/src/lzo1x_d1.c => main/lzo/src/lzo1x_d1.c rename : lzo/src/lzo1x_d2.c => main/lzo/src/lzo1x_d2.c rename : lzo/src/lzo1x_d3.c => main/lzo/src/lzo1x_d3.c rename : lzo/src/lzo1x_o.c => main/lzo/src/lzo1x_o.c rename : lzo/src/lzo1x_oo.ch => main/lzo/src/lzo1x_oo.ch rename : lzo/src/lzo1y_1.c => main/lzo/src/lzo1y_1.c rename : lzo/src/lzo1y_9x.c => main/lzo/src/lzo1y_9x.c rename : lzo/src/lzo1y_d1.c => main/lzo/src/lzo1y_d1.c rename : lzo/src/lzo1y_d2.c => main/lzo/src/lzo1y_d2.c rename : lzo/src/lzo1y_d3.c => main/lzo/src/lzo1y_d3.c rename : lzo/src/lzo1y_o.c => main/lzo/src/lzo1y_o.c rename : lzo/src/lzo1z_9x.c => main/lzo/src/lzo1z_9x.c rename : lzo/src/lzo1z_d1.c => main/lzo/src/lzo1z_d1.c rename : lzo/src/lzo1z_d2.c => main/lzo/src/lzo1z_d2.c rename : lzo/src/lzo1z_d3.c => main/lzo/src/lzo1z_d3.c rename : lzo/src/lzo2a_9x.c => main/lzo/src/lzo2a_9x.c rename : lzo/src/lzo2a_d.ch => main/lzo/src/lzo2a_d.ch rename : lzo/src/lzo2a_d1.c => main/lzo/src/lzo2a_d1.c rename : lzo/src/lzo2a_d2.c => main/lzo/src/lzo2a_d2.c rename : lzo/src/lzo_conf.h => main/lzo/src/lzo_conf.h rename : lzo/src/lzo_crc.c => main/lzo/src/lzo_crc.c rename : lzo/src/lzo_dict.h => main/lzo/src/lzo_dict.h rename : lzo/src/lzo_dll.ch => main/lzo/src/lzo_dll.ch rename : lzo/src/lzo_func.ch => main/lzo/src/lzo_func.ch rename : lzo/src/lzo_init.c => main/lzo/src/lzo_init.c rename : lzo/src/lzo_mchw.ch => main/lzo/src/lzo_mchw.ch rename : lzo/src/lzo_ptr.c => main/lzo/src/lzo_ptr.c rename : lzo/src/lzo_ptr.h => main/lzo/src/lzo_ptr.h rename : lzo/src/lzo_str.c => main/lzo/src/lzo_str.c rename : lzo/src/lzo_swd.ch => main/lzo/src/lzo_swd.ch rename : lzo/src/lzo_util.c => main/lzo/src/lzo_util.c rename : lzo/src/miniacc.h => main/lzo/src/miniacc.h rename : lzo/src/stats1a.h => main/lzo/src/stats1a.h rename : lzo/src/stats1b.h => main/lzo/src/stats1b.h rename : lzo/src/stats1c.h => main/lzo/src/stats1c.h rename : lzo/stamp-h1 => main/lzo/stamp-h1 rename : lzo/tests/.deps/align.Po => main/lzo/tests/.deps/align.Po rename : lzo/tests/.deps/chksum.Po => main/lzo/tests/.deps/chksum.Po rename : lzo/tests/.deps/promote.Po => main/lzo/tests/.deps/promote.Po rename : lzo/tests/.deps/sizes.Po => main/lzo/tests/.deps/sizes.Po rename : lzo/tests/Makefile => main/lzo/tests/Makefile rename : lzo/tests/Makefile.am => main/lzo/tests/Makefile.am rename : lzo/tests/Makefile.in => main/lzo/tests/Makefile.in rename : lzo/tests/align.c => main/lzo/tests/align.c rename : lzo/tests/chksum.c => main/lzo/tests/chksum.c rename : lzo/tests/promote.c => main/lzo/tests/promote.c rename : lzo/tests/sizes.c => main/lzo/tests/sizes.c rename : lzo/util/check.sh => main/lzo/util/check.sh rename : lzo/util/checkasm.sh => main/lzo/util/checkasm.sh rename : lzo/util/notime.pl => main/lzo/util/notime.pl rename : lzo/util/overlap.sh => main/lzo/util/overlap.sh rename : lzo/util/shortf.pl => main/lzo/util/shortf.pl rename : lzo/util/table.pl => main/lzo/util/table.pl rename : lzo/util/uncompr.pl => main/lzo/util/uncompr.pl rename : openssl/Android.mk => main/openssl/Android.mk rename : openssl/CleanSpec.mk => main/openssl/CleanSpec.mk rename : openssl/MODULE_LICENSE_BSD_LIKE => main/openssl/MODULE_LICENSE_BSD_LIKE rename : openssl/NOTICE => main/openssl/NOTICE rename : openssl/README.android => main/openssl/README.android rename : openssl/ThirdPartyProject.prop => main/openssl/ThirdPartyProject.prop rename : openssl/android-config.mk => main/openssl/android-config.mk rename : openssl/android.testssl/CAss.cnf => main/openssl/android.testssl/CAss.cnf rename : openssl/android.testssl/Uss.cnf => main/openssl/android.testssl/Uss.cnf rename : openssl/android.testssl/server2.pem => main/openssl/android.testssl/server2.pem rename : openssl/android.testssl/testssl => main/openssl/android.testssl/testssl rename : openssl/android.testssl/testssl.sh => main/openssl/android.testssl/testssl.sh rename : openssl/apps/Android.mk => main/openssl/apps/Android.mk rename : openssl/apps/CA.pl => main/openssl/apps/CA.pl rename : openssl/apps/CA.pl.in => main/openssl/apps/CA.pl.in rename : openssl/apps/CA.sh => main/openssl/apps/CA.sh rename : openssl/apps/app_rand.c => main/openssl/apps/app_rand.c rename : openssl/apps/apps.c => main/openssl/apps/apps.c rename : openssl/apps/apps.h => main/openssl/apps/apps.h rename : openssl/apps/asn1pars.c => main/openssl/apps/asn1pars.c rename : openssl/apps/ca-cert.srl => main/openssl/apps/ca-cert.srl rename : openssl/apps/ca-key.pem => main/openssl/apps/ca-key.pem rename : openssl/apps/ca-req.pem => main/openssl/apps/ca-req.pem rename : openssl/apps/ca.c => main/openssl/apps/ca.c rename : openssl/apps/cert.pem => main/openssl/apps/cert.pem rename : openssl/apps/ciphers.c => main/openssl/apps/ciphers.c rename : openssl/apps/client.pem => main/openssl/apps/client.pem rename : openssl/apps/cms.c => main/openssl/apps/cms.c rename : openssl/apps/crl.c => main/openssl/apps/crl.c rename : openssl/apps/crl2p7.c => main/openssl/apps/crl2p7.c rename : openssl/apps/dgst.c => main/openssl/apps/dgst.c rename : openssl/apps/dh.c => main/openssl/apps/dh.c rename : openssl/apps/dh1024.pem => main/openssl/apps/dh1024.pem rename : openssl/apps/dh2048.pem => main/openssl/apps/dh2048.pem rename : openssl/apps/dh4096.pem => main/openssl/apps/dh4096.pem rename : openssl/apps/dh512.pem => main/openssl/apps/dh512.pem rename : openssl/apps/dhparam.c => main/openssl/apps/dhparam.c rename : openssl/apps/dsa-ca.pem => main/openssl/apps/dsa-ca.pem rename : openssl/apps/dsa-pca.pem => main/openssl/apps/dsa-pca.pem rename : openssl/apps/dsa.c => main/openssl/apps/dsa.c rename : openssl/apps/dsa1024.pem => main/openssl/apps/dsa1024.pem rename : openssl/apps/dsa512.pem => main/openssl/apps/dsa512.pem rename : openssl/apps/dsap.pem => main/openssl/apps/dsap.pem rename : openssl/apps/dsaparam.c => main/openssl/apps/dsaparam.c rename : openssl/apps/ec.c => main/openssl/apps/ec.c rename : openssl/apps/ecparam.c => main/openssl/apps/ecparam.c rename : openssl/apps/enc.c => main/openssl/apps/enc.c rename : openssl/apps/engine.c => main/openssl/apps/engine.c rename : openssl/apps/errstr.c => main/openssl/apps/errstr.c rename : openssl/apps/gendh.c => main/openssl/apps/gendh.c rename : openssl/apps/gendsa.c => main/openssl/apps/gendsa.c rename : openssl/apps/genpkey.c => main/openssl/apps/genpkey.c rename : openssl/apps/genrsa.c => main/openssl/apps/genrsa.c rename : openssl/apps/md4.c => main/openssl/apps/md4.c rename : openssl/apps/nseq.c => main/openssl/apps/nseq.c rename : openssl/apps/ocsp.c => main/openssl/apps/ocsp.c rename : openssl/apps/oid.cnf => main/openssl/apps/oid.cnf rename : openssl/apps/openssl.c => main/openssl/apps/openssl.c rename : openssl/apps/openssl.cnf => main/openssl/apps/openssl.cnf rename : openssl/apps/passwd.c => main/openssl/apps/passwd.c rename : openssl/apps/pca-cert.srl => main/openssl/apps/pca-cert.srl rename : openssl/apps/pca-key.pem => main/openssl/apps/pca-key.pem rename : openssl/apps/pca-req.pem => main/openssl/apps/pca-req.pem rename : openssl/apps/pkcs12.c => main/openssl/apps/pkcs12.c rename : openssl/apps/pkcs7.c => main/openssl/apps/pkcs7.c rename : openssl/apps/pkcs8.c => main/openssl/apps/pkcs8.c rename : openssl/apps/pkey.c => main/openssl/apps/pkey.c rename : openssl/apps/pkeyparam.c => main/openssl/apps/pkeyparam.c rename : openssl/apps/pkeyutl.c => main/openssl/apps/pkeyutl.c rename : openssl/apps/prime.c => main/openssl/apps/prime.c rename : openssl/apps/privkey.pem => main/openssl/apps/privkey.pem rename : openssl/apps/progs.h => main/openssl/apps/progs.h rename : openssl/apps/progs.pl => main/openssl/apps/progs.pl rename : openssl/apps/rand.c => main/openssl/apps/rand.c rename : openssl/apps/req.c => main/openssl/apps/req.c rename : openssl/apps/req.pem => main/openssl/apps/req.pem rename : openssl/apps/rsa.c => main/openssl/apps/rsa.c rename : openssl/apps/rsa8192.pem => main/openssl/apps/rsa8192.pem rename : openssl/apps/rsautl.c => main/openssl/apps/rsautl.c rename : openssl/apps/s1024key.pem => main/openssl/apps/s1024key.pem rename : openssl/apps/s1024req.pem => main/openssl/apps/s1024req.pem rename : openssl/apps/s512-key.pem => main/openssl/apps/s512-key.pem rename : openssl/apps/s512-req.pem => main/openssl/apps/s512-req.pem rename : openssl/apps/s_apps.h => main/openssl/apps/s_apps.h rename : openssl/apps/s_cb.c => main/openssl/apps/s_cb.c rename : openssl/apps/s_client.c => main/openssl/apps/s_client.c rename : openssl/apps/s_server.c => main/openssl/apps/s_server.c rename : openssl/apps/s_socket.c => main/openssl/apps/s_socket.c rename : openssl/apps/s_time.c => main/openssl/apps/s_time.c rename : openssl/apps/server.pem => main/openssl/apps/server.pem rename : openssl/apps/server.srl => main/openssl/apps/server.srl rename : openssl/apps/server2.pem => main/openssl/apps/server2.pem rename : openssl/apps/sess_id.c => main/openssl/apps/sess_id.c rename : openssl/apps/smime.c => main/openssl/apps/smime.c rename : openssl/apps/speed.c => main/openssl/apps/speed.c rename : openssl/apps/spkac.c => main/openssl/apps/spkac.c rename : openssl/apps/testCA.pem => main/openssl/apps/testCA.pem rename : openssl/apps/testdsa.h => main/openssl/apps/testdsa.h rename : openssl/apps/testrsa.h => main/openssl/apps/testrsa.h rename : openssl/apps/timeouts.h => main/openssl/apps/timeouts.h rename : openssl/apps/verify.c => main/openssl/apps/verify.c rename : openssl/apps/version.c => main/openssl/apps/version.c rename : openssl/apps/winrand.c => main/openssl/apps/winrand.c rename : openssl/apps/x509.c => main/openssl/apps/x509.c rename : openssl/crypto/Android.mk => main/openssl/crypto/Android.mk rename : openssl/crypto/LPdir_nyi.c => main/openssl/crypto/LPdir_nyi.c rename : openssl/crypto/LPdir_unix.c => main/openssl/crypto/LPdir_unix.c rename : openssl/crypto/LPdir_win.c => main/openssl/crypto/LPdir_win.c rename : openssl/crypto/LPdir_wince.c => main/openssl/crypto/LPdir_wince.c rename : openssl/crypto/aes/README => main/openssl/crypto/aes/README rename : openssl/crypto/aes/aes.h => main/openssl/crypto/aes/aes.h rename : openssl/crypto/aes/aes_cbc.c => main/openssl/crypto/aes/aes_cbc.c rename : openssl/crypto/aes/aes_cfb.c => main/openssl/crypto/aes/aes_cfb.c rename : openssl/crypto/aes/aes_core.c => main/openssl/crypto/aes/aes_core.c rename : openssl/crypto/aes/aes_ctr.c => main/openssl/crypto/aes/aes_ctr.c rename : openssl/crypto/aes/aes_ecb.c => main/openssl/crypto/aes/aes_ecb.c rename : openssl/crypto/aes/aes_ige.c => main/openssl/crypto/aes/aes_ige.c rename : openssl/crypto/aes/aes_locl.h => main/openssl/crypto/aes/aes_locl.h rename : openssl/crypto/aes/aes_misc.c => main/openssl/crypto/aes/aes_misc.c rename : openssl/crypto/aes/aes_ofb.c => main/openssl/crypto/aes/aes_ofb.c rename : openssl/crypto/aes/aes_wrap.c => main/openssl/crypto/aes/aes_wrap.c rename : openssl/crypto/aes/aes_x86core.c => main/openssl/crypto/aes/aes_x86core.c rename : openssl/crypto/aes/asm/aes-586.pl => main/openssl/crypto/aes/asm/aes-586.pl rename : openssl/crypto/aes/asm/aes-armv4.pl => main/openssl/crypto/aes/asm/aes-armv4.pl rename : openssl/crypto/aes/asm/aes-armv4.s => main/openssl/crypto/aes/asm/aes-armv4.s rename : openssl/crypto/aes/asm/aes-ia64.S => main/openssl/crypto/aes/asm/aes-ia64.S rename : openssl/crypto/aes/asm/aes-ppc.pl => main/openssl/crypto/aes/asm/aes-ppc.pl rename : openssl/crypto/aes/asm/aes-s390x.pl => main/openssl/crypto/aes/asm/aes-s390x.pl rename : openssl/crypto/aes/asm/aes-sparcv9.pl => main/openssl/crypto/aes/asm/aes-sparcv9.pl rename : openssl/crypto/aes/asm/aes-x86_64.pl => main/openssl/crypto/aes/asm/aes-x86_64.pl rename : openssl/crypto/alphacpuid.pl => main/openssl/crypto/alphacpuid.pl rename : openssl/crypto/asn1/a_bitstr.c => main/openssl/crypto/asn1/a_bitstr.c rename : openssl/crypto/asn1/a_bool.c => main/openssl/crypto/asn1/a_bool.c rename : openssl/crypto/asn1/a_bytes.c => main/openssl/crypto/asn1/a_bytes.c rename : openssl/crypto/asn1/a_d2i_fp.c => main/openssl/crypto/asn1/a_d2i_fp.c rename : openssl/crypto/asn1/a_digest.c => main/openssl/crypto/asn1/a_digest.c rename : openssl/crypto/asn1/a_dup.c => main/openssl/crypto/asn1/a_dup.c rename : openssl/crypto/asn1/a_enum.c => main/openssl/crypto/asn1/a_enum.c rename : openssl/crypto/asn1/a_gentm.c => main/openssl/crypto/asn1/a_gentm.c rename : openssl/crypto/asn1/a_i2d_fp.c => main/openssl/crypto/asn1/a_i2d_fp.c rename : openssl/crypto/asn1/a_int.c => main/openssl/crypto/asn1/a_int.c rename : openssl/crypto/asn1/a_mbstr.c => main/openssl/crypto/asn1/a_mbstr.c rename : openssl/crypto/asn1/a_object.c => main/openssl/crypto/asn1/a_object.c rename : openssl/crypto/asn1/a_octet.c => main/openssl/crypto/asn1/a_octet.c rename : openssl/crypto/asn1/a_print.c => main/openssl/crypto/asn1/a_print.c rename : openssl/crypto/asn1/a_set.c => main/openssl/crypto/asn1/a_set.c rename : openssl/crypto/asn1/a_sign.c => main/openssl/crypto/asn1/a_sign.c rename : openssl/crypto/asn1/a_strex.c => main/openssl/crypto/asn1/a_strex.c rename : openssl/crypto/asn1/a_strnid.c => main/openssl/crypto/asn1/a_strnid.c rename : openssl/crypto/asn1/a_time.c => main/openssl/crypto/asn1/a_time.c rename : openssl/crypto/asn1/a_type.c => main/openssl/crypto/asn1/a_type.c rename : openssl/crypto/asn1/a_utctm.c => main/openssl/crypto/asn1/a_utctm.c rename : openssl/crypto/asn1/a_utf8.c => main/openssl/crypto/asn1/a_utf8.c rename : openssl/crypto/asn1/a_verify.c => main/openssl/crypto/asn1/a_verify.c rename : openssl/crypto/asn1/ameth_lib.c => main/openssl/crypto/asn1/ameth_lib.c rename : openssl/crypto/asn1/asn1.h => main/openssl/crypto/asn1/asn1.h rename : openssl/crypto/asn1/asn1_err.c => main/openssl/crypto/asn1/asn1_err.c rename : openssl/crypto/asn1/asn1_gen.c => main/openssl/crypto/asn1/asn1_gen.c rename : openssl/crypto/asn1/asn1_lib.c => main/openssl/crypto/asn1/asn1_lib.c rename : openssl/crypto/asn1/asn1_locl.h => main/openssl/crypto/asn1/asn1_locl.h rename : openssl/crypto/asn1/asn1_mac.h => main/openssl/crypto/asn1/asn1_mac.h rename : openssl/crypto/asn1/asn1_par.c => main/openssl/crypto/asn1/asn1_par.c rename : openssl/crypto/asn1/asn1t.h => main/openssl/crypto/asn1/asn1t.h rename : openssl/crypto/asn1/asn_mime.c => main/openssl/crypto/asn1/asn_mime.c rename : openssl/crypto/asn1/asn_moid.c => main/openssl/crypto/asn1/asn_moid.c rename : openssl/crypto/asn1/asn_pack.c => main/openssl/crypto/asn1/asn_pack.c rename : openssl/crypto/asn1/bio_asn1.c => main/openssl/crypto/asn1/bio_asn1.c rename : openssl/crypto/asn1/bio_ndef.c => main/openssl/crypto/asn1/bio_ndef.c rename : openssl/crypto/asn1/charmap.h => main/openssl/crypto/asn1/charmap.h rename : openssl/crypto/asn1/charmap.pl => main/openssl/crypto/asn1/charmap.pl rename : openssl/crypto/asn1/d2i_pr.c => main/openssl/crypto/asn1/d2i_pr.c rename : openssl/crypto/asn1/d2i_pu.c => main/openssl/crypto/asn1/d2i_pu.c rename : openssl/crypto/asn1/evp_asn1.c => main/openssl/crypto/asn1/evp_asn1.c rename : openssl/crypto/asn1/f_enum.c => main/openssl/crypto/asn1/f_enum.c rename : openssl/crypto/asn1/f_int.c => main/openssl/crypto/asn1/f_int.c rename : openssl/crypto/asn1/f_string.c => main/openssl/crypto/asn1/f_string.c rename : openssl/crypto/asn1/i2d_pr.c => main/openssl/crypto/asn1/i2d_pr.c rename : openssl/crypto/asn1/i2d_pu.c => main/openssl/crypto/asn1/i2d_pu.c rename : openssl/crypto/asn1/n_pkey.c => main/openssl/crypto/asn1/n_pkey.c rename : openssl/crypto/asn1/nsseq.c => main/openssl/crypto/asn1/nsseq.c rename : openssl/crypto/asn1/p5_pbe.c => main/openssl/crypto/asn1/p5_pbe.c rename : openssl/crypto/asn1/p5_pbev2.c => main/openssl/crypto/asn1/p5_pbev2.c rename : openssl/crypto/asn1/p8_pkey.c => main/openssl/crypto/asn1/p8_pkey.c rename : openssl/crypto/asn1/t_bitst.c => main/openssl/crypto/asn1/t_bitst.c rename : openssl/crypto/asn1/t_crl.c => main/openssl/crypto/asn1/t_crl.c rename : openssl/crypto/asn1/t_pkey.c => main/openssl/crypto/asn1/t_pkey.c rename : openssl/crypto/asn1/t_req.c => main/openssl/crypto/asn1/t_req.c rename : openssl/crypto/asn1/t_spki.c => main/openssl/crypto/asn1/t_spki.c rename : openssl/crypto/asn1/t_x509.c => main/openssl/crypto/asn1/t_x509.c rename : openssl/crypto/asn1/t_x509a.c => main/openssl/crypto/asn1/t_x509a.c rename : openssl/crypto/asn1/tasn_dec.c => main/openssl/crypto/asn1/tasn_dec.c rename : openssl/crypto/asn1/tasn_enc.c => main/openssl/crypto/asn1/tasn_enc.c rename : openssl/crypto/asn1/tasn_fre.c => main/openssl/crypto/asn1/tasn_fre.c rename : openssl/crypto/asn1/tasn_new.c => main/openssl/crypto/asn1/tasn_new.c rename : openssl/crypto/asn1/tasn_prn.c => main/openssl/crypto/asn1/tasn_prn.c rename : openssl/crypto/asn1/tasn_typ.c => main/openssl/crypto/asn1/tasn_typ.c rename : openssl/crypto/asn1/tasn_utl.c => main/openssl/crypto/asn1/tasn_utl.c rename : openssl/crypto/asn1/x_algor.c => main/openssl/crypto/asn1/x_algor.c rename : openssl/crypto/asn1/x_attrib.c => main/openssl/crypto/asn1/x_attrib.c rename : openssl/crypto/asn1/x_bignum.c => main/openssl/crypto/asn1/x_bignum.c rename : openssl/crypto/asn1/x_crl.c => main/openssl/crypto/asn1/x_crl.c rename : openssl/crypto/asn1/x_exten.c => main/openssl/crypto/asn1/x_exten.c rename : openssl/crypto/asn1/x_info.c => main/openssl/crypto/asn1/x_info.c rename : openssl/crypto/asn1/x_long.c => main/openssl/crypto/asn1/x_long.c rename : openssl/crypto/asn1/x_name.c => main/openssl/crypto/asn1/x_name.c rename : openssl/crypto/asn1/x_nx509.c => main/openssl/crypto/asn1/x_nx509.c rename : openssl/crypto/asn1/x_pkey.c => main/openssl/crypto/asn1/x_pkey.c rename : openssl/crypto/asn1/x_pubkey.c => main/openssl/crypto/asn1/x_pubkey.c rename : openssl/crypto/asn1/x_req.c => main/openssl/crypto/asn1/x_req.c rename : openssl/crypto/asn1/x_sig.c => main/openssl/crypto/asn1/x_sig.c rename : openssl/crypto/asn1/x_spki.c => main/openssl/crypto/asn1/x_spki.c rename : openssl/crypto/asn1/x_val.c => main/openssl/crypto/asn1/x_val.c rename : openssl/crypto/asn1/x_x509.c => main/openssl/crypto/asn1/x_x509.c rename : openssl/crypto/asn1/x_x509a.c => main/openssl/crypto/asn1/x_x509a.c rename : openssl/crypto/bf/COPYRIGHT => main/openssl/crypto/bf/COPYRIGHT rename : openssl/crypto/bf/asm/bf-586.pl => main/openssl/crypto/bf/asm/bf-586.pl rename : openssl/crypto/bf/asm/bf-686.pl => main/openssl/crypto/bf/asm/bf-686.pl rename : openssl/crypto/bf/bf_cfb64.c => main/openssl/crypto/bf/bf_cfb64.c rename : openssl/crypto/bf/bf_ecb.c => main/openssl/crypto/bf/bf_ecb.c rename : openssl/crypto/bf/bf_enc.c => main/openssl/crypto/bf/bf_enc.c rename : openssl/crypto/bf/bf_locl.h => main/openssl/crypto/bf/bf_locl.h rename : openssl/crypto/bf/bf_ofb64.c => main/openssl/crypto/bf/bf_ofb64.c rename : openssl/crypto/bf/bf_pi.h => main/openssl/crypto/bf/bf_pi.h rename : openssl/crypto/bf/bf_skey.c => main/openssl/crypto/bf/bf_skey.c rename : openssl/crypto/bf/blowfish.h => main/openssl/crypto/bf/blowfish.h rename : openssl/crypto/bio/b_dump.c => main/openssl/crypto/bio/b_dump.c rename : openssl/crypto/bio/b_print.c => main/openssl/crypto/bio/b_print.c rename : openssl/crypto/bio/b_sock.c => main/openssl/crypto/bio/b_sock.c rename : openssl/crypto/bio/bf_buff.c => main/openssl/crypto/bio/bf_buff.c rename : openssl/crypto/bio/bf_lbuf.c => main/openssl/crypto/bio/bf_lbuf.c rename : openssl/crypto/bio/bf_nbio.c => main/openssl/crypto/bio/bf_nbio.c rename : openssl/crypto/bio/bf_null.c => main/openssl/crypto/bio/bf_null.c rename : openssl/crypto/bio/bio.h => main/openssl/crypto/bio/bio.h rename : openssl/crypto/bio/bio_cb.c => main/openssl/crypto/bio/bio_cb.c rename : openssl/crypto/bio/bio_err.c => main/openssl/crypto/bio/bio_err.c rename : openssl/crypto/bio/bio_lcl.h => main/openssl/crypto/bio/bio_lcl.h rename : openssl/crypto/bio/bio_lib.c => main/openssl/crypto/bio/bio_lib.c rename : openssl/crypto/bio/bss_acpt.c => main/openssl/crypto/bio/bss_acpt.c rename : openssl/crypto/bio/bss_bio.c => main/openssl/crypto/bio/bss_bio.c rename : openssl/crypto/bio/bss_conn.c => main/openssl/crypto/bio/bss_conn.c rename : openssl/crypto/bio/bss_dgram.c => main/openssl/crypto/bio/bss_dgram.c rename : openssl/crypto/bio/bss_fd.c => main/openssl/crypto/bio/bss_fd.c rename : openssl/crypto/bio/bss_file.c => main/openssl/crypto/bio/bss_file.c rename : openssl/crypto/bio/bss_log.c => main/openssl/crypto/bio/bss_log.c rename : openssl/crypto/bio/bss_mem.c => main/openssl/crypto/bio/bss_mem.c rename : openssl/crypto/bio/bss_null.c => main/openssl/crypto/bio/bss_null.c rename : openssl/crypto/bio/bss_sock.c => main/openssl/crypto/bio/bss_sock.c rename : openssl/crypto/bn/asm/README => main/openssl/crypto/bn/asm/README rename : openssl/crypto/bn/asm/alpha-mont.pl => main/openssl/crypto/bn/asm/alpha-mont.pl rename : openssl/crypto/bn/asm/armv4-mont.pl => main/openssl/crypto/bn/asm/armv4-mont.pl rename : openssl/crypto/bn/asm/armv4-mont.s => main/openssl/crypto/bn/asm/armv4-mont.s rename : openssl/crypto/bn/asm/bn-586.pl => main/openssl/crypto/bn/asm/bn-586.pl rename : openssl/crypto/bn/asm/co-586.pl => main/openssl/crypto/bn/asm/co-586.pl rename : openssl/crypto/bn/asm/ia64.S => main/openssl/crypto/bn/asm/ia64.S rename : openssl/crypto/bn/asm/mips3-mont.pl => main/openssl/crypto/bn/asm/mips3-mont.pl rename : openssl/crypto/bn/asm/mips3.s => main/openssl/crypto/bn/asm/mips3.s rename : openssl/crypto/bn/asm/pa-risc2.s => main/openssl/crypto/bn/asm/pa-risc2.s rename : openssl/crypto/bn/asm/pa-risc2W.s => main/openssl/crypto/bn/asm/pa-risc2W.s rename : openssl/crypto/bn/asm/ppc-mont.pl => main/openssl/crypto/bn/asm/ppc-mont.pl rename : openssl/crypto/bn/asm/ppc.pl => main/openssl/crypto/bn/asm/ppc.pl rename : openssl/crypto/bn/asm/ppc64-mont.pl => main/openssl/crypto/bn/asm/ppc64-mont.pl rename : openssl/crypto/bn/asm/s390x-mont.pl => main/openssl/crypto/bn/asm/s390x-mont.pl rename : openssl/crypto/bn/asm/s390x.S => main/openssl/crypto/bn/asm/s390x.S rename : openssl/crypto/bn/asm/sparcv8.S => main/openssl/crypto/bn/asm/sparcv8.S rename : openssl/crypto/bn/asm/sparcv8plus.S => main/openssl/crypto/bn/asm/sparcv8plus.S rename : openssl/crypto/bn/asm/sparcv9-mont.pl => main/openssl/crypto/bn/asm/sparcv9-mont.pl rename : openssl/crypto/bn/asm/sparcv9a-mont.pl => main/openssl/crypto/bn/asm/sparcv9a-mont.pl rename : openssl/crypto/bn/asm/via-mont.pl => main/openssl/crypto/bn/asm/via-mont.pl rename : openssl/crypto/bn/asm/x86-mont.pl => main/openssl/crypto/bn/asm/x86-mont.pl rename : openssl/crypto/bn/asm/x86.pl => main/openssl/crypto/bn/asm/x86.pl rename : openssl/crypto/bn/asm/x86/add.pl => main/openssl/crypto/bn/asm/x86/add.pl rename : openssl/crypto/bn/asm/x86/comba.pl => main/openssl/crypto/bn/asm/x86/comba.pl rename : openssl/crypto/bn/asm/x86/div.pl => main/openssl/crypto/bn/asm/x86/div.pl rename : openssl/crypto/bn/asm/x86/f => main/openssl/crypto/bn/asm/x86/f rename : openssl/crypto/bn/asm/x86/mul.pl => main/openssl/crypto/bn/asm/x86/mul.pl rename : openssl/crypto/bn/asm/x86/mul_add.pl => main/openssl/crypto/bn/asm/x86/mul_add.pl rename : openssl/crypto/bn/asm/x86/sqr.pl => main/openssl/crypto/bn/asm/x86/sqr.pl rename : openssl/crypto/bn/asm/x86/sub.pl => main/openssl/crypto/bn/asm/x86/sub.pl rename : openssl/crypto/bn/asm/x86_64-gcc.c => main/openssl/crypto/bn/asm/x86_64-gcc.c rename : openssl/crypto/bn/asm/x86_64-mont.pl => main/openssl/crypto/bn/asm/x86_64-mont.pl rename : openssl/crypto/bn/bn.h => main/openssl/crypto/bn/bn.h rename : openssl/crypto/bn/bn.mul => main/openssl/crypto/bn/bn.mul rename : openssl/crypto/bn/bn_add.c => main/openssl/crypto/bn/bn_add.c rename : openssl/crypto/bn/bn_asm.c => main/openssl/crypto/bn/bn_asm.c rename : openssl/crypto/bn/bn_blind.c => main/openssl/crypto/bn/bn_blind.c rename : openssl/crypto/bn/bn_const.c => main/openssl/crypto/bn/bn_const.c rename : openssl/crypto/bn/bn_ctx.c => main/openssl/crypto/bn/bn_ctx.c rename : openssl/crypto/bn/bn_depr.c => main/openssl/crypto/bn/bn_depr.c rename : openssl/crypto/bn/bn_div.c => main/openssl/crypto/bn/bn_div.c rename : openssl/crypto/bn/bn_err.c => main/openssl/crypto/bn/bn_err.c rename : openssl/crypto/bn/bn_exp.c => main/openssl/crypto/bn/bn_exp.c rename : openssl/crypto/bn/bn_exp2.c => main/openssl/crypto/bn/bn_exp2.c rename : openssl/crypto/bn/bn_gcd.c => main/openssl/crypto/bn/bn_gcd.c rename : openssl/crypto/bn/bn_gf2m.c => main/openssl/crypto/bn/bn_gf2m.c rename : openssl/crypto/bn/bn_kron.c => main/openssl/crypto/bn/bn_kron.c rename : openssl/crypto/bn/bn_lcl.h => main/openssl/crypto/bn/bn_lcl.h rename : openssl/crypto/bn/bn_lib.c => main/openssl/crypto/bn/bn_lib.c rename : openssl/crypto/bn/bn_mod.c => main/openssl/crypto/bn/bn_mod.c rename : openssl/crypto/bn/bn_mont.c => main/openssl/crypto/bn/bn_mont.c rename : openssl/crypto/bn/bn_mpi.c => main/openssl/crypto/bn/bn_mpi.c rename : openssl/crypto/bn/bn_mul.c => main/openssl/crypto/bn/bn_mul.c rename : openssl/crypto/bn/bn_nist.c => main/openssl/crypto/bn/bn_nist.c rename : openssl/crypto/bn/bn_prime.c => main/openssl/crypto/bn/bn_prime.c rename : openssl/crypto/bn/bn_prime.h => main/openssl/crypto/bn/bn_prime.h rename : openssl/crypto/bn/bn_prime.pl => main/openssl/crypto/bn/bn_prime.pl rename : openssl/crypto/bn/bn_print.c => main/openssl/crypto/bn/bn_print.c rename : openssl/crypto/bn/bn_rand.c => main/openssl/crypto/bn/bn_rand.c rename : openssl/crypto/bn/bn_recp.c => main/openssl/crypto/bn/bn_recp.c rename : openssl/crypto/bn/bn_shift.c => main/openssl/crypto/bn/bn_shift.c rename : openssl/crypto/bn/bn_sqr.c => main/openssl/crypto/bn/bn_sqr.c rename : openssl/crypto/bn/bn_sqrt.c => main/openssl/crypto/bn/bn_sqrt.c rename : openssl/crypto/bn/bn_word.c => main/openssl/crypto/bn/bn_word.c rename : openssl/crypto/bn/bnspeed.c => main/openssl/crypto/bn/bnspeed.c rename : openssl/crypto/bn/bntest.c => main/openssl/crypto/bn/bntest.c rename : openssl/crypto/bn/divtest.c => main/openssl/crypto/bn/divtest.c rename : openssl/crypto/bn/exp.c => main/openssl/crypto/bn/exp.c rename : openssl/crypto/bn/expspeed.c => main/openssl/crypto/bn/expspeed.c rename : openssl/crypto/bn/exptest.c => main/openssl/crypto/bn/exptest.c rename : openssl/crypto/bn/todo => main/openssl/crypto/bn/todo rename : openssl/crypto/buffer/buf_err.c => main/openssl/crypto/buffer/buf_err.c rename : openssl/crypto/buffer/buffer.c => main/openssl/crypto/buffer/buffer.c rename : openssl/crypto/buffer/buffer.h => main/openssl/crypto/buffer/buffer.h rename : openssl/crypto/comp/c_rle.c => main/openssl/crypto/comp/c_rle.c rename : openssl/crypto/comp/c_zlib.c => main/openssl/crypto/comp/c_zlib.c rename : openssl/crypto/comp/comp.h => main/openssl/crypto/comp/comp.h rename : openssl/crypto/comp/comp_err.c => main/openssl/crypto/comp/comp_err.c rename : openssl/crypto/comp/comp_lib.c => main/openssl/crypto/comp/comp_lib.c rename : openssl/crypto/conf/README => main/openssl/crypto/conf/README rename : openssl/crypto/conf/cnf_save.c => main/openssl/crypto/conf/cnf_save.c rename : openssl/crypto/conf/conf.h => main/openssl/crypto/conf/conf.h rename : openssl/crypto/conf/conf_api.c => main/openssl/crypto/conf/conf_api.c rename : openssl/crypto/conf/conf_api.h => main/openssl/crypto/conf/conf_api.h rename : openssl/crypto/conf/conf_def.c => main/openssl/crypto/conf/conf_def.c rename : openssl/crypto/conf/conf_def.h => main/openssl/crypto/conf/conf_def.h rename : openssl/crypto/conf/conf_err.c => main/openssl/crypto/conf/conf_err.c rename : openssl/crypto/conf/conf_lib.c => main/openssl/crypto/conf/conf_lib.c rename : openssl/crypto/conf/conf_mall.c => main/openssl/crypto/conf/conf_mall.c rename : openssl/crypto/conf/conf_mod.c => main/openssl/crypto/conf/conf_mod.c rename : openssl/crypto/conf/conf_sap.c => main/openssl/crypto/conf/conf_sap.c rename : openssl/crypto/conf/keysets.pl => main/openssl/crypto/conf/keysets.pl rename : openssl/crypto/conf/ssleay.cnf => main/openssl/crypto/conf/ssleay.cnf rename : openssl/crypto/conf/test.c => main/openssl/crypto/conf/test.c rename : openssl/crypto/cpt_err.c => main/openssl/crypto/cpt_err.c rename : openssl/crypto/cryptlib.c => main/openssl/crypto/cryptlib.c rename : openssl/crypto/cryptlib.h => main/openssl/crypto/cryptlib.h rename : openssl/crypto/crypto.h => main/openssl/crypto/crypto.h rename : openssl/crypto/cversion.c => main/openssl/crypto/cversion.c rename : openssl/crypto/des/COPYRIGHT => main/openssl/crypto/des/COPYRIGHT rename : openssl/crypto/des/DES.pm => main/openssl/crypto/des/DES.pm rename : openssl/crypto/des/DES.xs => main/openssl/crypto/des/DES.xs rename : openssl/crypto/des/FILES0 => main/openssl/crypto/des/FILES0 rename : openssl/crypto/des/INSTALL => main/openssl/crypto/des/INSTALL rename : openssl/crypto/des/Imakefile => main/openssl/crypto/des/Imakefile rename : openssl/crypto/des/KERBEROS => main/openssl/crypto/des/KERBEROS rename : openssl/crypto/des/README => main/openssl/crypto/des/README rename : openssl/crypto/des/VERSION => main/openssl/crypto/des/VERSION rename : openssl/crypto/des/asm/crypt586.pl => main/openssl/crypto/des/asm/crypt586.pl rename : openssl/crypto/des/asm/des-586.pl => main/openssl/crypto/des/asm/des-586.pl rename : openssl/crypto/des/asm/des_enc.m4 => main/openssl/crypto/des/asm/des_enc.m4 rename : openssl/crypto/des/asm/desboth.pl => main/openssl/crypto/des/asm/desboth.pl rename : openssl/crypto/des/asm/readme => main/openssl/crypto/des/asm/readme rename : openssl/crypto/des/cbc3_enc.c => main/openssl/crypto/des/cbc3_enc.c rename : openssl/crypto/des/cbc_cksm.c => main/openssl/crypto/des/cbc_cksm.c rename : openssl/crypto/des/cbc_enc.c => main/openssl/crypto/des/cbc_enc.c rename : openssl/crypto/des/cfb64ede.c => main/openssl/crypto/des/cfb64ede.c rename : openssl/crypto/des/cfb64enc.c => main/openssl/crypto/des/cfb64enc.c rename : openssl/crypto/des/cfb_enc.c => main/openssl/crypto/des/cfb_enc.c rename : openssl/crypto/des/des.c => main/openssl/crypto/des/des.c rename : openssl/crypto/des/des.h => main/openssl/crypto/des/des.h rename : openssl/crypto/des/des.pod => main/openssl/crypto/des/des.pod rename : openssl/crypto/des/des3s.cpp => main/openssl/crypto/des/des3s.cpp rename : openssl/crypto/des/des_enc.c => main/openssl/crypto/des/des_enc.c rename : openssl/crypto/des/des_locl.h => main/openssl/crypto/des/des_locl.h rename : openssl/crypto/des/des_old.c => main/openssl/crypto/des/des_old.c rename : openssl/crypto/des/des_old.h => main/openssl/crypto/des/des_old.h rename : openssl/crypto/des/des_old2.c => main/openssl/crypto/des/des_old2.c rename : openssl/crypto/des/des_opts.c => main/openssl/crypto/des/des_opts.c rename : openssl/crypto/des/des_ver.h => main/openssl/crypto/des/des_ver.h rename : openssl/crypto/des/dess.cpp => main/openssl/crypto/des/dess.cpp rename : openssl/crypto/des/destest.c => main/openssl/crypto/des/destest.c rename : openssl/crypto/des/ecb3_enc.c => main/openssl/crypto/des/ecb3_enc.c rename : openssl/crypto/des/ecb_enc.c => main/openssl/crypto/des/ecb_enc.c rename : openssl/crypto/des/ede_cbcm_enc.c => main/openssl/crypto/des/ede_cbcm_enc.c rename : openssl/crypto/des/enc_read.c => main/openssl/crypto/des/enc_read.c rename : openssl/crypto/des/enc_writ.c => main/openssl/crypto/des/enc_writ.c rename : openssl/crypto/des/fcrypt.c => main/openssl/crypto/des/fcrypt.c rename : openssl/crypto/des/fcrypt_b.c => main/openssl/crypto/des/fcrypt_b.c rename : openssl/crypto/des/makefile.bc => main/openssl/crypto/des/makefile.bc rename : openssl/crypto/des/ncbc_enc.c => main/openssl/crypto/des/ncbc_enc.c rename : openssl/crypto/des/ofb64ede.c => main/openssl/crypto/des/ofb64ede.c rename : openssl/crypto/des/ofb64enc.c => main/openssl/crypto/des/ofb64enc.c rename : openssl/crypto/des/ofb_enc.c => main/openssl/crypto/des/ofb_enc.c rename : openssl/crypto/des/options.txt => main/openssl/crypto/des/options.txt rename : openssl/crypto/des/pcbc_enc.c => main/openssl/crypto/des/pcbc_enc.c rename : openssl/crypto/des/qud_cksm.c => main/openssl/crypto/des/qud_cksm.c rename : openssl/crypto/des/rand_key.c => main/openssl/crypto/des/rand_key.c rename : openssl/crypto/des/read2pwd.c => main/openssl/crypto/des/read2pwd.c rename : openssl/crypto/des/read_pwd.c => main/openssl/crypto/des/read_pwd.c rename : openssl/crypto/des/rpc_des.h => main/openssl/crypto/des/rpc_des.h rename : openssl/crypto/des/rpc_enc.c => main/openssl/crypto/des/rpc_enc.c rename : openssl/crypto/des/rpw.c => main/openssl/crypto/des/rpw.c rename : openssl/crypto/des/set_key.c => main/openssl/crypto/des/set_key.c rename : openssl/crypto/des/speed.c => main/openssl/crypto/des/speed.c rename : openssl/crypto/des/spr.h => main/openssl/crypto/des/spr.h rename : openssl/crypto/des/str2key.c => main/openssl/crypto/des/str2key.c rename : openssl/crypto/des/t/test => main/openssl/crypto/des/t/test rename : openssl/crypto/des/times/486-50.sol => main/openssl/crypto/des/times/486-50.sol rename : openssl/crypto/des/times/586-100.lnx => main/openssl/crypto/des/times/586-100.lnx rename : openssl/crypto/des/times/686-200.fre => main/openssl/crypto/des/times/686-200.fre rename : openssl/crypto/des/times/aix.cc => main/openssl/crypto/des/times/aix.cc rename : openssl/crypto/des/times/alpha.cc => main/openssl/crypto/des/times/alpha.cc rename : openssl/crypto/des/times/hpux.cc => main/openssl/crypto/des/times/hpux.cc rename : openssl/crypto/des/times/sparc.gcc => main/openssl/crypto/des/times/sparc.gcc rename : openssl/crypto/des/times/usparc.cc => main/openssl/crypto/des/times/usparc.cc rename : openssl/crypto/des/typemap => main/openssl/crypto/des/typemap rename : openssl/crypto/des/xcbc_enc.c => main/openssl/crypto/des/xcbc_enc.c rename : openssl/crypto/dh/dh.h => main/openssl/crypto/dh/dh.h rename : openssl/crypto/dh/dh1024.pem => main/openssl/crypto/dh/dh1024.pem rename : openssl/crypto/dh/dh192.pem => main/openssl/crypto/dh/dh192.pem rename : openssl/crypto/dh/dh2048.pem => main/openssl/crypto/dh/dh2048.pem rename : openssl/crypto/dh/dh4096.pem => main/openssl/crypto/dh/dh4096.pem rename : openssl/crypto/dh/dh512.pem => main/openssl/crypto/dh/dh512.pem rename : openssl/crypto/dh/dh_ameth.c => main/openssl/crypto/dh/dh_ameth.c rename : openssl/crypto/dh/dh_asn1.c => main/openssl/crypto/dh/dh_asn1.c rename : openssl/crypto/dh/dh_check.c => main/openssl/crypto/dh/dh_check.c rename : openssl/crypto/dh/dh_depr.c => main/openssl/crypto/dh/dh_depr.c rename : openssl/crypto/dh/dh_err.c => main/openssl/crypto/dh/dh_err.c rename : openssl/crypto/dh/dh_gen.c => main/openssl/crypto/dh/dh_gen.c rename : openssl/crypto/dh/dh_key.c => main/openssl/crypto/dh/dh_key.c rename : openssl/crypto/dh/dh_lib.c => main/openssl/crypto/dh/dh_lib.c rename : openssl/crypto/dh/dh_pmeth.c => main/openssl/crypto/dh/dh_pmeth.c rename : openssl/crypto/dh/dhtest.c => main/openssl/crypto/dh/dhtest.c rename : openssl/crypto/dh/example => main/openssl/crypto/dh/example rename : openssl/crypto/dh/generate => main/openssl/crypto/dh/generate rename : openssl/crypto/dh/p1024.c => main/openssl/crypto/dh/p1024.c rename : openssl/crypto/dh/p192.c => main/openssl/crypto/dh/p192.c rename : openssl/crypto/dh/p512.c => main/openssl/crypto/dh/p512.c rename : openssl/crypto/dsa/README => main/openssl/crypto/dsa/README rename : openssl/crypto/dsa/dsa.h => main/openssl/crypto/dsa/dsa.h rename : openssl/crypto/dsa/dsa_ameth.c => main/openssl/crypto/dsa/dsa_ameth.c rename : openssl/crypto/dsa/dsa_asn1.c => main/openssl/crypto/dsa/dsa_asn1.c rename : openssl/crypto/dsa/dsa_depr.c => main/openssl/crypto/dsa/dsa_depr.c rename : openssl/crypto/dsa/dsa_err.c => main/openssl/crypto/dsa/dsa_err.c rename : openssl/crypto/dsa/dsa_gen.c => main/openssl/crypto/dsa/dsa_gen.c rename : openssl/crypto/dsa/dsa_key.c => main/openssl/crypto/dsa/dsa_key.c rename : openssl/crypto/dsa/dsa_lib.c => main/openssl/crypto/dsa/dsa_lib.c rename : openssl/crypto/dsa/dsa_locl.h => main/openssl/crypto/dsa/dsa_locl.h rename : openssl/crypto/dsa/dsa_ossl.c => main/openssl/crypto/dsa/dsa_ossl.c rename : openssl/crypto/dsa/dsa_pmeth.c => main/openssl/crypto/dsa/dsa_pmeth.c rename : openssl/crypto/dsa/dsa_prn.c => main/openssl/crypto/dsa/dsa_prn.c rename : openssl/crypto/dsa/dsa_sign.c => main/openssl/crypto/dsa/dsa_sign.c rename : openssl/crypto/dsa/dsa_vrf.c => main/openssl/crypto/dsa/dsa_vrf.c rename : openssl/crypto/dsa/dsagen.c => main/openssl/crypto/dsa/dsagen.c rename : openssl/crypto/dsa/dsatest.c => main/openssl/crypto/dsa/dsatest.c rename : openssl/crypto/dsa/fips186a.txt => main/openssl/crypto/dsa/fips186a.txt rename : openssl/crypto/dso/README => main/openssl/crypto/dso/README rename : openssl/crypto/dso/dso.h => main/openssl/crypto/dso/dso.h rename : openssl/crypto/dso/dso_dl.c => main/openssl/crypto/dso/dso_dl.c rename : openssl/crypto/dso/dso_dlfcn.c => main/openssl/crypto/dso/dso_dlfcn.c rename : openssl/crypto/dso/dso_err.c => main/openssl/crypto/dso/dso_err.c rename : openssl/crypto/dso/dso_lib.c => main/openssl/crypto/dso/dso_lib.c rename : openssl/crypto/dso/dso_null.c => main/openssl/crypto/dso/dso_null.c rename : openssl/crypto/dso/dso_openssl.c => main/openssl/crypto/dso/dso_openssl.c rename : openssl/crypto/ebcdic.c => main/openssl/crypto/ebcdic.c rename : openssl/crypto/ebcdic.h => main/openssl/crypto/ebcdic.h rename : openssl/crypto/ec/ec.h => main/openssl/crypto/ec/ec.h rename : openssl/crypto/ec/ec2_mult.c => main/openssl/crypto/ec/ec2_mult.c rename : openssl/crypto/ec/ec2_smpl.c => main/openssl/crypto/ec/ec2_smpl.c rename : openssl/crypto/ec/ec_ameth.c => main/openssl/crypto/ec/ec_ameth.c rename : openssl/crypto/ec/ec_asn1.c => main/openssl/crypto/ec/ec_asn1.c rename : openssl/crypto/ec/ec_check.c => main/openssl/crypto/ec/ec_check.c rename : openssl/crypto/ec/ec_curve.c => main/openssl/crypto/ec/ec_curve.c rename : openssl/crypto/ec/ec_cvt.c => main/openssl/crypto/ec/ec_cvt.c rename : openssl/crypto/ec/ec_err.c => main/openssl/crypto/ec/ec_err.c rename : openssl/crypto/ec/ec_key.c => main/openssl/crypto/ec/ec_key.c rename : openssl/crypto/ec/ec_lcl.h => main/openssl/crypto/ec/ec_lcl.h rename : openssl/crypto/ec/ec_lib.c => main/openssl/crypto/ec/ec_lib.c rename : openssl/crypto/ec/ec_mult.c => main/openssl/crypto/ec/ec_mult.c rename : openssl/crypto/ec/ec_pmeth.c => main/openssl/crypto/ec/ec_pmeth.c rename : openssl/crypto/ec/ec_print.c => main/openssl/crypto/ec/ec_print.c rename : openssl/crypto/ec/eck_prn.c => main/openssl/crypto/ec/eck_prn.c rename : openssl/crypto/ec/ecp_mont.c => main/openssl/crypto/ec/ecp_mont.c rename : openssl/crypto/ec/ecp_nist.c => main/openssl/crypto/ec/ecp_nist.c rename : openssl/crypto/ec/ecp_smpl.c => main/openssl/crypto/ec/ecp_smpl.c rename : openssl/crypto/ec/ectest.c => main/openssl/crypto/ec/ectest.c rename : openssl/crypto/ecdh/ecdh.h => main/openssl/crypto/ecdh/ecdh.h rename : openssl/crypto/ecdh/ecdhtest.c => main/openssl/crypto/ecdh/ecdhtest.c rename : openssl/crypto/ecdh/ech_err.c => main/openssl/crypto/ecdh/ech_err.c rename : openssl/crypto/ecdh/ech_key.c => main/openssl/crypto/ecdh/ech_key.c rename : openssl/crypto/ecdh/ech_lib.c => main/openssl/crypto/ecdh/ech_lib.c rename : openssl/crypto/ecdh/ech_locl.h => main/openssl/crypto/ecdh/ech_locl.h rename : openssl/crypto/ecdh/ech_ossl.c => main/openssl/crypto/ecdh/ech_ossl.c rename : openssl/crypto/ecdsa/ecdsa.h => main/openssl/crypto/ecdsa/ecdsa.h rename : openssl/crypto/ecdsa/ecdsatest.c => main/openssl/crypto/ecdsa/ecdsatest.c rename : openssl/crypto/ecdsa/ecs_asn1.c => main/openssl/crypto/ecdsa/ecs_asn1.c rename : openssl/crypto/ecdsa/ecs_err.c => main/openssl/crypto/ecdsa/ecs_err.c rename : openssl/crypto/ecdsa/ecs_lib.c => main/openssl/crypto/ecdsa/ecs_lib.c rename : openssl/crypto/ecdsa/ecs_locl.h => main/openssl/crypto/ecdsa/ecs_locl.h rename : openssl/crypto/ecdsa/ecs_ossl.c => main/openssl/crypto/ecdsa/ecs_ossl.c rename : openssl/crypto/ecdsa/ecs_sign.c => main/openssl/crypto/ecdsa/ecs_sign.c rename : openssl/crypto/ecdsa/ecs_vrf.c => main/openssl/crypto/ecdsa/ecs_vrf.c rename : openssl/crypto/engine/README => main/openssl/crypto/engine/README rename : openssl/crypto/engine/eng_all.c => main/openssl/crypto/engine/eng_all.c rename : openssl/crypto/engine/eng_cnf.c => main/openssl/crypto/engine/eng_cnf.c rename : openssl/crypto/engine/eng_cryptodev.c => main/openssl/crypto/engine/eng_cryptodev.c rename : openssl/crypto/engine/eng_ctrl.c => main/openssl/crypto/engine/eng_ctrl.c rename : openssl/crypto/engine/eng_dyn.c => main/openssl/crypto/engine/eng_dyn.c rename : openssl/crypto/engine/eng_err.c => main/openssl/crypto/engine/eng_err.c rename : openssl/crypto/engine/eng_fat.c => main/openssl/crypto/engine/eng_fat.c rename : openssl/crypto/engine/eng_init.c => main/openssl/crypto/engine/eng_init.c rename : openssl/crypto/engine/eng_int.h => main/openssl/crypto/engine/eng_int.h rename : openssl/crypto/engine/eng_lib.c => main/openssl/crypto/engine/eng_lib.c rename : openssl/crypto/engine/eng_list.c => main/openssl/crypto/engine/eng_list.c rename : openssl/crypto/engine/eng_openssl.c => main/openssl/crypto/engine/eng_openssl.c rename : openssl/crypto/engine/eng_pkey.c => main/openssl/crypto/engine/eng_pkey.c rename : openssl/crypto/engine/eng_table.c => main/openssl/crypto/engine/eng_table.c rename : openssl/crypto/engine/engine.h => main/openssl/crypto/engine/engine.h rename : openssl/crypto/engine/enginetest.c => main/openssl/crypto/engine/enginetest.c rename : openssl/crypto/engine/tb_cipher.c => main/openssl/crypto/engine/tb_cipher.c rename : openssl/crypto/engine/tb_dh.c => main/openssl/crypto/engine/tb_dh.c rename : openssl/crypto/engine/tb_digest.c => main/openssl/crypto/engine/tb_digest.c rename : openssl/crypto/engine/tb_dsa.c => main/openssl/crypto/engine/tb_dsa.c rename : openssl/crypto/engine/tb_ecdh.c => main/openssl/crypto/engine/tb_ecdh.c rename : openssl/crypto/engine/tb_ecdsa.c => main/openssl/crypto/engine/tb_ecdsa.c rename : openssl/crypto/engine/tb_rand.c => main/openssl/crypto/engine/tb_rand.c rename : openssl/crypto/engine/tb_rsa.c => main/openssl/crypto/engine/tb_rsa.c rename : openssl/crypto/engine/tb_store.c => main/openssl/crypto/engine/tb_store.c rename : openssl/crypto/err/err.c => main/openssl/crypto/err/err.c rename : openssl/crypto/err/err.h => main/openssl/crypto/err/err.h rename : openssl/crypto/err/err_all.c => main/openssl/crypto/err/err_all.c rename : openssl/crypto/err/err_prn.c => main/openssl/crypto/err/err_prn.c rename : openssl/crypto/err/openssl.ec => main/openssl/crypto/err/openssl.ec rename : openssl/crypto/evp/bio_b64.c => main/openssl/crypto/evp/bio_b64.c rename : openssl/crypto/evp/bio_enc.c => main/openssl/crypto/evp/bio_enc.c rename : openssl/crypto/evp/bio_md.c => main/openssl/crypto/evp/bio_md.c rename : openssl/crypto/evp/bio_ok.c => main/openssl/crypto/evp/bio_ok.c rename : openssl/crypto/evp/c_all.c => main/openssl/crypto/evp/c_all.c rename : openssl/crypto/evp/c_allc.c => main/openssl/crypto/evp/c_allc.c rename : openssl/crypto/evp/c_alld.c => main/openssl/crypto/evp/c_alld.c rename : openssl/crypto/evp/digest.c => main/openssl/crypto/evp/digest.c rename : openssl/crypto/evp/e_aes.c => main/openssl/crypto/evp/e_aes.c rename : openssl/crypto/evp/e_bf.c => main/openssl/crypto/evp/e_bf.c rename : openssl/crypto/evp/e_camellia.c => main/openssl/crypto/evp/e_camellia.c rename : openssl/crypto/evp/e_cast.c => main/openssl/crypto/evp/e_cast.c rename : openssl/crypto/evp/e_des.c => main/openssl/crypto/evp/e_des.c rename : openssl/crypto/evp/e_des3.c => main/openssl/crypto/evp/e_des3.c rename : openssl/crypto/evp/e_dsa.c => main/openssl/crypto/evp/e_dsa.c rename : openssl/crypto/evp/e_idea.c => main/openssl/crypto/evp/e_idea.c rename : openssl/crypto/evp/e_null.c => main/openssl/crypto/evp/e_null.c rename : openssl/crypto/evp/e_old.c => main/openssl/crypto/evp/e_old.c rename : openssl/crypto/evp/e_rc2.c => main/openssl/crypto/evp/e_rc2.c rename : openssl/crypto/evp/e_rc4.c => main/openssl/crypto/evp/e_rc4.c rename : openssl/crypto/evp/e_rc5.c => main/openssl/crypto/evp/e_rc5.c rename : openssl/crypto/evp/e_seed.c => main/openssl/crypto/evp/e_seed.c rename : openssl/crypto/evp/e_xcbc_d.c => main/openssl/crypto/evp/e_xcbc_d.c rename : openssl/crypto/evp/encode.c => main/openssl/crypto/evp/encode.c rename : openssl/crypto/evp/evp.h => main/openssl/crypto/evp/evp.h rename : openssl/crypto/evp/evp_acnf.c => main/openssl/crypto/evp/evp_acnf.c rename : openssl/crypto/evp/evp_enc.c => main/openssl/crypto/evp/evp_enc.c rename : openssl/crypto/evp/evp_err.c => main/openssl/crypto/evp/evp_err.c rename : openssl/crypto/evp/evp_key.c => main/openssl/crypto/evp/evp_key.c rename : openssl/crypto/evp/evp_lib.c => main/openssl/crypto/evp/evp_lib.c rename : openssl/crypto/evp/evp_locl.h => main/openssl/crypto/evp/evp_locl.h rename : openssl/crypto/evp/evp_pbe.c => main/openssl/crypto/evp/evp_pbe.c rename : openssl/crypto/evp/evp_pkey.c => main/openssl/crypto/evp/evp_pkey.c rename : openssl/crypto/evp/evp_test.c => main/openssl/crypto/evp/evp_test.c rename : openssl/crypto/evp/evptests.txt => main/openssl/crypto/evp/evptests.txt rename : openssl/crypto/evp/m_dss.c => main/openssl/crypto/evp/m_dss.c rename : openssl/crypto/evp/m_dss1.c => main/openssl/crypto/evp/m_dss1.c rename : openssl/crypto/evp/m_ecdsa.c => main/openssl/crypto/evp/m_ecdsa.c rename : openssl/crypto/evp/m_md4.c => main/openssl/crypto/evp/m_md4.c rename : openssl/crypto/evp/m_md5.c => main/openssl/crypto/evp/m_md5.c rename : openssl/crypto/evp/m_mdc2.c => main/openssl/crypto/evp/m_mdc2.c rename : openssl/crypto/evp/m_null.c => main/openssl/crypto/evp/m_null.c rename : openssl/crypto/evp/m_ripemd.c => main/openssl/crypto/evp/m_ripemd.c rename : openssl/crypto/evp/m_sha1.c => main/openssl/crypto/evp/m_sha1.c rename : openssl/crypto/evp/m_sigver.c => main/openssl/crypto/evp/m_sigver.c rename : openssl/crypto/evp/m_wp.c => main/openssl/crypto/evp/m_wp.c rename : openssl/crypto/evp/names.c => main/openssl/crypto/evp/names.c rename : openssl/crypto/evp/openbsd_hw.c => main/openssl/crypto/evp/openbsd_hw.c rename : openssl/crypto/evp/p5_crpt.c => main/openssl/crypto/evp/p5_crpt.c rename : openssl/crypto/evp/p5_crpt2.c => main/openssl/crypto/evp/p5_crpt2.c rename : openssl/crypto/evp/p_dec.c => main/openssl/crypto/evp/p_dec.c rename : openssl/crypto/evp/p_enc.c => main/openssl/crypto/evp/p_enc.c rename : openssl/crypto/evp/p_lib.c => main/openssl/crypto/evp/p_lib.c rename : openssl/crypto/evp/p_open.c => main/openssl/crypto/evp/p_open.c rename : openssl/crypto/evp/p_seal.c => main/openssl/crypto/evp/p_seal.c rename : openssl/crypto/evp/p_sign.c => main/openssl/crypto/evp/p_sign.c rename : openssl/crypto/evp/p_verify.c => main/openssl/crypto/evp/p_verify.c rename : openssl/crypto/evp/pmeth_fn.c => main/openssl/crypto/evp/pmeth_fn.c rename : openssl/crypto/evp/pmeth_gn.c => main/openssl/crypto/evp/pmeth_gn.c rename : openssl/crypto/evp/pmeth_lib.c => main/openssl/crypto/evp/pmeth_lib.c rename : openssl/crypto/ex_data.c => main/openssl/crypto/ex_data.c rename : openssl/crypto/hmac/hm_ameth.c => main/openssl/crypto/hmac/hm_ameth.c rename : openssl/crypto/hmac/hm_pmeth.c => main/openssl/crypto/hmac/hm_pmeth.c rename : openssl/crypto/hmac/hmac.c => main/openssl/crypto/hmac/hmac.c rename : openssl/crypto/hmac/hmac.h => main/openssl/crypto/hmac/hmac.h rename : openssl/crypto/hmac/hmactest.c => main/openssl/crypto/hmac/hmactest.c rename : openssl/crypto/ia64cpuid.S => main/openssl/crypto/ia64cpuid.S rename : openssl/crypto/jpake/jpake.c => main/openssl/crypto/jpake/jpake.c rename : openssl/crypto/jpake/jpake.h => main/openssl/crypto/jpake/jpake.h rename : openssl/crypto/jpake/jpake_err.c => main/openssl/crypto/jpake/jpake_err.c rename : openssl/crypto/jpake/jpaketest.c => main/openssl/crypto/jpake/jpaketest.c rename : openssl/crypto/krb5/krb5_asn.c => main/openssl/crypto/krb5/krb5_asn.c rename : openssl/crypto/krb5/krb5_asn.h => main/openssl/crypto/krb5/krb5_asn.h rename : openssl/crypto/lhash/lh_stats.c => main/openssl/crypto/lhash/lh_stats.c rename : openssl/crypto/lhash/lh_test.c => main/openssl/crypto/lhash/lh_test.c rename : openssl/crypto/lhash/lhash.c => main/openssl/crypto/lhash/lhash.c rename : openssl/crypto/lhash/lhash.h => main/openssl/crypto/lhash/lhash.h rename : openssl/crypto/lhash/num.pl => main/openssl/crypto/lhash/num.pl rename : openssl/crypto/md32_common.h => main/openssl/crypto/md32_common.h rename : openssl/crypto/md4/md4.c => main/openssl/crypto/md4/md4.c rename : openssl/crypto/md4/md4.h => main/openssl/crypto/md4/md4.h rename : openssl/crypto/md4/md4_dgst.c => main/openssl/crypto/md4/md4_dgst.c rename : openssl/crypto/md4/md4_locl.h => main/openssl/crypto/md4/md4_locl.h rename : openssl/crypto/md4/md4_one.c => main/openssl/crypto/md4/md4_one.c rename : openssl/crypto/md4/md4s.cpp => main/openssl/crypto/md4/md4s.cpp rename : openssl/crypto/md4/md4test.c => main/openssl/crypto/md4/md4test.c rename : openssl/crypto/md5/asm/md5-586.pl => main/openssl/crypto/md5/asm/md5-586.pl rename : openssl/crypto/md5/asm/md5-ia64.S => main/openssl/crypto/md5/asm/md5-ia64.S rename : openssl/crypto/md5/asm/md5-x86_64.pl => main/openssl/crypto/md5/asm/md5-x86_64.pl rename : openssl/crypto/md5/md5.c => main/openssl/crypto/md5/md5.c rename : openssl/crypto/md5/md5.h => main/openssl/crypto/md5/md5.h rename : openssl/crypto/md5/md5_dgst.c => main/openssl/crypto/md5/md5_dgst.c rename : openssl/crypto/md5/md5_locl.h => main/openssl/crypto/md5/md5_locl.h rename : openssl/crypto/md5/md5_one.c => main/openssl/crypto/md5/md5_one.c rename : openssl/crypto/md5/md5s.cpp => main/openssl/crypto/md5/md5s.cpp rename : openssl/crypto/md5/md5test.c => main/openssl/crypto/md5/md5test.c rename : openssl/crypto/mdc2/mdc2.h => main/openssl/crypto/mdc2/mdc2.h rename : openssl/crypto/mdc2/mdc2_one.c => main/openssl/crypto/mdc2/mdc2_one.c rename : openssl/crypto/mdc2/mdc2dgst.c => main/openssl/crypto/mdc2/mdc2dgst.c rename : openssl/crypto/mdc2/mdc2test.c => main/openssl/crypto/mdc2/mdc2test.c rename : openssl/crypto/mem.c => main/openssl/crypto/mem.c rename : openssl/crypto/mem_clr.c => main/openssl/crypto/mem_clr.c rename : openssl/crypto/mem_dbg.c => main/openssl/crypto/mem_dbg.c rename : openssl/crypto/modes/cbc128.c => main/openssl/crypto/modes/cbc128.c rename : openssl/crypto/modes/cfb128.c => main/openssl/crypto/modes/cfb128.c rename : openssl/crypto/modes/ctr128.c => main/openssl/crypto/modes/ctr128.c rename : openssl/crypto/modes/ofb128.c => main/openssl/crypto/modes/ofb128.c rename : openssl/crypto/o_dir.c => main/openssl/crypto/o_dir.c rename : openssl/crypto/o_dir.h => main/openssl/crypto/o_dir.h rename : openssl/crypto/o_dir_test.c => main/openssl/crypto/o_dir_test.c rename : openssl/crypto/o_str.c => main/openssl/crypto/o_str.c rename : openssl/crypto/o_str.h => main/openssl/crypto/o_str.h rename : openssl/crypto/o_time.c => main/openssl/crypto/o_time.c rename : openssl/crypto/o_time.h => main/openssl/crypto/o_time.h rename : openssl/crypto/objects/o_names.c => main/openssl/crypto/objects/o_names.c rename : openssl/crypto/objects/obj_dat.c => main/openssl/crypto/objects/obj_dat.c rename : openssl/crypto/objects/obj_dat.h => main/openssl/crypto/objects/obj_dat.h rename : openssl/crypto/objects/obj_dat.pl => main/openssl/crypto/objects/obj_dat.pl rename : openssl/crypto/objects/obj_err.c => main/openssl/crypto/objects/obj_err.c rename : openssl/crypto/objects/obj_lib.c => main/openssl/crypto/objects/obj_lib.c rename : openssl/crypto/objects/obj_mac.h => main/openssl/crypto/objects/obj_mac.h rename : openssl/crypto/objects/obj_mac.num => main/openssl/crypto/objects/obj_mac.num rename : openssl/crypto/objects/obj_xref.c => main/openssl/crypto/objects/obj_xref.c rename : openssl/crypto/objects/obj_xref.h => main/openssl/crypto/objects/obj_xref.h rename : openssl/crypto/objects/obj_xref.txt => main/openssl/crypto/objects/obj_xref.txt rename : openssl/crypto/objects/objects.README => main/openssl/crypto/objects/objects.README rename : openssl/crypto/objects/objects.h => main/openssl/crypto/objects/objects.h rename : openssl/crypto/objects/objects.pl => main/openssl/crypto/objects/objects.pl rename : openssl/crypto/objects/objects.txt => main/openssl/crypto/objects/objects.txt rename : openssl/crypto/objects/objxref.pl => main/openssl/crypto/objects/objxref.pl rename : openssl/crypto/ocsp/ocsp.h => main/openssl/crypto/ocsp/ocsp.h rename : openssl/crypto/ocsp/ocsp_asn.c => main/openssl/crypto/ocsp/ocsp_asn.c rename : openssl/crypto/ocsp/ocsp_cl.c => main/openssl/crypto/ocsp/ocsp_cl.c rename : openssl/crypto/ocsp/ocsp_err.c => main/openssl/crypto/ocsp/ocsp_err.c rename : openssl/crypto/ocsp/ocsp_ext.c => main/openssl/crypto/ocsp/ocsp_ext.c rename : openssl/crypto/ocsp/ocsp_ht.c => main/openssl/crypto/ocsp/ocsp_ht.c rename : openssl/crypto/ocsp/ocsp_lib.c => main/openssl/crypto/ocsp/ocsp_lib.c rename : openssl/crypto/ocsp/ocsp_prn.c => main/openssl/crypto/ocsp/ocsp_prn.c rename : openssl/crypto/ocsp/ocsp_srv.c => main/openssl/crypto/ocsp/ocsp_srv.c rename : openssl/crypto/ocsp/ocsp_vfy.c => main/openssl/crypto/ocsp/ocsp_vfy.c rename : openssl/crypto/opensslconf.h => main/openssl/crypto/opensslconf.h rename : openssl/crypto/opensslconf.h.in => main/openssl/crypto/opensslconf.h.in rename : openssl/crypto/opensslv.h => main/openssl/crypto/opensslv.h rename : openssl/crypto/ossl_typ.h => main/openssl/crypto/ossl_typ.h rename : openssl/crypto/pem/message => main/openssl/crypto/pem/message rename : openssl/crypto/pem/pem.h => main/openssl/crypto/pem/pem.h rename : openssl/crypto/pem/pem2.h => main/openssl/crypto/pem/pem2.h rename : openssl/crypto/pem/pem_all.c => main/openssl/crypto/pem/pem_all.c rename : openssl/crypto/pem/pem_err.c => main/openssl/crypto/pem/pem_err.c rename : openssl/crypto/pem/pem_info.c => main/openssl/crypto/pem/pem_info.c rename : openssl/crypto/pem/pem_lib.c => main/openssl/crypto/pem/pem_lib.c rename : openssl/crypto/pem/pem_oth.c => main/openssl/crypto/pem/pem_oth.c rename : openssl/crypto/pem/pem_pk8.c => main/openssl/crypto/pem/pem_pk8.c rename : openssl/crypto/pem/pem_pkey.c => main/openssl/crypto/pem/pem_pkey.c rename : openssl/crypto/pem/pem_seal.c => main/openssl/crypto/pem/pem_seal.c rename : openssl/crypto/pem/pem_sign.c => main/openssl/crypto/pem/pem_sign.c rename : openssl/crypto/pem/pem_x509.c => main/openssl/crypto/pem/pem_x509.c rename : openssl/crypto/pem/pem_xaux.c => main/openssl/crypto/pem/pem_xaux.c rename : openssl/crypto/pem/pkcs7.lis => main/openssl/crypto/pem/pkcs7.lis rename : openssl/crypto/pem/pvkfmt.c => main/openssl/crypto/pem/pvkfmt.c rename : openssl/crypto/perlasm/cbc.pl => main/openssl/crypto/perlasm/cbc.pl rename : openssl/crypto/perlasm/ppc-xlate.pl => main/openssl/crypto/perlasm/ppc-xlate.pl rename : openssl/crypto/perlasm/readme => main/openssl/crypto/perlasm/readme rename : openssl/crypto/perlasm/x86_64-xlate.pl => main/openssl/crypto/perlasm/x86_64-xlate.pl rename : openssl/crypto/perlasm/x86asm.pl => main/openssl/crypto/perlasm/x86asm.pl rename : openssl/crypto/perlasm/x86gas.pl => main/openssl/crypto/perlasm/x86gas.pl rename : openssl/crypto/perlasm/x86masm.pl => main/openssl/crypto/perlasm/x86masm.pl rename : openssl/crypto/perlasm/x86nasm.pl => main/openssl/crypto/perlasm/x86nasm.pl rename : openssl/crypto/pkcs12/p12_add.c => main/openssl/crypto/pkcs12/p12_add.c rename : openssl/crypto/pkcs12/p12_asn.c => main/openssl/crypto/pkcs12/p12_asn.c rename : openssl/crypto/pkcs12/p12_attr.c => main/openssl/crypto/pkcs12/p12_attr.c rename : openssl/crypto/pkcs12/p12_crpt.c => main/openssl/crypto/pkcs12/p12_crpt.c rename : openssl/crypto/pkcs12/p12_crt.c => main/openssl/crypto/pkcs12/p12_crt.c rename : openssl/crypto/pkcs12/p12_decr.c => main/openssl/crypto/pkcs12/p12_decr.c rename : openssl/crypto/pkcs12/p12_init.c => main/openssl/crypto/pkcs12/p12_init.c rename : openssl/crypto/pkcs12/p12_key.c => main/openssl/crypto/pkcs12/p12_key.c rename : openssl/crypto/pkcs12/p12_kiss.c => main/openssl/crypto/pkcs12/p12_kiss.c rename : openssl/crypto/pkcs12/p12_mutl.c => main/openssl/crypto/pkcs12/p12_mutl.c rename : openssl/crypto/pkcs12/p12_npas.c => main/openssl/crypto/pkcs12/p12_npas.c rename : openssl/crypto/pkcs12/p12_p8d.c => main/openssl/crypto/pkcs12/p12_p8d.c rename : openssl/crypto/pkcs12/p12_p8e.c => main/openssl/crypto/pkcs12/p12_p8e.c rename : openssl/crypto/pkcs12/p12_utl.c => main/openssl/crypto/pkcs12/p12_utl.c rename : openssl/crypto/pkcs12/pk12err.c => main/openssl/crypto/pkcs12/pk12err.c rename : openssl/crypto/pkcs12/pkcs12.h => main/openssl/crypto/pkcs12/pkcs12.h rename : openssl/crypto/pkcs7/bio_ber.c => main/openssl/crypto/pkcs7/bio_ber.c rename : openssl/crypto/pkcs7/dec.c => main/openssl/crypto/pkcs7/dec.c rename : openssl/crypto/pkcs7/des.pem => main/openssl/crypto/pkcs7/des.pem rename : openssl/crypto/pkcs7/doc => main/openssl/crypto/pkcs7/doc rename : openssl/crypto/pkcs7/enc.c => main/openssl/crypto/pkcs7/enc.c rename : openssl/crypto/pkcs7/es1.pem => main/openssl/crypto/pkcs7/es1.pem rename : openssl/crypto/pkcs7/example.c => main/openssl/crypto/pkcs7/example.c rename : openssl/crypto/pkcs7/example.h => main/openssl/crypto/pkcs7/example.h rename : openssl/crypto/pkcs7/info.pem => main/openssl/crypto/pkcs7/info.pem rename : openssl/crypto/pkcs7/infokey.pem => main/openssl/crypto/pkcs7/infokey.pem rename : openssl/crypto/pkcs7/p7/a1 => main/openssl/crypto/pkcs7/p7/a1 rename : openssl/crypto/pkcs7/p7/a2 => main/openssl/crypto/pkcs7/p7/a2 rename : openssl/crypto/pkcs7/p7/cert.p7c => main/openssl/crypto/pkcs7/p7/cert.p7c rename : openssl/crypto/pkcs7/p7/smime.p7m => main/openssl/crypto/pkcs7/p7/smime.p7m rename : openssl/crypto/pkcs7/p7/smime.p7s => main/openssl/crypto/pkcs7/p7/smime.p7s rename : openssl/crypto/pkcs7/pk7_asn1.c => main/openssl/crypto/pkcs7/pk7_asn1.c rename : openssl/crypto/pkcs7/pk7_attr.c => main/openssl/crypto/pkcs7/pk7_attr.c rename : openssl/crypto/pkcs7/pk7_dgst.c => main/openssl/crypto/pkcs7/pk7_dgst.c rename : openssl/crypto/pkcs7/pk7_doit.c => main/openssl/crypto/pkcs7/pk7_doit.c rename : openssl/crypto/pkcs7/pk7_enc.c => main/openssl/crypto/pkcs7/pk7_enc.c rename : openssl/crypto/pkcs7/pk7_lib.c => main/openssl/crypto/pkcs7/pk7_lib.c rename : openssl/crypto/pkcs7/pk7_mime.c => main/openssl/crypto/pkcs7/pk7_mime.c rename : openssl/crypto/pkcs7/pk7_smime.c => main/openssl/crypto/pkcs7/pk7_smime.c rename : openssl/crypto/pkcs7/pkcs7.h => main/openssl/crypto/pkcs7/pkcs7.h rename : openssl/crypto/pkcs7/pkcs7err.c => main/openssl/crypto/pkcs7/pkcs7err.c rename : openssl/crypto/pkcs7/server.pem => main/openssl/crypto/pkcs7/server.pem rename : openssl/crypto/pkcs7/sign.c => main/openssl/crypto/pkcs7/sign.c rename : openssl/crypto/pkcs7/t/3des.pem => main/openssl/crypto/pkcs7/t/3des.pem rename : openssl/crypto/pkcs7/t/3dess.pem => main/openssl/crypto/pkcs7/t/3dess.pem rename : openssl/crypto/pkcs7/t/c.pem => main/openssl/crypto/pkcs7/t/c.pem rename : openssl/crypto/pkcs7/t/ff => main/openssl/crypto/pkcs7/t/ff rename : openssl/crypto/pkcs7/t/msie-e => main/openssl/crypto/pkcs7/t/msie-e rename : openssl/crypto/pkcs7/t/msie-e.pem => main/openssl/crypto/pkcs7/t/msie-e.pem rename : openssl/crypto/pkcs7/t/msie-enc-01 => main/openssl/crypto/pkcs7/t/msie-enc-01 rename : openssl/crypto/pkcs7/t/msie-enc-01.pem => main/openssl/crypto/pkcs7/t/msie-enc-01.pem rename : openssl/crypto/pkcs7/t/msie-enc-02 => main/openssl/crypto/pkcs7/t/msie-enc-02 rename : openssl/crypto/pkcs7/t/msie-enc-02.pem => main/openssl/crypto/pkcs7/t/msie-enc-02.pem rename : openssl/crypto/pkcs7/t/msie-s-a-e => main/openssl/crypto/pkcs7/t/msie-s-a-e rename : openssl/crypto/pkcs7/t/msie-s-a-e.pem => main/openssl/crypto/pkcs7/t/msie-s-a-e.pem rename : openssl/crypto/pkcs7/t/nav-smime => main/openssl/crypto/pkcs7/t/nav-smime rename : openssl/crypto/pkcs7/t/s.pem => main/openssl/crypto/pkcs7/t/s.pem rename : openssl/crypto/pkcs7/t/server.pem => main/openssl/crypto/pkcs7/t/server.pem rename : openssl/crypto/pkcs7/verify.c => main/openssl/crypto/pkcs7/verify.c rename : openssl/crypto/ppccpuid.pl => main/openssl/crypto/ppccpuid.pl rename : openssl/crypto/pqueue/pq_test.c => main/openssl/crypto/pqueue/pq_test.c rename : openssl/crypto/pqueue/pqueue.c => main/openssl/crypto/pqueue/pqueue.c rename : openssl/crypto/pqueue/pqueue.h => main/openssl/crypto/pqueue/pqueue.h rename : openssl/crypto/rand/md_rand.c => main/openssl/crypto/rand/md_rand.c rename : openssl/crypto/rand/rand.h => main/openssl/crypto/rand/rand.h rename : openssl/crypto/rand/rand_egd.c => main/openssl/crypto/rand/rand_egd.c rename : openssl/crypto/rand/rand_err.c => main/openssl/crypto/rand/rand_err.c rename : openssl/crypto/rand/rand_lcl.h => main/openssl/crypto/rand/rand_lcl.h rename : openssl/crypto/rand/rand_lib.c => main/openssl/crypto/rand/rand_lib.c rename : openssl/crypto/rand/rand_nw.c => main/openssl/crypto/rand/rand_nw.c rename : openssl/crypto/rand/rand_os2.c => main/openssl/crypto/rand/rand_os2.c rename : openssl/crypto/rand/rand_unix.c => main/openssl/crypto/rand/rand_unix.c rename : openssl/crypto/rand/rand_win.c => main/openssl/crypto/rand/rand_win.c rename : openssl/crypto/rand/randfile.c => main/openssl/crypto/rand/randfile.c rename : openssl/crypto/rand/randtest.c => main/openssl/crypto/rand/randtest.c rename : openssl/crypto/rc2/rc2.h => main/openssl/crypto/rc2/rc2.h rename : openssl/crypto/rc2/rc2_cbc.c => main/openssl/crypto/rc2/rc2_cbc.c rename : openssl/crypto/rc2/rc2_ecb.c => main/openssl/crypto/rc2/rc2_ecb.c rename : openssl/crypto/rc2/rc2_locl.h => main/openssl/crypto/rc2/rc2_locl.h rename : openssl/crypto/rc2/rc2_skey.c => main/openssl/crypto/rc2/rc2_skey.c rename : openssl/crypto/rc2/rc2cfb64.c => main/openssl/crypto/rc2/rc2cfb64.c rename : openssl/crypto/rc2/rc2ofb64.c => main/openssl/crypto/rc2/rc2ofb64.c rename : openssl/crypto/rc2/rc2speed.c => main/openssl/crypto/rc2/rc2speed.c rename : openssl/crypto/rc2/rc2test.c => main/openssl/crypto/rc2/rc2test.c rename : openssl/crypto/rc2/rrc2.doc => main/openssl/crypto/rc2/rrc2.doc rename : openssl/crypto/rc2/tab.c => main/openssl/crypto/rc2/tab.c rename : openssl/crypto/rc2/version => main/openssl/crypto/rc2/version rename : openssl/crypto/rc4/asm/rc4-586.pl => main/openssl/crypto/rc4/asm/rc4-586.pl rename : openssl/crypto/rc4/asm/rc4-ia64.pl => main/openssl/crypto/rc4/asm/rc4-ia64.pl rename : openssl/crypto/rc4/asm/rc4-s390x.pl => main/openssl/crypto/rc4/asm/rc4-s390x.pl rename : openssl/crypto/rc4/asm/rc4-x86_64.pl => main/openssl/crypto/rc4/asm/rc4-x86_64.pl rename : openssl/crypto/rc4/rc4.c => main/openssl/crypto/rc4/rc4.c rename : openssl/crypto/rc4/rc4.h => main/openssl/crypto/rc4/rc4.h rename : openssl/crypto/rc4/rc4_enc.c => main/openssl/crypto/rc4/rc4_enc.c rename : openssl/crypto/rc4/rc4_locl.h => main/openssl/crypto/rc4/rc4_locl.h rename : openssl/crypto/rc4/rc4_skey.c => main/openssl/crypto/rc4/rc4_skey.c rename : openssl/crypto/rc4/rc4s.cpp => main/openssl/crypto/rc4/rc4s.cpp rename : openssl/crypto/rc4/rc4speed.c => main/openssl/crypto/rc4/rc4speed.c rename : openssl/crypto/rc4/rc4test.c => main/openssl/crypto/rc4/rc4test.c rename : openssl/crypto/rc4/rrc4.doc => main/openssl/crypto/rc4/rrc4.doc rename : openssl/crypto/ripemd/README => main/openssl/crypto/ripemd/README rename : openssl/crypto/ripemd/asm/rips.cpp => main/openssl/crypto/ripemd/asm/rips.cpp rename : openssl/crypto/ripemd/asm/rmd-586.pl => main/openssl/crypto/ripemd/asm/rmd-586.pl rename : openssl/crypto/ripemd/ripemd.h => main/openssl/crypto/ripemd/ripemd.h rename : openssl/crypto/ripemd/rmd160.c => main/openssl/crypto/ripemd/rmd160.c rename : openssl/crypto/ripemd/rmd_dgst.c => main/openssl/crypto/ripemd/rmd_dgst.c rename : openssl/crypto/ripemd/rmd_locl.h => main/openssl/crypto/ripemd/rmd_locl.h rename : openssl/crypto/ripemd/rmd_one.c => main/openssl/crypto/ripemd/rmd_one.c rename : openssl/crypto/ripemd/rmdconst.h => main/openssl/crypto/ripemd/rmdconst.h rename : openssl/crypto/ripemd/rmdtest.c => main/openssl/crypto/ripemd/rmdtest.c rename : openssl/crypto/rsa/rsa.h => main/openssl/crypto/rsa/rsa.h rename : openssl/crypto/rsa/rsa_ameth.c => main/openssl/crypto/rsa/rsa_ameth.c rename : openssl/crypto/rsa/rsa_asn1.c => main/openssl/crypto/rsa/rsa_asn1.c rename : openssl/crypto/rsa/rsa_chk.c => main/openssl/crypto/rsa/rsa_chk.c rename : openssl/crypto/rsa/rsa_depr.c => main/openssl/crypto/rsa/rsa_depr.c rename : openssl/crypto/rsa/rsa_eay.c => main/openssl/crypto/rsa/rsa_eay.c rename : openssl/crypto/rsa/rsa_err.c => main/openssl/crypto/rsa/rsa_err.c rename : openssl/crypto/rsa/rsa_gen.c => main/openssl/crypto/rsa/rsa_gen.c rename : openssl/crypto/rsa/rsa_lib.c => main/openssl/crypto/rsa/rsa_lib.c rename : openssl/crypto/rsa/rsa_locl.h => main/openssl/crypto/rsa/rsa_locl.h rename : openssl/crypto/rsa/rsa_none.c => main/openssl/crypto/rsa/rsa_none.c rename : openssl/crypto/rsa/rsa_null.c => main/openssl/crypto/rsa/rsa_null.c rename : openssl/crypto/rsa/rsa_oaep.c => main/openssl/crypto/rsa/rsa_oaep.c rename : openssl/crypto/rsa/rsa_pk1.c => main/openssl/crypto/rsa/rsa_pk1.c rename : openssl/crypto/rsa/rsa_pmeth.c => main/openssl/crypto/rsa/rsa_pmeth.c rename : openssl/crypto/rsa/rsa_prn.c => main/openssl/crypto/rsa/rsa_prn.c rename : openssl/crypto/rsa/rsa_pss.c => main/openssl/crypto/rsa/rsa_pss.c rename : openssl/crypto/rsa/rsa_saos.c => main/openssl/crypto/rsa/rsa_saos.c rename : openssl/crypto/rsa/rsa_sign.c => main/openssl/crypto/rsa/rsa_sign.c rename : openssl/crypto/rsa/rsa_ssl.c => main/openssl/crypto/rsa/rsa_ssl.c rename : openssl/crypto/rsa/rsa_test.c => main/openssl/crypto/rsa/rsa_test.c rename : openssl/crypto/rsa/rsa_x931.c => main/openssl/crypto/rsa/rsa_x931.c rename : openssl/crypto/s390xcap.c => main/openssl/crypto/s390xcap.c rename : openssl/crypto/s390xcpuid.S => main/openssl/crypto/s390xcpuid.S rename : openssl/crypto/sha/asm/README => main/openssl/crypto/sha/asm/README rename : openssl/crypto/sha/asm/sha1-586.pl => main/openssl/crypto/sha/asm/sha1-586.pl rename : openssl/crypto/sha/asm/sha1-armv4-large.pl => main/openssl/crypto/sha/asm/sha1-armv4-large.pl rename : openssl/crypto/sha/asm/sha1-armv4-large.s => main/openssl/crypto/sha/asm/sha1-armv4-large.s rename : openssl/crypto/sha/asm/sha1-ia64.pl => main/openssl/crypto/sha/asm/sha1-ia64.pl rename : openssl/crypto/sha/asm/sha1-ppc.pl => main/openssl/crypto/sha/asm/sha1-ppc.pl rename : openssl/crypto/sha/asm/sha1-s390x.pl => main/openssl/crypto/sha/asm/sha1-s390x.pl rename : openssl/crypto/sha/asm/sha1-sparcv9.pl => main/openssl/crypto/sha/asm/sha1-sparcv9.pl rename : openssl/crypto/sha/asm/sha1-sparcv9a.pl => main/openssl/crypto/sha/asm/sha1-sparcv9a.pl rename : openssl/crypto/sha/asm/sha1-thumb.pl => main/openssl/crypto/sha/asm/sha1-thumb.pl rename : openssl/crypto/sha/asm/sha1-x86_64.pl => main/openssl/crypto/sha/asm/sha1-x86_64.pl rename : openssl/crypto/sha/asm/sha256-586.pl => main/openssl/crypto/sha/asm/sha256-586.pl rename : openssl/crypto/sha/asm/sha256-armv4.pl => main/openssl/crypto/sha/asm/sha256-armv4.pl rename : openssl/crypto/sha/asm/sha256-armv4.s => main/openssl/crypto/sha/asm/sha256-armv4.s rename : openssl/crypto/sha/asm/sha512-586.pl => main/openssl/crypto/sha/asm/sha512-586.pl rename : openssl/crypto/sha/asm/sha512-armv4.pl => main/openssl/crypto/sha/asm/sha512-armv4.pl rename : openssl/crypto/sha/asm/sha512-armv4.s => main/openssl/crypto/sha/asm/sha512-armv4.s rename : openssl/crypto/sha/asm/sha512-ia64.pl => main/openssl/crypto/sha/asm/sha512-ia64.pl rename : openssl/crypto/sha/asm/sha512-ppc.pl => main/openssl/crypto/sha/asm/sha512-ppc.pl rename : openssl/crypto/sha/asm/sha512-s390x.pl => main/openssl/crypto/sha/asm/sha512-s390x.pl rename : openssl/crypto/sha/asm/sha512-sparcv9.pl => main/openssl/crypto/sha/asm/sha512-sparcv9.pl rename : openssl/crypto/sha/asm/sha512-x86_64.pl => main/openssl/crypto/sha/asm/sha512-x86_64.pl rename : openssl/crypto/sha/sha.c => main/openssl/crypto/sha/sha.c rename : openssl/crypto/sha/sha.h => main/openssl/crypto/sha/sha.h rename : openssl/crypto/sha/sha1.c => main/openssl/crypto/sha/sha1.c rename : openssl/crypto/sha/sha1_one.c => main/openssl/crypto/sha/sha1_one.c rename : openssl/crypto/sha/sha1dgst.c => main/openssl/crypto/sha/sha1dgst.c rename : openssl/crypto/sha/sha1test.c => main/openssl/crypto/sha/sha1test.c rename : openssl/crypto/sha/sha256.c => main/openssl/crypto/sha/sha256.c rename : openssl/crypto/sha/sha256t.c => main/openssl/crypto/sha/sha256t.c rename : openssl/crypto/sha/sha512.c => main/openssl/crypto/sha/sha512.c rename : openssl/crypto/sha/sha512t.c => main/openssl/crypto/sha/sha512t.c rename : openssl/crypto/sha/sha_dgst.c => main/openssl/crypto/sha/sha_dgst.c rename : openssl/crypto/sha/sha_locl.h => main/openssl/crypto/sha/sha_locl.h rename : openssl/crypto/sha/shatest.c => main/openssl/crypto/sha/shatest.c rename : openssl/crypto/sparccpuid.S => main/openssl/crypto/sparccpuid.S rename : openssl/crypto/sparcv9cap.c => main/openssl/crypto/sparcv9cap.c rename : openssl/crypto/stack/safestack.h => main/openssl/crypto/stack/safestack.h rename : openssl/crypto/stack/stack.c => main/openssl/crypto/stack/stack.c rename : openssl/crypto/stack/stack.h => main/openssl/crypto/stack/stack.h rename : openssl/crypto/store/README => main/openssl/crypto/store/README rename : openssl/crypto/store/store.h => main/openssl/crypto/store/store.h rename : openssl/crypto/store/str_err.c => main/openssl/crypto/store/str_err.c rename : openssl/crypto/store/str_lib.c => main/openssl/crypto/store/str_lib.c rename : openssl/crypto/store/str_locl.h => main/openssl/crypto/store/str_locl.h rename : openssl/crypto/store/str_mem.c => main/openssl/crypto/store/str_mem.c rename : openssl/crypto/store/str_meth.c => main/openssl/crypto/store/str_meth.c rename : openssl/crypto/symhacks.h => main/openssl/crypto/symhacks.h rename : openssl/crypto/threads/README => main/openssl/crypto/threads/README rename : openssl/crypto/threads/mttest.c => main/openssl/crypto/threads/mttest.c rename : openssl/crypto/threads/netware.bat => main/openssl/crypto/threads/netware.bat rename : openssl/crypto/threads/profile.sh => main/openssl/crypto/threads/profile.sh rename : openssl/crypto/threads/ptest.bat => main/openssl/crypto/threads/ptest.bat rename : openssl/crypto/threads/pthread.sh => main/openssl/crypto/threads/pthread.sh rename : openssl/crypto/threads/pthread2.sh => main/openssl/crypto/threads/pthread2.sh rename : openssl/crypto/threads/purify.sh => main/openssl/crypto/threads/purify.sh rename : openssl/crypto/threads/solaris.sh => main/openssl/crypto/threads/solaris.sh rename : openssl/crypto/threads/th-lock.c => main/openssl/crypto/threads/th-lock.c rename : openssl/crypto/ts/ts_err.c => main/openssl/crypto/ts/ts_err.c rename : openssl/crypto/txt_db/txt_db.c => main/openssl/crypto/txt_db/txt_db.c rename : openssl/crypto/txt_db/txt_db.h => main/openssl/crypto/txt_db/txt_db.h rename : openssl/crypto/ui/ui.h => main/openssl/crypto/ui/ui.h rename : openssl/crypto/ui/ui_compat.c => main/openssl/crypto/ui/ui_compat.c rename : openssl/crypto/ui/ui_compat.h => main/openssl/crypto/ui/ui_compat.h rename : openssl/crypto/ui/ui_err.c => main/openssl/crypto/ui/ui_err.c rename : openssl/crypto/ui/ui_lib.c => main/openssl/crypto/ui/ui_lib.c rename : openssl/crypto/ui/ui_locl.h => main/openssl/crypto/ui/ui_locl.h rename : openssl/crypto/ui/ui_openssl.c => main/openssl/crypto/ui/ui_openssl.c rename : openssl/crypto/ui/ui_util.c => main/openssl/crypto/ui/ui_util.c rename : openssl/crypto/uid.c => main/openssl/crypto/uid.c rename : openssl/crypto/x509/by_dir.c => main/openssl/crypto/x509/by_dir.c rename : openssl/crypto/x509/by_file.c => main/openssl/crypto/x509/by_file.c rename : openssl/crypto/x509/x509.h => main/openssl/crypto/x509/x509.h rename : openssl/crypto/x509/x509_att.c => main/openssl/crypto/x509/x509_att.c rename : openssl/crypto/x509/x509_cmp.c => main/openssl/crypto/x509/x509_cmp.c rename : openssl/crypto/x509/x509_d2.c => main/openssl/crypto/x509/x509_d2.c rename : openssl/crypto/x509/x509_def.c => main/openssl/crypto/x509/x509_def.c rename : openssl/crypto/x509/x509_err.c => main/openssl/crypto/x509/x509_err.c rename : openssl/crypto/x509/x509_ext.c => main/openssl/crypto/x509/x509_ext.c rename : openssl/crypto/x509/x509_lu.c => main/openssl/crypto/x509/x509_lu.c rename : openssl/crypto/x509/x509_obj.c => main/openssl/crypto/x509/x509_obj.c rename : openssl/crypto/x509/x509_r2x.c => main/openssl/crypto/x509/x509_r2x.c rename : openssl/crypto/x509/x509_req.c => main/openssl/crypto/x509/x509_req.c rename : openssl/crypto/x509/x509_set.c => main/openssl/crypto/x509/x509_set.c rename : openssl/crypto/x509/x509_trs.c => main/openssl/crypto/x509/x509_trs.c rename : openssl/crypto/x509/x509_txt.c => main/openssl/crypto/x509/x509_txt.c rename : openssl/crypto/x509/x509_v3.c => main/openssl/crypto/x509/x509_v3.c rename : openssl/crypto/x509/x509_vfy.c => main/openssl/crypto/x509/x509_vfy.c rename : openssl/crypto/x509/x509_vfy.h => main/openssl/crypto/x509/x509_vfy.h rename : openssl/crypto/x509/x509_vpm.c => main/openssl/crypto/x509/x509_vpm.c rename : openssl/crypto/x509/x509cset.c => main/openssl/crypto/x509/x509cset.c rename : openssl/crypto/x509/x509name.c => main/openssl/crypto/x509/x509name.c rename : openssl/crypto/x509/x509rset.c => main/openssl/crypto/x509/x509rset.c rename : openssl/crypto/x509/x509spki.c => main/openssl/crypto/x509/x509spki.c rename : openssl/crypto/x509/x509type.c => main/openssl/crypto/x509/x509type.c rename : openssl/crypto/x509/x_all.c => main/openssl/crypto/x509/x_all.c rename : openssl/crypto/x509v3/ext_dat.h => main/openssl/crypto/x509v3/ext_dat.h rename : openssl/crypto/x509v3/pcy_cache.c => main/openssl/crypto/x509v3/pcy_cache.c rename : openssl/crypto/x509v3/pcy_data.c => main/openssl/crypto/x509v3/pcy_data.c rename : openssl/crypto/x509v3/pcy_int.h => main/openssl/crypto/x509v3/pcy_int.h rename : openssl/crypto/x509v3/pcy_lib.c => main/openssl/crypto/x509v3/pcy_lib.c rename : openssl/crypto/x509v3/pcy_map.c => main/openssl/crypto/x509v3/pcy_map.c rename : openssl/crypto/x509v3/pcy_node.c => main/openssl/crypto/x509v3/pcy_node.c rename : openssl/crypto/x509v3/pcy_tree.c => main/openssl/crypto/x509v3/pcy_tree.c rename : openssl/crypto/x509v3/tabtest.c => main/openssl/crypto/x509v3/tabtest.c rename : openssl/crypto/x509v3/v3_addr.c => main/openssl/crypto/x509v3/v3_addr.c rename : openssl/crypto/x509v3/v3_akey.c => main/openssl/crypto/x509v3/v3_akey.c rename : openssl/crypto/x509v3/v3_akeya.c => main/openssl/crypto/x509v3/v3_akeya.c rename : openssl/crypto/x509v3/v3_alt.c => main/openssl/crypto/x509v3/v3_alt.c rename : openssl/crypto/x509v3/v3_asid.c => main/openssl/crypto/x509v3/v3_asid.c rename : openssl/crypto/x509v3/v3_bcons.c => main/openssl/crypto/x509v3/v3_bcons.c rename : openssl/crypto/x509v3/v3_bitst.c => main/openssl/crypto/x509v3/v3_bitst.c rename : openssl/crypto/x509v3/v3_conf.c => main/openssl/crypto/x509v3/v3_conf.c rename : openssl/crypto/x509v3/v3_cpols.c => main/openssl/crypto/x509v3/v3_cpols.c rename : openssl/crypto/x509v3/v3_crld.c => main/openssl/crypto/x509v3/v3_crld.c rename : openssl/crypto/x509v3/v3_enum.c => main/openssl/crypto/x509v3/v3_enum.c rename : openssl/crypto/x509v3/v3_extku.c => main/openssl/crypto/x509v3/v3_extku.c rename : openssl/crypto/x509v3/v3_genn.c => main/openssl/crypto/x509v3/v3_genn.c rename : openssl/crypto/x509v3/v3_ia5.c => main/openssl/crypto/x509v3/v3_ia5.c rename : openssl/crypto/x509v3/v3_info.c => main/openssl/crypto/x509v3/v3_info.c rename : openssl/crypto/x509v3/v3_int.c => main/openssl/crypto/x509v3/v3_int.c rename : openssl/crypto/x509v3/v3_lib.c => main/openssl/crypto/x509v3/v3_lib.c rename : openssl/crypto/x509v3/v3_ncons.c => main/openssl/crypto/x509v3/v3_ncons.c rename : openssl/crypto/x509v3/v3_ocsp.c => main/openssl/crypto/x509v3/v3_ocsp.c rename : openssl/crypto/x509v3/v3_pci.c => main/openssl/crypto/x509v3/v3_pci.c rename : openssl/crypto/x509v3/v3_pcia.c => main/openssl/crypto/x509v3/v3_pcia.c rename : openssl/crypto/x509v3/v3_pcons.c => main/openssl/crypto/x509v3/v3_pcons.c rename : openssl/crypto/x509v3/v3_pku.c => main/openssl/crypto/x509v3/v3_pku.c rename : openssl/crypto/x509v3/v3_pmaps.c => main/openssl/crypto/x509v3/v3_pmaps.c rename : openssl/crypto/x509v3/v3_prn.c => main/openssl/crypto/x509v3/v3_prn.c rename : openssl/crypto/x509v3/v3_purp.c => main/openssl/crypto/x509v3/v3_purp.c rename : openssl/crypto/x509v3/v3_skey.c => main/openssl/crypto/x509v3/v3_skey.c rename : openssl/crypto/x509v3/v3_sxnet.c => main/openssl/crypto/x509v3/v3_sxnet.c rename : openssl/crypto/x509v3/v3_utl.c => main/openssl/crypto/x509v3/v3_utl.c rename : openssl/crypto/x509v3/v3conf.c => main/openssl/crypto/x509v3/v3conf.c rename : openssl/crypto/x509v3/v3err.c => main/openssl/crypto/x509v3/v3err.c rename : openssl/crypto/x509v3/v3prin.c => main/openssl/crypto/x509v3/v3prin.c rename : openssl/crypto/x509v3/x509v3.h => main/openssl/crypto/x509v3/x509v3.h rename : openssl/crypto/x86_64cpuid.pl => main/openssl/crypto/x86_64cpuid.pl rename : openssl/crypto/x86cpuid.pl => main/openssl/crypto/x86cpuid.pl rename : openssl/e_os.h => main/openssl/e_os.h rename : openssl/e_os2.h => main/openssl/e_os2.h rename : openssl/import_openssl.sh => main/openssl/import_openssl.sh rename : openssl/include/openssl/aes.h => main/openssl/include/openssl/aes.h rename : openssl/include/openssl/asn1.h => main/openssl/include/openssl/asn1.h rename : openssl/include/openssl/asn1_mac.h => main/openssl/include/openssl/asn1_mac.h rename : openssl/include/openssl/asn1t.h => main/openssl/include/openssl/asn1t.h rename : openssl/include/openssl/bio.h => main/openssl/include/openssl/bio.h rename : openssl/include/openssl/blowfish.h => main/openssl/include/openssl/blowfish.h rename : openssl/include/openssl/bn.h => main/openssl/include/openssl/bn.h rename : openssl/include/openssl/buffer.h => main/openssl/include/openssl/buffer.h rename : openssl/include/openssl/comp.h => main/openssl/include/openssl/comp.h rename : openssl/include/openssl/conf.h => main/openssl/include/openssl/conf.h rename : openssl/include/openssl/conf_api.h => main/openssl/include/openssl/conf_api.h rename : openssl/include/openssl/crypto.h => main/openssl/include/openssl/crypto.h rename : openssl/include/openssl/des.h => main/openssl/include/openssl/des.h rename : openssl/include/openssl/des_old.h => main/openssl/include/openssl/des_old.h rename : openssl/include/openssl/dh.h => main/openssl/include/openssl/dh.h rename : openssl/include/openssl/dsa.h => main/openssl/include/openssl/dsa.h rename : openssl/include/openssl/dso.h => main/openssl/include/openssl/dso.h rename : openssl/include/openssl/dtls1.h => main/openssl/include/openssl/dtls1.h rename : openssl/include/openssl/e_os2.h => main/openssl/include/openssl/e_os2.h rename : openssl/include/openssl/ebcdic.h => main/openssl/include/openssl/ebcdic.h rename : openssl/include/openssl/ec.h => main/openssl/include/openssl/ec.h rename : openssl/include/openssl/ecdh.h => main/openssl/include/openssl/ecdh.h rename : openssl/include/openssl/ecdsa.h => main/openssl/include/openssl/ecdsa.h rename : openssl/include/openssl/engine.h => main/openssl/include/openssl/engine.h rename : openssl/include/openssl/err.h => main/openssl/include/openssl/err.h rename : openssl/include/openssl/evp.h => main/openssl/include/openssl/evp.h rename : openssl/include/openssl/hmac.h => main/openssl/include/openssl/hmac.h rename : openssl/include/openssl/krb5_asn.h => main/openssl/include/openssl/krb5_asn.h rename : openssl/include/openssl/kssl.h => main/openssl/include/openssl/kssl.h rename : openssl/include/openssl/lhash.h => main/openssl/include/openssl/lhash.h rename : openssl/include/openssl/md4.h => main/openssl/include/openssl/md4.h rename : openssl/include/openssl/md5.h => main/openssl/include/openssl/md5.h rename : openssl/include/openssl/modes.h => main/openssl/include/openssl/modes.h rename : openssl/include/openssl/obj_mac.h => main/openssl/include/openssl/obj_mac.h rename : openssl/include/openssl/objects.h => main/openssl/include/openssl/objects.h rename : openssl/include/openssl/ocsp.h => main/openssl/include/openssl/ocsp.h rename : openssl/include/openssl/opensslconf.h => main/openssl/include/openssl/opensslconf.h rename : openssl/include/openssl/opensslv.h => main/openssl/include/openssl/opensslv.h rename : openssl/include/openssl/ossl_typ.h => main/openssl/include/openssl/ossl_typ.h rename : openssl/include/openssl/pem.h => main/openssl/include/openssl/pem.h rename : openssl/include/openssl/pem2.h => main/openssl/include/openssl/pem2.h rename : openssl/include/openssl/pkcs12.h => main/openssl/include/openssl/pkcs12.h rename : openssl/include/openssl/pkcs7.h => main/openssl/include/openssl/pkcs7.h rename : openssl/include/openssl/pqueue.h => main/openssl/include/openssl/pqueue.h rename : openssl/include/openssl/rand.h => main/openssl/include/openssl/rand.h rename : openssl/include/openssl/rc2.h => main/openssl/include/openssl/rc2.h rename : openssl/include/openssl/rc4.h => main/openssl/include/openssl/rc4.h rename : openssl/include/openssl/ripemd.h => main/openssl/include/openssl/ripemd.h rename : openssl/include/openssl/rsa.h => main/openssl/include/openssl/rsa.h rename : openssl/include/openssl/safestack.h => main/openssl/include/openssl/safestack.h rename : openssl/include/openssl/sha.h => main/openssl/include/openssl/sha.h rename : openssl/include/openssl/ssl.h => main/openssl/include/openssl/ssl.h rename : openssl/include/openssl/ssl2.h => main/openssl/include/openssl/ssl2.h rename : openssl/include/openssl/ssl23.h => main/openssl/include/openssl/ssl23.h rename : openssl/include/openssl/ssl3.h => main/openssl/include/openssl/ssl3.h rename : openssl/include/openssl/stack.h => main/openssl/include/openssl/stack.h rename : openssl/include/openssl/symhacks.h => main/openssl/include/openssl/symhacks.h rename : openssl/include/openssl/tls1.h => main/openssl/include/openssl/tls1.h rename : openssl/include/openssl/ts.h => main/openssl/include/openssl/ts.h rename : openssl/include/openssl/txt_db.h => main/openssl/include/openssl/txt_db.h rename : openssl/include/openssl/ui.h => main/openssl/include/openssl/ui.h rename : openssl/include/openssl/ui_compat.h => main/openssl/include/openssl/ui_compat.h rename : openssl/include/openssl/x509.h => main/openssl/include/openssl/x509.h rename : openssl/include/openssl/x509_vfy.h => main/openssl/include/openssl/x509_vfy.h rename : openssl/include/openssl/x509v3.h => main/openssl/include/openssl/x509v3.h rename : openssl/openssl.config => main/openssl/openssl.config rename : openssl/openssl.version => main/openssl/openssl.version rename : openssl/patches/README => main/openssl/patches/README rename : openssl/patches/apps_Android.mk => main/openssl/patches/apps_Android.mk rename : openssl/patches/crypto_Android.mk => main/openssl/patches/crypto_Android.mk rename : openssl/patches/handshake_cutthrough.patch => main/openssl/patches/handshake_cutthrough.patch rename : openssl/patches/jsse.patch => main/openssl/patches/jsse.patch rename : openssl/patches/npn.patch => main/openssl/patches/npn.patch rename : openssl/patches/progs.patch => main/openssl/patches/progs.patch rename : openssl/patches/sha1_armv4_large.patch => main/openssl/patches/sha1_armv4_large.patch rename : openssl/patches/small_records.patch => main/openssl/patches/small_records.patch rename : openssl/patches/ssl_Android.mk => main/openssl/patches/ssl_Android.mk rename : openssl/patches/sslv3_uninit_padding.patch => main/openssl/patches/sslv3_uninit_padding.patch rename : openssl/patches/testssl.sh => main/openssl/patches/testssl.sh rename : openssl/ssl/Android.mk => main/openssl/ssl/Android.mk rename : openssl/ssl/Makefile => main/openssl/ssl/Makefile rename : openssl/ssl/bio_ssl.c => main/openssl/ssl/bio_ssl.c rename : openssl/ssl/d1_both.c => main/openssl/ssl/d1_both.c rename : openssl/ssl/d1_clnt.c => main/openssl/ssl/d1_clnt.c rename : openssl/ssl/d1_enc.c => main/openssl/ssl/d1_enc.c rename : openssl/ssl/d1_lib.c => main/openssl/ssl/d1_lib.c rename : openssl/ssl/d1_meth.c => main/openssl/ssl/d1_meth.c rename : openssl/ssl/d1_pkt.c => main/openssl/ssl/d1_pkt.c rename : openssl/ssl/d1_srvr.c => main/openssl/ssl/d1_srvr.c rename : openssl/ssl/dtls1.h => main/openssl/ssl/dtls1.h rename : openssl/ssl/kssl.c => main/openssl/ssl/kssl.c rename : openssl/ssl/kssl.h => main/openssl/ssl/kssl.h rename : openssl/ssl/kssl_lcl.h => main/openssl/ssl/kssl_lcl.h rename : openssl/ssl/s23_clnt.c => main/openssl/ssl/s23_clnt.c rename : openssl/ssl/s23_lib.c => main/openssl/ssl/s23_lib.c rename : openssl/ssl/s23_meth.c => main/openssl/ssl/s23_meth.c rename : openssl/ssl/s23_pkt.c => main/openssl/ssl/s23_pkt.c rename : openssl/ssl/s23_srvr.c => main/openssl/ssl/s23_srvr.c rename : openssl/ssl/s2_clnt.c => main/openssl/ssl/s2_clnt.c rename : openssl/ssl/s2_enc.c => main/openssl/ssl/s2_enc.c rename : openssl/ssl/s2_lib.c => main/openssl/ssl/s2_lib.c rename : openssl/ssl/s2_meth.c => main/openssl/ssl/s2_meth.c rename : openssl/ssl/s2_pkt.c => main/openssl/ssl/s2_pkt.c rename : openssl/ssl/s2_srvr.c => main/openssl/ssl/s2_srvr.c rename : openssl/ssl/s3_both.c => main/openssl/ssl/s3_both.c rename : openssl/ssl/s3_clnt.c => main/openssl/ssl/s3_clnt.c rename : openssl/ssl/s3_enc.c => main/openssl/ssl/s3_enc.c rename : openssl/ssl/s3_lib.c => main/openssl/ssl/s3_lib.c rename : openssl/ssl/s3_meth.c => main/openssl/ssl/s3_meth.c rename : openssl/ssl/s3_pkt.c => main/openssl/ssl/s3_pkt.c rename : openssl/ssl/s3_srvr.c => main/openssl/ssl/s3_srvr.c rename : openssl/ssl/ssl.h => main/openssl/ssl/ssl.h rename : openssl/ssl/ssl2.h => main/openssl/ssl/ssl2.h rename : openssl/ssl/ssl23.h => main/openssl/ssl/ssl23.h rename : openssl/ssl/ssl3.h => main/openssl/ssl/ssl3.h rename : openssl/ssl/ssl_algs.c => main/openssl/ssl/ssl_algs.c rename : openssl/ssl/ssl_asn1.c => main/openssl/ssl/ssl_asn1.c rename : openssl/ssl/ssl_cert.c => main/openssl/ssl/ssl_cert.c rename : openssl/ssl/ssl_ciph.c => main/openssl/ssl/ssl_ciph.c rename : openssl/ssl/ssl_err.c => main/openssl/ssl/ssl_err.c rename : openssl/ssl/ssl_err2.c => main/openssl/ssl/ssl_err2.c rename : openssl/ssl/ssl_lib.c => main/openssl/ssl/ssl_lib.c rename : openssl/ssl/ssl_locl.h => main/openssl/ssl/ssl_locl.h rename : openssl/ssl/ssl_rsa.c => main/openssl/ssl/ssl_rsa.c rename : openssl/ssl/ssl_sess.c => main/openssl/ssl/ssl_sess.c rename : openssl/ssl/ssl_stat.c => main/openssl/ssl/ssl_stat.c rename : openssl/ssl/ssl_txt.c => main/openssl/ssl/ssl_txt.c rename : openssl/ssl/ssltest.c => main/openssl/ssl/ssltest.c rename : openssl/ssl/t1_clnt.c => main/openssl/ssl/t1_clnt.c rename : openssl/ssl/t1_enc.c => main/openssl/ssl/t1_enc.c rename : openssl/ssl/t1_lib.c => main/openssl/ssl/t1_lib.c rename : openssl/ssl/t1_meth.c => main/openssl/ssl/t1_meth.c rename : openssl/ssl/t1_reneg.c => main/openssl/ssl/t1_reneg.c rename : openssl/ssl/t1_srvr.c => main/openssl/ssl/t1_srvr.c rename : openssl/ssl/tls1.h => main/openssl/ssl/tls1.h rename : openvpn/.gitignore => main/openvpn/.gitignore rename : openvpn/.mailmap => main/openvpn/.mailmap rename : openvpn/.svncommitters => main/openvpn/.svncommitters rename : openvpn/AUTHORS => main/openvpn/AUTHORS rename : openvpn/Android.mk => main/openvpn/Android.mk rename : openvpn/COPYING => main/openvpn/COPYING rename : openvpn/COPYRIGHT.GPL => main/openvpn/COPYRIGHT.GPL rename : openvpn/ChangeLog => main/openvpn/ChangeLog rename : openvpn/INSTALL => main/openvpn/INSTALL rename : openvpn/INSTALL-win32.txt => main/openvpn/INSTALL-win32.txt rename : openvpn/Makefile.am => main/openvpn/Makefile.am rename : openvpn/NEWS => main/openvpn/NEWS rename : openvpn/PORTS => main/openvpn/PORTS rename : openvpn/README => main/openvpn/README rename : openvpn/README.IPv6 => main/openvpn/README.IPv6 rename : openvpn/README.polarssl => main/openvpn/README.polarssl rename : openvpn/TODO.IPv6 => main/openvpn/TODO.IPv6 rename : openvpn/build/Makefile.am => main/openvpn/build/Makefile.am rename : openvpn/build/ltrc.inc => main/openvpn/build/ltrc.inc rename : openvpn/build/msvc/Makefile.am => main/openvpn/build/msvc/Makefile.am rename : openvpn/build/msvc/msvc-generate/Makefile.am => main/openvpn/build/msvc/msvc-generate/Makefile.am rename : openvpn/build/msvc/msvc-generate/Makefile.mak => main/openvpn/build/msvc/msvc-generate/Makefile.mak rename : openvpn/build/msvc/msvc-generate/msvc-generate.js => main/openvpn/build/msvc/msvc-generate/msvc-generate.js rename : openvpn/build/msvc/msvc-generate/msvc-generate.vcxproj => main/openvpn/build/msvc/msvc-generate/msvc-generate.vcxproj rename : openvpn/compat.m4 => main/openvpn/compat.m4 rename : openvpn/config-msvc-version.h.in => main/openvpn/config-msvc-version.h.in rename : openvpn/config-msvc.h => main/openvpn/config-msvc.h rename : openvpn/config-version.h => main/openvpn/config-version.h rename : openvpn/config.h => main/openvpn/config.h rename : openvpn/configure.ac => main/openvpn/configure.ac rename : openvpn/contrib/OCSP_check/OCSP_check.sh => main/openvpn/contrib/OCSP_check/OCSP_check.sh rename : openvpn/contrib/README => main/openvpn/contrib/README rename : openvpn/contrib/multilevel-init.patch => main/openvpn/contrib/multilevel-init.patch rename : openvpn/contrib/openvpn-fwmarkroute-1.00/README => main/openvpn/contrib/openvpn-fwmarkroute-1.00/README rename : openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down => main/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.down rename : openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.up => main/openvpn/contrib/openvpn-fwmarkroute-1.00/fwmarkroute.up rename : openvpn/contrib/pull-resolv-conf/client.down => main/openvpn/contrib/pull-resolv-conf/client.down rename : openvpn/contrib/pull-resolv-conf/client.up => main/openvpn/contrib/pull-resolv-conf/client.up rename : openvpn/debug/doval => main/openvpn/debug/doval rename : openvpn/debug/dovalns => main/openvpn/debug/dovalns rename : openvpn/debug/valgrind-suppress => main/openvpn/debug/valgrind-suppress rename : openvpn/distro/Makefile.am => main/openvpn/distro/Makefile.am rename : openvpn/distro/rpm/Makefile.am => main/openvpn/distro/rpm/Makefile.am rename : openvpn/distro/rpm/openvpn.init.d.rhel => main/openvpn/distro/rpm/openvpn.init.d.rhel rename : openvpn/distro/rpm/openvpn.init.d.suse => main/openvpn/distro/rpm/openvpn.init.d.suse rename : openvpn/distro/rpm/openvpn.spec => main/openvpn/distro/rpm/openvpn.spec rename : openvpn/distro/rpm/openvpn.spec.in => main/openvpn/distro/rpm/openvpn.spec.in rename : openvpn/doc/Makefile.am => main/openvpn/doc/Makefile.am rename : openvpn/doc/README.plugins => main/openvpn/doc/README.plugins rename : openvpn/doc/android.txt => main/openvpn/doc/android.txt rename : openvpn/doc/doxygen/doc_compression.h => main/openvpn/doc/doxygen/doc_compression.h rename : openvpn/doc/doxygen/doc_control_processor.h => main/openvpn/doc/doxygen/doc_control_processor.h rename : openvpn/doc/doxygen/doc_control_tls.h => main/openvpn/doc/doxygen/doc_control_tls.h rename : openvpn/doc/doxygen/doc_data_control.h => main/openvpn/doc/doxygen/doc_data_control.h rename : openvpn/doc/doxygen/doc_data_crypto.h => main/openvpn/doc/doxygen/doc_data_crypto.h rename : openvpn/doc/doxygen/doc_eventloop.h => main/openvpn/doc/doxygen/doc_eventloop.h rename : openvpn/doc/doxygen/doc_external_multiplexer.h => main/openvpn/doc/doxygen/doc_external_multiplexer.h rename : openvpn/doc/doxygen/doc_fragmentation.h => main/openvpn/doc/doxygen/doc_fragmentation.h rename : openvpn/doc/doxygen/doc_internal_multiplexer.h => main/openvpn/doc/doxygen/doc_internal_multiplexer.h rename : openvpn/doc/doxygen/doc_key_generation.h => main/openvpn/doc/doxygen/doc_key_generation.h rename : openvpn/doc/doxygen/doc_mainpage.h => main/openvpn/doc/doxygen/doc_mainpage.h rename : openvpn/doc/doxygen/doc_memory_management.h => main/openvpn/doc/doxygen/doc_memory_management.h rename : openvpn/doc/doxygen/doc_protocol_overview.h => main/openvpn/doc/doxygen/doc_protocol_overview.h rename : openvpn/doc/doxygen/doc_reliable.h => main/openvpn/doc/doxygen/doc_reliable.h rename : openvpn/doc/doxygen/doc_tunnel_state.h => main/openvpn/doc/doxygen/doc_tunnel_state.h rename : openvpn/doc/doxygen/openvpn.doxyfile => main/openvpn/doc/doxygen/openvpn.doxyfile rename : openvpn/doc/management-notes.txt => main/openvpn/doc/management-notes.txt rename : openvpn/doc/openvpn.8 => main/openvpn/doc/openvpn.8 rename : openvpn/include/Makefile.am => main/openvpn/include/Makefile.am rename : openvpn/include/openvpn-plugin.h => main/openvpn/include/openvpn-plugin.h rename : openvpn/m4/.keep => main/openvpn/m4/.keep rename : openvpn/m4/ax_emptyarray.m4 => main/openvpn/m4/ax_emptyarray.m4 rename : openvpn/m4/ax_socklen_t.m4 => main/openvpn/m4/ax_socklen_t.m4 rename : openvpn/m4/ax_varargs.m4 => main/openvpn/m4/ax_varargs.m4 rename : openvpn/m4/pkg.m4 => main/openvpn/m4/pkg.m4 rename : openvpn/msvc-build.bat => main/openvpn/msvc-build.bat rename : openvpn/msvc-dev.bat => main/openvpn/msvc-dev.bat rename : openvpn/msvc-env.bat => main/openvpn/msvc-env.bat rename : openvpn/openvpn.sln => main/openvpn/openvpn.sln rename : openvpn/sample/Makefile.am => main/openvpn/sample/Makefile.am rename : openvpn/sample/sample-config-files/README => main/openvpn/sample/sample-config-files/README rename : openvpn/sample/sample-config-files/client.conf => main/openvpn/sample/sample-config-files/client.conf rename : openvpn/sample/sample-config-files/firewall.sh => main/openvpn/sample/sample-config-files/firewall.sh rename : openvpn/sample/sample-config-files/home.up => main/openvpn/sample/sample-config-files/home.up rename : openvpn/sample/sample-config-files/loopback-client => main/openvpn/sample/sample-config-files/loopback-client rename : openvpn/sample/sample-config-files/loopback-server => main/openvpn/sample/sample-config-files/loopback-server rename : openvpn/sample/sample-config-files/office.up => main/openvpn/sample/sample-config-files/office.up rename : openvpn/sample/sample-config-files/openvpn-shutdown.sh => main/openvpn/sample/sample-config-files/openvpn-shutdown.sh rename : openvpn/sample/sample-config-files/openvpn-startup.sh => main/openvpn/sample/sample-config-files/openvpn-startup.sh rename : openvpn/sample/sample-config-files/server.conf => main/openvpn/sample/sample-config-files/server.conf rename : openvpn/sample/sample-config-files/static-home.conf => main/openvpn/sample/sample-config-files/static-home.conf rename : openvpn/sample/sample-config-files/static-office.conf => main/openvpn/sample/sample-config-files/static-office.conf rename : openvpn/sample/sample-config-files/tls-home.conf => main/openvpn/sample/sample-config-files/tls-home.conf rename : openvpn/sample/sample-config-files/tls-office.conf => main/openvpn/sample/sample-config-files/tls-office.conf rename : openvpn/sample/sample-config-files/xinetd-client-config => main/openvpn/sample/sample-config-files/xinetd-client-config rename : openvpn/sample/sample-config-files/xinetd-server-config => main/openvpn/sample/sample-config-files/xinetd-server-config rename : openvpn/sample/sample-keys/README => main/openvpn/sample/sample-keys/README rename : openvpn/sample/sample-keys/ca.crt => main/openvpn/sample/sample-keys/ca.crt rename : openvpn/sample/sample-keys/ca.key => main/openvpn/sample/sample-keys/ca.key rename : openvpn/sample/sample-keys/client.crt => main/openvpn/sample/sample-keys/client.crt rename : openvpn/sample/sample-keys/client.key => main/openvpn/sample/sample-keys/client.key rename : openvpn/sample/sample-keys/dh1024.pem => main/openvpn/sample/sample-keys/dh1024.pem rename : openvpn/sample/sample-keys/pass.crt => main/openvpn/sample/sample-keys/pass.crt rename : openvpn/sample/sample-keys/pass.key => main/openvpn/sample/sample-keys/pass.key rename : openvpn/sample/sample-keys/pkcs12.p12 => main/openvpn/sample/sample-keys/pkcs12.p12 rename : openvpn/sample/sample-keys/server.crt => main/openvpn/sample/sample-keys/server.crt rename : openvpn/sample/sample-keys/server.key => main/openvpn/sample/sample-keys/server.key rename : openvpn/sample/sample-plugins/defer/README => main/openvpn/sample/sample-plugins/defer/README rename : openvpn/sample/sample-plugins/defer/build => main/openvpn/sample/sample-plugins/defer/build rename : openvpn/sample/sample-plugins/defer/simple.c => main/openvpn/sample/sample-plugins/defer/simple.c rename : openvpn/sample/sample-plugins/defer/simple.def => main/openvpn/sample/sample-plugins/defer/simple.def rename : openvpn/sample/sample-plugins/defer/winbuild => main/openvpn/sample/sample-plugins/defer/winbuild rename : openvpn/sample/sample-plugins/log/build => main/openvpn/sample/sample-plugins/log/build rename : openvpn/sample/sample-plugins/log/log.c => main/openvpn/sample/sample-plugins/log/log.c rename : openvpn/sample/sample-plugins/log/log_v3.c => main/openvpn/sample/sample-plugins/log/log_v3.c rename : openvpn/sample/sample-plugins/log/winbuild => main/openvpn/sample/sample-plugins/log/winbuild rename : openvpn/sample/sample-plugins/simple/README => main/openvpn/sample/sample-plugins/simple/README rename : openvpn/sample/sample-plugins/simple/build => main/openvpn/sample/sample-plugins/simple/build rename : openvpn/sample/sample-plugins/simple/simple.c => main/openvpn/sample/sample-plugins/simple/simple.c rename : openvpn/sample/sample-plugins/simple/simple.def => main/openvpn/sample/sample-plugins/simple/simple.def rename : openvpn/sample/sample-plugins/simple/winbuild => main/openvpn/sample/sample-plugins/simple/winbuild rename : openvpn/sample/sample-scripts/auth-pam.pl => main/openvpn/sample/sample-scripts/auth-pam.pl rename : openvpn/sample/sample-scripts/bridge-start => main/openvpn/sample/sample-scripts/bridge-start rename : openvpn/sample/sample-scripts/bridge-stop => main/openvpn/sample/sample-scripts/bridge-stop rename : openvpn/sample/sample-scripts/ucn.pl => main/openvpn/sample/sample-scripts/ucn.pl rename : openvpn/sample/sample-scripts/verify-cn => main/openvpn/sample/sample-scripts/verify-cn rename : openvpn/sample/sample-windows/sample.ovpn => main/openvpn/sample/sample-windows/sample.ovpn rename : openvpn/src/Makefile.am => main/openvpn/src/Makefile.am rename : openvpn/src/compat/Makefile.am => main/openvpn/src/compat/Makefile.am rename : openvpn/src/compat/compat-basename.c => main/openvpn/src/compat/compat-basename.c rename : openvpn/src/compat/compat-daemon.c => main/openvpn/src/compat/compat-daemon.c rename : openvpn/src/compat/compat-dirname.c => main/openvpn/src/compat/compat-dirname.c rename : openvpn/src/compat/compat-gettimeofday.c => main/openvpn/src/compat/compat-gettimeofday.c rename : openvpn/src/compat/compat-inet_ntop.c => main/openvpn/src/compat/compat-inet_ntop.c rename : openvpn/src/compat/compat-inet_pton.c => main/openvpn/src/compat/compat-inet_pton.c rename : openvpn/src/compat/compat-lz4.c => main/openvpn/src/compat/compat-lz4.c rename : openvpn/src/compat/compat-lz4.h => main/openvpn/src/compat/compat-lz4.h rename : openvpn/src/compat/compat-stdbool.h => main/openvpn/src/compat/compat-stdbool.h rename : openvpn/src/compat/compat.h => main/openvpn/src/compat/compat.h rename : openvpn/src/compat/compat.vcxproj => main/openvpn/src/compat/compat.vcxproj rename : openvpn/src/compat/compat.vcxproj.filters => main/openvpn/src/compat/compat.vcxproj.filters rename : openvpn/src/openvpn/Makefile.am => main/openvpn/src/openvpn/Makefile.am rename : openvpn/src/openvpn/base64.c => main/openvpn/src/openvpn/base64.c rename : openvpn/src/openvpn/base64.h => main/openvpn/src/openvpn/base64.h rename : openvpn/src/openvpn/basic.h => main/openvpn/src/openvpn/basic.h rename : openvpn/src/openvpn/breakpad.cpp => main/openvpn/src/openvpn/breakpad.cpp rename : openvpn/src/openvpn/breakpad.h => main/openvpn/src/openvpn/breakpad.h rename : openvpn/src/openvpn/buffer.c => main/openvpn/src/openvpn/buffer.c rename : openvpn/src/openvpn/buffer.h => main/openvpn/src/openvpn/buffer.h rename : openvpn/src/openvpn/circ_list.h => main/openvpn/src/openvpn/circ_list.h rename : openvpn/src/openvpn/clinat.c => main/openvpn/src/openvpn/clinat.c rename : openvpn/src/openvpn/clinat.h => main/openvpn/src/openvpn/clinat.h rename : openvpn/src/openvpn/common.h => main/openvpn/src/openvpn/common.h rename : openvpn/src/openvpn/comp-lz4.c => main/openvpn/src/openvpn/comp-lz4.c rename : openvpn/src/openvpn/comp-lz4.h => main/openvpn/src/openvpn/comp-lz4.h rename : openvpn/src/openvpn/comp.c => main/openvpn/src/openvpn/comp.c rename : openvpn/src/openvpn/comp.h => main/openvpn/src/openvpn/comp.h rename : openvpn/src/openvpn/compstub.c => main/openvpn/src/openvpn/compstub.c rename : openvpn/src/openvpn/console.c => main/openvpn/src/openvpn/console.c rename : openvpn/src/openvpn/console.h => main/openvpn/src/openvpn/console.h rename : openvpn/src/openvpn/crypto.c => main/openvpn/src/openvpn/crypto.c rename : openvpn/src/openvpn/crypto.h => main/openvpn/src/openvpn/crypto.h rename : openvpn/src/openvpn/crypto_backend.h => main/openvpn/src/openvpn/crypto_backend.h rename : openvpn/src/openvpn/crypto_openssl.c => main/openvpn/src/openvpn/crypto_openssl.c rename : openvpn/src/openvpn/crypto_openssl.h => main/openvpn/src/openvpn/crypto_openssl.h rename : openvpn/src/openvpn/crypto_polarssl.c => main/openvpn/src/openvpn/crypto_polarssl.c rename : openvpn/src/openvpn/crypto_polarssl.h => main/openvpn/src/openvpn/crypto_polarssl.h rename : openvpn/src/openvpn/cryptoapi.c => main/openvpn/src/openvpn/cryptoapi.c rename : openvpn/src/openvpn/cryptoapi.h => main/openvpn/src/openvpn/cryptoapi.h rename : openvpn/src/openvpn/dhcp.c => main/openvpn/src/openvpn/dhcp.c rename : openvpn/src/openvpn/dhcp.h => main/openvpn/src/openvpn/dhcp.h rename : openvpn/src/openvpn/errlevel.h => main/openvpn/src/openvpn/errlevel.h rename : openvpn/src/openvpn/error.c => main/openvpn/src/openvpn/error.c rename : openvpn/src/openvpn/error.h => main/openvpn/src/openvpn/error.h rename : openvpn/src/openvpn/event.c => main/openvpn/src/openvpn/event.c rename : openvpn/src/openvpn/event.h => main/openvpn/src/openvpn/event.h rename : openvpn/src/openvpn/fdmisc.c => main/openvpn/src/openvpn/fdmisc.c rename : openvpn/src/openvpn/fdmisc.h => main/openvpn/src/openvpn/fdmisc.h rename : openvpn/src/openvpn/forward-inline.h => main/openvpn/src/openvpn/forward-inline.h rename : openvpn/src/openvpn/forward.c => main/openvpn/src/openvpn/forward.c rename : openvpn/src/openvpn/forward.h => main/openvpn/src/openvpn/forward.h rename : openvpn/src/openvpn/fragment.c => main/openvpn/src/openvpn/fragment.c rename : openvpn/src/openvpn/fragment.h => main/openvpn/src/openvpn/fragment.h rename : openvpn/src/openvpn/gremlin.c => main/openvpn/src/openvpn/gremlin.c rename : openvpn/src/openvpn/gremlin.h => main/openvpn/src/openvpn/gremlin.h rename : openvpn/src/openvpn/helper.c => main/openvpn/src/openvpn/helper.c rename : openvpn/src/openvpn/helper.h => main/openvpn/src/openvpn/helper.h rename : openvpn/src/openvpn/httpdigest.c => main/openvpn/src/openvpn/httpdigest.c rename : openvpn/src/openvpn/httpdigest.h => main/openvpn/src/openvpn/httpdigest.h rename : openvpn/src/openvpn/init.c => main/openvpn/src/openvpn/init.c rename : openvpn/src/openvpn/init.h => main/openvpn/src/openvpn/init.h rename : openvpn/src/openvpn/integer.h => main/openvpn/src/openvpn/integer.h rename : openvpn/src/openvpn/interval.c => main/openvpn/src/openvpn/interval.c rename : openvpn/src/openvpn/interval.h => main/openvpn/src/openvpn/interval.h rename : openvpn/src/openvpn/list.c => main/openvpn/src/openvpn/list.c rename : openvpn/src/openvpn/list.h => main/openvpn/src/openvpn/list.h rename : openvpn/src/openvpn/lladdr.c => main/openvpn/src/openvpn/lladdr.c rename : openvpn/src/openvpn/lladdr.h => main/openvpn/src/openvpn/lladdr.h rename : openvpn/src/openvpn/lzo.c => main/openvpn/src/openvpn/lzo.c rename : openvpn/src/openvpn/lzo.h => main/openvpn/src/openvpn/lzo.h rename : openvpn/src/openvpn/manage.c => main/openvpn/src/openvpn/manage.c rename : openvpn/src/openvpn/manage.h => main/openvpn/src/openvpn/manage.h rename : openvpn/src/openvpn/mbuf.c => main/openvpn/src/openvpn/mbuf.c rename : openvpn/src/openvpn/mbuf.h => main/openvpn/src/openvpn/mbuf.h rename : openvpn/src/openvpn/memdbg.h => main/openvpn/src/openvpn/memdbg.h rename : openvpn/src/openvpn/misc.c => main/openvpn/src/openvpn/misc.c rename : openvpn/src/openvpn/misc.h => main/openvpn/src/openvpn/misc.h rename : openvpn/src/openvpn/mroute.c => main/openvpn/src/openvpn/mroute.c rename : openvpn/src/openvpn/mroute.h => main/openvpn/src/openvpn/mroute.h rename : openvpn/src/openvpn/mss.c => main/openvpn/src/openvpn/mss.c rename : openvpn/src/openvpn/mss.h => main/openvpn/src/openvpn/mss.h rename : openvpn/src/openvpn/mstats.c => main/openvpn/src/openvpn/mstats.c rename : openvpn/src/openvpn/mstats.h => main/openvpn/src/openvpn/mstats.h rename : openvpn/src/openvpn/mtcp.c => main/openvpn/src/openvpn/mtcp.c rename : openvpn/src/openvpn/mtcp.h => main/openvpn/src/openvpn/mtcp.h rename : openvpn/src/openvpn/mtu.c => main/openvpn/src/openvpn/mtu.c rename : openvpn/src/openvpn/mtu.h => main/openvpn/src/openvpn/mtu.h rename : openvpn/src/openvpn/mudp.c => main/openvpn/src/openvpn/mudp.c rename : openvpn/src/openvpn/mudp.h => main/openvpn/src/openvpn/mudp.h rename : openvpn/src/openvpn/multi.c => main/openvpn/src/openvpn/multi.c rename : openvpn/src/openvpn/multi.h => main/openvpn/src/openvpn/multi.h rename : openvpn/src/openvpn/ntlm.c => main/openvpn/src/openvpn/ntlm.c rename : openvpn/src/openvpn/ntlm.h => main/openvpn/src/openvpn/ntlm.h rename : openvpn/src/openvpn/occ-inline.h => main/openvpn/src/openvpn/occ-inline.h rename : openvpn/src/openvpn/occ.c => main/openvpn/src/openvpn/occ.c rename : openvpn/src/openvpn/occ.h => main/openvpn/src/openvpn/occ.h rename : openvpn/src/openvpn/openvpn.c => main/openvpn/src/openvpn/openvpn.c rename : openvpn/src/openvpn/openvpn.h => main/openvpn/src/openvpn/openvpn.h rename : openvpn/src/openvpn/openvpn.vcxproj => main/openvpn/src/openvpn/openvpn.vcxproj rename : openvpn/src/openvpn/openvpn.vcxproj.filters => main/openvpn/src/openvpn/openvpn.vcxproj.filters rename : openvpn/src/openvpn/openvpn_win32_resources.rc => main/openvpn/src/openvpn/openvpn_win32_resources.rc rename : openvpn/src/openvpn/options.c => main/openvpn/src/openvpn/options.c rename : openvpn/src/openvpn/options.h => main/openvpn/src/openvpn/options.h rename : openvpn/src/openvpn/otime.c => main/openvpn/src/openvpn/otime.c rename : openvpn/src/openvpn/otime.h => main/openvpn/src/openvpn/otime.h rename : openvpn/src/openvpn/packet_id.c => main/openvpn/src/openvpn/packet_id.c rename : openvpn/src/openvpn/packet_id.h => main/openvpn/src/openvpn/packet_id.h rename : openvpn/src/openvpn/perf.c => main/openvpn/src/openvpn/perf.c rename : openvpn/src/openvpn/perf.h => main/openvpn/src/openvpn/perf.h rename : openvpn/src/openvpn/pf-inline.h => main/openvpn/src/openvpn/pf-inline.h rename : openvpn/src/openvpn/pf.c => main/openvpn/src/openvpn/pf.c rename : openvpn/src/openvpn/pf.h => main/openvpn/src/openvpn/pf.h rename : openvpn/src/openvpn/ping-inline.h => main/openvpn/src/openvpn/ping-inline.h rename : openvpn/src/openvpn/ping.c => main/openvpn/src/openvpn/ping.c rename : openvpn/src/openvpn/ping.h => main/openvpn/src/openvpn/ping.h rename : openvpn/src/openvpn/pkcs11.c => main/openvpn/src/openvpn/pkcs11.c rename : openvpn/src/openvpn/pkcs11.h => main/openvpn/src/openvpn/pkcs11.h rename : openvpn/src/openvpn/pkcs11_backend.h => main/openvpn/src/openvpn/pkcs11_backend.h rename : openvpn/src/openvpn/pkcs11_openssl.c => main/openvpn/src/openvpn/pkcs11_openssl.c rename : openvpn/src/openvpn/pkcs11_polarssl.c => main/openvpn/src/openvpn/pkcs11_polarssl.c rename : openvpn/src/openvpn/platform.c => main/openvpn/src/openvpn/platform.c rename : openvpn/src/openvpn/platform.h => main/openvpn/src/openvpn/platform.h rename : openvpn/src/openvpn/plugin.c => main/openvpn/src/openvpn/plugin.c rename : openvpn/src/openvpn/plugin.h => main/openvpn/src/openvpn/plugin.h rename : openvpn/src/openvpn/pool.c => main/openvpn/src/openvpn/pool.c rename : openvpn/src/openvpn/pool.h => main/openvpn/src/openvpn/pool.h rename : openvpn/src/openvpn/proto.c => main/openvpn/src/openvpn/proto.c rename : openvpn/src/openvpn/proto.h => main/openvpn/src/openvpn/proto.h rename : openvpn/src/openvpn/proxy.c => main/openvpn/src/openvpn/proxy.c rename : openvpn/src/openvpn/proxy.h => main/openvpn/src/openvpn/proxy.h rename : openvpn/src/openvpn/ps.c => main/openvpn/src/openvpn/ps.c rename : openvpn/src/openvpn/ps.h => main/openvpn/src/openvpn/ps.h rename : openvpn/src/openvpn/push.c => main/openvpn/src/openvpn/push.c rename : openvpn/src/openvpn/push.h => main/openvpn/src/openvpn/push.h rename : openvpn/src/openvpn/pushlist.h => main/openvpn/src/openvpn/pushlist.h rename : openvpn/src/openvpn/reliable.c => main/openvpn/src/openvpn/reliable.c rename : openvpn/src/openvpn/reliable.h => main/openvpn/src/openvpn/reliable.h rename : openvpn/src/openvpn/route.c => main/openvpn/src/openvpn/route.c rename : openvpn/src/openvpn/route.h => main/openvpn/src/openvpn/route.h rename : openvpn/src/openvpn/schedule.c => main/openvpn/src/openvpn/schedule.c rename : openvpn/src/openvpn/schedule.h => main/openvpn/src/openvpn/schedule.h rename : openvpn/src/openvpn/session_id.c => main/openvpn/src/openvpn/session_id.c rename : openvpn/src/openvpn/session_id.h => main/openvpn/src/openvpn/session_id.h rename : openvpn/src/openvpn/shaper.c => main/openvpn/src/openvpn/shaper.c rename : openvpn/src/openvpn/shaper.h => main/openvpn/src/openvpn/shaper.h rename : openvpn/src/openvpn/sig.c => main/openvpn/src/openvpn/sig.c rename : openvpn/src/openvpn/sig.h => main/openvpn/src/openvpn/sig.h rename : openvpn/src/openvpn/snappy.c => main/openvpn/src/openvpn/snappy.c rename : openvpn/src/openvpn/snappy.h => main/openvpn/src/openvpn/snappy.h rename : openvpn/src/openvpn/socket.c => main/openvpn/src/openvpn/socket.c rename : openvpn/src/openvpn/socket.h => main/openvpn/src/openvpn/socket.h rename : openvpn/src/openvpn/socks.c => main/openvpn/src/openvpn/socks.c rename : openvpn/src/openvpn/socks.h => main/openvpn/src/openvpn/socks.h rename : openvpn/src/openvpn/ssl.c => main/openvpn/src/openvpn/ssl.c rename : openvpn/src/openvpn/ssl.h => main/openvpn/src/openvpn/ssl.h rename : openvpn/src/openvpn/ssl_backend.h => main/openvpn/src/openvpn/ssl_backend.h rename : openvpn/src/openvpn/ssl_common.h => main/openvpn/src/openvpn/ssl_common.h rename : openvpn/src/openvpn/ssl_openssl.c => main/openvpn/src/openvpn/ssl_openssl.c rename : openvpn/src/openvpn/ssl_openssl.h => main/openvpn/src/openvpn/ssl_openssl.h rename : openvpn/src/openvpn/ssl_polarssl.c => main/openvpn/src/openvpn/ssl_polarssl.c rename : openvpn/src/openvpn/ssl_polarssl.h => main/openvpn/src/openvpn/ssl_polarssl.h rename : openvpn/src/openvpn/ssl_verify.c => main/openvpn/src/openvpn/ssl_verify.c rename : openvpn/src/openvpn/ssl_verify.h => main/openvpn/src/openvpn/ssl_verify.h rename : openvpn/src/openvpn/ssl_verify_backend.h => main/openvpn/src/openvpn/ssl_verify_backend.h rename : openvpn/src/openvpn/ssl_verify_openssl.c => main/openvpn/src/openvpn/ssl_verify_openssl.c rename : openvpn/src/openvpn/ssl_verify_openssl.h => main/openvpn/src/openvpn/ssl_verify_openssl.h rename : openvpn/src/openvpn/ssl_verify_polarssl.c => main/openvpn/src/openvpn/ssl_verify_polarssl.c rename : openvpn/src/openvpn/ssl_verify_polarssl.h => main/openvpn/src/openvpn/ssl_verify_polarssl.h rename : openvpn/src/openvpn/status.c => main/openvpn/src/openvpn/status.c rename : openvpn/src/openvpn/status.h => main/openvpn/src/openvpn/status.h rename : openvpn/src/openvpn/syshead.h => main/openvpn/src/openvpn/syshead.h rename : openvpn/src/openvpn/tun.c => main/openvpn/src/openvpn/tun.c rename : openvpn/src/openvpn/tun.h => main/openvpn/src/openvpn/tun.h rename : openvpn/src/openvpn/win32.c => main/openvpn/src/openvpn/win32.c rename : openvpn/src/openvpn/win32.h => main/openvpn/src/openvpn/win32.h rename : openvpn/src/openvpnserv/Makefile.am => main/openvpn/src/openvpnserv/Makefile.am rename : openvpn/src/openvpnserv/openvpnserv.c => main/openvpn/src/openvpnserv/openvpnserv.c rename : openvpn/src/openvpnserv/openvpnserv.vcxproj => main/openvpn/src/openvpnserv/openvpnserv.vcxproj rename : openvpn/src/openvpnserv/openvpnserv.vcxproj.filters => main/openvpn/src/openvpnserv/openvpnserv.vcxproj.filters rename : openvpn/src/openvpnserv/openvpnserv_resources.rc => main/openvpn/src/openvpnserv/openvpnserv_resources.rc rename : openvpn/src/openvpnserv/service.c => main/openvpn/src/openvpnserv/service.c rename : openvpn/src/openvpnserv/service.h => main/openvpn/src/openvpnserv/service.h rename : openvpn/src/plugins/Makefile.am => main/openvpn/src/plugins/Makefile.am rename : openvpn/src/plugins/Makefile.in => main/openvpn/src/plugins/Makefile.in rename : openvpn/src/plugins/auth-pam/Makefile.am => main/openvpn/src/plugins/auth-pam/Makefile.am rename : openvpn/src/plugins/auth-pam/Makefile.in => main/openvpn/src/plugins/auth-pam/Makefile.in rename : openvpn/src/plugins/auth-pam/README.auth-pam => main/openvpn/src/plugins/auth-pam/README.auth-pam rename : openvpn/src/plugins/auth-pam/auth-pam.c => main/openvpn/src/plugins/auth-pam/auth-pam.c rename : openvpn/src/plugins/auth-pam/auth-pam.exports => main/openvpn/src/plugins/auth-pam/auth-pam.exports rename : openvpn/src/plugins/auth-pam/pamdl.c => main/openvpn/src/plugins/auth-pam/pamdl.c rename : openvpn/src/plugins/auth-pam/pamdl.h => main/openvpn/src/plugins/auth-pam/pamdl.h rename : openvpn/src/plugins/down-root/Makefile.am => main/openvpn/src/plugins/down-root/Makefile.am rename : openvpn/src/plugins/down-root/Makefile.in => main/openvpn/src/plugins/down-root/Makefile.in rename : openvpn/src/plugins/down-root/README.down-root => main/openvpn/src/plugins/down-root/README.down-root rename : openvpn/src/plugins/down-root/down-root.c => main/openvpn/src/plugins/down-root/down-root.c rename : openvpn/src/plugins/down-root/down-root.exports => main/openvpn/src/plugins/down-root/down-root.exports rename : openvpn/tests/Makefile.am => main/openvpn/tests/Makefile.am rename : openvpn/tests/t_client.rc-sample => main/openvpn/tests/t_client.rc-sample rename : openvpn/tests/t_client.sh.in => main/openvpn/tests/t_client.sh.in rename : openvpn/tests/t_cltsrv-down.sh => main/openvpn/tests/t_cltsrv-down.sh rename : openvpn/tests/t_cltsrv.sh => main/openvpn/tests/t_cltsrv.sh rename : openvpn/tests/t_lpback.sh => main/openvpn/tests/t_lpback.sh rename : openvpn/version.m4 => main/openvpn/version.m4 rename : openvpn/version.sh.in => main/openvpn/version.sh.in rename : snappy/Android.mk => main/snappy/Android.mk rename : snappy/COPYING => main/snappy/COPYING rename : snappy/conf/config.h => main/snappy/conf/config.h rename : snappy/snappy-c.cc => main/snappy/snappy-c.cc rename : snappy/snappy-c.h => main/snappy/snappy-c.h rename : snappy/snappy-internal.h => main/snappy/snappy-internal.h rename : snappy/snappy-sinksource.cc => main/snappy/snappy-sinksource.cc rename : snappy/snappy-sinksource.h => main/snappy/snappy-sinksource.h rename : snappy/snappy-stubs-internal.cc => main/snappy/snappy-stubs-internal.cc rename : snappy/snappy-stubs-internal.h => main/snappy/snappy-stubs-internal.h rename : snappy/snappy-stubs-public.h => main/snappy/snappy-stubs-public.h rename : snappy/snappy-stubs-public.h.in => main/snappy/snappy-stubs-public.h.in rename : snappy/snappy-test.cc => main/snappy/snappy-test.cc rename : snappy/snappy-test.h => main/snappy/snappy-test.h rename : snappy/snappy.cc => main/snappy/snappy.cc rename : snappy/snappy.h => main/snappy/snappy.h rename : snappy/snappy_unittest.cc => main/snappy/snappy_unittest.cc rename : AndroidManifest.xml => main/src/main/AndroidManifest.xml rename : src/de/blinkt/openvpn/FileProvider.java => main/src/main/java/de/blinkt/openvpn/FileProvider.java rename : src/de/blinkt/openvpn/LaunchVPN.java => main/src/main/java/de/blinkt/openvpn/LaunchVPN.java rename : src/de/blinkt/openvpn/OnBootReceiver.java => main/src/main/java/de/blinkt/openvpn/OnBootReceiver.java rename : src/de/blinkt/openvpn/VpnProfile.java => main/src/main/java/de/blinkt/openvpn/VpnProfile.java rename : src/de/blinkt/openvpn/activities/ConfigConverter.java => main/src/main/java/de/blinkt/openvpn/activities/ConfigConverter.java rename : src/de/blinkt/openvpn/activities/CreateShortcuts.java => main/src/main/java/de/blinkt/openvpn/activities/CreateShortcuts.java rename : src/de/blinkt/openvpn/activities/DisconnectVPN.java => main/src/main/java/de/blinkt/openvpn/activities/DisconnectVPN.java rename : src/de/blinkt/openvpn/activities/FileSelect.java => main/src/main/java/de/blinkt/openvpn/activities/FileSelect.java rename : src/de/blinkt/openvpn/activities/LogWindow.java => main/src/main/java/de/blinkt/openvpn/activities/LogWindow.java rename : src/de/blinkt/openvpn/activities/MainActivity.java => main/src/main/java/de/blinkt/openvpn/activities/MainActivity.java rename : src/de/blinkt/openvpn/activities/VPNPreferences.java => main/src/main/java/de/blinkt/openvpn/activities/VPNPreferences.java rename : src/de/blinkt/openvpn/api/APIVpnProfile.java => main/src/main/java/de/blinkt/openvpn/api/APIVpnProfile.java rename : src/de/blinkt/openvpn/api/ConfirmDialog.java => main/src/main/java/de/blinkt/openvpn/api/ConfirmDialog.java rename : src/de/blinkt/openvpn/api/ExternalAppDatabase.java => main/src/main/java/de/blinkt/openvpn/api/ExternalAppDatabase.java rename : src/de/blinkt/openvpn/api/ExternalOpenVPNService.java => main/src/main/java/de/blinkt/openvpn/api/ExternalOpenVPNService.java rename : src/de/blinkt/openvpn/api/GrantPermissionsActivity.java => main/src/main/java/de/blinkt/openvpn/api/GrantPermissionsActivity.java rename : src/de/blinkt/openvpn/api/SecurityRemoteException.java => main/src/main/java/de/blinkt/openvpn/api/SecurityRemoteException.java rename : src/de/blinkt/openvpn/core/CIDRIP.java => main/src/main/java/de/blinkt/openvpn/core/CIDRIP.java rename : src/de/blinkt/openvpn/core/ConfigParser.java => main/src/main/java/de/blinkt/openvpn/core/ConfigParser.java rename : src/de/blinkt/openvpn/core/DeviceStateReceiver.java => main/src/main/java/de/blinkt/openvpn/core/DeviceStateReceiver.java rename : src/de/blinkt/openvpn/core/GetRestrictionReceiver.java => main/src/main/java/de/blinkt/openvpn/core/GetRestrictionReceiver.java rename : src/de/blinkt/openvpn/core/ICSOpenVPNApplication.java => main/src/main/java/de/blinkt/openvpn/core/ICSOpenVPNApplication.java rename : src/de/blinkt/openvpn/core/NativeUtils.java => main/src/main/java/de/blinkt/openvpn/core/NativeUtils.java rename : src/de/blinkt/openvpn/core/NetworkSpace.java => main/src/main/java/de/blinkt/openvpn/core/NetworkSpace.java rename : src/de/blinkt/openvpn/core/OpenVPNManagement.java => main/src/main/java/de/blinkt/openvpn/core/OpenVPNManagement.java rename : src/de/blinkt/openvpn/core/OpenVPNThread.java => main/src/main/java/de/blinkt/openvpn/core/OpenVPNThread.java rename : src/de/blinkt/openvpn/core/OpenVpnManagementThread.java => main/src/main/java/de/blinkt/openvpn/core/OpenVpnManagementThread.java rename : src/de/blinkt/openvpn/core/OpenVpnService.java => main/src/main/java/de/blinkt/openvpn/core/OpenVpnService.java rename : src/de/blinkt/openvpn/core/PRNGFixes.java => main/src/main/java/de/blinkt/openvpn/core/PRNGFixes.java rename : src/de/blinkt/openvpn/core/ProfileManager.java => main/src/main/java/de/blinkt/openvpn/core/ProfileManager.java rename : src/de/blinkt/openvpn/core/ProxyDetection.java => main/src/main/java/de/blinkt/openvpn/core/ProxyDetection.java rename : src/de/blinkt/openvpn/core/VPNLaunchHelper.java => main/src/main/java/de/blinkt/openvpn/core/VPNLaunchHelper.java rename : src/de/blinkt/openvpn/core/VpnStatus.java => main/src/main/java/de/blinkt/openvpn/core/VpnStatus.java rename : src/de/blinkt/openvpn/core/X509Utils.java => main/src/main/java/de/blinkt/openvpn/core/X509Utils.java rename : src/de/blinkt/openvpn/fragments/AboutFragment.java => main/src/main/java/de/blinkt/openvpn/fragments/AboutFragment.java rename : src/de/blinkt/openvpn/fragments/FaqFragment.java => main/src/main/java/de/blinkt/openvpn/fragments/FaqFragment.java rename : src/de/blinkt/openvpn/fragments/FileSelectionFragment.java => main/src/main/java/de/blinkt/openvpn/fragments/FileSelectionFragment.java rename : src/de/blinkt/openvpn/fragments/GeneralSettings.java => main/src/main/java/de/blinkt/openvpn/fragments/GeneralSettings.java rename : src/de/blinkt/openvpn/fragments/InlineFileTab.java => main/src/main/java/de/blinkt/openvpn/fragments/InlineFileTab.java rename : src/de/blinkt/openvpn/fragments/LogFragment.java => main/src/main/java/de/blinkt/openvpn/fragments/LogFragment.java rename : src/de/blinkt/openvpn/fragments/OpenVpnPreferencesFragment.java => main/src/main/java/de/blinkt/openvpn/fragments/OpenVpnPreferencesFragment.java rename : src/de/blinkt/openvpn/fragments/SendDumpFragment.java => main/src/main/java/de/blinkt/openvpn/fragments/SendDumpFragment.java rename : src/de/blinkt/openvpn/fragments/Settings_Authentication.java => main/src/main/java/de/blinkt/openvpn/fragments/Settings_Authentication.java rename : src/de/blinkt/openvpn/fragments/Settings_Basic.java => main/src/main/java/de/blinkt/openvpn/fragments/Settings_Basic.java rename : src/de/blinkt/openvpn/fragments/Settings_IP.java => main/src/main/java/de/blinkt/openvpn/fragments/Settings_IP.java rename : src/de/blinkt/openvpn/fragments/Settings_Obscure.java => main/src/main/java/de/blinkt/openvpn/fragments/Settings_Obscure.java rename : src/de/blinkt/openvpn/fragments/Settings_Routing.java => main/src/main/java/de/blinkt/openvpn/fragments/Settings_Routing.java rename : src/de/blinkt/openvpn/fragments/ShowConfigFragment.java => main/src/main/java/de/blinkt/openvpn/fragments/ShowConfigFragment.java rename : src/de/blinkt/openvpn/fragments/Utils.java => main/src/main/java/de/blinkt/openvpn/fragments/Utils.java rename : src/de/blinkt/openvpn/fragments/VPNProfileList.java => main/src/main/java/de/blinkt/openvpn/fragments/VPNProfileList.java rename : src/de/blinkt/openvpn/views/FileSelectLayout.java => main/src/main/java/de/blinkt/openvpn/views/FileSelectLayout.java rename : src/de/blinkt/openvpn/views/RemoteCNPreference.java => main/src/main/java/de/blinkt/openvpn/views/RemoteCNPreference.java rename : src/de/blinkt/openvpn/views/SeekBarTicks.java => main/src/main/java/de/blinkt/openvpn/views/SeekBarTicks.java rename : src/org/spongycastle/util/encoders/Base64.java => main/src/main/java/org/spongycastle/util/encoders/Base64.java rename : src/org/spongycastle/util/encoders/Base64Encoder.java => main/src/main/java/org/spongycastle/util/encoders/Base64Encoder.java rename : src/org/spongycastle/util/encoders/Encoder.java => main/src/main/java/org/spongycastle/util/encoders/Encoder.java rename : src/org/spongycastle/util/io/pem/PemGenerationException.java => main/src/main/java/org/spongycastle/util/io/pem/PemGenerationException.java rename : src/org/spongycastle/util/io/pem/PemHeader.java => main/src/main/java/org/spongycastle/util/io/pem/PemHeader.java rename : src/org/spongycastle/util/io/pem/PemObject.java => main/src/main/java/org/spongycastle/util/io/pem/PemObject.java rename : src/org/spongycastle/util/io/pem/PemObjectGenerator.java => main/src/main/java/org/spongycastle/util/io/pem/PemObjectGenerator.java rename : src/org/spongycastle/util/io/pem/PemReader.java => main/src/main/java/org/spongycastle/util/io/pem/PemReader.java rename : src/org/spongycastle/util/io/pem/PemWriter.java => main/src/main/java/org/spongycastle/util/io/pem/PemWriter.java
Diffstat (limited to 'main/openvpn/sample')
-rw-r--r--main/openvpn/sample/Makefile.am34
-rw-r--r--main/openvpn/sample/sample-config-files/README6
-rw-r--r--main/openvpn/sample/sample-config-files/client.conf123
-rwxr-xr-xmain/openvpn/sample/sample-config-files/firewall.sh108
-rwxr-xr-xmain/openvpn/sample/sample-config-files/home.up2
-rw-r--r--main/openvpn/sample/sample-config-files/loopback-client25
-rw-r--r--main/openvpn/sample/sample-config-files/loopback-server26
-rwxr-xr-xmain/openvpn/sample/sample-config-files/office.up2
-rwxr-xr-xmain/openvpn/sample/sample-config-files/openvpn-shutdown.sh5
-rwxr-xr-xmain/openvpn/sample/sample-config-files/openvpn-startup.sh34
-rw-r--r--main/openvpn/sample/sample-config-files/server.conf299
-rw-r--r--main/openvpn/sample/sample-config-files/static-home.conf72
-rw-r--r--main/openvpn/sample/sample-config-files/static-office.conf69
-rw-r--r--main/openvpn/sample/sample-config-files/tls-home.conf83
-rw-r--r--main/openvpn/sample/sample-config-files/tls-office.conf83
-rw-r--r--main/openvpn/sample/sample-config-files/xinetd-client-config11
-rw-r--r--main/openvpn/sample/sample-config-files/xinetd-server-config25
-rw-r--r--main/openvpn/sample/sample-keys/README14
-rw-r--r--main/openvpn/sample/sample-keys/ca.crt19
-rw-r--r--main/openvpn/sample/sample-keys/ca.key15
-rw-r--r--main/openvpn/sample/sample-keys/client.crt65
-rw-r--r--main/openvpn/sample/sample-keys/client.key15
-rw-r--r--main/openvpn/sample/sample-keys/dh1024.pem5
-rw-r--r--main/openvpn/sample/sample-keys/pass.crt65
-rw-r--r--main/openvpn/sample/sample-keys/pass.key18
-rw-r--r--main/openvpn/sample/sample-keys/pkcs12.p12bin0 -> 2685 bytes
-rw-r--r--main/openvpn/sample/sample-keys/server.crt67
-rw-r--r--main/openvpn/sample/sample-keys/server.key15
-rw-r--r--main/openvpn/sample/sample-plugins/defer/README16
-rwxr-xr-xmain/openvpn/sample/sample-plugins/defer/build15
-rw-r--r--main/openvpn/sample/sample-plugins/defer/simple.c305
-rwxr-xr-xmain/openvpn/sample/sample-plugins/defer/simple.def6
-rwxr-xr-xmain/openvpn/sample/sample-plugins/defer/winbuild18
-rwxr-xr-xmain/openvpn/sample/sample-plugins/log/build15
-rw-r--r--main/openvpn/sample/sample-plugins/log/log.c184
-rw-r--r--main/openvpn/sample/sample-plugins/log/log_v3.c252
-rwxr-xr-xmain/openvpn/sample/sample-plugins/log/winbuild18
-rw-r--r--main/openvpn/sample/sample-plugins/simple/README16
-rwxr-xr-xmain/openvpn/sample/sample-plugins/simple/build15
-rw-r--r--main/openvpn/sample/sample-plugins/simple/simple.c120
-rwxr-xr-xmain/openvpn/sample/sample-plugins/simple/simple.def6
-rwxr-xr-xmain/openvpn/sample/sample-plugins/simple/winbuild18
-rwxr-xr-xmain/openvpn/sample/sample-scripts/auth-pam.pl97
-rwxr-xr-xmain/openvpn/sample/sample-scripts/bridge-start39
-rwxr-xr-xmain/openvpn/sample/sample-scripts/bridge-stop18
-rwxr-xr-xmain/openvpn/sample/sample-scripts/ucn.pl11
-rwxr-xr-xmain/openvpn/sample/sample-scripts/verify-cn64
-rwxr-xr-xmain/openvpn/sample/sample-windows/sample.ovpn103
48 files changed, 2641 insertions, 0 deletions
diff --git a/main/openvpn/sample/Makefile.am b/main/openvpn/sample/Makefile.am
new file mode 100644
index 00000000..be30c88a
--- /dev/null
+++ b/main/openvpn/sample/Makefile.am
@@ -0,0 +1,34 @@
+#
+# OpenVPN -- An application to securely tunnel IP networks
+# over a single UDP port, with support for SSL/TLS-based
+# session authentication and key exchange,
+# packet encryption, packet authentication, and
+# packet compression.
+#
+# Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net>
+# Copyright (C) 2006-2012 Alon Bar-Lev <alon.barlev@gmail.com>
+#
+
+MAINTAINERCLEANFILES = \
+ $(srcdir)/Makefile.in
+
+EXTRA_DIST = \
+ sample-plugins \
+ sample-config-files \
+ sample-windows \
+ sample-keys \
+ sample-scripts
+
+if WIN32
+sample_DATA = \
+ client.ovpn \
+ server.ovpn \
+ sample-windows/sample.ovpn
+
+client.ovpn: sample-config-files/client.conf
+ -rm -f client.ovpn
+ cp "$(srcdir)/sample-config-files/client.conf" client.ovpn
+server.ovpn: sample-config-files/server.conf
+ -rm -f server.ovpn
+ cp "$(srcdir)/sample-config-files/server.conf" server.ovpn
+endif
diff --git a/main/openvpn/sample/sample-config-files/README b/main/openvpn/sample/sample-config-files/README
new file mode 100644
index 00000000..d53ac79a
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/README
@@ -0,0 +1,6 @@
+Sample OpenVPN Configuration Files.
+
+These files are part of the OpenVPN HOWTO
+which is located at:
+
+http://openvpn.net/howto.html
diff --git a/main/openvpn/sample/sample-config-files/client.conf b/main/openvpn/sample/sample-config-files/client.conf
new file mode 100644
index 00000000..58b2038b
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/client.conf
@@ -0,0 +1,123 @@
+##############################################
+# Sample client-side OpenVPN 2.0 config file #
+# for connecting to multi-client server. #
+# #
+# This configuration can be used by multiple #
+# clients, however each client should have #
+# its own cert and key files. #
+# #
+# On Windows, you might want to rename this #
+# file so it has a .ovpn extension #
+##############################################
+
+# Specify that we are a client and that we
+# will be pulling certain config file directives
+# from the server.
+client
+
+# Use the same setting as you are using on
+# the server.
+# On most systems, the VPN will not function
+# unless you partially or fully disable
+# the firewall for the TUN/TAP interface.
+;dev tap
+dev tun
+
+# Windows needs the TAP-Win32 adapter name
+# from the Network Connections panel
+# if you have more than one. On XP SP2,
+# you may need to disable the firewall
+# for the TAP adapter.
+;dev-node MyTap
+
+# Are we connecting to a TCP or
+# UDP server? Use the same setting as
+# on the server.
+;proto tcp
+proto udp
+
+# The hostname/IP and port of the server.
+# You can have multiple remote entries
+# to load balance between the servers.
+remote my-server-1 1194
+;remote my-server-2 1194
+
+# Choose a random host from the remote
+# list for load-balancing. Otherwise
+# try hosts in the order specified.
+;remote-random
+
+# Keep trying indefinitely to resolve the
+# host name of the OpenVPN server. Very useful
+# on machines which are not permanently connected
+# to the internet such as laptops.
+resolv-retry infinite
+
+# Most clients don't need to bind to
+# a specific local port number.
+nobind
+
+# Downgrade privileges after initialization (non-Windows only)
+;user nobody
+;group nobody
+
+# Try to preserve some state across restarts.
+persist-key
+persist-tun
+
+# If you are connecting through an
+# HTTP proxy to reach the actual OpenVPN
+# server, put the proxy server/IP and
+# port number here. See the man page
+# if your proxy server requires
+# authentication.
+;http-proxy-retry # retry on connection failures
+;http-proxy [proxy server] [proxy port #]
+
+# Wireless networks often produce a lot
+# of duplicate packets. Set this flag
+# to silence duplicate packet warnings.
+;mute-replay-warnings
+
+# SSL/TLS parms.
+# See the server config file for more
+# description. It's best to use
+# a separate .crt/.key file pair
+# for each client. A single ca
+# file can be used for all clients.
+ca ca.crt
+cert client.crt
+key client.key
+
+# Verify server certificate by checking
+# that the certicate has the nsCertType
+# field set to "server". This is an
+# important precaution to protect against
+# a potential attack discussed here:
+# http://openvpn.net/howto.html#mitm
+#
+# To use this feature, you will need to generate
+# your server certificates with the nsCertType
+# field set to "server". The build-key-server
+# script in the easy-rsa folder will do this.
+ns-cert-type server
+
+# If a tls-auth key is used on the server
+# then every client must also have the key.
+;tls-auth ta.key 1
+
+# Select a cryptographic cipher.
+# If the cipher option is used on the server
+# then you must also specify it here.
+;cipher x
+
+# Enable compression on the VPN link.
+# Don't enable this unless it is also
+# enabled in the server config file.
+comp-lzo
+
+# Set log file verbosity.
+verb 3
+
+# Silence repeating messages
+;mute 20
diff --git a/main/openvpn/sample/sample-config-files/firewall.sh b/main/openvpn/sample/sample-config-files/firewall.sh
new file mode 100755
index 00000000..19d75ee9
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/firewall.sh
@@ -0,0 +1,108 @@
+#!/bin/sh
+
+# A Sample OpenVPN-aware firewall.
+
+# eth0 is connected to the internet.
+# eth1 is connected to a private subnet.
+
+# Change this subnet to correspond to your private
+# ethernet subnet. Home will use HOME_NET/24 and
+# Office will use OFFICE_NET/24.
+PRIVATE=10.0.0.0/24
+
+# Loopback address
+LOOP=127.0.0.1
+
+# Delete old iptables rules
+# and temporarily block all traffic.
+iptables -P OUTPUT DROP
+iptables -P INPUT DROP
+iptables -P FORWARD DROP
+iptables -F
+
+# Set default policies
+iptables -P OUTPUT ACCEPT
+iptables -P INPUT DROP
+iptables -P FORWARD DROP
+
+# Prevent external packets from using loopback addr
+iptables -A INPUT -i eth0 -s $LOOP -j DROP
+iptables -A FORWARD -i eth0 -s $LOOP -j DROP
+iptables -A INPUT -i eth0 -d $LOOP -j DROP
+iptables -A FORWARD -i eth0 -d $LOOP -j DROP
+
+# Anything coming from the Internet should have a real Internet address
+iptables -A FORWARD -i eth0 -s 192.168.0.0/16 -j DROP
+iptables -A FORWARD -i eth0 -s 172.16.0.0/12 -j DROP
+iptables -A FORWARD -i eth0 -s 10.0.0.0/8 -j DROP
+iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP
+iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP
+iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP
+
+# Block outgoing NetBios (if you have windows machines running
+# on the private subnet). This will not affect any NetBios
+# traffic that flows over the VPN tunnel, but it will stop
+# local windows machines from broadcasting themselves to
+# the internet.
+iptables -A FORWARD -p tcp --sport 137:139 -o eth0 -j DROP
+iptables -A FORWARD -p udp --sport 137:139 -o eth0 -j DROP
+iptables -A OUTPUT -p tcp --sport 137:139 -o eth0 -j DROP
+iptables -A OUTPUT -p udp --sport 137:139 -o eth0 -j DROP
+
+# Check source address validity on packets going out to internet
+iptables -A FORWARD -s ! $PRIVATE -i eth1 -j DROP
+
+# Allow local loopback
+iptables -A INPUT -s $LOOP -j ACCEPT
+iptables -A INPUT -d $LOOP -j ACCEPT
+
+# Allow incoming pings (can be disabled)
+iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
+
+# Allow services such as www and ssh (can be disabled)
+iptables -A INPUT -p tcp --dport http -j ACCEPT
+iptables -A INPUT -p tcp --dport ssh -j ACCEPT
+
+# Allow incoming OpenVPN packets
+# Duplicate the line below for each
+# OpenVPN tunnel, changing --dport n
+# to match the OpenVPN UDP port.
+#
+# In OpenVPN, the port number is
+# controlled by the --port n option.
+# If you put this option in the config
+# file, you can remove the leading '--'
+#
+# If you taking the stateful firewall
+# approach (see the OpenVPN HOWTO),
+# then comment out the line below.
+
+iptables -A INPUT -p udp --dport 1194 -j ACCEPT
+
+# Allow packets from TUN/TAP devices.
+# When OpenVPN is run in a secure mode,
+# it will authenticate packets prior
+# to their arriving on a tun or tap
+# interface. Therefore, it is not
+# necessary to add any filters here,
+# unless you want to restrict the
+# type of packets which can flow over
+# the tunnel.
+
+iptables -A INPUT -i tun+ -j ACCEPT
+iptables -A FORWARD -i tun+ -j ACCEPT
+iptables -A INPUT -i tap+ -j ACCEPT
+iptables -A FORWARD -i tap+ -j ACCEPT
+
+# Allow packets from private subnets
+iptables -A INPUT -i eth1 -j ACCEPT
+iptables -A FORWARD -i eth1 -j ACCEPT
+
+# Keep state of connections from local machine and private subnets
+iptables -A OUTPUT -m state --state NEW -o eth0 -j ACCEPT
+iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
+iptables -A FORWARD -m state --state NEW -o eth0 -j ACCEPT
+iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
+
+# Masquerade local subnet
+iptables -t nat -A POSTROUTING -s $PRIVATE -o eth0 -j MASQUERADE
diff --git a/main/openvpn/sample/sample-config-files/home.up b/main/openvpn/sample/sample-config-files/home.up
new file mode 100755
index 00000000..9c347cc5
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/home.up
@@ -0,0 +1,2 @@
+#!/bin/sh
+route add -net 10.0.0.0 netmask 255.255.255.0 gw $5
diff --git a/main/openvpn/sample/sample-config-files/loopback-client b/main/openvpn/sample/sample-config-files/loopback-client
new file mode 100644
index 00000000..d7f59e69
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/loopback-client
@@ -0,0 +1,25 @@
+# Perform a TLS loopback test -- client side.
+#
+# This test performs a TLS negotiation once every 10 seconds,
+# and will terminate after 2 minutes.
+#
+# From the root directory of the OpenVPN distribution,
+# after openvpn has been built, run:
+#
+# ./openvpn --config sample-config-files/loopback-client (In one window)
+# ./openvpn --config sample-config-files/loopback-server (Simultaneously in another window)
+
+rport 16000
+lport 16001
+remote localhost
+local localhost
+dev null
+verb 3
+reneg-sec 10
+tls-client
+ca sample-keys/ca.crt
+key sample-keys/client.key
+cert sample-keys/client.crt
+cipher DES-EDE3-CBC
+ping 1
+inactive 120 10000000
diff --git a/main/openvpn/sample/sample-config-files/loopback-server b/main/openvpn/sample/sample-config-files/loopback-server
new file mode 100644
index 00000000..9d21bcec
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/loopback-server
@@ -0,0 +1,26 @@
+# Perform a TLS loopback test -- server side.
+#
+# This test performs a TLS negotiation once every 10 seconds,
+# and will terminate after 2 minutes.
+#
+# From the root directory of the OpenVPN distribution,
+# after openvpn has been built, run:
+#
+# ./openvpn --config sample-config-files/loopback-client (In one window)
+# ./openvpn --config sample-config-files/loopback-server (Simultaneously in another window)
+
+rport 16001
+lport 16000
+remote localhost
+local localhost
+dev null
+verb 3
+reneg-sec 10
+tls-server
+dh sample-keys/dh1024.pem
+ca sample-keys/ca.crt
+key sample-keys/server.key
+cert sample-keys/server.crt
+cipher DES-EDE3-CBC
+ping 1
+inactive 120 10000000
diff --git a/main/openvpn/sample/sample-config-files/office.up b/main/openvpn/sample/sample-config-files/office.up
new file mode 100755
index 00000000..74a71a33
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/office.up
@@ -0,0 +1,2 @@
+#!/bin/sh
+route add -net 10.0.1.0 netmask 255.255.255.0 gw $5
diff --git a/main/openvpn/sample/sample-config-files/openvpn-shutdown.sh b/main/openvpn/sample/sample-config-files/openvpn-shutdown.sh
new file mode 100755
index 00000000..8ed2d1d5
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/openvpn-shutdown.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+# stop all openvpn processes
+
+killall -TERM openvpn
diff --git a/main/openvpn/sample/sample-config-files/openvpn-startup.sh b/main/openvpn/sample/sample-config-files/openvpn-startup.sh
new file mode 100755
index 00000000..0ee006bc
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/openvpn-startup.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+# A sample OpenVPN startup script
+# for Linux.
+
+# openvpn config file directory
+dir=/etc/openvpn
+
+# load the firewall
+$dir/firewall.sh
+
+# load TUN/TAP kernel module
+modprobe tun
+
+# enable IP forwarding
+echo 1 > /proc/sys/net/ipv4/ip_forward
+
+# Invoke openvpn for each VPN tunnel
+# in daemon mode. Alternatively,
+# you could remove "--daemon" from
+# the command line and add "daemon"
+# to the config file.
+#
+# Each tunnel should run on a separate
+# UDP port. Use the "port" option
+# to control this. Like all of
+# OpenVPN's options, you can
+# specify "--port 8000" on the command
+# line or "port 8000" in the config
+# file.
+
+openvpn --cd $dir --daemon --config vpn1.conf
+openvpn --cd $dir --daemon --config vpn2.conf
+openvpn --cd $dir --daemon --config vpn2.conf
diff --git a/main/openvpn/sample/sample-config-files/server.conf b/main/openvpn/sample/sample-config-files/server.conf
new file mode 100644
index 00000000..f483b6bb
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/server.conf
@@ -0,0 +1,299 @@
+#################################################
+# Sample OpenVPN 2.0 config file for #
+# multi-client server. #
+# #
+# This file is for the server side #
+# of a many-clients <-> one-server #
+# OpenVPN configuration. #
+# #
+# OpenVPN also supports #
+# single-machine <-> single-machine #
+# configurations (See the Examples page #
+# on the web site for more info). #
+# #
+# This config should work on Windows #
+# or Linux/BSD systems. Remember on #
+# Windows to quote pathnames and use #
+# double backslashes, e.g.: #
+# "C:\\Program Files\\OpenVPN\\config\\foo.key" #
+# #
+# Comments are preceded with '#' or ';' #
+#################################################
+
+# Which local IP address should OpenVPN
+# listen on? (optional)
+;local a.b.c.d
+
+# Which TCP/UDP port should OpenVPN listen on?
+# If you want to run multiple OpenVPN instances
+# on the same machine, use a different port
+# number for each one. You will need to
+# open up this port on your firewall.
+port 1194
+
+# TCP or UDP server?
+;proto tcp
+proto udp
+
+# "dev tun" will create a routed IP tunnel,
+# "dev tap" will create an ethernet tunnel.
+# Use "dev tap0" if you are ethernet bridging
+# and have precreated a tap0 virtual interface
+# and bridged it with your ethernet interface.
+# If you want to control access policies
+# over the VPN, you must create firewall
+# rules for the the TUN/TAP interface.
+# On non-Windows systems, you can give
+# an explicit unit number, such as tun0.
+# On Windows, use "dev-node" for this.
+# On most systems, the VPN will not function
+# unless you partially or fully disable
+# the firewall for the TUN/TAP interface.
+;dev tap
+dev tun
+
+# Windows needs the TAP-Win32 adapter name
+# from the Network Connections panel if you
+# have more than one. On XP SP2 or higher,
+# you may need to selectively disable the
+# Windows firewall for the TAP adapter.
+# Non-Windows systems usually don't need this.
+;dev-node MyTap
+
+# SSL/TLS root certificate (ca), certificate
+# (cert), and private key (key). Each client
+# and the server must have their own cert and
+# key file. The server and all clients will
+# use the same ca file.
+#
+# See the "easy-rsa" directory for a series
+# of scripts for generating RSA certificates
+# and private keys. Remember to use
+# a unique Common Name for the server
+# and each of the client certificates.
+#
+# Any X509 key management system can be used.
+# OpenVPN can also use a PKCS #12 formatted key file
+# (see "pkcs12" directive in man page).
+ca ca.crt
+cert server.crt
+key server.key # This file should be kept secret
+
+# Diffie hellman parameters.
+# Generate your own with:
+# openssl dhparam -out dh1024.pem 1024
+# Substitute 2048 for 1024 if you are using
+# 2048 bit keys.
+dh dh1024.pem
+
+# Configure server mode and supply a VPN subnet
+# for OpenVPN to draw client addresses from.
+# The server will take 10.8.0.1 for itself,
+# the rest will be made available to clients.
+# Each client will be able to reach the server
+# on 10.8.0.1. Comment this line out if you are
+# ethernet bridging. See the man page for more info.
+server 10.8.0.0 255.255.255.0
+
+# Maintain a record of client <-> virtual IP address
+# associations in this file. If OpenVPN goes down or
+# is restarted, reconnecting clients can be assigned
+# the same virtual IP address from the pool that was
+# previously assigned.
+ifconfig-pool-persist ipp.txt
+
+# Configure server mode for ethernet bridging.
+# You must first use your OS's bridging capability
+# to bridge the TAP interface with the ethernet
+# NIC interface. Then you must manually set the
+# IP/netmask on the bridge interface, here we
+# assume 10.8.0.4/255.255.255.0. Finally we
+# must set aside an IP range in this subnet
+# (start=10.8.0.50 end=10.8.0.100) to allocate
+# to connecting clients. Leave this line commented
+# out unless you are ethernet bridging.
+;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100
+
+# Configure server mode for ethernet bridging
+# using a DHCP-proxy, where clients talk
+# to the OpenVPN server-side DHCP server
+# to receive their IP address allocation
+# and DNS server addresses. You must first use
+# your OS's bridging capability to bridge the TAP
+# interface with the ethernet NIC interface.
+# Note: this mode only works on clients (such as
+# Windows), where the client-side TAP adapter is
+# bound to a DHCP client.
+;server-bridge
+
+# Push routes to the client to allow it
+# to reach other private subnets behind
+# the server. Remember that these
+# private subnets will also need
+# to know to route the OpenVPN client
+# address pool (10.8.0.0/255.255.255.0)
+# back to the OpenVPN server.
+;push "route 192.168.10.0 255.255.255.0"
+;push "route 192.168.20.0 255.255.255.0"
+
+# To assign specific IP addresses to specific
+# clients or if a connecting client has a private
+# subnet behind it that should also have VPN access,
+# use the subdirectory "ccd" for client-specific
+# configuration files (see man page for more info).
+
+# EXAMPLE: Suppose the client
+# having the certificate common name "Thelonious"
+# also has a small subnet behind his connecting
+# machine, such as 192.168.40.128/255.255.255.248.
+# First, uncomment out these lines:
+;client-config-dir ccd
+;route 192.168.40.128 255.255.255.248
+# Then create a file ccd/Thelonious with this line:
+# iroute 192.168.40.128 255.255.255.248
+# This will allow Thelonious' private subnet to
+# access the VPN. This example will only work
+# if you are routing, not bridging, i.e. you are
+# using "dev tun" and "server" directives.
+
+# EXAMPLE: Suppose you want to give
+# Thelonious a fixed VPN IP address of 10.9.0.1.
+# First uncomment out these lines:
+;client-config-dir ccd
+;route 10.9.0.0 255.255.255.252
+# Then add this line to ccd/Thelonious:
+# ifconfig-push 10.9.0.1 10.9.0.2
+
+# Suppose that you want to enable different
+# firewall access policies for different groups
+# of clients. There are two methods:
+# (1) Run multiple OpenVPN daemons, one for each
+# group, and firewall the TUN/TAP interface
+# for each group/daemon appropriately.
+# (2) (Advanced) Create a script to dynamically
+# modify the firewall in response to access
+# from different clients. See man
+# page for more info on learn-address script.
+;learn-address ./script
+
+# If enabled, this directive will configure
+# all clients to redirect their default
+# network gateway through the VPN, causing
+# all IP traffic such as web browsing and
+# and DNS lookups to go through the VPN
+# (The OpenVPN server machine may need to NAT
+# or bridge the TUN/TAP interface to the internet
+# in order for this to work properly).
+;push "redirect-gateway def1 bypass-dhcp"
+
+# Certain Windows-specific network settings
+# can be pushed to clients, such as DNS
+# or WINS server addresses. CAVEAT:
+# http://openvpn.net/faq.html#dhcpcaveats
+# The addresses below refer to the public
+# DNS servers provided by opendns.com.
+;push "dhcp-option DNS 208.67.222.222"
+;push "dhcp-option DNS 208.67.220.220"
+
+# Uncomment this directive to allow different
+# clients to be able to "see" each other.
+# By default, clients will only see the server.
+# To force clients to only see the server, you
+# will also need to appropriately firewall the
+# server's TUN/TAP interface.
+;client-to-client
+
+# Uncomment this directive if multiple clients
+# might connect with the same certificate/key
+# files or common names. This is recommended
+# only for testing purposes. For production use,
+# each client should have its own certificate/key
+# pair.
+#
+# IF YOU HAVE NOT GENERATED INDIVIDUAL
+# CERTIFICATE/KEY PAIRS FOR EACH CLIENT,
+# EACH HAVING ITS OWN UNIQUE "COMMON NAME",
+# UNCOMMENT THIS LINE OUT.
+;duplicate-cn
+
+# The keepalive directive causes ping-like
+# messages to be sent back and forth over
+# the link so that each side knows when
+# the other side has gone down.
+# Ping every 10 seconds, assume that remote
+# peer is down if no ping received during
+# a 120 second time period.
+keepalive 10 120
+
+# For extra security beyond that provided
+# by SSL/TLS, create an "HMAC firewall"
+# to help block DoS attacks and UDP port flooding.
+#
+# Generate with:
+# openvpn --genkey --secret ta.key
+#
+# The server and each client must have
+# a copy of this key.
+# The second parameter should be '0'
+# on the server and '1' on the clients.
+;tls-auth ta.key 0 # This file is secret
+
+# Select a cryptographic cipher.
+# This config item must be copied to
+# the client config file as well.
+;cipher BF-CBC # Blowfish (default)
+;cipher AES-128-CBC # AES
+;cipher DES-EDE3-CBC # Triple-DES
+
+# Enable compression on the VPN link.
+# If you enable it here, you must also
+# enable it in the client config file.
+comp-lzo
+
+# The maximum number of concurrently connected
+# clients we want to allow.
+;max-clients 100
+
+# It's a good idea to reduce the OpenVPN
+# daemon's privileges after initialization.
+#
+# You can uncomment this out on
+# non-Windows systems.
+;user nobody
+;group nobody
+
+# The persist options will try to avoid
+# accessing certain resources on restart
+# that may no longer be accessible because
+# of the privilege downgrade.
+persist-key
+persist-tun
+
+# Output a short status file showing
+# current connections, truncated
+# and rewritten every minute.
+status openvpn-status.log
+
+# By default, log messages will go to the syslog (or
+# on Windows, if running as a service, they will go to
+# the "\Program Files\OpenVPN\log" directory).
+# Use log or log-append to override this default.
+# "log" will truncate the log file on OpenVPN startup,
+# while "log-append" will append to it. Use one
+# or the other (but not both).
+;log openvpn.log
+;log-append openvpn.log
+
+# Set the appropriate level of log
+# file verbosity.
+#
+# 0 is silent, except for fatal errors
+# 4 is reasonable for general usage
+# 5 and 6 can help to debug connection problems
+# 9 is extremely verbose
+verb 3
+
+# Silence repeating messages. At most 20
+# sequential messages of the same message
+# category will be output to the log.
+;mute 20
diff --git a/main/openvpn/sample/sample-config-files/static-home.conf b/main/openvpn/sample/sample-config-files/static-home.conf
new file mode 100644
index 00000000..c9666874
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/static-home.conf
@@ -0,0 +1,72 @@
+#
+# Sample OpenVPN configuration file for
+# home using a pre-shared static key.
+#
+# '#' or ';' may be used to delimit comments.
+
+# Use a dynamic tun device.
+# For Linux 2.2 or non-Linux OSes,
+# you may want to use an explicit
+# unit number such as "tun1".
+# OpenVPN also supports virtual
+# ethernet "tap" devices.
+dev tun
+
+# Our OpenVPN peer is the office gateway.
+remote 1.2.3.4
+
+# 10.1.0.2 is our local VPN endpoint (home).
+# 10.1.0.1 is our remote VPN endpoint (office).
+ifconfig 10.1.0.2 10.1.0.1
+
+# Our up script will establish routes
+# once the VPN is alive.
+up ./home.up
+
+# Our pre-shared static key
+secret static.key
+
+# OpenVPN 2.0 uses UDP port 1194 by default
+# (official port assignment by iana.org 11/04).
+# OpenVPN 1.x uses UDP port 5000 by default.
+# Each OpenVPN tunnel must use
+# a different port number.
+# lport or rport can be used
+# to denote different ports
+# for local and remote.
+; port 1194
+
+# Downgrade UID and GID to
+# "nobody" after initialization
+# for extra security.
+; user nobody
+; group nobody
+
+# If you built OpenVPN with
+# LZO compression, uncomment
+# out the following line.
+; comp-lzo
+
+# Send a UDP ping to remote once
+# every 15 seconds to keep
+# stateful firewall connection
+# alive. Uncomment this
+# out if you are using a stateful
+# firewall.
+; ping 15
+
+# Uncomment this section for a more reliable detection when a system
+# loses its connection. For example, dial-ups or laptops that
+# travel to other locations.
+; ping 15
+; ping-restart 45
+; ping-timer-rem
+; persist-tun
+; persist-key
+
+# Verbosity level.
+# 0 -- quiet except for fatal errors.
+# 1 -- mostly quiet, but display non-fatal network errors.
+# 3 -- medium output, good for normal operation.
+# 9 -- verbose, good for troubleshooting
+verb 3
diff --git a/main/openvpn/sample/sample-config-files/static-office.conf b/main/openvpn/sample/sample-config-files/static-office.conf
new file mode 100644
index 00000000..68030cc9
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/static-office.conf
@@ -0,0 +1,69 @@
+#
+# Sample OpenVPN configuration file for
+# office using a pre-shared static key.
+#
+# '#' or ';' may be used to delimit comments.
+
+# Use a dynamic tun device.
+# For Linux 2.2 or non-Linux OSes,
+# you may want to use an explicit
+# unit number such as "tun1".
+# OpenVPN also supports virtual
+# ethernet "tap" devices.
+dev tun
+
+# 10.1.0.1 is our local VPN endpoint (office).
+# 10.1.0.2 is our remote VPN endpoint (home).
+ifconfig 10.1.0.1 10.1.0.2
+
+# Our up script will establish routes
+# once the VPN is alive.
+up ./office.up
+
+# Our pre-shared static key
+secret static.key
+
+# OpenVPN 2.0 uses UDP port 1194 by default
+# (official port assignment by iana.org 11/04).
+# OpenVPN 1.x uses UDP port 5000 by default.
+# Each OpenVPN tunnel must use
+# a different port number.
+# lport or rport can be used
+# to denote different ports
+# for local and remote.
+; port 1194
+
+# Downgrade UID and GID to
+# "nobody" after initialization
+# for extra security.
+; user nobody
+; group nobody
+
+# If you built OpenVPN with
+# LZO compression, uncomment
+# out the following line.
+; comp-lzo
+
+# Send a UDP ping to remote once
+# every 15 seconds to keep
+# stateful firewall connection
+# alive. Uncomment this
+# out if you are using a stateful
+# firewall.
+; ping 15
+
+# Uncomment this section for a more reliable detection when a system
+# loses its connection. For example, dial-ups or laptops that
+# travel to other locations.
+; ping 15
+; ping-restart 45
+; ping-timer-rem
+; persist-tun
+; persist-key
+
+# Verbosity level.
+# 0 -- quiet except for fatal errors.
+# 1 -- mostly quiet, but display non-fatal network errors.
+# 3 -- medium output, good for normal operation.
+# 9 -- verbose, good for troubleshooting
+verb 3
diff --git a/main/openvpn/sample/sample-config-files/tls-home.conf b/main/openvpn/sample/sample-config-files/tls-home.conf
new file mode 100644
index 00000000..daa4ea1e
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/tls-home.conf
@@ -0,0 +1,83 @@
+#
+# Sample OpenVPN configuration file for
+# home using SSL/TLS mode and RSA certificates/keys.
+#
+# '#' or ';' may be used to delimit comments.
+
+# Use a dynamic tun device.
+# For Linux 2.2 or non-Linux OSes,
+# you may want to use an explicit
+# unit number such as "tun1".
+# OpenVPN also supports virtual
+# ethernet "tap" devices.
+dev tun
+
+# Our OpenVPN peer is the office gateway.
+remote 1.2.3.4
+
+# 10.1.0.2 is our local VPN endpoint (home).
+# 10.1.0.1 is our remote VPN endpoint (office).
+ifconfig 10.1.0.2 10.1.0.1
+
+# Our up script will establish routes
+# once the VPN is alive.
+up ./home.up
+
+# In SSL/TLS key exchange, Office will
+# assume server role and Home
+# will assume client role.
+tls-client
+
+# Certificate Authority file
+ca my-ca.crt
+
+# Our certificate/public key
+cert home.crt
+
+# Our private key
+key home.key
+
+# OpenVPN 2.0 uses UDP port 1194 by default
+# (official port assignment by iana.org 11/04).
+# OpenVPN 1.x uses UDP port 5000 by default.
+# Each OpenVPN tunnel must use
+# a different port number.
+# lport or rport can be used
+# to denote different ports
+# for local and remote.
+; port 1194
+
+# Downgrade UID and GID to
+# "nobody" after initialization
+# for extra security.
+; user nobody
+; group nobody
+
+# If you built OpenVPN with
+# LZO compression, uncomment
+# out the following line.
+; comp-lzo
+
+# Send a UDP ping to remote once
+# every 15 seconds to keep
+# stateful firewall connection
+# alive. Uncomment this
+# out if you are using a stateful
+# firewall.
+; ping 15
+
+# Uncomment this section for a more reliable detection when a system
+# loses its connection. For example, dial-ups or laptops that
+# travel to other locations.
+; ping 15
+; ping-restart 45
+; ping-timer-rem
+; persist-tun
+; persist-key
+
+# Verbosity level.
+# 0 -- quiet except for fatal errors.
+# 1 -- mostly quiet, but display non-fatal network errors.
+# 3 -- medium output, good for normal operation.
+# 9 -- verbose, good for troubleshooting
+verb 3
diff --git a/main/openvpn/sample/sample-config-files/tls-office.conf b/main/openvpn/sample/sample-config-files/tls-office.conf
new file mode 100644
index 00000000..f790f469
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/tls-office.conf
@@ -0,0 +1,83 @@
+#
+# Sample OpenVPN configuration file for
+# office using SSL/TLS mode and RSA certificates/keys.
+#
+# '#' or ';' may be used to delimit comments.
+
+# Use a dynamic tun device.
+# For Linux 2.2 or non-Linux OSes,
+# you may want to use an explicit
+# unit number such as "tun1".
+# OpenVPN also supports virtual
+# ethernet "tap" devices.
+dev tun
+
+# 10.1.0.1 is our local VPN endpoint (office).
+# 10.1.0.2 is our remote VPN endpoint (home).
+ifconfig 10.1.0.1 10.1.0.2
+
+# Our up script will establish routes
+# once the VPN is alive.
+up ./office.up
+
+# In SSL/TLS key exchange, Office will
+# assume server role and Home
+# will assume client role.
+tls-server
+
+# Diffie-Hellman Parameters (tls-server only)
+dh dh1024.pem
+
+# Certificate Authority file
+ca my-ca.crt
+
+# Our certificate/public key
+cert office.crt
+
+# Our private key
+key office.key
+
+# OpenVPN 2.0 uses UDP port 1194 by default
+# (official port assignment by iana.org 11/04).
+# OpenVPN 1.x uses UDP port 5000 by default.
+# Each OpenVPN tunnel must use
+# a different port number.
+# lport or rport can be used
+# to denote different ports
+# for local and remote.
+; port 1194
+
+# Downgrade UID and GID to
+# "nobody" after initialization
+# for extra security.
+; user nobody
+; group nobody
+
+# If you built OpenVPN with
+# LZO compression, uncomment
+# out the following line.
+; comp-lzo
+
+# Send a UDP ping to remote once
+# every 15 seconds to keep
+# stateful firewall connection
+# alive. Uncomment this
+# out if you are using a stateful
+# firewall.
+; ping 15
+
+# Uncomment this section for a more reliable detection when a system
+# loses its connection. For example, dial-ups or laptops that
+# travel to other locations.
+; ping 15
+; ping-restart 45
+; ping-timer-rem
+; persist-tun
+; persist-key
+
+# Verbosity level.
+# 0 -- quiet except for fatal errors.
+# 1 -- mostly quiet, but display non-fatal network errors.
+# 3 -- medium output, good for normal operation.
+# 9 -- verbose, good for troubleshooting
+verb 3
diff --git a/main/openvpn/sample/sample-config-files/xinetd-client-config b/main/openvpn/sample/sample-config-files/xinetd-client-config
new file mode 100644
index 00000000..03c5c1fa
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/xinetd-client-config
@@ -0,0 +1,11 @@
+# This OpenVPN config file
+# is the client side counterpart
+# of xinetd-server-config
+
+dev tun
+ifconfig 10.4.0.1 10.4.0.2
+remote my-server
+port 1194
+user nobody
+secret /root/openvpn/key
+inactive 600
diff --git a/main/openvpn/sample/sample-config-files/xinetd-server-config b/main/openvpn/sample/sample-config-files/xinetd-server-config
new file mode 100644
index 00000000..803a6f8f
--- /dev/null
+++ b/main/openvpn/sample/sample-config-files/xinetd-server-config
@@ -0,0 +1,25 @@
+# An xinetd configuration file for OpenVPN.
+#
+# This file should be renamed to openvpn or something suitably
+# descriptive and copied to the /etc/xinetd.d directory.
+# xinetd can then be made aware of this file by restarting
+# it or sending it a SIGHUP signal.
+#
+# For each potential incoming client, create a separate version
+# of this configuration file on a unique port number. Also note
+# that the key file and ifconfig endpoints should be unique for
+# each client. This configuration assumes that the OpenVPN
+# executable and key live in /root/openvpn. Change this to fit
+# your environment.
+
+service openvpn_1
+{
+ type = UNLISTED
+ port = 1194
+ socket_type = dgram
+ protocol = udp
+ wait = yes
+ user = root
+ server = /root/openvpn/openvpn
+ server_args = --inetd --dev tun --ifconfig 10.4.0.2 10.4.0.1 --secret /root/openvpn/key --inactive 600 --user nobody
+}
diff --git a/main/openvpn/sample/sample-keys/README b/main/openvpn/sample/sample-keys/README
new file mode 100644
index 00000000..1cd473a1
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/README
@@ -0,0 +1,14 @@
+Sample RSA keys.
+
+See the examples section of the man page
+for usage examples.
+
+NOTE: THESE KEYS ARE FOR TESTING PURPOSES ONLY.
+ DON'T USE THEM FOR ANY REAL WORK BECAUSE
+ THEY ARE TOTALLY INSECURE!
+
+ca.{crt,key} -- sample CA key/cert
+client.{crt,key} -- sample client key/cert
+server.{crt,key} -- sample server key/cert (nsCertType=server)
+pass.{crt,key} -- sample client key/cert with password-encrypted key
+ password = "password"
diff --git a/main/openvpn/sample/sample-keys/ca.crt b/main/openvpn/sample/sample-keys/ca.crt
new file mode 100644
index 00000000..e063ccce
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/ca.crt
@@ -0,0 +1,19 @@
+-----BEGIN CERTIFICATE-----
+MIIDBjCCAm+gAwIBAgIBADANBgkqhkiG9w0BAQQFADBmMQswCQYDVQQGEwJLRzEL
+MAkGA1UECBMCTkExEDAOBgNVBAcTB0JJU0hLRUsxFTATBgNVBAoTDE9wZW5WUE4t
+VEVTVDEhMB8GCSqGSIb3DQEJARYSbWVAbXlob3N0Lm15ZG9tYWluMB4XDTA0MTEy
+NTE0NDA1NVoXDTE0MTEyMzE0NDA1NVowZjELMAkGA1UEBhMCS0cxCzAJBgNVBAgT
+Ak5BMRAwDgYDVQQHEwdCSVNIS0VLMRUwEwYDVQQKEwxPcGVuVlBOLVRFU1QxITAf
+BgkqhkiG9w0BCQEWEm1lQG15aG9zdC5teWRvbWFpbjCBnzANBgkqhkiG9w0BAQEF
+AAOBjQAwgYkCgYEAqPjWJnesPu6bR/iec4FMz3opVaPdBHxg+ORKNmrnVZPh0t8/
+ZT34KXkYoI9B82scurp8UlZVXG8JdUsz+yai8ti9+g7vcuyKUtcCIjn0HLgmdPu5
+gFX25lB0pXw+XIU031dOfPvtROdG5YZN5yCErgCy7TE7zntLnkEDuRmyU6cCAwEA
+AaOBwzCBwDAdBgNVHQ4EFgQUiaZg47rqPq/8ZH9MvYzSSI3gzEYwgZAGA1UdIwSB
+iDCBhYAUiaZg47rqPq/8ZH9MvYzSSI3gzEahaqRoMGYxCzAJBgNVBAYTAktHMQsw
+CQYDVQQIEwJOQTEQMA4GA1UEBxMHQklTSEtFSzEVMBMGA1UEChMMT3BlblZQTi1U
+RVNUMSEwHwYJKoZIhvcNAQkBFhJtZUBteWhvc3QubXlkb21haW6CAQAwDAYDVR0T
+BAUwAwEB/zANBgkqhkiG9w0BAQQFAAOBgQBfJoiWYrYdjM0mKPEzUQk0nLYTovBP
+I0es/2rfGrin1zbcFY+4dhVBd1E/StebnG+CP8r7QeEIwu7x8gYDdOLLsZn+2vBL
+e4jNU1ClI6Q0L7jrzhhunQ5mAaZztVyYwFB15odYcdN2iO0tP7jtEsvrRqxICNy3
+8itzViPTf5W4sA==
+-----END CERTIFICATE-----
diff --git a/main/openvpn/sample/sample-keys/ca.key b/main/openvpn/sample/sample-keys/ca.key
new file mode 100644
index 00000000..b4bf792a
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/ca.key
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXQIBAAKBgQCo+NYmd6w+7ptH+J5zgUzPeilVo90EfGD45Eo2audVk+HS3z9l
+PfgpeRigj0Hzaxy6unxSVlVcbwl1SzP7JqLy2L36Du9y7IpS1wIiOfQcuCZ0+7mA
+VfbmUHSlfD5chTTfV058++1E50blhk3nIISuALLtMTvOe0ueQQO5GbJTpwIDAQAB
+AoGAQuVREyWp4bhhbZr2UFBOco2ws6EOLWp4kdD/uI+WSoEjlHKiDJj+GJ1CrL5K
+o+4yD5MpCQf4/4FOQ0ukprfjJpDwDinTG6vzuWSLTHNiTgvksW3vy7IsNMJx97hT
+4D2QOOl9HhA50Qqg70teMPYXOgLRMVsdCIV7p7zDNy4nM+ECQQDX8m5ZcQmPtUDA
+38dPTfpL4U7kMB94FItJYH/Lk5kMW1/J33xymNhL+BHaG064ol9n2ubGW4XEO5t2
+qE1IOsVpAkEAyE/x/OBVSI1s75aYGlEwMd87p3qaDdtXT7WzujjRY7r8Y1ynkMU6
+GtMeneBX/lk4BY/6I+5bhAzce+hqhaXejwJBAL5Wg+c4GApf41xdogqHm7doNyYw
+OHyZ9w9NDDc+uGbI30xLPSCxEe0cEXgiG6foDpm2uzRZFTWaqHPU8pFYpAkCQGNX
+cpWM0/7VVK9Fqk1y8knpgfY/UWOJ4jU/0dCLGR0ywLSuYNPlXDmtdkOp3TnhGW14
+x/9F2NEWZ8pzq1B4wHUCQQC5ztD4m/rpiIpinoewUJODoeBJXYBKqx1+mdrALCq6
+ESvK1WRiusMaY3xmsdv4J2TB5iUPryELbn3jU12WGcQc
+-----END RSA PRIVATE KEY-----
diff --git a/main/openvpn/sample/sample-keys/client.crt b/main/openvpn/sample/sample-keys/client.crt
new file mode 100644
index 00000000..c0474461
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/client.crt
@@ -0,0 +1,65 @@
+Certificate:
+ Data:
+ Version: 3 (0x2)
+ Serial Number: 2 (0x2)
+ Signature Algorithm: md5WithRSAEncryption
+ Issuer: C=KG, ST=NA, L=BISHKEK, O=OpenVPN-TEST/emailAddress=me@myhost.mydomain
+ Validity
+ Not Before: Nov 25 14:46:49 2004 GMT
+ Not After : Nov 23 14:46:49 2014 GMT
+ Subject: C=KG, ST=NA, O=OpenVPN-TEST, CN=Test-Client/emailAddress=me@myhost.mydomain
+ Subject Public Key Info:
+ Public Key Algorithm: rsaEncryption
+ RSA Public Key: (1024 bit)
+ Modulus (1024 bit):
+ 00:d2:12:5c:c6:4d:13:34:ae:cf:fa:ab:fe:cb:de:
+ 8c:f1:4b:4a:95:28:60:87:82:2c:b8:c1:e5:8e:c6:
+ 5d:11:58:61:a4:a5:f1:42:d7:86:74:6c:9d:9c:7a:
+ f0:3a:5c:29:e6:53:3b:5e:6d:d8:f0:45:06:2c:23:
+ ee:09:bc:02:8f:0e:b8:d5:33:1f:c3:4a:11:02:48:
+ 0b:cc:4b:ad:6e:74:e0:a2:53:b1:d6:cc:89:b9:e2:
+ 6f:db:15:b3:19:1e:57:04:79:48:3a:da:76:31:fc:
+ bf:d3:34:21:e7:32:d8:9e:06:4e:be:f3:e3:79:b0:
+ 54:fd:d1:42:32:aa:3e:7a:c1
+ Exponent: 65537 (0x10001)
+ X509v3 extensions:
+ X509v3 Basic Constraints:
+ CA:FALSE
+ Netscape Comment:
+ OpenSSL Generated Certificate
+ X509v3 Subject Key Identifier:
+ 17:B7:3F:C7:62:A0:A9:FD:A4:31:0E:58:D7:D9:94:7B:4B:3F:CB:56
+ X509v3 Authority Key Identifier:
+ keyid:89:A6:60:E3:BA:EA:3E:AF:FC:64:7F:4C:BD:8C:D2:48:8D:E0:CC:46
+ DirName:/C=KG/ST=NA/L=BISHKEK/O=OpenVPN-TEST/emailAddress=me@myhost.mydomain
+ serial:00
+
+ Signature Algorithm: md5WithRSAEncryption
+ 61:c6:d1:fa:24:0f:c7:be:09:3b:d8:04:17:63:31:17:07:f9:
+ 56:99:af:4c:67:fa:db:cb:94:cf:55:a5:7b:16:20:8b:42:64:
+ 13:23:62:45:28:93:5e:36:f7:db:02:95:a1:e9:fd:e3:0f:8d:
+ 73:a1:7b:0e:55:78:4d:a5:c4:b7:22:12:a0:ee:55:e0:b8:0e:
+ c9:9b:12:e3:b0:ef:9b:68:93:57:6e:6c:ad:16:68:8e:8d:30:
+ 33:fe:2a:1b:c3:03:8f:b6:0a:2d:0c:b1:3c:bb:f9:58:3f:8c:
+ 81:59:6b:14:dd:62:b5:c2:93:ed:5d:c6:19:0f:9b:4b:52:b3:
+ 7c:78
+-----BEGIN CERTIFICATE-----
+MIIDNTCCAp6gAwIBAgIBAjANBgkqhkiG9w0BAQQFADBmMQswCQYDVQQGEwJLRzEL
+MAkGA1UECBMCTkExEDAOBgNVBAcTB0JJU0hLRUsxFTATBgNVBAoTDE9wZW5WUE4t
+VEVTVDEhMB8GCSqGSIb3DQEJARYSbWVAbXlob3N0Lm15ZG9tYWluMB4XDTA0MTEy
+NTE0NDY0OVoXDTE0MTEyMzE0NDY0OVowajELMAkGA1UEBhMCS0cxCzAJBgNVBAgT
+Ak5BMRUwEwYDVQQKEwxPcGVuVlBOLVRFU1QxFDASBgNVBAMTC1Rlc3QtQ2xpZW50
+MSEwHwYJKoZIhvcNAQkBFhJtZUBteWhvc3QubXlkb21haW4wgZ8wDQYJKoZIhvcN
+AQEBBQADgY0AMIGJAoGBANISXMZNEzSuz/qr/svejPFLSpUoYIeCLLjB5Y7GXRFY
+YaSl8ULXhnRsnZx68DpcKeZTO15t2PBFBiwj7gm8Ao8OuNUzH8NKEQJIC8xLrW50
+4KJTsdbMibnib9sVsxkeVwR5SDradjH8v9M0Iecy2J4GTr7z43mwVP3RQjKqPnrB
+AgMBAAGjge4wgeswCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBH
+ZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFBe3P8dioKn9pDEOWNfZlHtL
+P8tWMIGQBgNVHSMEgYgwgYWAFImmYOO66j6v/GR/TL2M0kiN4MxGoWqkaDBmMQsw
+CQYDVQQGEwJLRzELMAkGA1UECBMCTkExEDAOBgNVBAcTB0JJU0hLRUsxFTATBgNV
+BAoTDE9wZW5WUE4tVEVTVDEhMB8GCSqGSIb3DQEJARYSbWVAbXlob3N0Lm15ZG9t
+YWluggEAMA0GCSqGSIb3DQEBBAUAA4GBAGHG0fokD8e+CTvYBBdjMRcH+VaZr0xn
++tvLlM9VpXsWIItCZBMjYkUok14299sClaHp/eMPjXOhew5VeE2lxLciEqDuVeC4
+DsmbEuOw75tok1dubK0WaI6NMDP+KhvDA4+2Ci0MsTy7+Vg/jIFZaxTdYrXCk+1d
+xhkPm0tSs3x4
+-----END CERTIFICATE-----
diff --git a/main/openvpn/sample/sample-keys/client.key b/main/openvpn/sample/sample-keys/client.key
new file mode 100644
index 00000000..17b95091
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/client.key
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXAIBAAKBgQDSElzGTRM0rs/6q/7L3ozxS0qVKGCHgiy4weWOxl0RWGGkpfFC
+14Z0bJ2cevA6XCnmUztebdjwRQYsI+4JvAKPDrjVMx/DShECSAvMS61udOCiU7HW
+zIm54m/bFbMZHlcEeUg62nYx/L/TNCHnMtieBk6+8+N5sFT90UIyqj56wQIDAQAB
+AoGBAK8RoIGekCfym99DYYfTg9A/t/tQeAnWYaDj7oSrKbqf1lgZ91OGPEZgkoVr
+KzLnxf9uU+bhUs8CJx+4HdO8/L9rAJA+oD9QNuMp0elN4AKuEGE1Eq3a0e3cmgPI
++VIoXM6WVAGgK9I03Zu/UerYQ/DdXWGOIsKhFe8qyQoG9pKxAkEA9ld6O9MHQt3d
+JAjJkgCNn4psozxjrfLWy2huXd3H3CRqGMjLITDGzdkVSgXjHokBYroi0+TZTu4M
+ulJSJaWwBQJBANpO2DAexH2zRHw5Z6QyeEVxz7B3/FzU4GgJx9BH+FSBh+F0G5Ln
+ir5Vst8vZ/LGcgpYjHQLNAvZVgUjiQ4Y6I0CQGvwMJL+CHR4GmmroAblTyjU0n1D
+/Lk/anZ+L73Za7U+D28ErFzCrpmLwRRKOBYtGfpUbOZDpCQ9kj4hy/TLALECQCcL
+9ysUNbzt9Y/qjJkX1d9F7gn4TBEmmkTBixW76bTjvjQbGlt6Qpyso2O8DPGlgPxM
+vkJ7RoHgC7y7kGYPGnkCQBVxSNGIjLx4NQBgN4HD0y4+fars1PTUGnckBcS4npb9
+onLNyerBlWdBwbARyBS7WPIbyyf5VCrn3yIqWxaARO0=
+-----END RSA PRIVATE KEY-----
diff --git a/main/openvpn/sample/sample-keys/dh1024.pem b/main/openvpn/sample/sample-keys/dh1024.pem
new file mode 100644
index 00000000..7ce05f0c
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/dh1024.pem
@@ -0,0 +1,5 @@
+-----BEGIN DH PARAMETERS-----
+MIGHAoGBAJ419DBEOgmQTzo5qXl5fQcN9TN455wkOL7052HzxxRVMyhYmwQcgJvh
+1sa18fyfR9OiVEMYglOpkqVoGLN7qd5aQNNi5W7/C+VBdHTBJcGZJyyP5B3qcz32
+9mLJKudlVudV0Qxk5qUJaPZ/xupz0NyoVpviuiBOI1gNi8ovSXWzAgEC
+-----END DH PARAMETERS-----
diff --git a/main/openvpn/sample/sample-keys/pass.crt b/main/openvpn/sample/sample-keys/pass.crt
new file mode 100644
index 00000000..8bb7b17a
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/pass.crt
@@ -0,0 +1,65 @@
+Certificate:
+ Data:
+ Version: 3 (0x2)
+ Serial Number: 3 (0x3)
+ Signature Algorithm: md5WithRSAEncryption
+ Issuer: C=KG, ST=NA, L=BISHKEK, O=OpenVPN-TEST/emailAddress=me@myhost.mydomain
+ Validity
+ Not Before: Nov 25 14:48:55 2004 GMT
+ Not After : Nov 23 14:48:55 2014 GMT
+ Subject: C=KG, ST=NA, O=OpenVPN-TEST, CN=Test-Client-Password/emailAddress=me@myhost.mydomain
+ Subject Public Key Info:
+ Public Key Algorithm: rsaEncryption
+ RSA Public Key: (1024 bit)
+ Modulus (1024 bit):
+ 00:ca:b4:05:67:7b:51:c1:d2:fe:21:57:b1:a5:57:
+ 5c:c0:86:38:05:a8:91:cf:e7:a4:bd:7a:76:d8:3b:
+ cf:fe:f3:78:65:24:d6:72:7d:1b:6d:b6:da:04:f2:
+ a8:f6:b4:04:78:d2:24:a7:21:2f:ca:29:46:96:0f:
+ 0b:91:31:66:1e:4d:22:9a:5d:05:17:99:9c:a0:7e:
+ e0:2a:be:78:0c:a1:b9:d4:04:c4:ec:f8:61:79:62:
+ b5:52:2d:f5:41:af:db:9f:8c:ab:08:1b:b7:95:b8:
+ c1:f0:29:d3:da:fb:00:3f:8e:5c:27:e3:8d:fa:ee:
+ dc:b4:3b:0b:8b:e0:ab:c1:c1
+ Exponent: 65537 (0x10001)
+ X509v3 extensions:
+ X509v3 Basic Constraints:
+ CA:FALSE
+ Netscape Comment:
+ OpenSSL Generated Certificate
+ X509v3 Subject Key Identifier:
+ 40:57:F1:8C:9C:86:B2:DA:E0:3F:A7:B8:D7:85:43:45:07:8A:40:73
+ X509v3 Authority Key Identifier:
+ keyid:89:A6:60:E3:BA:EA:3E:AF:FC:64:7F:4C:BD:8C:D2:48:8D:E0:CC:46
+ DirName:/C=KG/ST=NA/L=BISHKEK/O=OpenVPN-TEST/emailAddress=me@myhost.mydomain
+ serial:00
+
+ Signature Algorithm: md5WithRSAEncryption
+ a5:79:72:7f:a2:08:28:8e:66:da:e1:d0:be:bb:97:3d:65:9f:
+ ab:1e:19:ac:f1:66:44:14:8f:4e:7c:eb:ea:1e:2f:57:ea:44:
+ 46:4c:b9:56:5b:c0:0c:58:d2:45:87:26:6d:82:de:8c:64:b8:
+ 8b:22:61:61:c6:68:36:08:9d:5a:fd:2f:e5:21:e1:a2:0c:7f:
+ 3e:ca:e1:06:ea:9f:81:62:3d:a0:ce:f1:1e:0d:ab:86:89:ed:
+ 9a:89:34:32:c9:e9:6d:7d:f5:11:c3:5d:7e:a5:f7:f1:a6:83:
+ 77:1b:94:67:d9:0f:5c:ac:0e:08:4a:88:98:65:49:eb:66:9e:
+ 2d:28
+-----BEGIN CERTIFICATE-----
+MIIDPjCCAqegAwIBAgIBAzANBgkqhkiG9w0BAQQFADBmMQswCQYDVQQGEwJLRzEL
+MAkGA1UECBMCTkExEDAOBgNVBAcTB0JJU0hLRUsxFTATBgNVBAoTDE9wZW5WUE4t
+VEVTVDEhMB8GCSqGSIb3DQEJARYSbWVAbXlob3N0Lm15ZG9tYWluMB4XDTA0MTEy
+NTE0NDg1NVoXDTE0MTEyMzE0NDg1NVowczELMAkGA1UEBhMCS0cxCzAJBgNVBAgT
+Ak5BMRUwEwYDVQQKEwxPcGVuVlBOLVRFU1QxHTAbBgNVBAMTFFRlc3QtQ2xpZW50
+LVBhc3N3b3JkMSEwHwYJKoZIhvcNAQkBFhJtZUBteWhvc3QubXlkb21haW4wgZ8w
+DQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMq0BWd7UcHS/iFXsaVXXMCGOAWokc/n
+pL16dtg7z/7zeGUk1nJ9G2222gTyqPa0BHjSJKchL8opRpYPC5ExZh5NIppdBReZ
+nKB+4Cq+eAyhudQExOz4YXlitVIt9UGv25+Mqwgbt5W4wfAp09r7AD+OXCfjjfru
+3LQ7C4vgq8HBAgMBAAGjge4wgeswCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYd
+T3BlblNTTCBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFEBX8YychrLa
+4D+nuNeFQ0UHikBzMIGQBgNVHSMEgYgwgYWAFImmYOO66j6v/GR/TL2M0kiN4MxG
+oWqkaDBmMQswCQYDVQQGEwJLRzELMAkGA1UECBMCTkExEDAOBgNVBAcTB0JJU0hL
+RUsxFTATBgNVBAoTDE9wZW5WUE4tVEVTVDEhMB8GCSqGSIb3DQEJARYSbWVAbXlo
+b3N0Lm15ZG9tYWluggEAMA0GCSqGSIb3DQEBBAUAA4GBAKV5cn+iCCiOZtrh0L67
+lz1ln6seGazxZkQUj0586+oeL1fqREZMuVZbwAxY0kWHJm2C3oxkuIsiYWHGaDYI
+nVr9L+Uh4aIMfz7K4Qbqn4FiPaDO8R4Nq4aJ7ZqJNDLJ6W199RHDXX6l9/Gmg3cb
+lGfZD1ysDghKiJhlSetmni0o
+-----END CERTIFICATE-----
diff --git a/main/openvpn/sample/sample-keys/pass.key b/main/openvpn/sample/sample-keys/pass.key
new file mode 100644
index 00000000..4916364c
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/pass.key
@@ -0,0 +1,18 @@
+-----BEGIN RSA PRIVATE KEY-----
+Proc-Type: 4,ENCRYPTED
+DEK-Info: DES-EDE3-CBC,959F7365DBBFDB77
+
+nGm57l+rR/8dAZOHL/1x/6dt11zUca7rphjsgw6XRnSf3M/CWmHvHVjApWcNLEs5
+SWNMp1xfUogtGzsKoMBbnlZLDA7RVHUYD6dVMyCpc64UjzT08LmdZhtQYLAKmlUC
+PT1VXS4Ae+SrqCPUqJkw1xP3kr0F1EVCXNu0nhOBAuuTGOS7PPEyW2N+k4nRHtsR
+IaPp8GCuIeoR6CdymTFTq6d/GeCiEcyrUM4BNrG4GtRRrURxxOrzQFEOS5sjBPSg
+Km1lwa6zBQFRLg9dKjRBL4teKuPY5Z2Nmpcml/aN4CkdkVEso4lW6/UHLE/joOMQ
+0MdpdYtu8wnt1WI/Z4immQfl3MF+QcPMkqXXzCEhGG/5SbAo89KC46UXvu1Z5OhS
+8XFHhvYBivOYWgZ3XUQqyZ0ulF60mFX7aE1Ph/eEbhWBHmU39hGjxzop1UoPwqLx
+ahvtfvCkR3ZeqlWO9SHzCA3MlrKwQ1p1UL6nG6AJhNN9jSevH6by+8wr07NBZOqX
+fJx+J/8EdVsUCFG2UJxPwM83ZSwAsvKRqph6CuWEl9ndUb7rw6khmRIoY0Iz3LbU
+1MlcDoJNcJas6lYDr1UeFSk86g0SiGCHXZIqsjyUgq6HIy4YrAYiQUthnlF8tp2Q
+nNQBPLo1GsHf0dC2MqKfDFASu7ST+Bl+yajHcIiUXvUJPxWbjkWYG9Q2p2ZBLzZD
+uqeRr66OKxTzUS4go/QbHDNsAulXl61gQIEOdZw5uy/Jl11kyAI6EQbzmehagKdH
+EshTgKp8ks62y0bBHgy3FMKyidJ5Hm58ZDhBxrwN0w+vhRoTGOepTA==
+-----END RSA PRIVATE KEY-----
diff --git a/main/openvpn/sample/sample-keys/pkcs12.p12 b/main/openvpn/sample/sample-keys/pkcs12.p12
new file mode 100644
index 00000000..253d4081
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/pkcs12.p12
Binary files differ
diff --git a/main/openvpn/sample/sample-keys/server.crt b/main/openvpn/sample/sample-keys/server.crt
new file mode 100644
index 00000000..28bb4d94
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/server.crt
@@ -0,0 +1,67 @@
+Certificate:
+ Data:
+ Version: 3 (0x2)
+ Serial Number: 1 (0x1)
+ Signature Algorithm: md5WithRSAEncryption
+ Issuer: C=KG, ST=NA, L=BISHKEK, O=OpenVPN-TEST/emailAddress=me@myhost.mydomain
+ Validity
+ Not Before: Nov 25 14:42:22 2004 GMT
+ Not After : Nov 23 14:42:22 2014 GMT
+ Subject: C=KG, ST=NA, O=OpenVPN-TEST, CN=Test-Server/emailAddress=me@myhost.mydomain
+ Subject Public Key Info:
+ Public Key Algorithm: rsaEncryption
+ RSA Public Key: (1024 bit)
+ Modulus (1024 bit):
+ 00:cb:4e:ac:f9:83:57:f6:69:d2:32:29:b4:bc:ad:
+ e6:f7:26:21:89:33:30:43:40:a3:35:d9:de:26:01:
+ d6:b4:f0:bc:0a:19:55:99:3b:f1:4c:91:60:b6:fd:
+ 74:34:8d:5a:c7:62:ec:ce:f2:d6:02:ce:57:32:f4:
+ 35:8c:71:a0:6d:65:2a:e7:80:ae:29:59:cf:36:73:
+ f8:7c:4a:73:90:fc:30:28:d5:46:7d:35:a4:4e:c9:
+ 9f:90:7b:e2:09:21:36:c5:a8:ec:85:82:9a:32:b4:
+ 91:3b:c1:d6:4f:9f:d1:f8:6f:68:f4:1d:d2:06:91:
+ 32:cc:9a:48:fd:cd:98:7f:2f
+ Exponent: 65537 (0x10001)
+ X509v3 extensions:
+ X509v3 Basic Constraints:
+ CA:FALSE
+ Netscape Cert Type:
+ SSL Server
+ Netscape Comment:
+ OpenSSL Generated Server Certificate
+ X509v3 Subject Key Identifier:
+ 69:11:FE:E7:9F:89:7B:71:34:69:C0:DC:82:F8:D0:5D:4D:FB:78:DF
+ X509v3 Authority Key Identifier:
+ keyid:89:A6:60:E3:BA:EA:3E:AF:FC:64:7F:4C:BD:8C:D2:48:8D:E0:CC:46
+ DirName:/C=KG/ST=NA/L=BISHKEK/O=OpenVPN-TEST/emailAddress=me@myhost.mydomain
+ serial:00
+
+ Signature Algorithm: md5WithRSAEncryption
+ 35:5c:75:da:57:ef:b5:79:f2:a2:db:36:e4:75:e8:c7:bc:73:
+ 26:cf:30:36:4b:2e:51:46:37:60:2f:4e:2b:f6:71:a2:23:db:
+ 8e:d8:5c:d5:af:2e:22:28:dd:30:a8:89:66:3a:cc:5b:3c:0f:
+ 96:12:20:de:5e:41:52:74:35:ed:4c:26:40:19:ca:73:df:54:
+ b1:30:96:9c:a5:14:d0:38:28:3f:ab:30:07:d7:de:98:d2:7f:
+ 7f:90:b2:52:1d:e5:95:88:ed:ba:8a:6a:14:85:66:76:ec:75:
+ 30:e8:ae:94:f4:e1:76:fa:4b:0e:f1:53:d7:95:be:fb:69:fa:
+ 3d:32
+-----BEGIN CERTIFICATE-----
+MIIDUTCCArqgAwIBAgIBATANBgkqhkiG9w0BAQQFADBmMQswCQYDVQQGEwJLRzEL
+MAkGA1UECBMCTkExEDAOBgNVBAcTB0JJU0hLRUsxFTATBgNVBAoTDE9wZW5WUE4t
+VEVTVDEhMB8GCSqGSIb3DQEJARYSbWVAbXlob3N0Lm15ZG9tYWluMB4XDTA0MTEy
+NTE0NDIyMloXDTE0MTEyMzE0NDIyMlowajELMAkGA1UEBhMCS0cxCzAJBgNVBAgT
+Ak5BMRUwEwYDVQQKEwxPcGVuVlBOLVRFU1QxFDASBgNVBAMTC1Rlc3QtU2VydmVy
+MSEwHwYJKoZIhvcNAQkBFhJtZUBteWhvc3QubXlkb21haW4wgZ8wDQYJKoZIhvcN
+AQEBBQADgY0AMIGJAoGBAMtOrPmDV/Zp0jIptLyt5vcmIYkzMENAozXZ3iYB1rTw
+vAoZVZk78UyRYLb9dDSNWsdi7M7y1gLOVzL0NYxxoG1lKueArilZzzZz+HxKc5D8
+MCjVRn01pE7Jn5B74gkhNsWo7IWCmjK0kTvB1k+f0fhvaPQd0gaRMsyaSP3NmH8v
+AgMBAAGjggEJMIIBBTAJBgNVHRMEAjAAMBEGCWCGSAGG+EIBAQQEAwIGQDAzBglg
+hkgBhvhCAQ0EJhYkT3BlblNTTCBHZW5lcmF0ZWQgU2VydmVyIENlcnRpZmljYXRl
+MB0GA1UdDgQWBBRpEf7nn4l7cTRpwNyC+NBdTft43zCBkAYDVR0jBIGIMIGFgBSJ
+pmDjuuo+r/xkf0y9jNJIjeDMRqFqpGgwZjELMAkGA1UEBhMCS0cxCzAJBgNVBAgT
+Ak5BMRAwDgYDVQQHEwdCSVNIS0VLMRUwEwYDVQQKEwxPcGVuVlBOLVRFU1QxITAf
+BgkqhkiG9w0BCQEWEm1lQG15aG9zdC5teWRvbWFpboIBADANBgkqhkiG9w0BAQQF
+AAOBgQA1XHXaV++1efKi2zbkdejHvHMmzzA2Sy5RRjdgL04r9nGiI9uO2FzVry4i
+KN0wqIlmOsxbPA+WEiDeXkFSdDXtTCZAGcpz31SxMJacpRTQOCg/qzAH196Y0n9/
+kLJSHeWViO26imoUhWZ27HUw6K6U9OF2+ksO8VPXlb77afo9Mg==
+-----END CERTIFICATE-----
diff --git a/main/openvpn/sample/sample-keys/server.key b/main/openvpn/sample/sample-keys/server.key
new file mode 100644
index 00000000..976acabf
--- /dev/null
+++ b/main/openvpn/sample/sample-keys/server.key
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXgIBAAKBgQDLTqz5g1f2adIyKbS8reb3JiGJMzBDQKM12d4mAda08LwKGVWZ
+O/FMkWC2/XQ0jVrHYuzO8tYCzlcy9DWMcaBtZSrngK4pWc82c/h8SnOQ/DAo1UZ9
+NaROyZ+Qe+IJITbFqOyFgpoytJE7wdZPn9H4b2j0HdIGkTLMmkj9zZh/LwIDAQAB
+AoGBAKP1ljA/iY/zNY447kZ/5NWKzd7tBk4mcbl7M9no/7O6tZtbZRoIKoi6cYoC
+C1ZabUyBbkNTud5XdCFmq0zRUjOWvoFMZ9VZfd2kRPvl4TGczBtJAq65b+EYMGui
+q6T9p61xPdtzu0vM+Ecj127pAMk5XcJyxu8XQK7lZWmG5UoJAkEA8CxXNZN+A3qD
+bMBPI3VdwKCNSjNVEQEnygMbNgw7VLdxPpspzZziqJEGdzsM4dsnOBwKxIWFLN2h
+lbGBOquAswJBANi0atGWM8VUxDjvqqHCTS9RUXWgnvYhee4/xraJBQPBSivjC9P0
+vKT7PjBHU6djtKSLKGaHn1vHqmyY7PCMjZUCQQCNVSqExqSzG1dXmdt4PErNXi2G
+6qo2dX2arTVIGu6XLdQgSWLSMm5XT/CEHWW5SyPLKwVTHFeATXQXCPvJML9tAkEA
+k0yXax0g1ZoXwufN4SQUmPw6Va03P/BjU/nP1ZVvbiz9gLVU/d7WN4J7tA9XomkY
+idv5OzAmtxkSE70jGSNAvQJAWhCf9+iHkzOHRyKKOYlh1DHUwDfSEp+hlZYg9H03
+P2sraQzUxgWDY/DIY63KvW78ny863baFz7onz21MYGgJXg==
+-----END RSA PRIVATE KEY-----
diff --git a/main/openvpn/sample/sample-plugins/defer/README b/main/openvpn/sample/sample-plugins/defer/README
new file mode 100644
index 00000000..d8990f8b
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/defer/README
@@ -0,0 +1,16 @@
+OpenVPN plugin examples.
+
+Examples provided:
+
+simple.c -- using the --auth-user-pass-verify callback,
+ test deferred authentication.
+
+To build:
+
+ ./build simple (Linux/BSD/etc.)
+ ./winbuild simple (MinGW on Windows)
+
+To use in OpenVPN, add to config file:
+
+ plugin simple.so (Linux/BSD/etc.)
+ plugin simple.dll (MinGW on Windows)
diff --git a/main/openvpn/sample/sample-plugins/defer/build b/main/openvpn/sample/sample-plugins/defer/build
new file mode 100755
index 00000000..0612c080
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/defer/build
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+#
+# Build an OpenVPN plugin module on *nix. The argument should
+# be the base name of the C source file (without the .c).
+#
+
+# This directory is where we will look for openvpn-plugin.h
+CPPFLAGS="${CPPFLAGS:--I../../../include}"
+
+CC="${CC:-gcc}"
+CFLAGS="${CFLAGS:--O2 -Wall -g}"
+
+$CC $CPPFLAGS $CFLAGS -fPIC -c $1.c && \
+$CC $CFLAGS -fPIC -shared ${LDFLAS} -Wl,-soname,$1.so -o $1.so $1.o -lc
diff --git a/main/openvpn/sample/sample-plugins/defer/simple.c b/main/openvpn/sample/sample-plugins/defer/simple.c
new file mode 100644
index 00000000..65398657
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/defer/simple.c
@@ -0,0 +1,305 @@
+/*
+ * OpenVPN -- An application to securely tunnel IP networks
+ * over a single TCP/UDP port, with support for SSL/TLS-based
+ * session authentication and key exchange,
+ * packet encryption, packet authentication, and
+ * packet compression.
+ *
+ * Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program (see the file COPYING included with this
+ * distribution); if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/*
+ * This file implements a simple OpenVPN plugin module which
+ * will test deferred authentication and packet filtering.
+ *
+ * Will run on Windows or *nix.
+ *
+ * Sample usage:
+ *
+ * setenv test_deferred_auth 20
+ * setenv test_packet_filter 10
+ * plugin plugin/defer/simple.so
+ *
+ * This will enable deferred authentication to occur 20
+ * seconds after the normal TLS authentication process,
+ * and will cause a packet filter file to be generated 10
+ * seconds after the initial TLS negotiation, using
+ * {common-name}.pf as the source.
+ *
+ * Sample packet filter configuration:
+ *
+ * [CLIENTS DROP]
+ * +otherclient
+ * [SUBNETS DROP]
+ * +10.0.0.0/8
+ * -10.10.0.8
+ * [END]
+ *
+ * See the README file for build instructions.
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include "openvpn-plugin.h"
+
+/* bool definitions */
+#define bool int
+#define true 1
+#define false 0
+
+/*
+ * Our context, where we keep our state.
+ */
+
+struct plugin_context {
+ int test_deferred_auth;
+ int test_packet_filter;
+};
+
+struct plugin_per_client_context {
+ int n_calls;
+ bool generated_pf_file;
+};
+
+/*
+ * Given an environmental variable name, search
+ * the envp array for its value, returning it
+ * if found or NULL otherwise.
+ */
+static const char *
+get_env (const char *name, const char *envp[])
+{
+ if (envp)
+ {
+ int i;
+ const int namelen = strlen (name);
+ for (i = 0; envp[i]; ++i)
+ {
+ if (!strncmp (envp[i], name, namelen))
+ {
+ const char *cp = envp[i] + namelen;
+ if (*cp == '=')
+ return cp + 1;
+ }
+ }
+ }
+ return NULL;
+}
+
+/* used for safe printf of possible NULL strings */
+static const char *
+np (const char *str)
+{
+ if (str)
+ return str;
+ else
+ return "[NULL]";
+}
+
+static int
+atoi_null0 (const char *str)
+{
+ if (str)
+ return atoi (str);
+ else
+ return 0;
+}
+
+OPENVPN_EXPORT openvpn_plugin_handle_t
+openvpn_plugin_open_v1 (unsigned int *type_mask, const char *argv[], const char *envp[])
+{
+ struct plugin_context *context;
+
+ printf ("FUNC: openvpn_plugin_open_v1\n");
+
+ /*
+ * Allocate our context
+ */
+ context = (struct plugin_context *) calloc (1, sizeof (struct plugin_context));
+
+ context->test_deferred_auth = atoi_null0 (get_env ("test_deferred_auth", envp));
+ printf ("TEST_DEFERRED_AUTH %d\n", context->test_deferred_auth);
+
+ context->test_packet_filter = atoi_null0 (get_env ("test_packet_filter", envp));
+ printf ("TEST_PACKET_FILTER %d\n", context->test_packet_filter);
+
+ /*
+ * Which callbacks to intercept.
+ */
+ *type_mask =
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_UP) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_DOWN) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_ROUTE_UP) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_IPCHANGE) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_TLS_VERIFY) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_CLIENT_CONNECT_V2) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_CLIENT_DISCONNECT) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_LEARN_ADDRESS) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_TLS_FINAL) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_ENABLE_PF);
+
+ return (openvpn_plugin_handle_t) context;
+}
+
+static int
+auth_user_pass_verify (struct plugin_context *context, struct plugin_per_client_context *pcc, const char *argv[], const char *envp[])
+{
+ if (context->test_deferred_auth)
+ {
+ /* get username/password from envp string array */
+ const char *username = get_env ("username", envp);
+ const char *password = get_env ("password", envp);
+
+ /* get auth_control_file filename from envp string array*/
+ const char *auth_control_file = get_env ("auth_control_file", envp);
+
+ printf ("DEFER u='%s' p='%s' acf='%s'\n",
+ np(username),
+ np(password),
+ np(auth_control_file));
+
+ /* Authenticate asynchronously in n seconds */
+ if (auth_control_file)
+ {
+ char buf[256];
+ int auth = 2;
+ sscanf (username, "%d", &auth);
+ snprintf (buf, sizeof(buf), "( sleep %d ; echo AUTH %s %d ; echo %d >%s ) &",
+ context->test_deferred_auth,
+ auth_control_file,
+ auth,
+ pcc->n_calls < auth,
+ auth_control_file);
+ printf ("%s\n", buf);
+ system (buf);
+ pcc->n_calls++;
+ return OPENVPN_PLUGIN_FUNC_DEFERRED;
+ }
+ else
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ }
+ else
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+}
+
+static int
+tls_final (struct plugin_context *context, struct plugin_per_client_context *pcc, const char *argv[], const char *envp[])
+{
+ if (context->test_packet_filter)
+ {
+ if (!pcc->generated_pf_file)
+ {
+ const char *pff = get_env ("pf_file", envp);
+ const char *cn = get_env ("username", envp);
+ if (pff && cn)
+ {
+ char buf[256];
+ snprintf (buf, sizeof(buf), "( sleep %d ; echo PF %s/%s ; cp \"%s.pf\" \"%s\" ) &",
+ context->test_packet_filter, cn, pff, cn, pff);
+ printf ("%s\n", buf);
+ system (buf);
+ pcc->generated_pf_file = true;
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ }
+ else
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ }
+ else
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ }
+ else
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+}
+
+OPENVPN_EXPORT int
+openvpn_plugin_func_v2 (openvpn_plugin_handle_t handle,
+ const int type,
+ const char *argv[],
+ const char *envp[],
+ void *per_client_context,
+ struct openvpn_plugin_string_list **return_list)
+{
+ struct plugin_context *context = (struct plugin_context *) handle;
+ struct plugin_per_client_context *pcc = (struct plugin_per_client_context *) per_client_context;
+ switch (type)
+ {
+ case OPENVPN_PLUGIN_UP:
+ printf ("OPENVPN_PLUGIN_UP\n");
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ case OPENVPN_PLUGIN_DOWN:
+ printf ("OPENVPN_PLUGIN_DOWN\n");
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ case OPENVPN_PLUGIN_ROUTE_UP:
+ printf ("OPENVPN_PLUGIN_ROUTE_UP\n");
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ case OPENVPN_PLUGIN_IPCHANGE:
+ printf ("OPENVPN_PLUGIN_IPCHANGE\n");
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ case OPENVPN_PLUGIN_TLS_VERIFY:
+ printf ("OPENVPN_PLUGIN_TLS_VERIFY\n");
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ case OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY:
+ printf ("OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY\n");
+ return auth_user_pass_verify (context, pcc, argv, envp);
+ case OPENVPN_PLUGIN_CLIENT_CONNECT_V2:
+ printf ("OPENVPN_PLUGIN_CLIENT_CONNECT_V2\n");
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ case OPENVPN_PLUGIN_CLIENT_DISCONNECT:
+ printf ("OPENVPN_PLUGIN_CLIENT_DISCONNECT\n");
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ case OPENVPN_PLUGIN_LEARN_ADDRESS:
+ printf ("OPENVPN_PLUGIN_LEARN_ADDRESS\n");
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ case OPENVPN_PLUGIN_TLS_FINAL:
+ printf ("OPENVPN_PLUGIN_TLS_FINAL\n");
+ return tls_final (context, pcc, argv, envp);
+ case OPENVPN_PLUGIN_ENABLE_PF:
+ printf ("OPENVPN_PLUGIN_ENABLE_PF\n");
+ if (context->test_packet_filter)
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ else
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ default:
+ printf ("OPENVPN_PLUGIN_?\n");
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ }
+}
+
+OPENVPN_EXPORT void *
+openvpn_plugin_client_constructor_v1 (openvpn_plugin_handle_t handle)
+{
+ printf ("FUNC: openvpn_plugin_client_constructor_v1\n");
+ return calloc (1, sizeof (struct plugin_per_client_context));
+}
+
+OPENVPN_EXPORT void
+openvpn_plugin_client_destructor_v1 (openvpn_plugin_handle_t handle, void *per_client_context)
+{
+ printf ("FUNC: openvpn_plugin_client_destructor_v1\n");
+ free (per_client_context);
+}
+
+OPENVPN_EXPORT void
+openvpn_plugin_close_v1 (openvpn_plugin_handle_t handle)
+{
+ struct plugin_context *context = (struct plugin_context *) handle;
+ printf ("FUNC: openvpn_plugin_close_v1\n");
+ free (context);
+}
diff --git a/main/openvpn/sample/sample-plugins/defer/simple.def b/main/openvpn/sample/sample-plugins/defer/simple.def
new file mode 100755
index 00000000..a87507d1
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/defer/simple.def
@@ -0,0 +1,6 @@
+LIBRARY OpenVPN_PLUGIN_SAMPLE
+DESCRIPTION "Sample OpenVPN plug-in module."
+EXPORTS
+ openvpn_plugin_open_v1 @1
+ openvpn_plugin_func_v1 @2
+ openvpn_plugin_close_v1 @3
diff --git a/main/openvpn/sample/sample-plugins/defer/winbuild b/main/openvpn/sample/sample-plugins/defer/winbuild
new file mode 100755
index 00000000..82927d96
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/defer/winbuild
@@ -0,0 +1,18 @@
+#
+# Build an OpenVPN plugin module on Windows/MinGW.
+# The argument should be the base name of the C source file
+# (without the .c).
+#
+
+# This directory is where we will look for openvpn-plugin.h
+INCLUDE="-I../../../build"
+
+CC_FLAGS="-O2 -Wall"
+
+gcc -DBUILD_DLL $CC_FLAGS $INCLUDE -c $1.c
+gcc --disable-stdcall-fixup -mdll -DBUILD_DLL -o junk.tmp -Wl,--base-file,base.tmp $1.o
+rm junk.tmp
+dlltool --dllname $1.dll --base-file base.tmp --output-exp temp.exp --input-def $1.def
+rm base.tmp
+gcc --enable-stdcall-fixup -mdll -DBUILD_DLL -o $1.dll $1.o -Wl,temp.exp
+rm temp.exp
diff --git a/main/openvpn/sample/sample-plugins/log/build b/main/openvpn/sample/sample-plugins/log/build
new file mode 100755
index 00000000..c07ec408
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/log/build
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+#
+# Build an OpenVPN plugin module on *nix. The argument should
+# be the base name of the C source file (without the .c).
+#
+
+# This directory is where we will look for openvpn-plugin.h
+CPPFLAGS="${CPPFLAGS:--I../../../include}"
+
+CC="${CC:-gcc}"
+CFLAGS="${CFLAGS:--O2 -Wall -g}"
+
+$CC $CPPFLAGS $CFLAGS -fPIC -c $1.c && \
+$CC $CFLAGS -fPIC -shared $LDFLAGS -Wl,-soname,$1.so -o $1.so $1.o -lc
diff --git a/main/openvpn/sample/sample-plugins/log/log.c b/main/openvpn/sample/sample-plugins/log/log.c
new file mode 100644
index 00000000..1cc4650e
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/log/log.c
@@ -0,0 +1,184 @@
+/*
+ * OpenVPN -- An application to securely tunnel IP networks
+ * over a single TCP/UDP port, with support for SSL/TLS-based
+ * session authentication and key exchange,
+ * packet encryption, packet authentication, and
+ * packet compression.
+ *
+ * Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program (see the file COPYING included with this
+ * distribution); if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/*
+ * This plugin is similar to simple.c, except it also logs extra information
+ * to stdout for every plugin method called by OpenVPN.
+ *
+ * See the README file for build instructions.
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include "openvpn-plugin.h"
+
+/*
+ * Our context, where we keep our state.
+ */
+struct plugin_context {
+ const char *username;
+ const char *password;
+};
+
+/*
+ * Given an environmental variable name, search
+ * the envp array for its value, returning it
+ * if found or NULL otherwise.
+ */
+static const char *
+get_env (const char *name, const char *envp[])
+{
+ if (envp)
+ {
+ int i;
+ const int namelen = strlen (name);
+ for (i = 0; envp[i]; ++i)
+ {
+ if (!strncmp (envp[i], name, namelen))
+ {
+ const char *cp = envp[i] + namelen;
+ if (*cp == '=')
+ return cp + 1;
+ }
+ }
+ }
+ return NULL;
+}
+
+OPENVPN_EXPORT openvpn_plugin_handle_t
+openvpn_plugin_open_v1 (unsigned int *type_mask, const char *argv[], const char *envp[])
+{
+ struct plugin_context *context;
+
+ /*
+ * Allocate our context
+ */
+ context = (struct plugin_context *) calloc (1, sizeof (struct plugin_context));
+
+ /*
+ * Set the username/password we will require.
+ */
+ context->username = "foo";
+ context->password = "bar";
+
+ /*
+ * Which callbacks to intercept.
+ */
+ *type_mask =
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_UP) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_DOWN) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_ROUTE_UP) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_IPCHANGE) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_TLS_VERIFY) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_CLIENT_CONNECT_V2) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_CLIENT_DISCONNECT) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_LEARN_ADDRESS) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_TLS_FINAL);
+
+ return (openvpn_plugin_handle_t) context;
+}
+
+void
+show (const int type, const char *argv[], const char *envp[])
+{
+ size_t i;
+ switch (type)
+ {
+ case OPENVPN_PLUGIN_UP:
+ printf ("OPENVPN_PLUGIN_UP\n");
+ break;
+ case OPENVPN_PLUGIN_DOWN:
+ printf ("OPENVPN_PLUGIN_DOWN\n");
+ break;
+ case OPENVPN_PLUGIN_ROUTE_UP:
+ printf ("OPENVPN_PLUGIN_ROUTE_UP\n");
+ break;
+ case OPENVPN_PLUGIN_IPCHANGE:
+ printf ("OPENVPN_PLUGIN_IPCHANGE\n");
+ break;
+ case OPENVPN_PLUGIN_TLS_VERIFY:
+ printf ("OPENVPN_PLUGIN_TLS_VERIFY\n");
+ break;
+ case OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY:
+ printf ("OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY\n");
+ break;
+ case OPENVPN_PLUGIN_CLIENT_CONNECT_V2:
+ printf ("OPENVPN_PLUGIN_CLIENT_CONNECT_V2\n");
+ break;
+ case OPENVPN_PLUGIN_CLIENT_DISCONNECT:
+ printf ("OPENVPN_PLUGIN_CLIENT_DISCONNECT\n");
+ break;
+ case OPENVPN_PLUGIN_LEARN_ADDRESS:
+ printf ("OPENVPN_PLUGIN_LEARN_ADDRESS\n");
+ break;
+ case OPENVPN_PLUGIN_TLS_FINAL:
+ printf ("OPENVPN_PLUGIN_TLS_FINAL\n");
+ break;
+ default:
+ printf ("OPENVPN_PLUGIN_?\n");
+ break;
+ }
+
+ printf ("ARGV\n");
+ for (i = 0; argv[i] != NULL; ++i)
+ printf ("%d '%s'\n", (int)i, argv[i]);
+
+ printf ("ENVP\n");
+ for (i = 0; envp[i] != NULL; ++i)
+ printf ("%d '%s'\n", (int)i, envp[i]);
+}
+
+OPENVPN_EXPORT int
+openvpn_plugin_func_v1 (openvpn_plugin_handle_t handle, const int type, const char *argv[], const char *envp[])
+{
+ struct plugin_context *context = (struct plugin_context *) handle;
+
+ show (type, argv, envp);
+
+ /* check entered username/password against what we require */
+ if (type == OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY)
+ {
+ /* get username/password from envp string array */
+ const char *username = get_env ("username", envp);
+ const char *password = get_env ("password", envp);
+
+ if (username && !strcmp (username, context->username)
+ && password && !strcmp (password, context->password))
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ else
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ }
+ else
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+}
+
+OPENVPN_EXPORT void
+openvpn_plugin_close_v1 (openvpn_plugin_handle_t handle)
+{
+ struct plugin_context *context = (struct plugin_context *) handle;
+ free (context);
+}
diff --git a/main/openvpn/sample/sample-plugins/log/log_v3.c b/main/openvpn/sample/sample-plugins/log/log_v3.c
new file mode 100644
index 00000000..4d3af91a
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/log/log_v3.c
@@ -0,0 +1,252 @@
+/*
+ * OpenVPN -- An application to securely tunnel IP networks
+ * over a single TCP/UDP port, with support for SSL/TLS-based
+ * session authentication and key exchange,
+ * packet encryption, packet authentication, and
+ * packet compression.
+ *
+ * Copyright (C) 2002-2009 OpenVPN Technologies, Inc. <sales@openvpn.net>
+ * Copyright (C) 2010 David Sommerseth <dazo@users.sourceforge.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program (see the file COPYING included with this
+ * distribution); if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/*
+ * This plugin is similar to simple.c, except it also logs extra information
+ * to stdout for every plugin method called by OpenVPN. The only difference
+ * between this (log_v3.c) and log.c is that this module uses the v3 plug-in
+ * API.
+ *
+ * See the README file for build instructions.
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#define ENABLE_SSL
+
+#include "openvpn-plugin.h"
+
+/*
+ * Our context, where we keep our state.
+ */
+struct plugin_context {
+ const char *username;
+ const char *password;
+};
+
+/*
+ * Given an environmental variable name, search
+ * the envp array for its value, returning it
+ * if found or NULL otherwise.
+ */
+static const char *
+get_env (const char *name, const char *envp[])
+{
+ if (envp)
+ {
+ int i;
+ const int namelen = strlen (name);
+ for (i = 0; envp[i]; ++i)
+ {
+ if (!strncmp (envp[i], name, namelen))
+ {
+ const char *cp = envp[i] + namelen;
+ if (*cp == '=')
+ return cp + 1;
+ }
+ }
+ }
+ return NULL;
+}
+
+OPENVPN_EXPORT int
+openvpn_plugin_open_v3 (const int v3structver,
+ struct openvpn_plugin_args_open_in const *args,
+ struct openvpn_plugin_args_open_return *ret)
+{
+ struct plugin_context *context = NULL;
+
+ /* Check that we are API compatible */
+ if( v3structver != OPENVPN_PLUGINv3_STRUCTVER ) {
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ }
+
+ if( args->ssl_api != SSLAPI_OPENSSL ) {
+ printf("This plug-in can only be used against OpenVPN with OpenSSL\n");
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ }
+
+ /* Which callbacks to intercept. */
+ ret->type_mask =
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_UP) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_DOWN) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_ROUTE_UP) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_IPCHANGE) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_TLS_VERIFY) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_CLIENT_CONNECT_V2) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_CLIENT_DISCONNECT) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_LEARN_ADDRESS) |
+ OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_TLS_FINAL);
+
+
+ /* Allocate our context */
+ context = (struct plugin_context *) calloc (1, sizeof (struct plugin_context));
+
+ /* Set the username/password we will require. */
+ context->username = "foo";
+ context->password = "bar";
+
+ /* Point the global context handle to our newly created context */
+ ret->handle = (void *) context;
+
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+}
+
+void
+show (const int type, const char *argv[], const char *envp[])
+{
+ size_t i;
+ switch (type)
+ {
+ case OPENVPN_PLUGIN_UP:
+ printf ("OPENVPN_PLUGIN_UP\n");
+ break;
+ case OPENVPN_PLUGIN_DOWN:
+ printf ("OPENVPN_PLUGIN_DOWN\n");
+ break;
+ case OPENVPN_PLUGIN_ROUTE_UP:
+ printf ("OPENVPN_PLUGIN_ROUTE_UP\n");
+ break;
+ case OPENVPN_PLUGIN_IPCHANGE:
+ printf ("OPENVPN_PLUGIN_IPCHANGE\n");
+ break;
+ case OPENVPN_PLUGIN_TLS_VERIFY:
+ printf ("OPENVPN_PLUGIN_TLS_VERIFY\n");
+ break;
+ case OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY:
+ printf ("OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY\n");
+ break;
+ case OPENVPN_PLUGIN_CLIENT_CONNECT_V2:
+ printf ("OPENVPN_PLUGIN_CLIENT_CONNECT_V2\n");
+ break;
+ case OPENVPN_PLUGIN_CLIENT_DISCONNECT:
+ printf ("OPENVPN_PLUGIN_CLIENT_DISCONNECT\n");
+ break;
+ case OPENVPN_PLUGIN_LEARN_ADDRESS:
+ printf ("OPENVPN_PLUGIN_LEARN_ADDRESS\n");
+ break;
+ case OPENVPN_PLUGIN_TLS_FINAL:
+ printf ("OPENVPN_PLUGIN_TLS_FINAL\n");
+ break;
+ default:
+ printf ("OPENVPN_PLUGIN_?\n");
+ break;
+ }
+
+ printf ("ARGV\n");
+ for (i = 0; argv[i] != NULL; ++i)
+ printf ("%d '%s'\n", (int)i, argv[i]);
+
+ printf ("ENVP\n");
+ for (i = 0; envp[i] != NULL; ++i)
+ printf ("%d '%s'\n", (int)i, envp[i]);
+}
+
+static void
+x509_print_info (X509 *x509crt)
+{
+ int i, n;
+ int fn_nid;
+ ASN1_OBJECT *fn;
+ ASN1_STRING *val;
+ X509_NAME *x509_name;
+ X509_NAME_ENTRY *ent;
+ const char *objbuf;
+ unsigned char *buf;
+
+ x509_name = X509_get_subject_name (x509crt);
+ n = X509_NAME_entry_count (x509_name);
+ for (i = 0; i < n; ++i)
+ {
+ ent = X509_NAME_get_entry (x509_name, i);
+ if (!ent)
+ continue;
+ fn = X509_NAME_ENTRY_get_object (ent);
+ if (!fn)
+ continue;
+ val = X509_NAME_ENTRY_get_data (ent);
+ if (!val)
+ continue;
+ fn_nid = OBJ_obj2nid (fn);
+ if (fn_nid == NID_undef)
+ continue;
+ objbuf = OBJ_nid2sn (fn_nid);
+ if (!objbuf)
+ continue;
+ buf = (unsigned char *)1; /* bug in OpenSSL 0.9.6b ASN1_STRING_to_UTF8 requires this workaround */
+ if (ASN1_STRING_to_UTF8 (&buf, val) <= 0)
+ continue;
+
+ printf("X509 %s: %s\n", objbuf, (char *)buf);
+ OPENSSL_free (buf);
+ }
+}
+
+
+
+OPENVPN_EXPORT int
+openvpn_plugin_func_v3 (const int version,
+ struct openvpn_plugin_args_func_in const *args,
+ struct openvpn_plugin_args_func_return *retptr)
+{
+ struct plugin_context *context = (struct plugin_context *) args->handle;
+
+ printf("\nopenvpn_plugin_func_v3() :::::>> ");
+ show (args->type, args->argv, args->envp);
+
+ /* Dump some X509 information if we're in the TLS_VERIFY phase */
+ if ((args->type == OPENVPN_PLUGIN_TLS_VERIFY) && args->current_cert ) {
+ printf("---- X509 Subject information ----\n");
+ printf("Certificate depth: %i\n", args->current_cert_depth);
+ x509_print_info(args->current_cert);
+ printf("----------------------------------\n");
+ }
+
+ /* check entered username/password against what we require */
+ if (args->type == OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY)
+ {
+ /* get username/password from envp string array */
+ const char *username = get_env ("username", args->envp);
+ const char *password = get_env ("password", args->envp);
+
+ if (username && !strcmp (username, context->username)
+ && password && !strcmp (password, context->password))
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ else
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+ }
+ else
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+}
+
+OPENVPN_EXPORT void
+openvpn_plugin_close_v1 (openvpn_plugin_handle_t handle)
+{
+ struct plugin_context *context = (struct plugin_context *) handle;
+ free (context);
+}
diff --git a/main/openvpn/sample/sample-plugins/log/winbuild b/main/openvpn/sample/sample-plugins/log/winbuild
new file mode 100755
index 00000000..decf05f8
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/log/winbuild
@@ -0,0 +1,18 @@
+#
+# Build an OpenVPN plugin module on Windows/MinGW.
+# The argument should be the base name of the C source file
+# (without the .c).
+#
+
+# This directory is where we will look for openvpn-plugin.h
+INCLUDE="-I../../../include"
+
+CC_FLAGS="-O2 -Wall"
+
+gcc -DBUILD_DLL $CC_FLAGS $INCLUDE -c $1.c
+gcc --disable-stdcall-fixup -mdll -DBUILD_DLL -o junk.tmp -Wl,--base-file,base.tmp $1.o
+rm junk.tmp
+dlltool --dllname $1.dll --base-file base.tmp --output-exp temp.exp --input-def $1.def
+rm base.tmp
+gcc --enable-stdcall-fixup -mdll -DBUILD_DLL -o $1.dll $1.o -Wl,temp.exp
+rm temp.exp
diff --git a/main/openvpn/sample/sample-plugins/simple/README b/main/openvpn/sample/sample-plugins/simple/README
new file mode 100644
index 00000000..4400cd30
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/simple/README
@@ -0,0 +1,16 @@
+OpenVPN plugin examples.
+
+Examples provided:
+
+simple.c -- using the --auth-user-pass-verify callback, verify
+ that the username/password is "foo"/"bar".
+
+To build:
+
+ ./build simple (Linux/BSD/etc.)
+ ./winbuild simple (MinGW on Windows)
+
+To use in OpenVPN, add to config file:
+
+ plugin simple.so (Linux/BSD/etc.)
+ plugin simple.dll (MinGW on Windows)
diff --git a/main/openvpn/sample/sample-plugins/simple/build b/main/openvpn/sample/sample-plugins/simple/build
new file mode 100755
index 00000000..bbb05f7c
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/simple/build
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+#
+# Build an OpenVPN plugin module on *nix. The argument should
+# be the base name of the C source file (without the .c).
+#
+
+# This directory is where we will look for openvpn-plugin.h
+CPPFLAGS="${CPPFLAGS:--I../../..}"
+
+CC="${CC:-gcc}"
+CFLAGS="${CFLAGS:--O2 -Wall -g}"
+
+$CC $CPPFLAGS $CFLAGS -fPIC -c $1.c && \
+$CC $CFLAGS -fPIC -shared $LDFLAGS -Wl,-soname,$1.so -o $1.so $1.o -lc
diff --git a/main/openvpn/sample/sample-plugins/simple/simple.c b/main/openvpn/sample/sample-plugins/simple/simple.c
new file mode 100644
index 00000000..f26d89f6
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/simple/simple.c
@@ -0,0 +1,120 @@
+/*
+ * OpenVPN -- An application to securely tunnel IP networks
+ * over a single TCP/UDP port, with support for SSL/TLS-based
+ * session authentication and key exchange,
+ * packet encryption, packet authentication, and
+ * packet compression.
+ *
+ * Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program (see the file COPYING included with this
+ * distribution); if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/*
+ * This file implements a simple OpenVPN plugin module which
+ * will examine the username/password provided by a client,
+ * and make an accept/deny determination. Will run
+ * on Windows or *nix.
+ *
+ * See the README file for build instructions.
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include "openvpn-plugin.h"
+
+/*
+ * Our context, where we keep our state.
+ */
+struct plugin_context {
+ const char *username;
+ const char *password;
+};
+
+/*
+ * Given an environmental variable name, search
+ * the envp array for its value, returning it
+ * if found or NULL otherwise.
+ */
+static const char *
+get_env (const char *name, const char *envp[])
+{
+ if (envp)
+ {
+ int i;
+ const int namelen = strlen (name);
+ for (i = 0; envp[i]; ++i)
+ {
+ if (!strncmp (envp[i], name, namelen))
+ {
+ const char *cp = envp[i] + namelen;
+ if (*cp == '=')
+ return cp + 1;
+ }
+ }
+ }
+ return NULL;
+}
+
+OPENVPN_EXPORT openvpn_plugin_handle_t
+openvpn_plugin_open_v1 (unsigned int *type_mask, const char *argv[], const char *envp[])
+{
+ struct plugin_context *context;
+
+ /*
+ * Allocate our context
+ */
+ context = (struct plugin_context *) calloc (1, sizeof (struct plugin_context));
+
+ /*
+ * Set the username/password we will require.
+ */
+ context->username = "foo";
+ context->password = "bar";
+
+ /*
+ * We are only interested in intercepting the
+ * --auth-user-pass-verify callback.
+ */
+ *type_mask = OPENVPN_PLUGIN_MASK (OPENVPN_PLUGIN_AUTH_USER_PASS_VERIFY);
+
+ return (openvpn_plugin_handle_t) context;
+}
+
+OPENVPN_EXPORT int
+openvpn_plugin_func_v1 (openvpn_plugin_handle_t handle, const int type, const char *argv[], const char *envp[])
+{
+ struct plugin_context *context = (struct plugin_context *) handle;
+
+ /* get username/password from envp string array */
+ const char *username = get_env ("username", envp);
+ const char *password = get_env ("password", envp);
+
+ /* check entered username/password against what we require */
+ if (username && !strcmp (username, context->username)
+ && password && !strcmp (password, context->password))
+ return OPENVPN_PLUGIN_FUNC_SUCCESS;
+ else
+ return OPENVPN_PLUGIN_FUNC_ERROR;
+}
+
+OPENVPN_EXPORT void
+openvpn_plugin_close_v1 (openvpn_plugin_handle_t handle)
+{
+ struct plugin_context *context = (struct plugin_context *) handle;
+ free (context);
+}
diff --git a/main/openvpn/sample/sample-plugins/simple/simple.def b/main/openvpn/sample/sample-plugins/simple/simple.def
new file mode 100755
index 00000000..a87507d1
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/simple/simple.def
@@ -0,0 +1,6 @@
+LIBRARY OpenVPN_PLUGIN_SAMPLE
+DESCRIPTION "Sample OpenVPN plug-in module."
+EXPORTS
+ openvpn_plugin_open_v1 @1
+ openvpn_plugin_func_v1 @2
+ openvpn_plugin_close_v1 @3
diff --git a/main/openvpn/sample/sample-plugins/simple/winbuild b/main/openvpn/sample/sample-plugins/simple/winbuild
new file mode 100755
index 00000000..decf05f8
--- /dev/null
+++ b/main/openvpn/sample/sample-plugins/simple/winbuild
@@ -0,0 +1,18 @@
+#
+# Build an OpenVPN plugin module on Windows/MinGW.
+# The argument should be the base name of the C source file
+# (without the .c).
+#
+
+# This directory is where we will look for openvpn-plugin.h
+INCLUDE="-I../../../include"
+
+CC_FLAGS="-O2 -Wall"
+
+gcc -DBUILD_DLL $CC_FLAGS $INCLUDE -c $1.c
+gcc --disable-stdcall-fixup -mdll -DBUILD_DLL -o junk.tmp -Wl,--base-file,base.tmp $1.o
+rm junk.tmp
+dlltool --dllname $1.dll --base-file base.tmp --output-exp temp.exp --input-def $1.def
+rm base.tmp
+gcc --enable-stdcall-fixup -mdll -DBUILD_DLL -o $1.dll $1.o -Wl,temp.exp
+rm temp.exp
diff --git a/main/openvpn/sample/sample-scripts/auth-pam.pl b/main/openvpn/sample/sample-scripts/auth-pam.pl
new file mode 100755
index 00000000..5333badc
--- /dev/null
+++ b/main/openvpn/sample/sample-scripts/auth-pam.pl
@@ -0,0 +1,97 @@
+#!/usr/bin/perl -t
+
+# OpenVPN PAM AUTHENTICATON
+# This script can be used to add PAM-based authentication
+# to OpenVPN 2.0. The OpenVPN client must provide
+# a username/password, using the --auth-user-pass directive.
+# The OpenVPN server should specify --auth-user-pass-verify
+# with this script as the argument and the 'via-file' method
+# specified. The server can also optionally specify
+# --client-cert-not-required and/or --username-as-common-name.
+
+# SCRIPT OPERATION
+# Return success or failure status based on whether or not a
+# given username/password authenticates using PAM.
+# Caller should write username/password as two lines in a file
+# which is passed to this script as a command line argument.
+
+# CAVEATS
+# * Requires Authen::PAM module, which may also
+# require the pam-devel package.
+# * May need to be run as root in order to
+# access username/password file.
+
+# NOTES
+# * This script is provided mostly as a demonstration of the
+# --auth-user-pass-verify script capability in OpenVPN.
+# For real world usage, see the auth-pam module in the plugin
+# folder.
+
+use Authen::PAM;
+use POSIX;
+
+# This "conversation function" will pass
+# $password to PAM when it asks for it.
+
+sub my_conv_func {
+ my @res;
+ while ( @_ ) {
+ my $code = shift;
+ my $msg = shift;
+ my $ans = "";
+
+ $ans = $password if $msg =~ /[Pp]assword/;
+
+ push @res, (PAM_SUCCESS(),$ans);
+ }
+ push @res, PAM_SUCCESS();
+ return @res;
+}
+
+# Identify service type to PAM
+$service = "login";
+
+# Get username/password from file
+
+if ($ARG = shift @ARGV) {
+ if (!open (UPFILE, "<$ARG")) {
+ print "Could not open username/password file: $ARG\n";
+ exit 1;
+ }
+} else {
+ print "No username/password file specified on command line\n";
+ exit 1;
+}
+
+$username = <UPFILE>;
+$password = <UPFILE>;
+
+if (!$username || !$password) {
+ print "Username/password not found in file: $ARG\n";
+ exit 1;
+}
+
+chomp $username;
+chomp $password;
+
+close (UPFILE);
+
+# Initialize PAM object
+
+if (!ref($pamh = new Authen::PAM($service, $username, \&my_conv_func))) {
+ print "Authen::PAM init failed\n";
+ exit 1;
+}
+
+# Authenticate with PAM
+
+$res = $pamh->pam_authenticate;
+
+# Return success or failure
+
+if ($res == PAM_SUCCESS()) {
+ exit 0;
+} else {
+ print "Auth '$username' failed, PAM said: ", $pamh->pam_strerror($res), "\n";
+ exit 1;
+}
diff --git a/main/openvpn/sample/sample-scripts/bridge-start b/main/openvpn/sample/sample-scripts/bridge-start
new file mode 100755
index 00000000..d20a2603
--- /dev/null
+++ b/main/openvpn/sample/sample-scripts/bridge-start
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+#################################
+# Set up Ethernet bridge on Linux
+# Requires: bridge-utils
+#################################
+
+# Define Bridge Interface
+br="br0"
+
+# Define list of TAP interfaces to be bridged,
+# for example tap="tap0 tap1 tap2".
+tap="tap0"
+
+# Define physical ethernet interface to be bridged
+# with TAP interface(s) above.
+eth="eth0"
+eth_ip="192.168.8.4"
+eth_netmask="255.255.255.0"
+eth_broadcast="192.168.8.255"
+
+for t in $tap; do
+ openvpn --mktun --dev $t
+done
+
+brctl addbr $br
+brctl addif $br $eth
+
+for t in $tap; do
+ brctl addif $br $t
+done
+
+for t in $tap; do
+ ifconfig $t 0.0.0.0 promisc up
+done
+
+ifconfig $eth 0.0.0.0 promisc up
+
+ifconfig $br $eth_ip netmask $eth_netmask broadcast $eth_broadcast
diff --git a/main/openvpn/sample/sample-scripts/bridge-stop b/main/openvpn/sample/sample-scripts/bridge-stop
new file mode 100755
index 00000000..81927794
--- /dev/null
+++ b/main/openvpn/sample/sample-scripts/bridge-stop
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+####################################
+# Tear Down Ethernet bridge on Linux
+####################################
+
+# Define Bridge Interface
+br="br0"
+
+# Define list of TAP interfaces to be bridged together
+tap="tap0"
+
+ifconfig $br down
+brctl delbr $br
+
+for t in $tap; do
+ openvpn --rmtun --dev $t
+done
diff --git a/main/openvpn/sample/sample-scripts/ucn.pl b/main/openvpn/sample/sample-scripts/ucn.pl
new file mode 100755
index 00000000..6d708f82
--- /dev/null
+++ b/main/openvpn/sample/sample-scripts/ucn.pl
@@ -0,0 +1,11 @@
+#!/usr/bin/perl -t
+
+# OpenVPN --auth-user-pass-verify script.
+# Only authenticate if username equals common_name.
+# In OpenVPN config file:
+# auth-user-pass-verify ./ucn.pl via-env
+
+$username = $ENV{'username'};
+$common_name = $ENV{'common_name'};
+
+exit !(length($username) > 0 && length($common_name) > 0 && $username eq $common_name);
diff --git a/main/openvpn/sample/sample-scripts/verify-cn b/main/openvpn/sample/sample-scripts/verify-cn
new file mode 100755
index 00000000..6e747ef1
--- /dev/null
+++ b/main/openvpn/sample/sample-scripts/verify-cn
@@ -0,0 +1,64 @@
+#!/usr/bin/perl
+
+# verify-cn -- a sample OpenVPN tls-verify script
+#
+# Return 0 if cn matches the common name component of
+# subject, 1 otherwise.
+#
+# For example in OpenVPN, you could use the directive:
+#
+# tls-verify "./verify-cn /etc/openvpn/allowed_clients"
+#
+# This would cause the connection to be dropped unless
+# the client common name is listed on a line in the
+# allowed_clients file.
+
+die "usage: verify-cn cnfile certificate_depth subject" if (@ARGV != 3);
+
+# Parse out arguments:
+# cnfile -- The file containing the list of common names, one per
+# line, which the client is required to have,
+# taken from the argument to the tls-verify directive
+# in the OpenVPN config file.
+# The file can have blank lines and comment lines that begin
+# with the # character.
+# depth -- The current certificate chain depth. In a typical
+# bi-level chain, the root certificate will be at level
+# 1 and the client certificate will be at level 0.
+# This script will be called separately for each level.
+# x509 -- the X509 subject string as extracted by OpenVPN from
+# the client's provided certificate.
+($cnfile, $depth, $x509) = @ARGV;
+
+if ($depth == 0) {
+ # If depth is zero, we know that this is the final
+ # certificate in the chain (i.e. the client certificate),
+ # and the one we are interested in examining.
+ # If so, parse out the common name substring in
+ # the X509 subject string.
+
+ if ($x509 =~ / CN=([^,]+)/) {
+ $cn = $1;
+ # Accept the connection if the X509 common name
+ # string matches the passed cn argument.
+ open(FH, '<', $cnfile) or exit 1; # can't open, nobody authenticates!
+ while (defined($line = <FH>)) {
+ if ($line !~ /^[[:space:]]*(#|$)/o) {
+ chop($line);
+ if ($line eq $cn) {
+ exit 0;
+ }
+ }
+ }
+ close(FH);
+ }
+
+ # Authentication failed -- Either we could not parse
+ # the X509 subject string, or the common name in the
+ # subject string didn't match the passed cn argument.
+ exit 1;
+}
+
+# If depth is nonzero, tell OpenVPN to continue processing
+# the certificate chain.
+exit 0;
diff --git a/main/openvpn/sample/sample-windows/sample.ovpn b/main/openvpn/sample/sample-windows/sample.ovpn
new file mode 100755
index 00000000..5accd573
--- /dev/null
+++ b/main/openvpn/sample/sample-windows/sample.ovpn
@@ -0,0 +1,103 @@
+# Edit this file, and save to a .ovpn extension
+# so that OpenVPN will activate it when run
+# as a service.
+
+# Change 'myremote' to be your remote host,
+# or comment out to enter a listening
+# server mode.
+remote myremote
+
+# Uncomment this line to use a different
+# port number than the default of 1194.
+; port 1194
+
+# Choose one of three protocols supported by
+# OpenVPN. If left commented out, defaults
+# to udp.
+; proto [tcp-server | tcp-client | udp]
+
+# You must specify one of two possible network
+# protocols, 'dev tap' or 'dev tun' to be used
+# on both sides of the connection. 'tap' creates
+# a VPN using the ethernet protocol while 'tun'
+# uses the IP protocol. You must use 'tap'
+# if you are ethernet bridging or want to route
+# broadcasts. 'tun' is somewhat more efficient
+# but requires configuration of client software
+# to not depend on broadcasts. Some platforms
+# such as Solaris, OpenBSD, and Mac OS X only
+# support 'tun' interfaces, so if you are
+# connecting to such a platform, you must also
+# use a 'tun' interface on the Windows side.
+
+# Enable 'dev tap' or 'dev tun' but not both!
+dev tap
+
+# This is a 'dev tap' ifconfig that creates
+# a virtual ethernet subnet.
+# 10.3.0.1 is the local VPN IP address
+# and 255.255.255.0 is the VPN subnet.
+# Only define this option for 'dev tap'.
+ifconfig 10.3.0.1 255.255.255.0
+
+# This is a 'dev tun' ifconfig that creates
+# a point-to-point IP link.
+# 10.3.0.1 is the local VPN IP address and
+# 10.3.0.2 is the remote VPN IP address.
+# Only define this option for 'dev tun'.
+# Make sure to include the "tun-mtu" option
+# on the remote machine, but swap the order
+# of the ifconfig addresses.
+;tun-mtu 1500
+;ifconfig 10.3.0.1 10.3.0.2
+
+# If you have fragmentation issues or misconfigured
+# routers in the path which block Path MTU discovery,
+# lower the TCP MSS and internally fragment non-TCP
+# protocols.
+;fragment 1300
+;mssfix
+
+# If you have set up more than one TAP-Win32 adapter
+# on your system, you must refer to it by name.
+;dev-node my-tap
+
+# You can generate a static OpenVPN key
+# by selecting the Generate Key option
+# in the start menu.
+#
+# You can also generate key.txt manually
+# with the following command:
+# openvpn --genkey --secret key.txt
+#
+# key must match on both ends of the connection,
+# so you should generate it on one machine and
+# copy it to the other over a secure medium.
+# Place key.txt in the same directory as this
+# config file.
+secret key.txt
+
+# Uncomment this section for a more reliable
+# detection when a system loses its connection.
+# For example, dial-ups or laptops that travel
+# to other locations.
+#
+# If this section is enabled and "myremote"
+# above is a dynamic DNS name (i.e. dyndns.org),
+# OpenVPN will dynamically "follow" the IP
+# address of "myremote" if it changes.
+; ping-restart 60
+; ping-timer-rem
+; persist-tun
+; persist-key
+; resolv-retry 86400
+
+# keep-alive ping
+ping 10
+
+# enable LZO compression
+comp-lzo
+
+# moderate verbosity
+verb 4
+mute 10