diff options
author | Arne Schwabe <arne@rfc2549.org> | 2014-02-13 15:53:13 +0100 |
---|---|---|
committer | Arne Schwabe <arne@rfc2549.org> | 2014-02-13 15:53:13 +0100 |
commit | dfd5ef42cf6b68bd7ee7b522ac3c9a55cd54c889 (patch) | |
tree | 39061cd184fac30537df44c379a4ecb18d119bc6 /main/openssl/ssl/kssl.c | |
parent | b91aedc11393608ba7fb38f358c35ece662fd1b7 (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/openssl/ssl/kssl.c')
-rw-r--r-- | main/openssl/ssl/kssl.c | 2205 |
1 files changed, 2205 insertions, 0 deletions
diff --git a/main/openssl/ssl/kssl.c b/main/openssl/ssl/kssl.c new file mode 100644 index 00000000..b820e374 --- /dev/null +++ b/main/openssl/ssl/kssl.c @@ -0,0 +1,2205 @@ +/* ssl/kssl.c -*- mode: C; c-file-style: "eay" -*- */ +/* Written by Vern Staats <staatsvr@asc.hpc.mil> for the OpenSSL project 2000. + */ +/* ==================================================================== + * Copyright (c) 2000 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * licensing@OpenSSL.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + + +/* ssl/kssl.c -- Routines to support (& debug) Kerberos5 auth for openssl +** +** 19990701 VRS Started. +** 200011?? Jeffrey Altman, Richard Levitte +** Generalized for Heimdal, Newer MIT, & Win32. +** Integrated into main OpenSSL 0.9.7 snapshots. +** 20010413 Simon Wilkinson, VRS +** Real RFC2712 KerberosWrapper replaces AP_REQ. +*/ + +#include <openssl/opensslconf.h> + +#include <string.h> + +#define KRB5_PRIVATE 1 + +#include <openssl/ssl.h> +#include <openssl/evp.h> +#include <openssl/objects.h> +#include <openssl/krb5_asn.h> +#include "kssl_lcl.h" + +#ifndef OPENSSL_NO_KRB5 + +#ifndef ENOMEM +#define ENOMEM KRB5KRB_ERR_GENERIC +#endif + +/* + * When OpenSSL is built on Windows, we do not want to require that + * the Kerberos DLLs be available in order for the OpenSSL DLLs to + * work. Therefore, all Kerberos routines are loaded at run time + * and we do not link to a .LIB file. + */ + +#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_WIN32) +/* + * The purpose of the following pre-processor statements is to provide + * compatibility with different releases of MIT Kerberos for Windows. + * All versions up to 1.2 used macros. But macros do not allow for + * a binary compatible interface for DLLs. Therefore, all macros are + * being replaced by function calls. The following code will allow + * an OpenSSL DLL built on Windows to work whether or not the macro + * or function form of the routines are utilized. + */ +#ifdef krb5_cc_get_principal +#define NO_DEF_KRB5_CCACHE +#undef krb5_cc_get_principal +#endif +#define krb5_cc_get_principal kssl_krb5_cc_get_principal + +#define krb5_free_data_contents kssl_krb5_free_data_contents +#define krb5_free_context kssl_krb5_free_context +#define krb5_auth_con_free kssl_krb5_auth_con_free +#define krb5_free_principal kssl_krb5_free_principal +#define krb5_mk_req_extended kssl_krb5_mk_req_extended +#define krb5_get_credentials kssl_krb5_get_credentials +#define krb5_cc_default kssl_krb5_cc_default +#define krb5_sname_to_principal kssl_krb5_sname_to_principal +#define krb5_init_context kssl_krb5_init_context +#define krb5_free_ticket kssl_krb5_free_ticket +#define krb5_rd_req kssl_krb5_rd_req +#define krb5_kt_default kssl_krb5_kt_default +#define krb5_kt_resolve kssl_krb5_kt_resolve +/* macros in mit 1.2.2 and earlier; functions in mit 1.2.3 and greater */ +#ifndef krb5_kt_close +#define krb5_kt_close kssl_krb5_kt_close +#endif /* krb5_kt_close */ +#ifndef krb5_kt_get_entry +#define krb5_kt_get_entry kssl_krb5_kt_get_entry +#endif /* krb5_kt_get_entry */ +#define krb5_auth_con_init kssl_krb5_auth_con_init + +#define krb5_principal_compare kssl_krb5_principal_compare +#define krb5_decrypt_tkt_part kssl_krb5_decrypt_tkt_part +#define krb5_timeofday kssl_krb5_timeofday +#define krb5_rc_default kssl_krb5_rc_default + +#ifdef krb5_rc_initialize +#undef krb5_rc_initialize +#endif +#define krb5_rc_initialize kssl_krb5_rc_initialize + +#ifdef krb5_rc_get_lifespan +#undef krb5_rc_get_lifespan +#endif +#define krb5_rc_get_lifespan kssl_krb5_rc_get_lifespan + +#ifdef krb5_rc_destroy +#undef krb5_rc_destroy +#endif +#define krb5_rc_destroy kssl_krb5_rc_destroy + +#define valid_cksumtype kssl_valid_cksumtype +#define krb5_checksum_size kssl_krb5_checksum_size +#define krb5_kt_free_entry kssl_krb5_kt_free_entry +#define krb5_auth_con_setrcache kssl_krb5_auth_con_setrcache +#define krb5_auth_con_getrcache kssl_krb5_auth_con_getrcache +#define krb5_get_server_rcache kssl_krb5_get_server_rcache + +/* Prototypes for built in stubs */ +void kssl_krb5_free_data_contents(krb5_context, krb5_data *); +void kssl_krb5_free_principal(krb5_context, krb5_principal ); +krb5_error_code kssl_krb5_kt_resolve(krb5_context, + krb5_const char *, + krb5_keytab *); +krb5_error_code kssl_krb5_kt_default(krb5_context, + krb5_keytab *); +krb5_error_code kssl_krb5_free_ticket(krb5_context, krb5_ticket *); +krb5_error_code kssl_krb5_rd_req(krb5_context, krb5_auth_context *, + krb5_const krb5_data *, + krb5_const_principal, krb5_keytab, + krb5_flags *,krb5_ticket **); + +krb5_boolean kssl_krb5_principal_compare(krb5_context, krb5_const_principal, + krb5_const_principal); +krb5_error_code kssl_krb5_mk_req_extended(krb5_context, + krb5_auth_context *, + krb5_const krb5_flags, + krb5_data *, + krb5_creds *, + krb5_data * ); +krb5_error_code kssl_krb5_init_context(krb5_context *); +void kssl_krb5_free_context(krb5_context); +krb5_error_code kssl_krb5_cc_default(krb5_context,krb5_ccache *); +krb5_error_code kssl_krb5_sname_to_principal(krb5_context, + krb5_const char *, + krb5_const char *, + krb5_int32, + krb5_principal *); +krb5_error_code kssl_krb5_get_credentials(krb5_context, + krb5_const krb5_flags, + krb5_ccache, + krb5_creds *, + krb5_creds * *); +krb5_error_code kssl_krb5_auth_con_init(krb5_context, + krb5_auth_context *); +krb5_error_code kssl_krb5_cc_get_principal(krb5_context context, + krb5_ccache cache, + krb5_principal *principal); +krb5_error_code kssl_krb5_auth_con_free(krb5_context,krb5_auth_context); +size_t kssl_krb5_checksum_size(krb5_context context,krb5_cksumtype ctype); +krb5_boolean kssl_valid_cksumtype(krb5_cksumtype ctype); +krb5_error_code krb5_kt_free_entry(krb5_context,krb5_keytab_entry FAR * ); +krb5_error_code kssl_krb5_auth_con_setrcache(krb5_context, + krb5_auth_context, + krb5_rcache); +krb5_error_code kssl_krb5_get_server_rcache(krb5_context, + krb5_const krb5_data *, + krb5_rcache *); +krb5_error_code kssl_krb5_auth_con_getrcache(krb5_context, + krb5_auth_context, + krb5_rcache *); + +/* Function pointers (almost all Kerberos functions are _stdcall) */ +static void (_stdcall *p_krb5_free_data_contents)(krb5_context, krb5_data *) + =NULL; +static void (_stdcall *p_krb5_free_principal)(krb5_context, krb5_principal ) + =NULL; +static krb5_error_code(_stdcall *p_krb5_kt_resolve) + (krb5_context, krb5_const char *, krb5_keytab *)=NULL; +static krb5_error_code (_stdcall *p_krb5_kt_default)(krb5_context, + krb5_keytab *)=NULL; +static krb5_error_code (_stdcall *p_krb5_free_ticket)(krb5_context, + krb5_ticket *)=NULL; +static krb5_error_code (_stdcall *p_krb5_rd_req)(krb5_context, + krb5_auth_context *, + krb5_const krb5_data *, + krb5_const_principal, + krb5_keytab, krb5_flags *, + krb5_ticket **)=NULL; +static krb5_error_code (_stdcall *p_krb5_mk_req_extended) + (krb5_context, krb5_auth_context *, + krb5_const krb5_flags, krb5_data *, krb5_creds *, + krb5_data * )=NULL; +static krb5_error_code (_stdcall *p_krb5_init_context)(krb5_context *)=NULL; +static void (_stdcall *p_krb5_free_context)(krb5_context)=NULL; +static krb5_error_code (_stdcall *p_krb5_cc_default)(krb5_context, + krb5_ccache *)=NULL; +static krb5_error_code (_stdcall *p_krb5_sname_to_principal) + (krb5_context, krb5_const char *, krb5_const char *, + krb5_int32, krb5_principal *)=NULL; +static krb5_error_code (_stdcall *p_krb5_get_credentials) + (krb5_context, krb5_const krb5_flags, krb5_ccache, + krb5_creds *, krb5_creds **)=NULL; +static krb5_error_code (_stdcall *p_krb5_auth_con_init) + (krb5_context, krb5_auth_context *)=NULL; +static krb5_error_code (_stdcall *p_krb5_cc_get_principal) + (krb5_context context, krb5_ccache cache, + krb5_principal *principal)=NULL; +static krb5_error_code (_stdcall *p_krb5_auth_con_free) + (krb5_context, krb5_auth_context)=NULL; +static krb5_error_code (_stdcall *p_krb5_decrypt_tkt_part) + (krb5_context, krb5_const krb5_keyblock *, + krb5_ticket *)=NULL; +static krb5_error_code (_stdcall *p_krb5_timeofday) + (krb5_context context, krb5_int32 *timeret)=NULL; +static krb5_error_code (_stdcall *p_krb5_rc_default) + (krb5_context context, krb5_rcache *rc)=NULL; +static krb5_error_code (_stdcall *p_krb5_rc_initialize) + (krb5_context context, krb5_rcache rc, + krb5_deltat lifespan)=NULL; +static krb5_error_code (_stdcall *p_krb5_rc_get_lifespan) + (krb5_context context, krb5_rcache rc, + krb5_deltat *lifespan)=NULL; +static krb5_error_code (_stdcall *p_krb5_rc_destroy) + (krb5_context context, krb5_rcache rc)=NULL; +static krb5_boolean (_stdcall *p_krb5_principal_compare) + (krb5_context, krb5_const_principal, krb5_const_principal)=NULL; +static size_t (_stdcall *p_krb5_checksum_size)(krb5_context context,krb5_cksumtype ctype)=NULL; +static krb5_boolean (_stdcall *p_valid_cksumtype)(krb5_cksumtype ctype)=NULL; +static krb5_error_code (_stdcall *p_krb5_kt_free_entry) + (krb5_context,krb5_keytab_entry * )=NULL; +static krb5_error_code (_stdcall * p_krb5_auth_con_setrcache)(krb5_context, + krb5_auth_context, + krb5_rcache)=NULL; +static krb5_error_code (_stdcall * p_krb5_get_server_rcache)(krb5_context, + krb5_const krb5_data *, + krb5_rcache *)=NULL; +static krb5_error_code (* p_krb5_auth_con_getrcache)(krb5_context, + krb5_auth_context, + krb5_rcache *)=NULL; +static krb5_error_code (_stdcall * p_krb5_kt_close)(krb5_context context, + krb5_keytab keytab)=NULL; +static krb5_error_code (_stdcall * p_krb5_kt_get_entry)(krb5_context context, + krb5_keytab keytab, + krb5_const_principal principal, krb5_kvno vno, + krb5_enctype enctype, krb5_keytab_entry *entry)=NULL; +static int krb5_loaded = 0; /* only attempt to initialize func ptrs once */ + +/* Function to Load the Kerberos 5 DLL and initialize function pointers */ +void +load_krb5_dll(void) + { + HANDLE hKRB5_32; + + krb5_loaded++; + hKRB5_32 = LoadLibrary(TEXT("KRB5_32")); + if (!hKRB5_32) + return; + + (FARPROC) p_krb5_free_data_contents = + GetProcAddress( hKRB5_32, "krb5_free_data_contents" ); + (FARPROC) p_krb5_free_context = + GetProcAddress( hKRB5_32, "krb5_free_context" ); + (FARPROC) p_krb5_auth_con_free = + GetProcAddress( hKRB5_32, "krb5_auth_con_free" ); + (FARPROC) p_krb5_free_principal = + GetProcAddress( hKRB5_32, "krb5_free_principal" ); + (FARPROC) p_krb5_mk_req_extended = + GetProcAddress( hKRB5_32, "krb5_mk_req_extended" ); + (FARPROC) p_krb5_get_credentials = + GetProcAddress( hKRB5_32, "krb5_get_credentials" ); + (FARPROC) p_krb5_cc_get_principal = + GetProcAddress( hKRB5_32, "krb5_cc_get_principal" ); + (FARPROC) p_krb5_cc_default = + GetProcAddress( hKRB5_32, "krb5_cc_default" ); + (FARPROC) p_krb5_sname_to_principal = + GetProcAddress( hKRB5_32, "krb5_sname_to_principal" ); + (FARPROC) p_krb5_init_context = + GetProcAddress( hKRB5_32, "krb5_init_context" ); + (FARPROC) p_krb5_free_ticket = + GetProcAddress( hKRB5_32, "krb5_free_ticket" ); + (FARPROC) p_krb5_rd_req = + GetProcAddress( hKRB5_32, "krb5_rd_req" ); + (FARPROC) p_krb5_principal_compare = + GetProcAddress( hKRB5_32, "krb5_principal_compare" ); + (FARPROC) p_krb5_decrypt_tkt_part = + GetProcAddress( hKRB5_32, "krb5_decrypt_tkt_part" ); + (FARPROC) p_krb5_timeofday = + GetProcAddress( hKRB5_32, "krb5_timeofday" ); + (FARPROC) p_krb5_rc_default = + GetProcAddress( hKRB5_32, "krb5_rc_default" ); + (FARPROC) p_krb5_rc_initialize = + GetProcAddress( hKRB5_32, "krb5_rc_initialize" ); + (FARPROC) p_krb5_rc_get_lifespan = + GetProcAddress( hKRB5_32, "krb5_rc_get_lifespan" ); + (FARPROC) p_krb5_rc_destroy = + GetProcAddress( hKRB5_32, "krb5_rc_destroy" ); + (FARPROC) p_krb5_kt_default = + GetProcAddress( hKRB5_32, "krb5_kt_default" ); + (FARPROC) p_krb5_kt_resolve = + GetProcAddress( hKRB5_32, "krb5_kt_resolve" ); + (FARPROC) p_krb5_auth_con_init = + GetProcAddress( hKRB5_32, "krb5_auth_con_init" ); + (FARPROC) p_valid_cksumtype = + GetProcAddress( hKRB5_32, "valid_cksumtype" ); + (FARPROC) p_krb5_checksum_size = + GetProcAddress( hKRB5_32, "krb5_checksum_size" ); + (FARPROC) p_krb5_kt_free_entry = + GetProcAddress( hKRB5_32, "krb5_kt_free_entry" ); + (FARPROC) p_krb5_auth_con_setrcache = + GetProcAddress( hKRB5_32, "krb5_auth_con_setrcache" ); + (FARPROC) p_krb5_get_server_rcache = + GetProcAddress( hKRB5_32, "krb5_get_server_rcache" ); + (FARPROC) p_krb5_auth_con_getrcache = + GetProcAddress( hKRB5_32, "krb5_auth_con_getrcache" ); + (FARPROC) p_krb5_kt_close = + GetProcAddress( hKRB5_32, "krb5_kt_close" ); + (FARPROC) p_krb5_kt_get_entry = + GetProcAddress( hKRB5_32, "krb5_kt_get_entry" ); + } + +/* Stubs for each function to be dynamicly loaded */ +void +kssl_krb5_free_data_contents(krb5_context CO, krb5_data * data) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_free_data_contents ) + p_krb5_free_data_contents(CO,data); + } + +krb5_error_code +kssl_krb5_mk_req_extended (krb5_context CO, + krb5_auth_context * pACO, + krb5_const krb5_flags F, + krb5_data * pD1, + krb5_creds * pC, + krb5_data * pD2) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_mk_req_extended ) + return(p_krb5_mk_req_extended(CO,pACO,F,pD1,pC,pD2)); + else + return KRB5KRB_ERR_GENERIC; + } +krb5_error_code +kssl_krb5_auth_con_init(krb5_context CO, + krb5_auth_context * pACO) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_auth_con_init ) + return(p_krb5_auth_con_init(CO,pACO)); + else + return KRB5KRB_ERR_GENERIC; + } +krb5_error_code +kssl_krb5_auth_con_free (krb5_context CO, + krb5_auth_context ACO) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_auth_con_free ) + return(p_krb5_auth_con_free(CO,ACO)); + else + return KRB5KRB_ERR_GENERIC; + } +krb5_error_code +kssl_krb5_get_credentials(krb5_context CO, + krb5_const krb5_flags F, + krb5_ccache CC, + krb5_creds * pCR, + krb5_creds ** ppCR) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_get_credentials ) + return(p_krb5_get_credentials(CO,F,CC,pCR,ppCR)); + else + return KRB5KRB_ERR_GENERIC; + } +krb5_error_code +kssl_krb5_sname_to_principal(krb5_context CO, + krb5_const char * pC1, + krb5_const char * pC2, + krb5_int32 I, + krb5_principal * pPR) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_sname_to_principal ) + return(p_krb5_sname_to_principal(CO,pC1,pC2,I,pPR)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_cc_default(krb5_context CO, + krb5_ccache * pCC) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_cc_default ) + return(p_krb5_cc_default(CO,pCC)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_init_context(krb5_context * pCO) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_init_context ) + return(p_krb5_init_context(pCO)); + else + return KRB5KRB_ERR_GENERIC; + } + +void +kssl_krb5_free_context(krb5_context CO) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_free_context ) + p_krb5_free_context(CO); + } + +void +kssl_krb5_free_principal(krb5_context c, krb5_principal p) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_free_principal ) + p_krb5_free_principal(c,p); + } + +krb5_error_code +kssl_krb5_kt_resolve(krb5_context con, + krb5_const char * sz, + krb5_keytab * kt) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_kt_resolve ) + return(p_krb5_kt_resolve(con,sz,kt)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_kt_default(krb5_context con, + krb5_keytab * kt) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_kt_default ) + return(p_krb5_kt_default(con,kt)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_free_ticket(krb5_context con, + krb5_ticket * kt) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_free_ticket ) + return(p_krb5_free_ticket(con,kt)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_rd_req(krb5_context con, krb5_auth_context * pacon, + krb5_const krb5_data * data, + krb5_const_principal princ, krb5_keytab keytab, + krb5_flags * flags, krb5_ticket ** pptkt) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_rd_req ) + return(p_krb5_rd_req(con,pacon,data,princ,keytab,flags,pptkt)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_boolean +krb5_principal_compare(krb5_context con, krb5_const_principal princ1, + krb5_const_principal princ2) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_principal_compare ) + return(p_krb5_principal_compare(con,princ1,princ2)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +krb5_decrypt_tkt_part(krb5_context con, krb5_const krb5_keyblock *keys, + krb5_ticket *ticket) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_decrypt_tkt_part ) + return(p_krb5_decrypt_tkt_part(con,keys,ticket)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +krb5_timeofday(krb5_context con, krb5_int32 *timeret) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_timeofday ) + return(p_krb5_timeofday(con,timeret)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +krb5_rc_default(krb5_context con, krb5_rcache *rc) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_rc_default ) + return(p_krb5_rc_default(con,rc)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +krb5_rc_initialize(krb5_context con, krb5_rcache rc, krb5_deltat lifespan) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_rc_initialize ) + return(p_krb5_rc_initialize(con, rc, lifespan)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +krb5_rc_get_lifespan(krb5_context con, krb5_rcache rc, krb5_deltat *lifespanp) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_rc_get_lifespan ) + return(p_krb5_rc_get_lifespan(con, rc, lifespanp)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +krb5_rc_destroy(krb5_context con, krb5_rcache rc) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_rc_destroy ) + return(p_krb5_rc_destroy(con, rc)); + else + return KRB5KRB_ERR_GENERIC; + } + +size_t +krb5_checksum_size(krb5_context context,krb5_cksumtype ctype) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_checksum_size ) + return(p_krb5_checksum_size(context, ctype)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_boolean +valid_cksumtype(krb5_cksumtype ctype) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_valid_cksumtype ) + return(p_valid_cksumtype(ctype)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +krb5_kt_free_entry(krb5_context con,krb5_keytab_entry * entry) + { + if (!krb5_loaded) + load_krb5_dll(); + + if ( p_krb5_kt_free_entry ) + return(p_krb5_kt_free_entry(con,entry)); + else + return KRB5KRB_ERR_GENERIC; + } + +/* Structure definitions */ +#ifndef NO_DEF_KRB5_CCACHE +#ifndef krb5_x +#define krb5_x(ptr,args) ((ptr)?((*(ptr)) args):(abort(),1)) +#define krb5_xc(ptr,args) ((ptr)?((*(ptr)) args):(abort(),(char*)0)) +#endif + +typedef krb5_pointer krb5_cc_cursor; /* cursor for sequential lookup */ + +typedef struct _krb5_ccache + { + krb5_magic magic; + struct _krb5_cc_ops FAR *ops; + krb5_pointer data; + } *krb5_ccache; + +typedef struct _krb5_cc_ops + { + krb5_magic magic; + char *prefix; + char * (KRB5_CALLCONV *get_name) + (krb5_context, krb5_ccache); + krb5_error_code (KRB5_CALLCONV *resolve) + (krb5_context, krb5_ccache *, const char *); + krb5_error_code (KRB5_CALLCONV *gen_new) + (krb5_context, krb5_ccache *); + krb5_error_code (KRB5_CALLCONV *init) + (krb5_context, krb5_ccache, krb5_principal); + krb5_error_code (KRB5_CALLCONV *destroy) + (krb5_context, krb5_ccache); + krb5_error_code (KRB5_CALLCONV *close) + (krb5_context, krb5_ccache); + krb5_error_code (KRB5_CALLCONV *store) + (krb5_context, krb5_ccache, krb5_creds *); + krb5_error_code (KRB5_CALLCONV *retrieve) + (krb5_context, krb5_ccache, + krb5_flags, krb5_creds *, krb5_creds *); + krb5_error_code (KRB5_CALLCONV *get_princ) + (krb5_context, krb5_ccache, krb5_principal *); + krb5_error_code (KRB5_CALLCONV *get_first) + (krb5_context, krb5_ccache, krb5_cc_cursor *); + krb5_error_code (KRB5_CALLCONV *get_next) + (krb5_context, krb5_ccache, + krb5_cc_cursor *, krb5_creds *); + krb5_error_code (KRB5_CALLCONV *end_get) + (krb5_context, krb5_ccache, krb5_cc_cursor *); + krb5_error_code (KRB5_CALLCONV *remove_cred) + (krb5_context, krb5_ccache, + krb5_flags, krb5_creds *); + krb5_error_code (KRB5_CALLCONV *set_flags) + (krb5_context, krb5_ccache, krb5_flags); + } krb5_cc_ops; +#endif /* NO_DEF_KRB5_CCACHE */ + +krb5_error_code +kssl_krb5_cc_get_principal + (krb5_context context, krb5_ccache cache, + krb5_principal *principal) + { + if ( p_krb5_cc_get_principal ) + return(p_krb5_cc_get_principal(context,cache,principal)); + else + return(krb5_x + ((cache)->ops->get_princ,(context, cache, principal))); + } + +krb5_error_code +kssl_krb5_auth_con_setrcache(krb5_context con, krb5_auth_context acon, + krb5_rcache rcache) + { + if ( p_krb5_auth_con_setrcache ) + return(p_krb5_auth_con_setrcache(con,acon,rcache)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_get_server_rcache(krb5_context con, krb5_const krb5_data * data, + krb5_rcache * rcache) + { + if ( p_krb5_get_server_rcache ) + return(p_krb5_get_server_rcache(con,data,rcache)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_auth_con_getrcache(krb5_context con, krb5_auth_context acon, + krb5_rcache * prcache) + { + if ( p_krb5_auth_con_getrcache ) + return(p_krb5_auth_con_getrcache(con,acon, prcache)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_kt_close(krb5_context context, krb5_keytab keytab) + { + if ( p_krb5_kt_close ) + return(p_krb5_kt_close(context,keytab)); + else + return KRB5KRB_ERR_GENERIC; + } + +krb5_error_code +kssl_krb5_kt_get_entry(krb5_context context, krb5_keytab keytab, + krb5_const_principal principal, krb5_kvno vno, + krb5_enctype enctype, krb5_keytab_entry *entry) + { + if ( p_krb5_kt_get_entry ) + return(p_krb5_kt_get_entry(context,keytab,principal,vno,enctype,entry)); + else + return KRB5KRB_ERR_GENERIC; + } +#endif /* OPENSSL_SYS_WINDOWS || OPENSSL_SYS_WIN32 */ + + +/* memory allocation functions for non-temporary storage + * (e.g. stuff that gets saved into the kssl context) */ +static void* kssl_calloc(size_t nmemb, size_t size) +{ + void* p; + + p=OPENSSL_malloc(nmemb*size); + if (p){ + memset(p, 0, nmemb*size); + } + return p; +} + +#define kssl_malloc(size) OPENSSL_malloc((size)) +#define kssl_realloc(ptr, size) OPENSSL_realloc(ptr, size) +#define kssl_free(ptr) OPENSSL_free((ptr)) + + +char +*kstring(char *string) + { + static char *null = "[NULL]"; + + return ((string == NULL)? null: string); + } + +/* Given KRB5 enctype (basically DES or 3DES), +** return closest match openssl EVP_ encryption algorithm. +** Return NULL for unknown or problematic (krb5_dk_encrypt) enctypes. +** Assume ENCTYPE_*_RAW (krb5_raw_encrypt) are OK. +*/ +const EVP_CIPHER * +kssl_map_enc(krb5_enctype enctype) + { + switch (enctype) + { + case ENCTYPE_DES_HMAC_SHA1: /* EVP_des_cbc(); */ + case ENCTYPE_DES_CBC_CRC: + case ENCTYPE_DES_CBC_MD4: + case ENCTYPE_DES_CBC_MD5: + case ENCTYPE_DES_CBC_RAW: + return EVP_des_cbc(); + break; + case ENCTYPE_DES3_CBC_SHA1: /* EVP_des_ede3_cbc(); */ + case ENCTYPE_DES3_CBC_SHA: + case ENCTYPE_DES3_CBC_RAW: + return EVP_des_ede3_cbc(); + break; + default: return NULL; + break; + } + } + + +/* Return true:1 if p "looks like" the start of the real authenticator +** described in kssl_skip_confound() below. The ASN.1 pattern is +** "62 xx 30 yy" (APPLICATION-2, SEQUENCE), where xx-yy =~ 2, and +** xx and yy are possibly multi-byte length fields. +*/ +static int kssl_test_confound(unsigned char *p) + { + int len = 2; + int xx = 0, yy = 0; + + if (*p++ != 0x62) return 0; + if (*p > 0x82) return 0; + switch(*p) { + case 0x82: p++; xx = (*p++ << 8); xx += *p++; break; + case 0x81: p++; xx = *p++; break; + case 0x80: return 0; + default: xx = *p++; break; + } + if (*p++ != 0x30) return 0; + if (*p > 0x82) return 0; + switch(*p) { + case 0x82: p++; len+=2; yy = (*p++ << 8); yy += *p++; break; + case 0x81: p++; len++; yy = *p++; break; + case 0x80: return 0; + default: yy = *p++; break; + } + + return (xx - len == yy)? 1: 0; + } + +/* Allocate, fill, and return cksumlens array of checksum lengths. +** This array holds just the unique elements from the krb5_cksumarray[]. +** array[n] == 0 signals end of data. +** +** The krb5_cksumarray[] was an internal variable that has since been +** replaced by a more general method for storing the data. It should +** not be used. Instead we use real API calls and make a guess for +** what the highest assigned CKSUMTYPE_ constant is. As of 1.2.2 +** it is 0x000c (CKSUMTYPE_HMAC_SHA1_DES3). So we will use 0x0010. +*/ +static size_t *populate_cksumlens(void) + { + int i, j, n; + static size_t *cklens = NULL; + +#ifdef KRB5_MIT_OLD11 + n = krb5_max_cksum; +#else + n = 0x0010; +#endif /* KRB5_MIT_OLD11 */ + +#ifdef KRB5CHECKAUTH + if (!cklens && !(cklens = (size_t *) calloc(sizeof(int),n+1))) return NULL; + + for (i=0; i < n; i++) { + if (!valid_cksumtype(i)) continue; /* array has holes */ + for (j=0; j < n; j++) { + if (cklens[j] == 0) { + cklens[j] = krb5_checksum_size(NULL,i); + break; /* krb5 elem was new: add */ + } + if (cklens[j] == krb5_checksum_size(NULL,i)) { + break; /* ignore duplicate elements */ + } + } + } +#endif /* KRB5CHECKAUTH */ + + return cklens; + } + +/* Return pointer to start of real authenticator within authenticator, or +** return NULL on error. +** Decrypted authenticator looks like this: +** [0 or 8 byte confounder] [4-24 byte checksum] [real authent'r] +** This hackery wouldn't be necessary if MIT KRB5 1.0.6 had the +** krb5_auth_con_getcksumtype() function advertised in its krb5.h. +*/ +unsigned char *kssl_skip_confound(krb5_enctype etype, unsigned char *a) + { + int i, conlen; + size_t cklen; + static size_t *cksumlens = NULL; + unsigned char *test_auth; + + conlen = (etype)? 8: 0; + + if (!cksumlens && !(cksumlens = populate_cksumlens())) return NULL; + for (i=0; (cklen = cksumlens[i]) != 0; i++) + { + test_auth = a + conlen + cklen; + if (kssl_test_confound(test_auth)) return test_auth; + } + + return NULL; + } + + +/* Set kssl_err error info when reason text is a simple string +** kssl_err = struct { int reason; char text[KSSL_ERR_MAX+1]; } +*/ +void +kssl_err_set(KSSL_ERR *kssl_err, int reason, char *text) + { + if (kssl_err == NULL) return; + + kssl_err->reason = reason; + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, "%s", text); + return; + } + + +/* Display contents of krb5_data struct, for debugging +*/ +void +print_krb5_data(char *label, krb5_data *kdata) + { + int i; + + printf("%s[%d] ", label, kdata->length); + for (i=0; i < (int)kdata->length; i++) + { + if (0 && isprint((int) kdata->data[i])) + printf( "%c ", kdata->data[i]); + else + printf( "%02x ", (unsigned char) kdata->data[i]); + } + printf("\n"); + } + + +/* Display contents of krb5_authdata struct, for debugging +*/ +void +print_krb5_authdata(char *label, krb5_authdata **adata) + { + if (adata == NULL) + { + printf("%s, authdata==0\n", label); + return; + } + printf("%s [%p]\n", label, (void *)adata); +#if 0 + { + int i; + printf("%s[at%d:%d] ", label, adata->ad_type, adata->length); + for (i=0; i < adata->length; i++) + { + printf((isprint(adata->contents[i]))? "%c ": "%02x", + adata->contents[i]); + } + printf("\n"); + } +#endif + } + + +/* Display contents of krb5_keyblock struct, for debugging +*/ +void +print_krb5_keyblock(char *label, krb5_keyblock *keyblk) + { + int i; + + if (keyblk == NULL) + { + printf("%s, keyblk==0\n", label); + return; + } +#ifdef KRB5_HEIMDAL + printf("%s\n\t[et%d:%d]: ", label, keyblk->keytype, + keyblk->keyvalue->length); + for (i=0; i < (int)keyblk->keyvalue->length; i++) + { + printf("%02x",(unsigned char *)(keyblk->keyvalue->contents)[i]); + } + printf("\n"); +#else + printf("%s\n\t[et%d:%d]: ", label, keyblk->enctype, keyblk->length); + for (i=0; i < (int)keyblk->length; i++) + { + printf("%02x",keyblk->contents[i]); + } + printf("\n"); +#endif + } + + +/* Display contents of krb5_principal_data struct, for debugging +** (krb5_principal is typedef'd == krb5_principal_data *) +*/ +static void +print_krb5_princ(char *label, krb5_principal_data *princ) + { + int i, ui, uj; + + printf("%s principal Realm: ", label); + if (princ == NULL) return; + for (ui=0; ui < (int)princ->realm.length; ui++) putchar(princ->realm.data[ui]); + printf(" (nametype %d) has %d strings:\n", princ->type,princ->length); + for (i=0; i < (int)princ->length; i++) + { + printf("\t%d [%d]: ", i, princ->data[i].length); + for (uj=0; uj < (int)princ->data[i].length; uj++) { + putchar(princ->data[i].data[uj]); + } + printf("\n"); + } + return; + } + + +/* Given krb5 service (typically "kssl") and hostname in kssl_ctx, +** Return encrypted Kerberos ticket for service @ hostname. +** If authenp is non-NULL, also return encrypted authenticator, +** whose data should be freed by caller. +** (Originally was: Create Kerberos AP_REQ message for SSL Client.) +** +** 19990628 VRS Started; Returns Kerberos AP_REQ message. +** 20010409 VRS Modified for RFC2712; Returns enc tkt. +** 20010606 VRS May also return optional authenticator. +*/ +krb5_error_code +kssl_cget_tkt( /* UPDATE */ KSSL_CTX *kssl_ctx, + /* OUT */ krb5_data **enc_ticketp, + /* UPDATE */ krb5_data *authenp, + /* OUT */ KSSL_ERR *kssl_err) + { + krb5_error_code krb5rc = KRB5KRB_ERR_GENERIC; + krb5_context krb5context = NULL; + krb5_auth_context krb5auth_context = NULL; + krb5_ccache krb5ccdef = NULL; + krb5_creds krb5creds, *krb5credsp = NULL; + krb5_data krb5_app_req; + + kssl_err_set(kssl_err, 0, ""); + memset((char *)&krb5creds, 0, sizeof(krb5creds)); + + if (!kssl_ctx) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "No kssl_ctx defined.\n"); + goto err; + } + else if (!kssl_ctx->service_host) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "kssl_ctx service_host undefined.\n"); + goto err; + } + + if ((krb5rc = krb5_init_context(&krb5context)) != 0) + { + BIO_snprintf(kssl_err->text,KSSL_ERR_MAX, + "krb5_init_context() fails: %d\n", krb5rc); + kssl_err->reason = SSL_R_KRB5_C_INIT; + goto err; + } + + if ((krb5rc = krb5_sname_to_principal(krb5context, + kssl_ctx->service_host, + (kssl_ctx->service_name)? kssl_ctx->service_name: KRB5SVC, + KRB5_NT_SRV_HST, &krb5creds.server)) != 0) + { + BIO_snprintf(kssl_err->text,KSSL_ERR_MAX, + "krb5_sname_to_principal() fails for %s/%s\n", + kssl_ctx->service_host, + (kssl_ctx->service_name)? kssl_ctx->service_name: + KRB5SVC); + kssl_err->reason = SSL_R_KRB5_C_INIT; + goto err; + } + + if ((krb5rc = krb5_cc_default(krb5context, &krb5ccdef)) != 0) + { + kssl_err_set(kssl_err, SSL_R_KRB5_C_CC_PRINC, + "krb5_cc_default fails.\n"); + goto err; + } + + if ((krb5rc = krb5_cc_get_principal(krb5context, krb5ccdef, + &krb5creds.client)) != 0) + { + kssl_err_set(kssl_err, SSL_R_KRB5_C_CC_PRINC, + "krb5_cc_get_principal() fails.\n"); + goto err; + } + + if ((krb5rc = krb5_get_credentials(krb5context, 0, krb5ccdef, + &krb5creds, &krb5credsp)) != 0) + { + kssl_err_set(kssl_err, SSL_R_KRB5_C_GET_CRED, + "krb5_get_credentials() fails.\n"); + goto err; + } + + *enc_ticketp = &krb5credsp->ticket; +#ifdef KRB5_HEIMDAL + kssl_ctx->enctype = krb5credsp->session.keytype; +#else + kssl_ctx->enctype = krb5credsp->keyblock.enctype; +#endif + + krb5rc = KRB5KRB_ERR_GENERIC; + /* caller should free data of krb5_app_req */ + /* 20010406 VRS deleted for real KerberosWrapper + ** 20010605 VRS reinstated to offer Authenticator to KerberosWrapper + */ + krb5_app_req.length = 0; + if (authenp) + { + krb5_data krb5in_data; + const unsigned char *p; + long arlen; + KRB5_APREQBODY *ap_req; + + authenp->length = 0; + krb5in_data.data = NULL; + krb5in_data.length = 0; + if ((krb5rc = krb5_mk_req_extended(krb5context, + &krb5auth_context, 0, &krb5in_data, krb5credsp, + &krb5_app_req)) != 0) + { + kssl_err_set(kssl_err, SSL_R_KRB5_C_MK_REQ, + "krb5_mk_req_extended() fails.\n"); + goto err; + } + + arlen = krb5_app_req.length; + p = (unsigned char *)krb5_app_req.data; + ap_req = (KRB5_APREQBODY *) d2i_KRB5_APREQ(NULL, &p, arlen); + if (ap_req) + { + authenp->length = i2d_KRB5_ENCDATA( + ap_req->authenticator, NULL); + if (authenp->length && + (authenp->data = malloc(authenp->length))) + { + unsigned char *adp = (unsigned char *)authenp->data; + authenp->length = i2d_KRB5_ENCDATA( + ap_req->authenticator, &adp); + } + } + + if (ap_req) KRB5_APREQ_free((KRB5_APREQ *) ap_req); + if (krb5_app_req.length) + kssl_krb5_free_data_contents(krb5context,&krb5_app_req); + } +#ifdef KRB5_HEIMDAL + if (kssl_ctx_setkey(kssl_ctx, &krb5credsp->session)) + { + kssl_err_set(kssl_err, SSL_R_KRB5_C_INIT, + "kssl_ctx_setkey() fails.\n"); + } +#else + if (kssl_ctx_setkey(kssl_ctx, &krb5credsp->keyblock)) + { + kssl_err_set(kssl_err, SSL_R_KRB5_C_INIT, + "kssl_ctx_setkey() fails.\n"); + } +#endif + else krb5rc = 0; + + err: +#ifdef KSSL_DEBUG + kssl_ctx_show(kssl_ctx); +#endif /* KSSL_DEBUG */ + + if (krb5creds.client) krb5_free_principal(krb5context, + krb5creds.client); + if (krb5creds.server) krb5_free_principal(krb5context, + krb5creds.server); + if (krb5auth_context) krb5_auth_con_free(krb5context, + krb5auth_context); + if (krb5context) krb5_free_context(krb5context); + return (krb5rc); + } + + +/* Given d2i_-decoded asn1ticket, allocate and return a new krb5_ticket. +** Return Kerberos error code and kssl_err struct on error. +** Allocates krb5_ticket and krb5_principal; caller should free these. +** +** 20010410 VRS Implemented krb5_decode_ticket() as +** old_krb5_decode_ticket(). Missing from MIT1.0.6. +** 20010615 VRS Re-cast as openssl/asn1 d2i_*() functions. +** Re-used some of the old krb5_decode_ticket() +** code here. This tkt should alloc/free just +** like the real thing. +*/ +static krb5_error_code +kssl_TKT2tkt( /* IN */ krb5_context krb5context, + /* IN */ KRB5_TKTBODY *asn1ticket, + /* OUT */ krb5_ticket **krb5ticket, + /* OUT */ KSSL_ERR *kssl_err ) + { + krb5_error_code krb5rc = KRB5KRB_ERR_GENERIC; + krb5_ticket *new5ticket = NULL; + ASN1_GENERALSTRING *gstr_svc, *gstr_host; + + *krb5ticket = NULL; + + if (asn1ticket == NULL || asn1ticket->realm == NULL || + asn1ticket->sname == NULL || + sk_ASN1_GENERALSTRING_num(asn1ticket->sname->namestring) < 2) + { + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "Null field in asn1ticket.\n"); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + return KRB5KRB_ERR_GENERIC; + } + + if ((new5ticket = (krb5_ticket *) calloc(1, sizeof(krb5_ticket)))==NULL) + { + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "Unable to allocate new krb5_ticket.\n"); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + return ENOMEM; /* or KRB5KRB_ERR_GENERIC; */ + } + + gstr_svc = sk_ASN1_GENERALSTRING_value(asn1ticket->sname->namestring, 0); + gstr_host = sk_ASN1_GENERALSTRING_value(asn1ticket->sname->namestring, 1); + + if ((krb5rc = kssl_build_principal_2(krb5context, + &new5ticket->server, + asn1ticket->realm->length, (char *)asn1ticket->realm->data, + gstr_svc->length, (char *)gstr_svc->data, + gstr_host->length, (char *)gstr_host->data)) != 0) + { + free(new5ticket); + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "Error building ticket server principal.\n"); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + return krb5rc; /* or KRB5KRB_ERR_GENERIC; */ + } + + krb5_princ_type(krb5context, new5ticket->server) = + asn1ticket->sname->nametype->data[0]; + new5ticket->enc_part.enctype = asn1ticket->encdata->etype->data[0]; + new5ticket->enc_part.kvno = asn1ticket->encdata->kvno->data[0]; + new5ticket->enc_part.ciphertext.length = + asn1ticket->encdata->cipher->length; + if ((new5ticket->enc_part.ciphertext.data = + calloc(1, asn1ticket->encdata->cipher->length)) == NULL) + { + free(new5ticket); + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "Error allocating cipher in krb5ticket.\n"); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + return KRB5KRB_ERR_GENERIC; + } + else + { + memcpy(new5ticket->enc_part.ciphertext.data, + asn1ticket->encdata->cipher->data, + asn1ticket->encdata->cipher->length); + } + + *krb5ticket = new5ticket; + return 0; + } + + +/* Given krb5 service name in KSSL_CTX *kssl_ctx (typically "kssl"), +** and krb5 AP_REQ message & message length, +** Return Kerberos session key and client principle +** to SSL Server in KSSL_CTX *kssl_ctx. +** +** 19990702 VRS Started. +*/ +krb5_error_code +kssl_sget_tkt( /* UPDATE */ KSSL_CTX *kssl_ctx, + /* IN */ krb5_data *indata, + /* OUT */ krb5_ticket_times *ttimes, + /* OUT */ KSSL_ERR *kssl_err ) + { + krb5_error_code krb5rc = KRB5KRB_ERR_GENERIC; + static krb5_context krb5context = NULL; + static krb5_auth_context krb5auth_context = NULL; + krb5_ticket *krb5ticket = NULL; + KRB5_TKTBODY *asn1ticket = NULL; + const unsigned char *p; + krb5_keytab krb5keytab = NULL; + krb5_keytab_entry kt_entry; + krb5_principal krb5server; + krb5_rcache rcache = NULL; + + kssl_err_set(kssl_err, 0, ""); + + if (!kssl_ctx) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "No kssl_ctx defined.\n"); + goto err; + } + +#ifdef KSSL_DEBUG + printf("in kssl_sget_tkt(%s)\n", kstring(kssl_ctx->service_name)); +#endif /* KSSL_DEBUG */ + + if (!krb5context && (krb5rc = krb5_init_context(&krb5context))) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_init_context() fails.\n"); + goto err; + } + if (krb5auth_context && + (krb5rc = krb5_auth_con_free(krb5context, krb5auth_context))) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_auth_con_free() fails.\n"); + goto err; + } + else krb5auth_context = NULL; + if (!krb5auth_context && + (krb5rc = krb5_auth_con_init(krb5context, &krb5auth_context))) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_auth_con_init() fails.\n"); + goto err; + } + + + if ((krb5rc = krb5_auth_con_getrcache(krb5context, krb5auth_context, + &rcache))) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_auth_con_getrcache() fails.\n"); + goto err; + } + + if ((krb5rc = krb5_sname_to_principal(krb5context, NULL, + (kssl_ctx->service_name)? kssl_ctx->service_name: KRB5SVC, + KRB5_NT_SRV_HST, &krb5server)) != 0) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_sname_to_principal() fails.\n"); + goto err; + } + + if (rcache == NULL) + { + if ((krb5rc = krb5_get_server_rcache(krb5context, + krb5_princ_component(krb5context, krb5server, 0), + &rcache))) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_get_server_rcache() fails.\n"); + goto err; + } + } + + if ((krb5rc = krb5_auth_con_setrcache(krb5context, krb5auth_context, rcache))) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_auth_con_setrcache() fails.\n"); + goto err; + } + + + /* kssl_ctx->keytab_file == NULL ==> use Kerberos default + */ + if (kssl_ctx->keytab_file) + { + krb5rc = krb5_kt_resolve(krb5context, kssl_ctx->keytab_file, + &krb5keytab); + if (krb5rc) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_kt_resolve() fails.\n"); + goto err; + } + } + else + { + krb5rc = krb5_kt_default(krb5context,&krb5keytab); + if (krb5rc) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "krb5_kt_default() fails.\n"); + goto err; + } + } + + /* Actual Kerberos5 krb5_recvauth() has initial conversation here + ** o check KRB5_SENDAUTH_BADAUTHVERS + ** unless KRB5_RECVAUTH_SKIP_VERSION + ** o check KRB5_SENDAUTH_BADAPPLVERS + ** o send "0" msg if all OK + */ + + /* 20010411 was using AP_REQ instead of true KerberosWrapper + ** + ** if ((krb5rc = krb5_rd_req(krb5context, &krb5auth_context, + ** &krb5in_data, krb5server, krb5keytab, + ** &ap_option, &krb5ticket)) != 0) { Error } + */ + + p = (unsigned char *)indata->data; + if ((asn1ticket = (KRB5_TKTBODY *) d2i_KRB5_TICKET(NULL, &p, + (long) indata->length)) == NULL) + { + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "d2i_KRB5_TICKET() ASN.1 decode failure.\n"); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + goto err; + } + + /* Was: krb5rc = krb5_decode_ticket(krb5in_data,&krb5ticket)) != 0) */ + if ((krb5rc = kssl_TKT2tkt(krb5context, asn1ticket, &krb5ticket, + kssl_err)) != 0) + { + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "Error converting ASN.1 ticket to krb5_ticket.\n"); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + goto err; + } + + if (! krb5_principal_compare(krb5context, krb5server, + krb5ticket->server)) { + krb5rc = KRB5_PRINC_NOMATCH; + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "server principal != ticket principal\n"); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + goto err; + } + if ((krb5rc = krb5_kt_get_entry(krb5context, krb5keytab, + krb5ticket->server, krb5ticket->enc_part.kvno, + krb5ticket->enc_part.enctype, &kt_entry)) != 0) { + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "krb5_kt_get_entry() fails with %x.\n", krb5rc); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + goto err; + } + if ((krb5rc = krb5_decrypt_tkt_part(krb5context, &kt_entry.key, + krb5ticket)) != 0) { + BIO_snprintf(kssl_err->text, KSSL_ERR_MAX, + "krb5_decrypt_tkt_part() failed.\n"); + kssl_err->reason = SSL_R_KRB5_S_RD_REQ; + goto err; + } + else { + krb5_kt_free_entry(krb5context, &kt_entry); +#ifdef KSSL_DEBUG + { + int i; krb5_address **paddr = krb5ticket->enc_part2->caddrs; + printf("Decrypted ticket fields:\n"); + printf("\tflags: %X, transit-type: %X", + krb5ticket->enc_part2->flags, + krb5ticket->enc_part2->transited.tr_type); + print_krb5_data("\ttransit-data: ", + &(krb5ticket->enc_part2->transited.tr_contents)); + printf("\tcaddrs: %p, authdata: %p\n", + krb5ticket->enc_part2->caddrs, + krb5ticket->enc_part2->authorization_data); + if (paddr) + { + printf("\tcaddrs:\n"); + for (i=0; paddr[i] != NULL; i++) + { + krb5_data d; + d.length=paddr[i]->length; + d.data=paddr[i]->contents; + print_krb5_data("\t\tIP: ", &d); + } + } + printf("\tstart/auth/end times: %d / %d / %d\n", + krb5ticket->enc_part2->times.starttime, + krb5ticket->enc_part2->times.authtime, + krb5ticket->enc_part2->times.endtime); + } +#endif /* KSSL_DEBUG */ + } + + krb5rc = KRB5_NO_TKT_SUPPLIED; + if (!krb5ticket || !krb5ticket->enc_part2 || + !krb5ticket->enc_part2->client || + !krb5ticket->enc_part2->client->data || + !krb5ticket->enc_part2->session) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_BAD_TICKET, + "bad ticket from krb5_rd_req.\n"); + } + else if (kssl_ctx_setprinc(kssl_ctx, KSSL_CLIENT, + &krb5ticket->enc_part2->client->realm, + krb5ticket->enc_part2->client->data, + krb5ticket->enc_part2->client->length)) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_BAD_TICKET, + "kssl_ctx_setprinc() fails.\n"); + } + else if (kssl_ctx_setkey(kssl_ctx, krb5ticket->enc_part2->session)) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_BAD_TICKET, + "kssl_ctx_setkey() fails.\n"); + } + else if (krb5ticket->enc_part2->flags & TKT_FLG_INVALID) + { + krb5rc = KRB5KRB_AP_ERR_TKT_INVALID; + kssl_err_set(kssl_err, SSL_R_KRB5_S_BAD_TICKET, + "invalid ticket from krb5_rd_req.\n"); + } + else krb5rc = 0; + + kssl_ctx->enctype = krb5ticket->enc_part.enctype; + ttimes->authtime = krb5ticket->enc_part2->times.authtime; + ttimes->starttime = krb5ticket->enc_part2->times.starttime; + ttimes->endtime = krb5ticket->enc_part2->times.endtime; + ttimes->renew_till = krb5ticket->enc_part2->times.renew_till; + + err: +#ifdef KSSL_DEBUG + kssl_ctx_show(kssl_ctx); +#endif /* KSSL_DEBUG */ + + if (asn1ticket) KRB5_TICKET_free((KRB5_TICKET *) asn1ticket); + if (krb5keytab) krb5_kt_close(krb5context, krb5keytab); + if (krb5ticket) krb5_free_ticket(krb5context, krb5ticket); + if (krb5server) krb5_free_principal(krb5context, krb5server); + return (krb5rc); + } + + +/* Allocate & return a new kssl_ctx struct. +*/ +KSSL_CTX * +kssl_ctx_new(void) + { + return ((KSSL_CTX *) kssl_calloc(1, sizeof(KSSL_CTX))); + } + + +/* Frees a kssl_ctx struct and any allocated memory it holds. +** Returns NULL. +*/ +KSSL_CTX * +kssl_ctx_free(KSSL_CTX *kssl_ctx) + { + if (kssl_ctx == NULL) return kssl_ctx; + + if (kssl_ctx->key) OPENSSL_cleanse(kssl_ctx->key, + kssl_ctx->length); + if (kssl_ctx->key) kssl_free(kssl_ctx->key); + if (kssl_ctx->client_princ) kssl_free(kssl_ctx->client_princ); + if (kssl_ctx->service_host) kssl_free(kssl_ctx->service_host); + if (kssl_ctx->service_name) kssl_free(kssl_ctx->service_name); + if (kssl_ctx->keytab_file) kssl_free(kssl_ctx->keytab_file); + + kssl_free(kssl_ctx); + return (KSSL_CTX *) NULL; + } + + +/* Given an array of (krb5_data *) entity (and optional realm), +** set the plain (char *) client_princ or service_host member +** of the kssl_ctx struct. +*/ +krb5_error_code +kssl_ctx_setprinc(KSSL_CTX *kssl_ctx, int which, + krb5_data *realm, krb5_data *entity, int nentities) + { + char **princ; + int length; + int i; + + if (kssl_ctx == NULL || entity == NULL) return KSSL_CTX_ERR; + + switch (which) + { + case KSSL_CLIENT: princ = &kssl_ctx->client_princ; break; + case KSSL_SERVER: princ = &kssl_ctx->service_host; break; + default: return KSSL_CTX_ERR; break; + } + if (*princ) kssl_free(*princ); + + /* Add up all the entity->lengths */ + length = 0; + for (i=0; i < nentities; i++) + { + length += entity[i].length; + } + /* Add in space for the '/' character(s) (if any) */ + length += nentities-1; + /* Space for the ('@'+realm+NULL | NULL) */ + length += ((realm)? realm->length + 2: 1); + + if ((*princ = kssl_calloc(1, length)) == NULL) + return KSSL_CTX_ERR; + else + { + for (i = 0; i < nentities; i++) + { + strncat(*princ, entity[i].data, entity[i].length); + if (i < nentities-1) + { + strcat (*princ, "/"); + } + } + if (realm) + { + strcat (*princ, "@"); + (void) strncat(*princ, realm->data, realm->length); + } + } + + return KSSL_CTX_OK; + } + + +/* Set one of the plain (char *) string members of the kssl_ctx struct. +** Default values should be: +** which == KSSL_SERVICE => "khost" (KRB5SVC) +** which == KSSL_KEYTAB => "/etc/krb5.keytab" (KRB5KEYTAB) +*/ +krb5_error_code +kssl_ctx_setstring(KSSL_CTX *kssl_ctx, int which, char *text) + { + char **string; + + if (!kssl_ctx) return KSSL_CTX_ERR; + + switch (which) + { + case KSSL_SERVICE: string = &kssl_ctx->service_name; break; + case KSSL_SERVER: string = &kssl_ctx->service_host; break; + case KSSL_CLIENT: string = &kssl_ctx->client_princ; break; + case KSSL_KEYTAB: string = &kssl_ctx->keytab_file; break; + default: return KSSL_CTX_ERR; break; + } + if (*string) kssl_free(*string); + + if (!text) + { + *string = '\0'; + return KSSL_CTX_OK; + } + + if ((*string = kssl_calloc(1, strlen(text) + 1)) == NULL) + return KSSL_CTX_ERR; + else + strcpy(*string, text); + + return KSSL_CTX_OK; + } + + +/* Copy the Kerberos session key from a (krb5_keyblock *) to a kssl_ctx +** struct. Clear kssl_ctx->key if Kerberos session key is NULL. +*/ +krb5_error_code +kssl_ctx_setkey(KSSL_CTX *kssl_ctx, krb5_keyblock *session) + { + int length; + krb5_enctype enctype; + krb5_octet FAR *contents = NULL; + + if (!kssl_ctx) return KSSL_CTX_ERR; + + if (kssl_ctx->key) + { + OPENSSL_cleanse(kssl_ctx->key, kssl_ctx->length); + kssl_free(kssl_ctx->key); + } + + if (session) + { + +#ifdef KRB5_HEIMDAL + length = session->keyvalue->length; + enctype = session->keytype; + contents = session->keyvalue->contents; +#else + length = session->length; + enctype = session->enctype; + contents = session->contents; +#endif + kssl_ctx->enctype = enctype; + kssl_ctx->length = length; + } + else + { + kssl_ctx->enctype = ENCTYPE_UNKNOWN; + kssl_ctx->length = 0; + return KSSL_CTX_OK; + } + + if ((kssl_ctx->key = + (krb5_octet FAR *) kssl_calloc(1, kssl_ctx->length)) == NULL) + { + kssl_ctx->length = 0; + return KSSL_CTX_ERR; + } + else + memcpy(kssl_ctx->key, contents, length); + + return KSSL_CTX_OK; + } + + +/* Display contents of kssl_ctx struct +*/ +void +kssl_ctx_show(KSSL_CTX *kssl_ctx) + { + int i; + + printf("kssl_ctx: "); + if (kssl_ctx == NULL) + { + printf("NULL\n"); + return; + } + else + printf("%p\n", (void *)kssl_ctx); + + printf("\tservice:\t%s\n", + (kssl_ctx->service_name)? kssl_ctx->service_name: "NULL"); + printf("\tclient:\t%s\n", + (kssl_ctx->client_princ)? kssl_ctx->client_princ: "NULL"); + printf("\tserver:\t%s\n", + (kssl_ctx->service_host)? kssl_ctx->service_host: "NULL"); + printf("\tkeytab:\t%s\n", + (kssl_ctx->keytab_file)? kssl_ctx->keytab_file: "NULL"); + printf("\tkey [%d:%d]:\t", + kssl_ctx->enctype, kssl_ctx->length); + + for (i=0; i < kssl_ctx->length && kssl_ctx->key; i++) + { + printf("%02x", kssl_ctx->key[i]); + } + printf("\n"); + return; + } + + int + kssl_keytab_is_available(KSSL_CTX *kssl_ctx) +{ + krb5_context krb5context = NULL; + krb5_keytab krb5keytab = NULL; + krb5_keytab_entry entry; + krb5_principal princ = NULL; + krb5_error_code krb5rc = KRB5KRB_ERR_GENERIC; + int rc = 0; + + if ((krb5rc = krb5_init_context(&krb5context))) + return(0); + + /* kssl_ctx->keytab_file == NULL ==> use Kerberos default + */ + if (kssl_ctx->keytab_file) + { + krb5rc = krb5_kt_resolve(krb5context, kssl_ctx->keytab_file, + &krb5keytab); + if (krb5rc) + goto exit; + } + else + { + krb5rc = krb5_kt_default(krb5context,&krb5keytab); + if (krb5rc) + goto exit; + } + + /* the host key we are looking for */ + krb5rc = krb5_sname_to_principal(krb5context, NULL, + kssl_ctx->service_name ? kssl_ctx->service_name: KRB5SVC, + KRB5_NT_SRV_HST, &princ); + + if (krb5rc) + goto exit; + + krb5rc = krb5_kt_get_entry(krb5context, krb5keytab, + princ, + 0 /* IGNORE_VNO */, + 0 /* IGNORE_ENCTYPE */, + &entry); + if ( krb5rc == KRB5_KT_NOTFOUND ) { + rc = 1; + goto exit; + } else if ( krb5rc ) + goto exit; + + krb5_kt_free_entry(krb5context, &entry); + rc = 1; + + exit: + if (krb5keytab) krb5_kt_close(krb5context, krb5keytab); + if (princ) krb5_free_principal(krb5context, princ); + if (krb5context) krb5_free_context(krb5context); + return(rc); +} + +int +kssl_tgt_is_available(KSSL_CTX *kssl_ctx) + { + krb5_error_code krb5rc = KRB5KRB_ERR_GENERIC; + krb5_context krb5context = NULL; + krb5_ccache krb5ccdef = NULL; + krb5_creds krb5creds, *krb5credsp = NULL; + int rc = 0; + + memset((char *)&krb5creds, 0, sizeof(krb5creds)); + + if (!kssl_ctx) + return(0); + + if (!kssl_ctx->service_host) + return(0); + + if ((krb5rc = krb5_init_context(&krb5context)) != 0) + goto err; + + if ((krb5rc = krb5_sname_to_principal(krb5context, + kssl_ctx->service_host, + (kssl_ctx->service_name)? kssl_ctx->service_name: KRB5SVC, + KRB5_NT_SRV_HST, &krb5creds.server)) != 0) + goto err; + + if ((krb5rc = krb5_cc_default(krb5context, &krb5ccdef)) != 0) + goto err; + + if ((krb5rc = krb5_cc_get_principal(krb5context, krb5ccdef, + &krb5creds.client)) != 0) + goto err; + + if ((krb5rc = krb5_get_credentials(krb5context, 0, krb5ccdef, + &krb5creds, &krb5credsp)) != 0) + goto err; + + rc = 1; + + err: +#ifdef KSSL_DEBUG + kssl_ctx_show(kssl_ctx); +#endif /* KSSL_DEBUG */ + + if (krb5creds.client) krb5_free_principal(krb5context, krb5creds.client); + if (krb5creds.server) krb5_free_principal(krb5context, krb5creds.server); + if (krb5context) krb5_free_context(krb5context); + return(rc); + } + +#if !defined(OPENSSL_SYS_WINDOWS) && !defined(OPENSSL_SYS_WIN32) +void kssl_krb5_free_data_contents(krb5_context context, krb5_data *data) + { +#ifdef KRB5_HEIMDAL + data->length = 0; + if (data->data) + free(data->data); +#elif defined(KRB5_MIT_OLD11) + if (data->data) { + krb5_xfree(data->data); + data->data = 0; + } +#else + krb5_free_data_contents(NULL, data); +#endif + } +#endif /* !OPENSSL_SYS_WINDOWS && !OPENSSL_SYS_WIN32 */ + + +/* Given pointers to KerberosTime and struct tm structs, convert the +** KerberosTime string to struct tm. Note that KerberosTime is a +** ASN1_GENERALIZEDTIME value, constrained to GMT with no fractional +** seconds as defined in RFC 1510. +** Return pointer to the (partially) filled in struct tm on success, +** return NULL on failure. +*/ +static struct tm *k_gmtime(ASN1_GENERALIZEDTIME *gtime, struct tm *k_tm) + { + char c, *p; + + if (!k_tm) return NULL; + if (gtime == NULL || gtime->length < 14) return NULL; + if (gtime->data == NULL) return NULL; + + p = (char *)>ime->data[14]; + + c = *p; *p = '\0'; p -= 2; k_tm->tm_sec = atoi(p); *(p+2) = c; + c = *p; *p = '\0'; p -= 2; k_tm->tm_min = atoi(p); *(p+2) = c; + c = *p; *p = '\0'; p -= 2; k_tm->tm_hour = atoi(p); *(p+2) = c; + c = *p; *p = '\0'; p -= 2; k_tm->tm_mday = atoi(p); *(p+2) = c; + c = *p; *p = '\0'; p -= 2; k_tm->tm_mon = atoi(p)-1; *(p+2) = c; + c = *p; *p = '\0'; p -= 4; k_tm->tm_year = atoi(p)-1900; *(p+4) = c; + + return k_tm; + } + + +/* Helper function for kssl_validate_times(). +** We need context->clockskew, but krb5_context is an opaque struct. +** So we try to sneek the clockskew out through the replay cache. +** If that fails just return a likely default (300 seconds). +*/ +static krb5_deltat get_rc_clockskew(krb5_context context) + { + krb5_rcache rc; + krb5_deltat clockskew; + + if (krb5_rc_default(context, &rc)) return KSSL_CLOCKSKEW; + if (krb5_rc_initialize(context, rc, 0)) return KSSL_CLOCKSKEW; + if (krb5_rc_get_lifespan(context, rc, &clockskew)) { + clockskew = KSSL_CLOCKSKEW; + } + (void) krb5_rc_destroy(context, rc); + return clockskew; + } + + +/* kssl_validate_times() combines (and more importantly exposes) +** the MIT KRB5 internal function krb5_validate_times() and the +** in_clock_skew() macro. The authenticator client time is checked +** to be within clockskew secs of the current time and the current +** time is checked to be within the ticket start and expire times. +** Either check may be omitted by supplying a NULL value. +** Returns 0 for valid times, SSL_R_KRB5* error codes otherwise. +** See Also: (Kerberos source)/krb5/lib/krb5/krb/valid_times.c +** 20010420 VRS +*/ +krb5_error_code kssl_validate_times( krb5_timestamp atime, + krb5_ticket_times *ttimes) + { + krb5_deltat skew; + krb5_timestamp start, now; + krb5_error_code rc; + krb5_context context; + + if ((rc = krb5_init_context(&context))) return SSL_R_KRB5_S_BAD_TICKET; + skew = get_rc_clockskew(context); + if ((rc = krb5_timeofday(context,&now))) return SSL_R_KRB5_S_BAD_TICKET; + krb5_free_context(context); + + if (atime && labs(atime - now) >= skew) return SSL_R_KRB5_S_TKT_SKEW; + + if (! ttimes) return 0; + + start = (ttimes->starttime != 0)? ttimes->starttime: ttimes->authtime; + if (start - now > skew) return SSL_R_KRB5_S_TKT_NYV; + if ((now - ttimes->endtime) > skew) return SSL_R_KRB5_S_TKT_EXPIRED; + +#ifdef KSSL_DEBUG + printf("kssl_validate_times: %d |<- | %d - %d | < %d ->| %d\n", + start, atime, now, skew, ttimes->endtime); +#endif /* KSSL_DEBUG */ + + return 0; + } + + +/* Decode and decrypt given DER-encoded authenticator, then pass +** authenticator ctime back in *atimep (or 0 if time unavailable). +** Returns krb5_error_code and kssl_err on error. A NULL +** authenticator (authentp->length == 0) is not considered an error. +** Note that kssl_check_authent() makes use of the KRB5 session key; +** you must call kssl_sget_tkt() to get the key before calling this routine. +*/ +krb5_error_code kssl_check_authent( + /* IN */ KSSL_CTX *kssl_ctx, + /* IN */ krb5_data *authentp, + /* OUT */ krb5_timestamp *atimep, + /* OUT */ KSSL_ERR *kssl_err ) + { + krb5_error_code krb5rc = 0; + KRB5_ENCDATA *dec_authent = NULL; + KRB5_AUTHENTBODY *auth = NULL; + krb5_enctype enctype; + EVP_CIPHER_CTX ciph_ctx; + const EVP_CIPHER *enc = NULL; + unsigned char iv[EVP_MAX_IV_LENGTH]; + const unsigned char *p; + unsigned char *unenc_authent; + int outl, unencbufsize; + struct tm tm_time, *tm_l, *tm_g; + time_t now, tl, tg, tr, tz_offset; + + EVP_CIPHER_CTX_init(&ciph_ctx); + *atimep = 0; + kssl_err_set(kssl_err, 0, ""); + +#ifndef KRB5CHECKAUTH + authentp = NULL; +#else +#if KRB5CHECKAUTH == 0 + authentp = NULL; +#endif +#endif /* KRB5CHECKAUTH */ + + if (authentp == NULL || authentp->length == 0) return 0; + +#ifdef KSSL_DEBUG + { + unsigned int ui; + printf("kssl_check_authent: authenticator[%d]:\n",authentp->length); + p = authentp->data; + for (ui=0; ui < authentp->length; ui++) printf("%02x ",p[ui]); + printf("\n"); + } +#endif /* KSSL_DEBUG */ + + unencbufsize = 2 * authentp->length; + if ((unenc_authent = calloc(1, unencbufsize)) == NULL) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "Unable to allocate authenticator buffer.\n"); + krb5rc = KRB5KRB_ERR_GENERIC; + goto err; + } + + p = (unsigned char *)authentp->data; + if ((dec_authent = d2i_KRB5_ENCDATA(NULL, &p, + (long) authentp->length)) == NULL) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "Error decoding authenticator.\n"); + krb5rc = KRB5KRB_AP_ERR_BAD_INTEGRITY; + goto err; + } + + enctype = dec_authent->etype->data[0]; /* should = kssl_ctx->enctype */ +#if !defined(KRB5_MIT_OLD11) + switch ( enctype ) { + case ENCTYPE_DES3_CBC_SHA1: /* EVP_des_ede3_cbc(); */ + case ENCTYPE_DES3_CBC_SHA: + case ENCTYPE_DES3_CBC_RAW: + krb5rc = 0; /* Skip, can't handle derived keys */ + goto err; + } +#endif + enc = kssl_map_enc(enctype); + memset(iv, 0, sizeof iv); /* per RFC 1510 */ + + if (enc == NULL) + { + /* Disable kssl_check_authent for ENCTYPE_DES3_CBC_SHA1. + ** This enctype indicates the authenticator was encrypted + ** using key-usage derived keys which openssl cannot decrypt. + */ + goto err; + } + + if (!EVP_CipherInit(&ciph_ctx,enc,kssl_ctx->key,iv,0)) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "EVP_CipherInit error decrypting authenticator.\n"); + krb5rc = KRB5KRB_AP_ERR_BAD_INTEGRITY; + goto err; + } + outl = dec_authent->cipher->length; + if (!EVP_Cipher(&ciph_ctx,unenc_authent,dec_authent->cipher->data,outl)) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "EVP_Cipher error decrypting authenticator.\n"); + krb5rc = KRB5KRB_AP_ERR_BAD_INTEGRITY; + goto err; + } + EVP_CIPHER_CTX_cleanup(&ciph_ctx); + +#ifdef KSSL_DEBUG + { + int padl; + printf("kssl_check_authent: decrypted authenticator[%d] =\n", outl); + for (padl=0; padl < outl; padl++) printf("%02x ",unenc_authent[padl]); + printf("\n"); + } +#endif /* KSSL_DEBUG */ + + if ((p = kssl_skip_confound(enctype, unenc_authent)) == NULL) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "confounded by authenticator.\n"); + krb5rc = KRB5KRB_AP_ERR_BAD_INTEGRITY; + goto err; + } + outl -= p - unenc_authent; + + if ((auth = (KRB5_AUTHENTBODY *) d2i_KRB5_AUTHENT(NULL, &p, + (long) outl))==NULL) + { + kssl_err_set(kssl_err, SSL_R_KRB5_S_INIT, + "Error decoding authenticator body.\n"); + krb5rc = KRB5KRB_AP_ERR_BAD_INTEGRITY; + goto err; + } + + memset(&tm_time,0,sizeof(struct tm)); + if (k_gmtime(auth->ctime, &tm_time) && + ((tr = mktime(&tm_time)) != (time_t)(-1))) + { + now = time(&now); + tm_l = localtime(&now); tl = mktime(tm_l); + tm_g = gmtime(&now); tg = mktime(tm_g); + tz_offset = tg - tl; + + *atimep = (krb5_timestamp)(tr - tz_offset); + } + +#ifdef KSSL_DEBUG + printf("kssl_check_authent: returns %d for client time ", *atimep); + if (auth && auth->ctime && auth->ctime->length && auth->ctime->data) + printf("%.*s\n", auth->ctime->length, auth->ctime->data); + else printf("NULL\n"); +#endif /* KSSL_DEBUG */ + + err: + if (auth) KRB5_AUTHENT_free((KRB5_AUTHENT *) auth); + if (dec_authent) KRB5_ENCDATA_free(dec_authent); + if (unenc_authent) free(unenc_authent); + EVP_CIPHER_CTX_cleanup(&ciph_ctx); + return krb5rc; + } + + +/* Replaces krb5_build_principal_ext(), with varargs length == 2 (svc, host), +** because I dont't know how to stub varargs. +** Returns krb5_error_code == ENOMEM on alloc error, otherwise +** passes back newly constructed principal, which should be freed by caller. +*/ +krb5_error_code kssl_build_principal_2( + /* UPDATE */ krb5_context context, + /* OUT */ krb5_principal *princ, + /* IN */ int rlen, const char *realm, + /* IN */ int slen, const char *svc, + /* IN */ int hlen, const char *host) + { + krb5_data *p_data = NULL; + krb5_principal new_p = NULL; + char *new_r = NULL; + + if ((p_data = (krb5_data *) calloc(2, sizeof(krb5_data))) == NULL || + (new_p = (krb5_principal) calloc(1, sizeof(krb5_principal_data))) + == NULL) goto err; + new_p->length = 2; + new_p->data = p_data; + + if ((new_r = calloc(1, rlen + 1)) == NULL) goto err; + memcpy(new_r, realm, rlen); + krb5_princ_set_realm_length(context, new_p, rlen); + krb5_princ_set_realm_data(context, new_p, new_r); + + if ((new_p->data[0].data = calloc(1, slen + 1)) == NULL) goto err; + memcpy(new_p->data[0].data, svc, slen); + new_p->data[0].length = slen; + + if ((new_p->data[1].data = calloc(1, hlen + 1)) == NULL) goto err; + memcpy(new_p->data[1].data, host, hlen); + new_p->data[1].length = hlen; + + krb5_princ_type(context, new_p) = KRB5_NT_UNKNOWN; + *princ = new_p; + return 0; + + err: + if (new_p && new_p[0].data) free(new_p[0].data); + if (new_p && new_p[1].data) free(new_p[1].data); + if (new_p) free(new_p); + if (new_r) free(new_r); + return ENOMEM; + } + + +#else /* !OPENSSL_NO_KRB5 */ + +#if defined(PEDANTIC) || defined(OPENSSL_SYS_VMS) +static void *dummy=&dummy; +#endif + +#endif /* !OPENSSL_NO_KRB5 */ + |