diff --git a/src/libsodium/ChangeLog b/src/libsodium/ChangeLog index 7d67f4847362c774ef95b1035e7baac54bbb9824..d1a01210d67136418e33f8897cd53ef0939ea0c8 100644 --- a/src/libsodium/ChangeLog +++ b/src/libsodium/ChangeLog @@ -1,4 +1,16 @@ +* Version 0.4.5 + - Restore compatibility with OSX <= 10.6 + +* Version 0.4.4 + - Visual Studio is officially supported (VC 2010 & VC 2013) + - mingw64 is now supported + - big-endian architectures are now supported as well + - The donna_c64 implementation of curve25519_donna_c64 now handles +non-canonical points like the ref implementation + - Missing scalarmult_curve25519 and stream_salsa20 constants are now exported + - A crypto_onetimeauth_poly1305_ref() wrapper has been added + * Version 0.4.3 - crypto_sign_seedbytes() and crypto_sign_SEEDBYTES were added. - crypto_onetimeauth_poly1305_implementation_name() was added. diff --git a/src/libsodium/Makefile.am b/src/libsodium/Makefile.am index 1202c4ecfa14397e04cc2b2318a42891d9ebd4f9..369c5364489322d64ca02617bebecc0a78fdaf2d 100644 --- a/src/libsodium/Makefile.am +++ b/src/libsodium/Makefile.am @@ -2,11 +2,15 @@ ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = \ autogen.sh \ + libsodium.sln \ + libsodium.vcxproj \ + libsodium.vcxproj.filters \ LICENSE \ README.markdown \ THANKS SUBDIRS = \ + msvc-scripts \ src \ test diff --git a/src/libsodium/Makefile.in b/src/libsodium/Makefile.in index f5737b4e2a31058208899ab230ee7435f60cd163..92696b952198487b47b05c6fd4a6b59ac5941efa 100644 --- a/src/libsodium/Makefile.in +++ b/src/libsodium/Makefile.in @@ -369,11 +369,15 @@ top_srcdir = @top_srcdir@ ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = \ autogen.sh \ + libsodium.sln \ + libsodium.vcxproj \ + libsodium.vcxproj.filters \ LICENSE \ README.markdown \ THANKS SUBDIRS = \ + msvc-scripts \ src \ test diff --git a/src/libsodium/README.markdown b/src/libsodium/README.markdown index dbe3f60729b61d0c0fea7262c662da19dc9a0e12..3b8955a891c0e88daa240bdbed9448ee3e44565c 100644 --- a/src/libsodium/README.markdown +++ b/src/libsodium/README.markdown @@ -13,6 +13,32 @@ higher-level cryptographic tools. Sodium is a portable, cross-compilable, installable, packageable fork of NaCl, with a compatible API. +## Is it full of NSA backdoors? + + + +The design of Sodium's primitives is completely free from NIST (and by +association, NSA) influence, with the following minor exceptions: +- The Poly1305 MAC, used for authenticating integrity of ciphertexts, +uses AES as a replaceable component, +- The Ed25519 digital signature algorithm uses SHA-512 for both key +derivation and computing message digests, +- APIs are provided to SHA-512 and SHA-512/256, but are replaceable by +the Blake2 hash function, which the Sodium library also provides. + +The design choices, particularly in regard to the Curve25519 +Diffie-Hellman function, emphasize security (whereas NIST curves +emphasize "performance" at the cost of security), and "magic +constants" in NaCl/Sodium are picked by theorems designed to maximize +security. + +The same cannot be said of NIST curves, where the specific origins of +certain constants are not described by the standards and may be +subject to malicious influence by the NSA. + +And despite the emphasis on higher security, primitives are faster +across-the-board than most implementations of the NIST standards. + ## Portability In order to pick the fastest working implementation of each primitive, @@ -23,7 +49,7 @@ Sodium performs tests at run-time, so that the same binary package can still run everywhere. Sodium is tested on a variety of compilers and operating systems, -including Windows, iOS and Android. +including Windows (with MingW or Visual Studio, x86 and x64), iOS and Android. ## Installation @@ -187,6 +213,7 @@ them from different languages is easier. * Java: [Kalium](https://github.com/abstractj/kalium) * Java JNI: [Kalium-JNI](https://github.com/joshjdevl/kalium-jni) * Julia: [Sodium.jl](https://github.com/amitmurthy/Sodium.jl) +* .NET: [libsodium-net](https://github.com/adamcaudill/libsodium-net) * Ocaml: [ocaml-sodium](https://github.com/dsheets/ocaml-sodium) * Pharo/Squeak: [Crypto-NaCl](http://www.eighty-twenty.org/index.cgi/tech/smalltalk/nacl-for-squeak-and-pharo-20130601.html) * PHP: [PHP-Sodium](https://github.com/alethia7/php-sodium) diff --git a/src/libsodium/configure b/src/libsodium/configure index ef0cc2c4ca988d2b4db11ff5f9a83c971e2280f1..2b3838912b3c1818a4be8da131f64d9f02c54df3 100755 --- a/src/libsodium/configure +++ b/src/libsodium/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for libsodium 0.4.3. +# Generated by GNU Autoconf 2.69 for libsodium 0.4.5. # # Report bugs to <https://github.com/jedisct1/libsodium/issues>. # @@ -590,8 +590,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='libsodium' PACKAGE_TARNAME='libsodium' -PACKAGE_VERSION='0.4.3' -PACKAGE_STRING='libsodium 0.4.3' +PACKAGE_VERSION='0.4.5' +PACKAGE_STRING='libsodium 0.4.5' PACKAGE_BUGREPORT='https://github.com/jedisct1/libsodium/issues' PACKAGE_URL='https://github.com/jedisct1/libsodium' @@ -1360,7 +1360,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libsodium 0.4.3 to adapt to many kinds of systems. +\`configure' configures libsodium 0.4.5 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1430,7 +1430,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libsodium 0.4.3:";; + short | recursive ) echo "Configuration of libsodium 0.4.5:";; esac cat <<\_ACEOF @@ -1557,7 +1557,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libsodium configure 0.4.3 +libsodium configure 0.4.5 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1926,7 +1926,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libsodium $as_me 0.4.3, which was +It was created by libsodium $as_me 0.4.5, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2862,7 +2862,7 @@ fi # Define the identity of the package. PACKAGE='libsodium' - VERSION='0.4.3' + VERSION='0.4.5' cat >>confdefs.h <<_ACEOF @@ -3157,9 +3157,9 @@ ISODATE=`date +%Y-%m-%d` SODIUM_LIBRARY_VERSION_MAJOR=4 -SODIUM_LIBRARY_VERSION_MINOR=3 +SODIUM_LIBRARY_VERSION_MINOR=4 DLL_VERSION=4 -SODIUM_LIBRARY_VERSION=7:0:3 +SODIUM_LIBRARY_VERSION=9:0:5 # | | | # +------+ | +---+ # | | | @@ -14223,6 +14223,48 @@ fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 +$as_echo_n "checking for inline... " >&6; } +if ${ac_cv_c_inline+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_c_inline=no +for ac_kw in inline __inline__ __inline; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifndef __cplusplus +typedef int foo_t; +static $ac_kw foo_t static_foo () {return 0; } +$ac_kw foo_t foo () {return 0; } +#endif + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_inline=$ac_kw +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + test "$ac_cv_c_inline" != no && break +done + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 +$as_echo "$ac_cv_c_inline" >&6; } + +case $ac_cv_c_inline in + inline | yes) ;; + *) + case $ac_cv_c_inline in + no) ac_val=;; + *) ac_val=$ac_cv_c_inline;; + esac + cat >>confdefs.h <<_ACEOF +#ifndef __cplusplus +#define inline $ac_val +#endif +_ACEOF + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 $as_echo_n "checking whether byte ordering is bigendian... " >&6; } if ${ac_cv_c_bigendian+:} false; then : @@ -14540,6 +14582,9 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #if defined(__clang__) && !defined(__x86_64__) # error clang doesn't properly compile smult_curve25519_donna_c64.c #endif +#ifndef NATIVE_LITTLE_ENDIAN +# error donna_c64 currently requires a little endian CPU +#endif #include <stdint.h> typedef unsigned uint128_t __attribute__((mode(TI))); void fcontract(uint128_t *t) { @@ -14737,12 +14782,13 @@ fi fi -for ac_func in SecureZeroMemory +for ac_func in SecureZeroMemory arc4random arc4random_buf do : - ac_fn_c_check_func "$LINENO" "SecureZeroMemory" "ac_cv_func_SecureZeroMemory" -if test "x$ac_cv_func_SecureZeroMemory" = xyes; then : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define HAVE_SECUREZEROMEMORY 1 +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi @@ -15104,7 +15150,7 @@ if test "x$PKG_CONFIG" != "x"; then : fi -ac_config_files="$ac_config_files Makefile src/Makefile src/libsodium/Makefile src/libsodium/include/Makefile src/libsodium/include/sodium/version.h src/libsodium/include/sodium/crypto_scalarmult_curve25519.h src/libsodium/include/sodium/crypto_stream_salsa20.h test/default/Makefile test/Makefile" +ac_config_files="$ac_config_files Makefile msvc-scripts/Makefile src/Makefile src/libsodium/Makefile src/libsodium/include/Makefile src/libsodium/include/sodium/version.h src/libsodium/include/sodium/crypto_scalarmult_curve25519.h src/libsodium/include/sodium/crypto_stream_salsa20.h test/default/Makefile test/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -15700,7 +15746,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libsodium $as_me 0.4.3, which was +This file was extended by libsodium $as_me 0.4.5, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -15758,7 +15804,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libsodium config.status 0.4.3 +libsodium config.status 0.4.5 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -16159,6 +16205,7 @@ do "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; "libsodium.pc") CONFIG_FILES="$CONFIG_FILES libsodium.pc" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "msvc-scripts/Makefile") CONFIG_FILES="$CONFIG_FILES msvc-scripts/Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "src/libsodium/Makefile") CONFIG_FILES="$CONFIG_FILES src/libsodium/Makefile" ;; "src/libsodium/include/Makefile") CONFIG_FILES="$CONFIG_FILES src/libsodium/include/Makefile" ;; diff --git a/src/libsodium/configure.ac b/src/libsodium/configure.ac index 2cd071864aa36b0fa02f03b9a9aabc5b25924ebf..244424657245b8d09b930f8a9fc30b83f189e22e 100644 --- a/src/libsodium/configure.ac +++ b/src/libsodium/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.65]) -AC_INIT([libsodium],[0.4.3], +AC_INIT([libsodium],[0.4.5], [https://github.com/jedisct1/libsodium/issues], [libsodium], [https://github.com/jedisct1/libsodium]) @@ -16,9 +16,9 @@ ISODATE=`date +%Y-%m-%d` AC_SUBST(ISODATE) SODIUM_LIBRARY_VERSION_MAJOR=4 -SODIUM_LIBRARY_VERSION_MINOR=3 +SODIUM_LIBRARY_VERSION_MINOR=4 DLL_VERSION=4 -SODIUM_LIBRARY_VERSION=7:0:3 +SODIUM_LIBRARY_VERSION=9:0:5 # | | | # +------+ | +---+ # | | | @@ -276,6 +276,7 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ dnl Checks for typedefs, structures, and compiler characteristics. +AC_C_INLINE AC_C_BIGENDIAN( AC_DEFINE(NATIVE_BIG_ENDIAN, 1, [machine is bigendian]), AC_DEFINE(NATIVE_LITTLE_ENDIAN, 1, [machine is littleendian]), @@ -325,6 +326,9 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #if defined(__clang__) && !defined(__x86_64__) # error clang doesn't properly compile smult_curve25519_donna_c64.c #endif +#ifndef NATIVE_LITTLE_ENDIAN +# error donna_c64 currently requires a little endian CPU +#endif #include <stdint.h> typedef unsigned uint128_t __attribute__((mode(TI))); void fcontract(uint128_t *t) { @@ -367,7 +371,7 @@ dnl Checks for functions and headers AC_CHECK_FUNC(clock_gettime, , [AC_CHECK_LIB(rt, clock_gettime)]) AC_CHECK_FUNC(fegetenv, , [AC_CHECK_LIB(m, fegetenv)]) -AC_CHECK_FUNCS([SecureZeroMemory]) +AC_CHECK_FUNCS([SecureZeroMemory arc4random arc4random_buf]) AC_SUBST([LIBTOOL_EXTRA_FLAGS]) @@ -388,6 +392,7 @@ AS_IF([test "x$PKG_CONFIG" != "x"], [ AC_CONFIG_FILES([libsodium.pc]) ]) AC_CONFIG_FILES([Makefile + msvc-scripts/Makefile src/Makefile src/libsodium/Makefile src/libsodium/include/Makefile diff --git a/src/libsodium/libsodium.sln b/src/libsodium/libsodium.sln new file mode 100644 index 0000000000000000000000000000000000000000..afe06dcc45e470baead42e57b926848a966cb6a1 --- /dev/null +++ b/src/libsodium/libsodium.sln @@ -0,0 +1,38 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsodium", "libsodium.vcxproj", "{A185B162-6CB6-4502-B03F-B56F7699A8D9}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + DebugDLL|Win32 = DebugDLL|Win32 + DebugDLL|x64 = DebugDLL|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + ReleaseDLL|Win32 = ReleaseDLL|Win32 + ReleaseDLL|x64 = ReleaseDLL|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.Debug|Win32.ActiveCfg = Debug|Win32 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.Debug|Win32.Build.0 = Debug|Win32 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.Debug|x64.ActiveCfg = Debug|x64 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.Debug|x64.Build.0 = Debug|x64 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.DebugDLL|Win32.ActiveCfg = DebugDLL|Win32 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.DebugDLL|Win32.Build.0 = DebugDLL|Win32 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.DebugDLL|x64.ActiveCfg = DebugDLL|x64 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.DebugDLL|x64.Build.0 = DebugDLL|x64 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.Release|Win32.ActiveCfg = Release|Win32 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.Release|Win32.Build.0 = Release|Win32 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.Release|x64.ActiveCfg = Release|x64 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.Release|x64.Build.0 = Release|x64 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.ReleaseDLL|Win32.ActiveCfg = ReleaseDLL|Win32 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.ReleaseDLL|Win32.Build.0 = ReleaseDLL|Win32 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.ReleaseDLL|x64.ActiveCfg = ReleaseDLL|x64 + {A185B162-6CB6-4502-B03F-B56F7699A8D9}.ReleaseDLL|x64.Build.0 = ReleaseDLL|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/src/libsodium/libsodium.vcxproj b/src/libsodium/libsodium.vcxproj new file mode 100644 index 0000000000000000000000000000000000000000..eb13482068bb89226d72d074357f3a402983f8a3 --- /dev/null +++ b/src/libsodium/libsodium.vcxproj @@ -0,0 +1,508 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup Label="ProjectConfigurations"> + <ProjectConfiguration Include="DebugDLL|Win32"> + <Configuration>DebugDLL</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="DebugDLL|x64"> + <Configuration>DebugDLL</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Debug|Win32"> + <Configuration>Debug</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Debug|x64"> + <Configuration>Debug</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="ReleaseDLL|Win32"> + <Configuration>ReleaseDLL</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="ReleaseDLL|x64"> + <Configuration>ReleaseDLL</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|Win32"> + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|x64"> + <Configuration>Release</Configuration> + <Platform>x64</Platform> + </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectGuid>{A185B162-6CB6-4502-B03F-B56F7699A8D9}</ProjectGuid> + <Keyword>Win32Proj</Keyword> + <RootNamespace>libsodium</RootNamespace> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> + <ConfigurationType>StaticLibrary</ConfigurationType> + <UseDebugLibraries>true</UseDebugLibraries> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>false</WholeProgramOptimization> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|Win32'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <UseDebugLibraries>true</UseDebugLibraries> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>false</WholeProgramOptimization> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> + <ConfigurationType>StaticLibrary</ConfigurationType> + <UseDebugLibraries>true</UseDebugLibraries> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>false</WholeProgramOptimization> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|x64'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <UseDebugLibraries>true</UseDebugLibraries> + <CharacterSet>MultiByte</CharacterSet> + <WholeProgramOptimization>false</WholeProgramOptimization> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> + <ConfigurationType>StaticLibrary</ConfigurationType> + <UseDebugLibraries>false</UseDebugLibraries> + <WholeProgramOptimization>true</WholeProgramOptimization> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|Win32'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <UseDebugLibraries>false</UseDebugLibraries> + <WholeProgramOptimization>true</WholeProgramOptimization> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> + <ConfigurationType>StaticLibrary</ConfigurationType> + <UseDebugLibraries>false</UseDebugLibraries> + <WholeProgramOptimization>true</WholeProgramOptimization> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|x64'" Label="Configuration"> + <ConfigurationType>DynamicLibrary</ConfigurationType> + <UseDebugLibraries>false</UseDebugLibraries> + <WholeProgramOptimization>true</WholeProgramOptimization> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>v100</PlatformToolset> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> + <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="msvc-scripts\sodium.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="msvc-scripts\sodium.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="msvc-scripts\sodium.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="msvc-scripts\sodium.props" /> + </ImportGroup> + <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="msvc-scripts\sodium.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="msvc-scripts\sodium.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="msvc-scripts\sodium.props" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|x64'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + <Import Project="msvc-scripts\sodium.props" /> + </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\</OutDir> + <IntDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\Intermediate\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|Win32'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\</OutDir> + <IntDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\Intermediate\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\</OutDir> + <IntDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\Intermediate\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|x64'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\</OutDir> + <IntDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\Intermediate\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\</OutDir> + <IntDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\Intermediate\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|Win32'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\</OutDir> + <IntDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\Intermediate\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\</OutDir> + <IntDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\Intermediate\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|x64'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\</OutDir> + <IntDir>$(SolutionDir)Build\$(Configuration)\$(Platform)\Intermediate\</IntDir> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>SODIUM_STATIC;SODIUM_EXPORT=;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <DisableSpecificWarnings>4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> + <AdditionalIncludeDirectories>$(SolutionDir);$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|Win32'"> + <ClCompile> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>SODIUM_EXPORT=__declspec(dllexport);DLL_EXPORT;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <DisableSpecificWarnings>4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + <AdditionalIncludeDirectories>$(SolutionDir);$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <ClCompile> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>SODIUM_STATIC;SODIUM_EXPORT=;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <DisableSpecificWarnings>4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DebugDLL|x64'"> + <ClCompile> + <PrecompiledHeader> + </PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>SODIUM_EXPORT=__declspec(dllexport);DLL_EXPORT;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <DisableSpecificWarnings>4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <PrecompiledHeader> + </PrecompiledHeader> + <Optimization>Full</Optimization> + <FunctionLevelLinking>true</FunctionLevelLinking> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>SODIUM_STATIC;SODIUM_EXPORT=;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <DisableSpecificWarnings>4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <RuntimeLibrary>MultiThreaded</RuntimeLibrary> + <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> + <AdditionalIncludeDirectories>$(SolutionDir);$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <PrecompiledHeader> + </PrecompiledHeader> + <Optimization>Full</Optimization> + <FunctionLevelLinking>true</FunctionLevelLinking> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>SODIUM_EXPORT=__declspec(dllexport);DLL_EXPORT;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <DisableSpecificWarnings>4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> + <AdditionalIncludeDirectories>$(SolutionDir);$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <PrecompiledHeader> + </PrecompiledHeader> + <Optimization>MaxSpeed</Optimization> + <FunctionLevelLinking>true</FunctionLevelLinking> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>SODIUM_STATIC;SODIUM_EXPORT=;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <DisableSpecificWarnings>4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <RuntimeLibrary>MultiThreaded</RuntimeLibrary> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseDLL|x64'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <PrecompiledHeader> + </PrecompiledHeader> + <Optimization>MaxSpeed</Optimization> + <FunctionLevelLinking>true</FunctionLevelLinking> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>SODIUM_EXPORT=__declspec(dllexport);DLL_EXPORT;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <DisableSpecificWarnings>4244;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <ClInclude Include="src\libsodium\include\sodium\core.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_auth.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_auth_hmacsha256.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_auth_hmacsha512256.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_box.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_box_curve25519xsalsa20poly1305.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_core_hsalsa20.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_core_salsa20.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_core_salsa2012.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_core_salsa208.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_generichash.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_generichash_blake2b.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_hash.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_hashblocks_sha256.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_hashblocks_sha512.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_hash_sha256.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_hash_sha512.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_int32.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_int64.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_onetimeauth.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_onetimeauth_poly1305.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_onetimeauth_poly1305_donna.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_scalarmult.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_scalarmult_curve25519.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_secretbox.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_secretbox_xsalsa20poly1305.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_shorthash.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_shorthash_siphash24.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_sign.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_sign_ed25519.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_sign_edwards25519sha512batch.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_aes128ctr.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_aes256estream.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_salsa20.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_salsa2012.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_salsa208.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_xsalsa20.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_uint16.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_uint32.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_uint64.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_uint8.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_verify_16.h" /> + <ClInclude Include="src\libsodium\include\sodium\crypto_verify_32.h" /> + <ClInclude Include="src\libsodium\include\sodium\export.h" /> + <ClInclude Include="src\libsodium\include\sodium\randombytes.h" /> + <ClInclude Include="src\libsodium\include\sodium\randombytes_salsa20_random.h" /> + <ClInclude Include="src\libsodium\include\sodium\randombytes_sysrandom.h" /> + <ClInclude Include="src\libsodium\include\sodium\utils.h" /> + <ClInclude Include="src\libsodium\include\sodium\version.h" /> + </ItemGroup> + <ItemGroup> + <None Include="src\libsodium\include\sodium\crypto_scalarmult_curve25519.h.in" /> + <None Include="src\libsodium\include\sodium\crypto_stream_salsa20.h.in" /> + </ItemGroup> + <ItemGroup> + <ClCompile Include="src\libsodium\crypto_auth\crypto_auth.c" /> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha256\auth_hmacsha256_api.c" /> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha256\ref\hmac_hmacsha256.c" /> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha256\ref\verify_hmacsha256.c" /> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha512256\auth_hmacsha512256_api.c" /> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha512256\ref\hmac_hmacsha512256.c" /> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha512256\ref\verify_hmacsha512256.c" /> + <ClCompile Include="src\libsodium\crypto_box\crypto_box.c" /> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\box_curve25519xsalsa20poly1305_api.c" /> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\ref\after_curve25519xsalsa20poly1305.c" /> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\ref\before_curve25519xsalsa20poly1305.c" /> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\ref\box_curve25519xsalsa20poly1305.c" /> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\ref\keypair_curve25519xsalsa20poly1305.c" /> + <ClCompile Include="src\libsodium\crypto_core\hsalsa20\core_hsalsa20_api.c" /> + <ClCompile Include="src\libsodium\crypto_core\hsalsa20\ref2\core_hsalsa20.c" /> + <ClCompile Include="src\libsodium\crypto_core\salsa2012\core_salsa2012_api.c" /> + <ClCompile Include="src\libsodium\crypto_core\salsa2012\ref\core_salsa2012.c" /> + <ClCompile Include="src\libsodium\crypto_core\salsa208\core_salsa208_api.c" /> + <ClCompile Include="src\libsodium\crypto_core\salsa208\ref\core_salsa208.c" /> + <ClCompile Include="src\libsodium\crypto_core\salsa20\core_salsa20_api.c" /> + <ClCompile Include="src\libsodium\crypto_core\salsa20\ref\core_salsa20.c" /> + <ClCompile Include="src\libsodium\crypto_generichash\blake2\generichash_blake2_api.c" /> + <ClCompile Include="src\libsodium\crypto_generichash\blake2\ref\blake2b-ref.c" /> + <ClCompile Include="src\libsodium\crypto_generichash\blake2\ref\generichash_blake2b.c" /> + <ClCompile Include="src\libsodium\crypto_generichash\crypto_generichash.c" /> + <ClCompile Include="src\libsodium\crypto_hashblocks\sha256\hashblocks_sha256_api.c" /> + <ClCompile Include="src\libsodium\crypto_hashblocks\sha256\ref\blocks_sha256.c" /> + <ClCompile Include="src\libsodium\crypto_hashblocks\sha512\hashblocks_sha512_api.c" /> + <ClCompile Include="src\libsodium\crypto_hashblocks\sha512\ref\blocks_sha512.c" /> + <ClCompile Include="src\libsodium\crypto_hash\crypto_hash.c" /> + <ClCompile Include="src\libsodium\crypto_hash\sha256\hash_sha256_api.c" /> + <ClCompile Include="src\libsodium\crypto_hash\sha256\ref\hash_sha256.c" /> + <ClCompile Include="src\libsodium\crypto_hash\sha512\hash_sha512_api.c" /> + <ClCompile Include="src\libsodium\crypto_hash\sha512\ref\hash_sha512.c" /> + <ClCompile Include="src\libsodium\crypto_onetimeauth\crypto_onetimeauth.c" /> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\donna\auth_poly1305_donna.c" /> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\donna\verify_poly1305_donna.c" /> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\onetimeauth_poly1305.c" /> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\onetimeauth_poly1305_api.c" /> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\onetimeauth_poly1305_try.c" /> + <ClCompile Include="src\libsodium\crypto_scalarmult\crypto_scalarmult.c" /> + <ClCompile Include="src\libsodium\crypto_scalarmult\curve25519\ref\base_curve25519_ref.c" /> + <ClCompile Include="src\libsodium\crypto_scalarmult\curve25519\ref\smult_curve25519_ref.c" /> + <ClCompile Include="src\libsodium\crypto_scalarmult\curve25519\scalarmult_curve25519_api.c" /> + <ClCompile Include="src\libsodium\crypto_secretbox\crypto_secretbox.c" /> + <ClCompile Include="src\libsodium\crypto_secretbox\xsalsa20poly1305\ref\box_xsalsa20poly1305.c" /> + <ClCompile Include="src\libsodium\crypto_secretbox\xsalsa20poly1305\secretbox_xsalsa20poly1305_api.c" /> + <ClCompile Include="src\libsodium\crypto_shorthash\crypto_shorthash.c" /> + <ClCompile Include="src\libsodium\crypto_shorthash\siphash24\ref\shorthash_siphash24.c" /> + <ClCompile Include="src\libsodium\crypto_shorthash\siphash24\shorthash_siphash24_api.c" /> + <ClCompile Include="src\libsodium\crypto_sign\crypto_sign.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_0.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_1.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_add.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_cmov.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_copy.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_frombytes.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_invert.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_isnegative.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_isnonzero.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_mul.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_neg.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_pow22523.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_sq.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_sq2.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_sub.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_tobytes.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_add.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_double_scalarmult.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_frombytes.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_madd.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_msub.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p1p1_to_p2.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p1p1_to_p3.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p2_0.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p2_dbl.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_0.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_dbl.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_tobytes.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_to_cached.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_to_p2.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_precomp_0.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_scalarmult_base.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_sub.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_tobytes.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\keypair.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\open.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\sc_muladd.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\sc_reduce.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\sign.c" /> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\sign_ed25519_api.c" /> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\ref\fe25519_edwards25519sha512batch.c" /> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\ref\ge25519_edwards25519sha512batch.c" /> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\ref\sc25519_edwards25519sha512batch.c" /> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\ref\sign_edwards25519sha512batch.c" /> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\sign_edwards25519sha512batch_api.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\afternm_aes128ctr.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\beforenm_aes128ctr.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\common_aes128ctr.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\consts_aes128ctr.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\int128_aes128ctr.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\stream_aes128ctr.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\xor_afternm_aes128ctr.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\stream_aes128ctr_api.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes256estream\hongjun\aes256-ctr.c" /> + <ClCompile Include="src\libsodium\crypto_stream\aes256estream\stream_aes256estream_api.c" /> + <ClCompile Include="src\libsodium\crypto_stream\crypto_stream.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa2012\ref\stream_salsa2012.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa2012\ref\xor_salsa2012.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa2012\stream_salsa2012_api.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa208\ref\stream_salsa208.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa208\ref\xor_salsa208.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa208\stream_salsa208_api.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa20\ref\stream_salsa20_ref.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa20\ref\xor_salsa20_ref.c" /> + <ClCompile Include="src\libsodium\crypto_stream\salsa20\stream_salsa20_api.c" /> + <ClCompile Include="src\libsodium\crypto_stream\xsalsa20\ref\stream_xsalsa20.c" /> + <ClCompile Include="src\libsodium\crypto_stream\xsalsa20\ref\xor_xsalsa20.c" /> + <ClCompile Include="src\libsodium\crypto_stream\xsalsa20\stream_xsalsa20_api.c" /> + <ClCompile Include="src\libsodium\crypto_verify\16\ref\verify_16.c" /> + <ClCompile Include="src\libsodium\crypto_verify\16\verify_16_api.c" /> + <ClCompile Include="src\libsodium\crypto_verify\32\ref\verify_32.c" /> + <ClCompile Include="src\libsodium\crypto_verify\32\verify_32_api.c" /> + <ClCompile Include="src\libsodium\randombytes\randombytes.c" /> + <ClCompile Include="src\libsodium\randombytes\salsa20\randombytes_salsa20_random.c" /> + <ClCompile Include="src\libsodium\randombytes\sysrandom\randombytes_sysrandom.c" /> + <ClCompile Include="src\libsodium\sodium\compat.c" /> + <ClCompile Include="src\libsodium\sodium\core.c" /> + <ClCompile Include="src\libsodium\sodium\utils.c" /> + <ClCompile Include="src\libsodium\sodium\version.c" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project> diff --git a/src/libsodium/libsodium.vcxproj.filters b/src/libsodium/libsodium.vcxproj.filters new file mode 100644 index 0000000000000000000000000000000000000000..bfbc8d79e24e9877b4981638d3bbc8d649689b0d --- /dev/null +++ b/src/libsodium/libsodium.vcxproj.filters @@ -0,0 +1,569 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Source Files"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + <Filter Include="Header Files"> + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> + <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> + </Filter> + <Filter Include="Resource Files"> + <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> + <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> + <ClInclude Include="src\libsodium\include\sodium\core.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_auth.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_auth_hmacsha256.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_auth_hmacsha512256.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_box.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_box_curve25519xsalsa20poly1305.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_core_hsalsa20.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_core_salsa20.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_core_salsa208.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_core_salsa2012.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_generichash.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_generichash_blake2b.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_hash.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_hash_sha256.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_hash_sha512.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_hashblocks_sha256.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_hashblocks_sha512.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_int32.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_int64.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_onetimeauth.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_onetimeauth_poly1305.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_onetimeauth_poly1305_donna.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_scalarmult.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_scalarmult_curve25519.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_secretbox.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_secretbox_xsalsa20poly1305.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_shorthash.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_shorthash_siphash24.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_sign.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_sign_ed25519.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_sign_edwards25519sha512batch.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_aes128ctr.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_aes256estream.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_salsa20.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_salsa208.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_salsa2012.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_stream_xsalsa20.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_uint8.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_uint16.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_uint32.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_uint64.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_verify_16.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\crypto_verify_32.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\export.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\randombytes.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\randombytes_salsa20_random.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\randombytes_sysrandom.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\utils.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="src\libsodium\include\sodium\version.h"> + <Filter>Header Files</Filter> + </ClInclude> + </ItemGroup> + <ItemGroup> + <None Include="src\libsodium\include\sodium\crypto_scalarmult_curve25519.h.in"> + <Filter>Header Files</Filter> + </None> + <None Include="src\libsodium\include\sodium\crypto_stream_salsa20.h.in"> + <Filter>Header Files</Filter> + </None> + </ItemGroup> + <ItemGroup> + <ClCompile Include="src\libsodium\crypto_core\hsalsa20\ref2\core_hsalsa20.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_core\hsalsa20\core_hsalsa20_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_core\salsa20\ref\core_salsa20.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_core\salsa208\ref\core_salsa208.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_core\salsa2012\ref\core_salsa2012.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha256\auth_hmacsha256_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha512256\auth_hmacsha512256_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_auth\crypto_auth.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha256\ref\hmac_hmacsha256.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha512256\ref\hmac_hmacsha512256.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha256\ref\verify_hmacsha256.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_auth\hmacsha512256\ref\verify_hmacsha512256.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\ref\after_curve25519xsalsa20poly1305.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\ref\before_curve25519xsalsa20poly1305.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\ref\box_curve25519xsalsa20poly1305.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\box_curve25519xsalsa20poly1305_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_box\crypto_box.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_box\curve25519xsalsa20poly1305\ref\keypair_curve25519xsalsa20poly1305.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_core\salsa20\core_salsa20_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_core\salsa208\core_salsa208_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_core\salsa2012\core_salsa2012_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_generichash\blake2\ref\blake2b-ref.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_generichash\crypto_generichash.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_generichash\blake2\generichash_blake2_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_generichash\blake2\ref\generichash_blake2b.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hash\crypto_hash.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hash\sha256\ref\hash_sha256.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hash\sha256\hash_sha256_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hash\sha512\ref\hash_sha512.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hash\sha512\hash_sha512_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hashblocks\sha256\ref\blocks_sha256.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hashblocks\sha512\ref\blocks_sha512.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hashblocks\sha256\hashblocks_sha256_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_hashblocks\sha512\hashblocks_sha512_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\donna\auth_poly1305_donna.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_onetimeauth\crypto_onetimeauth.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\onetimeauth_poly1305.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\onetimeauth_poly1305_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\onetimeauth_poly1305_try.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_onetimeauth\poly1305\donna\verify_poly1305_donna.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_scalarmult\crypto_scalarmult.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_scalarmult\curve25519\scalarmult_curve25519_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_scalarmult\curve25519\ref\base_curve25519_ref.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_scalarmult\curve25519\ref\smult_curve25519_ref.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_secretbox\xsalsa20poly1305\ref\box_xsalsa20poly1305.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_secretbox\crypto_secretbox.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_secretbox\xsalsa20poly1305\secretbox_xsalsa20poly1305_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_shorthash\crypto_shorthash.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_shorthash\siphash24\ref\shorthash_siphash24.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_shorthash\siphash24\shorthash_siphash24_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\crypto_sign.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_0.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_1.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_add.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_cmov.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_copy.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_frombytes.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_invert.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_isnegative.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_isnonzero.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_mul.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_neg.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_pow22523.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_sq.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_sq2.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_sub.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\fe_tobytes.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\ref\fe25519_edwards25519sha512batch.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_add.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_double_scalarmult.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_frombytes.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_madd.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_msub.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p1p1_to_p2.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p1p1_to_p3.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p2_0.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p2_dbl.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_0.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_dbl.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_to_cached.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_to_p2.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_p3_tobytes.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_precomp_0.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_scalarmult_base.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_sub.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\ge_tobytes.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\ref\ge25519_edwards25519sha512batch.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\keypair.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\open.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\sc_muladd.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\sc_reduce.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\ref\sc25519_edwards25519sha512batch.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\ref10\sign.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\ed25519\sign_ed25519_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\ref\sign_edwards25519sha512batch.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_sign\edwards25519sha512batch\sign_edwards25519sha512batch_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes256estream\hongjun\aes256-ctr.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\afternm_aes128ctr.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\beforenm_aes128ctr.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\common_aes128ctr.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\consts_aes128ctr.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\crypto_stream.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\int128_aes128ctr.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\stream_aes128ctr.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\stream_aes128ctr_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes256estream\stream_aes256estream_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa20\stream_salsa20_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa20\ref\stream_salsa20_ref.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa208\ref\stream_salsa208.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa208\stream_salsa208_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa2012\ref\stream_salsa2012.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa2012\stream_salsa2012_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\xsalsa20\ref\stream_xsalsa20.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\xsalsa20\stream_xsalsa20_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\aes128ctr\portable\xor_afternm_aes128ctr.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa20\ref\xor_salsa20_ref.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa208\ref\xor_salsa208.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\salsa2012\ref\xor_salsa2012.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_stream\xsalsa20\ref\xor_xsalsa20.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_verify\16\ref\verify_16.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_verify\16\verify_16_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_verify\32\ref\verify_32.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\crypto_verify\32\verify_32_api.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\sodium\compat.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\sodium\core.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\sodium\utils.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\sodium\version.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\randombytes\randombytes.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\randombytes\salsa20\randombytes_salsa20_random.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="src\libsodium\randombytes\sysrandom\randombytes_sysrandom.c"> + <Filter>Source Files</Filter> + </ClCompile> + </ItemGroup> +</Project> \ No newline at end of file diff --git a/src/libsodium/msvc-scripts/Makefile.am b/src/libsodium/msvc-scripts/Makefile.am new file mode 100644 index 0000000000000000000000000000000000000000..16481929aa8d44a22efcd3f6476da80afce2d281 --- /dev/null +++ b/src/libsodium/msvc-scripts/Makefile.am @@ -0,0 +1,4 @@ +EXTRA_DIST = \ + process.bat \ + rep.vbs \ + sodium.props diff --git a/src/libsodium/msvc-scripts/Makefile.in b/src/libsodium/msvc-scripts/Makefile.in new file mode 100644 index 0000000000000000000000000000000000000000..b3139d7f16c13cf6adc26e153ecc6fe30b24bd65 --- /dev/null +++ b/src/libsodium/msvc-scripts/Makefile.in @@ -0,0 +1,448 @@ +# Makefile.in generated by automake 1.14 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2013 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = msvc-scripts +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ld-output-def.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +mkinstalldirs = $(install_sh) -d +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AS = @AS@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCAS = @CCAS@ +CCASDEPMODE = @CCASDEPMODE@ +CCASFLAGS = @CCASFLAGS@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CWFLAGS = @CWFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DLL_VERSION = @DLL_VERSION@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GREP = @GREP@ +HAVE_AMD64_ASM_V = @HAVE_AMD64_ASM_V@ +HAVE_CPUID_V = @HAVE_CPUID_V@ +HAVE_PKG_CONFIG = @HAVE_PKG_CONFIG@ +HAVE_TI_MODE_V = @HAVE_TI_MODE_V@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +ISODATE = @ISODATE@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIBTOOL_DEPS = @LIBTOOL_DEPS@ +LIBTOOL_EXTRA_FLAGS = @LIBTOOL_EXTRA_FLAGS@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +RANLIB = @RANLIB@ +SAFECODE_HOME = @SAFECODE_HOME@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +SODIUM_LIBRARY_VERSION = @SODIUM_LIBRARY_VERSION@ +SODIUM_LIBRARY_VERSION_MAJOR = @SODIUM_LIBRARY_VERSION_MAJOR@ +SODIUM_LIBRARY_VERSION_MINOR = @SODIUM_LIBRARY_VERSION_MINOR@ +STRIP = @STRIP@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +EXTRA_DIST = \ + process.bat \ + rep.vbs \ + sodium.props + +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign msvc-scripts/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign msvc-scripts/Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags-am uninstall uninstall-am + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/src/libsodium/msvc-scripts/process.bat b/src/libsodium/msvc-scripts/process.bat new file mode 100755 index 0000000000000000000000000000000000000000..6db0c3df8544b3b343d0fc4672ded71124cdfa46 --- /dev/null +++ b/src/libsodium/msvc-scripts/process.bat @@ -0,0 +1,8 @@ +cscript msvc-scripts/rep.vbs //Nologo s/@HAVE_TI_MODE_V@/0/ < src\libsodium\include\sodium\crypto_scalarmult_curve25519.h.in > src\libsodium\include\sodium\crypto_scalarmult_curve25519.h + +cscript msvc-scripts/rep.vbs //Nologo s/@HAVE_AMD64_ASM_V@/0/ < src\libsodium\include\sodium\crypto_stream_salsa20.h.in > src\libsodium\include\sodium\crypto_stream_salsa20.h + +cscript msvc-scripts/rep.vbs //Nologo s/@VERSION@/0.4.5/ < src\libsodium\include\sodium\version.h.in > tmp +cscript msvc-scripts/rep.vbs //Nologo s/@SODIUM_LIBRARY_VERSION_MAJOR@/4/ < tmp > tmp2 +cscript msvc-scripts/rep.vbs //Nologo s/@SODIUM_LIBRARY_VERSION_MINOR@/4/ < tmp2 > src\libsodium\include\sodium\version.h +del tmp tmp2 diff --git a/src/libsodium/msvc-scripts/rep.vbs b/src/libsodium/msvc-scripts/rep.vbs new file mode 100644 index 0000000000000000000000000000000000000000..3611f6ca65eb92fd50c6d751e66ea4b016a93023 --- /dev/null +++ b/src/libsodium/msvc-scripts/rep.vbs @@ -0,0 +1,12 @@ +Dim pat, patparts, rxp, inp +pat = WScript.Arguments(0) +patparts = Split(pat, "/") +Set rxp = new RegExp +rxp.Global = True +rxp.Multiline = False +rxp.Pattern = patparts(1) +Do While Not WScript.StdIn.AtEndOfStream + inp = WScript.StdIn.ReadLine() + WScript.Echo rxp.Replace(inp, patparts(2)) +Loop + diff --git a/src/libsodium/msvc-scripts/sodium.props b/src/libsodium/msvc-scripts/sodium.props new file mode 100644 index 0000000000000000000000000000000000000000..d68425a11dad016ea6e3358645f93e87c20caf8b --- /dev/null +++ b/src/libsodium/msvc-scripts/sodium.props @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ImportGroup Label="PropertySheets" /> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup /> + <ItemDefinitionGroup> + <ClCompile> + <AdditionalIncludeDirectories>$(SolutionDir);$(SolutionDir)src\libsodium\include\sodium;$(SolutionDir)src\libsodium\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <PreprocessorDefinitions>inline=__inline;NATIVE_LITTLE_ENDIAN;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <PreBuildEvent> + <Command>$(SolutionDir)/msvc-scripts/process.bat</Command> + </PreBuildEvent> + <PreBuildEvent> + <Message>Process .in files</Message> + </PreBuildEvent> + <PostBuildEvent> + <Command>$(SolutionDir)/test/default/wintest.bat $(Configuration) $(Platform)</Command> + </PostBuildEvent> + <PostBuildEvent> + <Message>Run the test suite</Message> + </PostBuildEvent> + </ItemDefinitionGroup> + <ItemGroup /> +</Project> diff --git a/src/libsodium/src/libsodium/Makefile.am b/src/libsodium/src/libsodium/Makefile.am index 124091d66948df210aad14e2ada9ba925d61b8bb..b108f6e64ad9c4e175c4ba65cb361a1b4bcd8071 100644 --- a/src/libsodium/src/libsodium/Makefile.am +++ b/src/libsodium/src/libsodium/Makefile.am @@ -62,6 +62,7 @@ libsodium_la_SOURCES = \ crypto_onetimeauth/poly1305/donna/auth_poly1305_donna.c \ crypto_onetimeauth/poly1305/donna/verify_poly1305_donna.c \ crypto_scalarmult/crypto_scalarmult.c \ + crypto_scalarmult/curve25519/scalarmult_curve25519_api.c \ crypto_secretbox/crypto_secretbox.c \ crypto_secretbox/xsalsa20poly1305/secretbox_xsalsa20poly1305_api.c \ crypto_secretbox/xsalsa20poly1305/ref/api.h \ @@ -151,11 +152,14 @@ libsodium_la_SOURCES = \ crypto_stream/aes128ctr/portable/types.h \ crypto_stream/aes128ctr/portable/xor_afternm_aes128ctr.c \ crypto_stream/aes256estream/hongjun/aes-table.h \ + crypto_stream/aes256estream/hongjun/aes-table-be.h \ + crypto_stream/aes256estream/hongjun/aes-table-le.h \ crypto_stream/aes256estream/hongjun/aes256-ctr.c \ crypto_stream/aes256estream/hongjun/aes256.h \ crypto_stream/aes256estream/stream_aes256estream_api.c \ crypto_stream/aes256estream/hongjun/api.h \ crypto_stream/aes256estream/hongjun/ecrypt-sync.h \ + crypto_stream/salsa20/stream_salsa20_api.c \ crypto_stream/salsa2012/stream_salsa2012_api.c \ crypto_stream/salsa2012/ref/api.h \ crypto_stream/salsa2012/ref/stream_salsa2012.c \ @@ -220,7 +224,8 @@ if HAVE_LD_OUTPUT_DEF libsodium_la_LDFLAGS += -Wl,--output-def,libsodium-$(DLL_VERSION).def defexecdir = $(bindir) defexec_DATA = libsodium-$(DLL_VERSION).def -DISTCLEANFILES = $(defexec_DATA) +CLEANFILES = $(defexec_DATA) +libsodium-$(DLL_VERSION).def: libsodium.la endif SUBDIRS = \ diff --git a/src/libsodium/src/libsodium/Makefile.in b/src/libsodium/src/libsodium/Makefile.in index 63abc6748cd559750be915d69a8a6dc40dd459f3..94a55a19f80fe0c2de7062df2421bc5c37d00b37 100644 --- a/src/libsodium/src/libsodium/Makefile.in +++ b/src/libsodium/src/libsodium/Makefile.in @@ -203,6 +203,7 @@ am__libsodium_la_SOURCES_DIST = crypto_auth/crypto_auth.c \ crypto_onetimeauth/poly1305/donna/auth_poly1305_donna.c \ crypto_onetimeauth/poly1305/donna/verify_poly1305_donna.c \ crypto_scalarmult/crypto_scalarmult.c \ + crypto_scalarmult/curve25519/scalarmult_curve25519_api.c \ crypto_secretbox/crypto_secretbox.c \ crypto_secretbox/xsalsa20poly1305/secretbox_xsalsa20poly1305_api.c \ crypto_secretbox/xsalsa20poly1305/ref/api.h \ @@ -289,11 +290,14 @@ am__libsodium_la_SOURCES_DIST = crypto_auth/crypto_auth.c \ crypto_stream/aes128ctr/portable/types.h \ crypto_stream/aes128ctr/portable/xor_afternm_aes128ctr.c \ crypto_stream/aes256estream/hongjun/aes-table.h \ + crypto_stream/aes256estream/hongjun/aes-table-be.h \ + crypto_stream/aes256estream/hongjun/aes-table-le.h \ crypto_stream/aes256estream/hongjun/aes256-ctr.c \ crypto_stream/aes256estream/hongjun/aes256.h \ crypto_stream/aes256estream/stream_aes256estream_api.c \ crypto_stream/aes256estream/hongjun/api.h \ crypto_stream/aes256estream/hongjun/ecrypt-sync.h \ + crypto_stream/salsa20/stream_salsa20_api.c \ crypto_stream/salsa2012/stream_salsa2012_api.c \ crypto_stream/salsa2012/ref/api.h \ crypto_stream/salsa2012/ref/stream_salsa2012.c \ @@ -375,6 +379,7 @@ am_libsodium_la_OBJECTS = crypto_auth/libsodium_la-crypto_auth.lo \ crypto_onetimeauth/poly1305/donna/libsodium_la-auth_poly1305_donna.lo \ crypto_onetimeauth/poly1305/donna/libsodium_la-verify_poly1305_donna.lo \ crypto_scalarmult/libsodium_la-crypto_scalarmult.lo \ + crypto_scalarmult/curve25519/libsodium_la-scalarmult_curve25519_api.lo \ crypto_secretbox/libsodium_la-crypto_secretbox.lo \ crypto_secretbox/xsalsa20poly1305/libsodium_la-secretbox_xsalsa20poly1305_api.lo \ crypto_secretbox/xsalsa20poly1305/ref/libsodium_la-box_xsalsa20poly1305.lo \ @@ -438,6 +443,7 @@ am_libsodium_la_OBJECTS = crypto_auth/libsodium_la-crypto_auth.lo \ crypto_stream/aes128ctr/portable/libsodium_la-xor_afternm_aes128ctr.lo \ crypto_stream/aes256estream/hongjun/libsodium_la-aes256-ctr.lo \ crypto_stream/aes256estream/libsodium_la-stream_aes256estream_api.lo \ + crypto_stream/salsa20/libsodium_la-stream_salsa20_api.lo \ crypto_stream/salsa2012/libsodium_la-stream_salsa2012_api.lo \ crypto_stream/salsa2012/ref/libsodium_la-stream_salsa2012.lo \ crypto_stream/salsa2012/ref/libsodium_la-xor_salsa2012.lo \ @@ -777,6 +783,7 @@ libsodium_la_SOURCES = crypto_auth/crypto_auth.c \ crypto_onetimeauth/poly1305/donna/auth_poly1305_donna.c \ crypto_onetimeauth/poly1305/donna/verify_poly1305_donna.c \ crypto_scalarmult/crypto_scalarmult.c \ + crypto_scalarmult/curve25519/scalarmult_curve25519_api.c \ crypto_secretbox/crypto_secretbox.c \ crypto_secretbox/xsalsa20poly1305/secretbox_xsalsa20poly1305_api.c \ crypto_secretbox/xsalsa20poly1305/ref/api.h \ @@ -863,11 +870,14 @@ libsodium_la_SOURCES = crypto_auth/crypto_auth.c \ crypto_stream/aes128ctr/portable/types.h \ crypto_stream/aes128ctr/portable/xor_afternm_aes128ctr.c \ crypto_stream/aes256estream/hongjun/aes-table.h \ + crypto_stream/aes256estream/hongjun/aes-table-be.h \ + crypto_stream/aes256estream/hongjun/aes-table-le.h \ crypto_stream/aes256estream/hongjun/aes256-ctr.c \ crypto_stream/aes256estream/hongjun/aes256.h \ crypto_stream/aes256estream/stream_aes256estream_api.c \ crypto_stream/aes256estream/hongjun/api.h \ crypto_stream/aes256estream/hongjun/ecrypt-sync.h \ + crypto_stream/salsa20/stream_salsa20_api.c \ crypto_stream/salsa2012/stream_salsa2012_api.c \ crypto_stream/salsa2012/ref/api.h \ crypto_stream/salsa2012/ref/stream_salsa2012.c \ @@ -897,7 +907,7 @@ libsodium_la_CPPFLAGS = \ @HAVE_LD_OUTPUT_DEF_TRUE@defexecdir = $(bindir) @HAVE_LD_OUTPUT_DEF_TRUE@defexec_DATA = libsodium-$(DLL_VERSION).def -@HAVE_LD_OUTPUT_DEF_TRUE@DISTCLEANFILES = $(defexec_DATA) +@HAVE_LD_OUTPUT_DEF_TRUE@CLEANFILES = $(defexec_DATA) SUBDIRS = \ include @@ -1294,6 +1304,15 @@ crypto_scalarmult/$(DEPDIR)/$(am__dirstamp): crypto_scalarmult/libsodium_la-crypto_scalarmult.lo: \ crypto_scalarmult/$(am__dirstamp) \ crypto_scalarmult/$(DEPDIR)/$(am__dirstamp) +crypto_scalarmult/curve25519/$(am__dirstamp): + @$(MKDIR_P) crypto_scalarmult/curve25519 + @: > crypto_scalarmult/curve25519/$(am__dirstamp) +crypto_scalarmult/curve25519/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) crypto_scalarmult/curve25519/$(DEPDIR) + @: > crypto_scalarmult/curve25519/$(DEPDIR)/$(am__dirstamp) +crypto_scalarmult/curve25519/libsodium_la-scalarmult_curve25519_api.lo: \ + crypto_scalarmult/curve25519/$(am__dirstamp) \ + crypto_scalarmult/curve25519/$(DEPDIR)/$(am__dirstamp) crypto_secretbox/$(am__dirstamp): @$(MKDIR_P) crypto_secretbox @: > crypto_secretbox/$(am__dirstamp) @@ -1578,6 +1597,15 @@ crypto_stream/aes256estream/$(DEPDIR)/$(am__dirstamp): crypto_stream/aes256estream/libsodium_la-stream_aes256estream_api.lo: \ crypto_stream/aes256estream/$(am__dirstamp) \ crypto_stream/aes256estream/$(DEPDIR)/$(am__dirstamp) +crypto_stream/salsa20/$(am__dirstamp): + @$(MKDIR_P) crypto_stream/salsa20 + @: > crypto_stream/salsa20/$(am__dirstamp) +crypto_stream/salsa20/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) crypto_stream/salsa20/$(DEPDIR) + @: > crypto_stream/salsa20/$(DEPDIR)/$(am__dirstamp) +crypto_stream/salsa20/libsodium_la-stream_salsa20_api.lo: \ + crypto_stream/salsa20/$(am__dirstamp) \ + crypto_stream/salsa20/$(DEPDIR)/$(am__dirstamp) crypto_stream/salsa2012/$(am__dirstamp): @$(MKDIR_P) crypto_stream/salsa2012 @: > crypto_stream/salsa2012/$(am__dirstamp) @@ -1834,6 +1862,8 @@ mostlyclean-compile: -rm -f crypto_onetimeauth/poly1305/donna/*.lo -rm -f crypto_scalarmult/*.$(OBJEXT) -rm -f crypto_scalarmult/*.lo + -rm -f crypto_scalarmult/curve25519/*.$(OBJEXT) + -rm -f crypto_scalarmult/curve25519/*.lo -rm -f crypto_scalarmult/curve25519/donna_c64/*.$(OBJEXT) -rm -f crypto_scalarmult/curve25519/donna_c64/*.lo -rm -f crypto_scalarmult/curve25519/ref/*.$(OBJEXT) @@ -1870,6 +1900,8 @@ mostlyclean-compile: -rm -f crypto_stream/aes256estream/*.lo -rm -f crypto_stream/aes256estream/hongjun/*.$(OBJEXT) -rm -f crypto_stream/aes256estream/hongjun/*.lo + -rm -f crypto_stream/salsa20/*.$(OBJEXT) + -rm -f crypto_stream/salsa20/*.lo -rm -f crypto_stream/salsa20/amd64_xmm6/*.$(OBJEXT) -rm -f crypto_stream/salsa20/amd64_xmm6/*.lo -rm -f crypto_stream/salsa20/ref/*.$(OBJEXT) @@ -1949,6 +1981,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@crypto_onetimeauth/poly1305/donna/$(DEPDIR)/libsodium_la-auth_poly1305_donna.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_onetimeauth/poly1305/donna/$(DEPDIR)/libsodium_la-verify_poly1305_donna.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_scalarmult/$(DEPDIR)/libsodium_la-crypto_scalarmult.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@crypto_scalarmult/curve25519/$(DEPDIR)/libsodium_la-scalarmult_curve25519_api.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_scalarmult/curve25519/donna_c64/$(DEPDIR)/libsodium_la-base_curve25519_donna_c64.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_scalarmult/curve25519/donna_c64/$(DEPDIR)/libsodium_la-smult_curve25519_donna_c64.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_scalarmult/curve25519/ref/$(DEPDIR)/libsodium_la-base_curve25519_ref.Plo@am__quote@ @@ -2016,6 +2049,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@crypto_stream/aes128ctr/portable/$(DEPDIR)/libsodium_la-xor_afternm_aes128ctr.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_stream/aes256estream/$(DEPDIR)/libsodium_la-stream_aes256estream_api.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_stream/aes256estream/hongjun/$(DEPDIR)/libsodium_la-aes256-ctr.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@crypto_stream/salsa20/$(DEPDIR)/libsodium_la-stream_salsa20_api.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_stream/salsa20/amd64_xmm6/$(DEPDIR)/libsodium_la-stream_salsa20_amd64_xmm6.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_stream/salsa20/ref/$(DEPDIR)/libsodium_la-stream_salsa20_ref.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@crypto_stream/salsa20/ref/$(DEPDIR)/libsodium_la-xor_salsa20_ref.Plo@am__quote@ @@ -2396,6 +2430,13 @@ crypto_scalarmult/libsodium_la-crypto_scalarmult.lo: crypto_scalarmult/crypto_sc @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsodium_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o crypto_scalarmult/libsodium_la-crypto_scalarmult.lo `test -f 'crypto_scalarmult/crypto_scalarmult.c' || echo '$(srcdir)/'`crypto_scalarmult/crypto_scalarmult.c +crypto_scalarmult/curve25519/libsodium_la-scalarmult_curve25519_api.lo: crypto_scalarmult/curve25519/scalarmult_curve25519_api.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsodium_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT crypto_scalarmult/curve25519/libsodium_la-scalarmult_curve25519_api.lo -MD -MP -MF crypto_scalarmult/curve25519/$(DEPDIR)/libsodium_la-scalarmult_curve25519_api.Tpo -c -o crypto_scalarmult/curve25519/libsodium_la-scalarmult_curve25519_api.lo `test -f 'crypto_scalarmult/curve25519/scalarmult_curve25519_api.c' || echo '$(srcdir)/'`crypto_scalarmult/curve25519/scalarmult_curve25519_api.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) crypto_scalarmult/curve25519/$(DEPDIR)/libsodium_la-scalarmult_curve25519_api.Tpo crypto_scalarmult/curve25519/$(DEPDIR)/libsodium_la-scalarmult_curve25519_api.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='crypto_scalarmult/curve25519/scalarmult_curve25519_api.c' object='crypto_scalarmult/curve25519/libsodium_la-scalarmult_curve25519_api.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsodium_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o crypto_scalarmult/curve25519/libsodium_la-scalarmult_curve25519_api.lo `test -f 'crypto_scalarmult/curve25519/scalarmult_curve25519_api.c' || echo '$(srcdir)/'`crypto_scalarmult/curve25519/scalarmult_curve25519_api.c + crypto_secretbox/libsodium_la-crypto_secretbox.lo: crypto_secretbox/crypto_secretbox.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsodium_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT crypto_secretbox/libsodium_la-crypto_secretbox.lo -MD -MP -MF crypto_secretbox/$(DEPDIR)/libsodium_la-crypto_secretbox.Tpo -c -o crypto_secretbox/libsodium_la-crypto_secretbox.lo `test -f 'crypto_secretbox/crypto_secretbox.c' || echo '$(srcdir)/'`crypto_secretbox/crypto_secretbox.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) crypto_secretbox/$(DEPDIR)/libsodium_la-crypto_secretbox.Tpo crypto_secretbox/$(DEPDIR)/libsodium_la-crypto_secretbox.Plo @@ -2837,6 +2878,13 @@ crypto_stream/aes256estream/libsodium_la-stream_aes256estream_api.lo: crypto_str @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsodium_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o crypto_stream/aes256estream/libsodium_la-stream_aes256estream_api.lo `test -f 'crypto_stream/aes256estream/stream_aes256estream_api.c' || echo '$(srcdir)/'`crypto_stream/aes256estream/stream_aes256estream_api.c +crypto_stream/salsa20/libsodium_la-stream_salsa20_api.lo: crypto_stream/salsa20/stream_salsa20_api.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsodium_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT crypto_stream/salsa20/libsodium_la-stream_salsa20_api.lo -MD -MP -MF crypto_stream/salsa20/$(DEPDIR)/libsodium_la-stream_salsa20_api.Tpo -c -o crypto_stream/salsa20/libsodium_la-stream_salsa20_api.lo `test -f 'crypto_stream/salsa20/stream_salsa20_api.c' || echo '$(srcdir)/'`crypto_stream/salsa20/stream_salsa20_api.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) crypto_stream/salsa20/$(DEPDIR)/libsodium_la-stream_salsa20_api.Tpo crypto_stream/salsa20/$(DEPDIR)/libsodium_la-stream_salsa20_api.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='crypto_stream/salsa20/stream_salsa20_api.c' object='crypto_stream/salsa20/libsodium_la-stream_salsa20_api.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsodium_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o crypto_stream/salsa20/libsodium_la-stream_salsa20_api.lo `test -f 'crypto_stream/salsa20/stream_salsa20_api.c' || echo '$(srcdir)/'`crypto_stream/salsa20/stream_salsa20_api.c + crypto_stream/salsa2012/libsodium_la-stream_salsa2012_api.lo: crypto_stream/salsa2012/stream_salsa2012_api.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libsodium_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT crypto_stream/salsa2012/libsodium_la-stream_salsa2012_api.lo -MD -MP -MF crypto_stream/salsa2012/$(DEPDIR)/libsodium_la-stream_salsa2012_api.Tpo -c -o crypto_stream/salsa2012/libsodium_la-stream_salsa2012_api.lo `test -f 'crypto_stream/salsa2012/stream_salsa2012_api.c' || echo '$(srcdir)/'`crypto_stream/salsa2012/stream_salsa2012_api.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) crypto_stream/salsa2012/$(DEPDIR)/libsodium_la-stream_salsa2012_api.Tpo crypto_stream/salsa2012/$(DEPDIR)/libsodium_la-stream_salsa2012_api.Plo @@ -3057,6 +3105,7 @@ clean-libtool: -rm -rf crypto_onetimeauth/poly1305/53/.libs crypto_onetimeauth/poly1305/53/_libs -rm -rf crypto_onetimeauth/poly1305/donna/.libs crypto_onetimeauth/poly1305/donna/_libs -rm -rf crypto_scalarmult/.libs crypto_scalarmult/_libs + -rm -rf crypto_scalarmult/curve25519/.libs crypto_scalarmult/curve25519/_libs -rm -rf crypto_scalarmult/curve25519/donna_c64/.libs crypto_scalarmult/curve25519/donna_c64/_libs -rm -rf crypto_scalarmult/curve25519/ref/.libs crypto_scalarmult/curve25519/ref/_libs -rm -rf crypto_secretbox/.libs crypto_secretbox/_libs @@ -3075,6 +3124,7 @@ clean-libtool: -rm -rf crypto_stream/aes128ctr/portable/.libs crypto_stream/aes128ctr/portable/_libs -rm -rf crypto_stream/aes256estream/.libs crypto_stream/aes256estream/_libs -rm -rf crypto_stream/aes256estream/hongjun/.libs crypto_stream/aes256estream/hongjun/_libs + -rm -rf crypto_stream/salsa20/.libs crypto_stream/salsa20/_libs -rm -rf crypto_stream/salsa20/amd64_xmm6/.libs crypto_stream/salsa20/amd64_xmm6/_libs -rm -rf crypto_stream/salsa20/ref/.libs crypto_stream/salsa20/ref/_libs -rm -rf crypto_stream/salsa2012/.libs crypto_stream/salsa2012/_libs @@ -3297,6 +3347,7 @@ install-strip: mostlyclean-generic: clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) @@ -3367,6 +3418,8 @@ distclean-generic: -rm -f crypto_onetimeauth/poly1305/donna/$(am__dirstamp) -rm -f crypto_scalarmult/$(DEPDIR)/$(am__dirstamp) -rm -f crypto_scalarmult/$(am__dirstamp) + -rm -f crypto_scalarmult/curve25519/$(DEPDIR)/$(am__dirstamp) + -rm -f crypto_scalarmult/curve25519/$(am__dirstamp) -rm -f crypto_scalarmult/curve25519/donna_c64/$(DEPDIR)/$(am__dirstamp) -rm -f crypto_scalarmult/curve25519/donna_c64/$(am__dirstamp) -rm -f crypto_scalarmult/curve25519/ref/$(DEPDIR)/$(am__dirstamp) @@ -3403,6 +3456,8 @@ distclean-generic: -rm -f crypto_stream/aes256estream/$(am__dirstamp) -rm -f crypto_stream/aes256estream/hongjun/$(DEPDIR)/$(am__dirstamp) -rm -f crypto_stream/aes256estream/hongjun/$(am__dirstamp) + -rm -f crypto_stream/salsa20/$(DEPDIR)/$(am__dirstamp) + -rm -f crypto_stream/salsa20/$(am__dirstamp) -rm -f crypto_stream/salsa20/amd64_xmm6/$(DEPDIR)/$(am__dirstamp) -rm -f crypto_stream/salsa20/amd64_xmm6/$(am__dirstamp) -rm -f crypto_stream/salsa20/ref/$(DEPDIR)/$(am__dirstamp) @@ -3435,7 +3490,6 @@ distclean-generic: -rm -f randombytes/sysrandom/$(am__dirstamp) -rm -f sodium/$(DEPDIR)/$(am__dirstamp) -rm -f sodium/$(am__dirstamp) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -3446,7 +3500,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ mostlyclean-am distclean: distclean-recursive - -rm -rf crypto_auth/$(DEPDIR) crypto_auth/hmacsha256/$(DEPDIR) crypto_auth/hmacsha256/ref/$(DEPDIR) crypto_auth/hmacsha512256/$(DEPDIR) crypto_auth/hmacsha512256/ref/$(DEPDIR) crypto_box/$(DEPDIR) crypto_box/curve25519xsalsa20poly1305/$(DEPDIR) crypto_box/curve25519xsalsa20poly1305/ref/$(DEPDIR) crypto_core/hsalsa20/$(DEPDIR) crypto_core/hsalsa20/ref2/$(DEPDIR) crypto_core/salsa20/$(DEPDIR) crypto_core/salsa20/ref/$(DEPDIR) crypto_core/salsa2012/$(DEPDIR) crypto_core/salsa2012/ref/$(DEPDIR) crypto_core/salsa208/$(DEPDIR) crypto_core/salsa208/ref/$(DEPDIR) crypto_generichash/$(DEPDIR) crypto_generichash/blake2/$(DEPDIR) crypto_generichash/blake2/ref/$(DEPDIR) crypto_hash/$(DEPDIR) crypto_hash/sha256/$(DEPDIR) crypto_hash/sha256/ref/$(DEPDIR) crypto_hash/sha512/$(DEPDIR) crypto_hash/sha512/ref/$(DEPDIR) crypto_hashblocks/sha256/$(DEPDIR) crypto_hashblocks/sha256/ref/$(DEPDIR) crypto_hashblocks/sha512/$(DEPDIR) crypto_hashblocks/sha512/ref/$(DEPDIR) crypto_onetimeauth/$(DEPDIR) crypto_onetimeauth/poly1305/$(DEPDIR) crypto_onetimeauth/poly1305/53/$(DEPDIR) crypto_onetimeauth/poly1305/donna/$(DEPDIR) crypto_scalarmult/$(DEPDIR) crypto_scalarmult/curve25519/donna_c64/$(DEPDIR) crypto_scalarmult/curve25519/ref/$(DEPDIR) crypto_secretbox/$(DEPDIR) crypto_secretbox/xsalsa20poly1305/$(DEPDIR) crypto_secretbox/xsalsa20poly1305/ref/$(DEPDIR) crypto_shorthash/$(DEPDIR) crypto_shorthash/siphash24/$(DEPDIR) crypto_shorthash/siphash24/ref/$(DEPDIR) crypto_sign/$(DEPDIR) crypto_sign/ed25519/$(DEPDIR) crypto_sign/ed25519/ref10/$(DEPDIR) crypto_sign/edwards25519sha512batch/$(DEPDIR) crypto_sign/edwards25519sha512batch/ref/$(DEPDIR) crypto_stream/$(DEPDIR) crypto_stream/aes128ctr/$(DEPDIR) crypto_stream/aes128ctr/portable/$(DEPDIR) crypto_stream/aes256estream/$(DEPDIR) crypto_stream/aes256estream/hongjun/$(DEPDIR) crypto_stream/salsa20/amd64_xmm6/$(DEPDIR) crypto_stream/salsa20/ref/$(DEPDIR) crypto_stream/salsa2012/$(DEPDIR) crypto_stream/salsa2012/ref/$(DEPDIR) crypto_stream/salsa208/$(DEPDIR) crypto_stream/salsa208/ref/$(DEPDIR) crypto_stream/xsalsa20/$(DEPDIR) crypto_stream/xsalsa20/ref/$(DEPDIR) crypto_verify/16/$(DEPDIR) crypto_verify/16/ref/$(DEPDIR) crypto_verify/32/$(DEPDIR) crypto_verify/32/ref/$(DEPDIR) randombytes/$(DEPDIR) randombytes/salsa20/$(DEPDIR) randombytes/sysrandom/$(DEPDIR) sodium/$(DEPDIR) + -rm -rf crypto_auth/$(DEPDIR) crypto_auth/hmacsha256/$(DEPDIR) crypto_auth/hmacsha256/ref/$(DEPDIR) crypto_auth/hmacsha512256/$(DEPDIR) crypto_auth/hmacsha512256/ref/$(DEPDIR) crypto_box/$(DEPDIR) crypto_box/curve25519xsalsa20poly1305/$(DEPDIR) crypto_box/curve25519xsalsa20poly1305/ref/$(DEPDIR) crypto_core/hsalsa20/$(DEPDIR) crypto_core/hsalsa20/ref2/$(DEPDIR) crypto_core/salsa20/$(DEPDIR) crypto_core/salsa20/ref/$(DEPDIR) crypto_core/salsa2012/$(DEPDIR) crypto_core/salsa2012/ref/$(DEPDIR) crypto_core/salsa208/$(DEPDIR) crypto_core/salsa208/ref/$(DEPDIR) crypto_generichash/$(DEPDIR) crypto_generichash/blake2/$(DEPDIR) crypto_generichash/blake2/ref/$(DEPDIR) crypto_hash/$(DEPDIR) crypto_hash/sha256/$(DEPDIR) crypto_hash/sha256/ref/$(DEPDIR) crypto_hash/sha512/$(DEPDIR) crypto_hash/sha512/ref/$(DEPDIR) crypto_hashblocks/sha256/$(DEPDIR) crypto_hashblocks/sha256/ref/$(DEPDIR) crypto_hashblocks/sha512/$(DEPDIR) crypto_hashblocks/sha512/ref/$(DEPDIR) crypto_onetimeauth/$(DEPDIR) crypto_onetimeauth/poly1305/$(DEPDIR) crypto_onetimeauth/poly1305/53/$(DEPDIR) crypto_onetimeauth/poly1305/donna/$(DEPDIR) crypto_scalarmult/$(DEPDIR) crypto_scalarmult/curve25519/$(DEPDIR) crypto_scalarmult/curve25519/donna_c64/$(DEPDIR) crypto_scalarmult/curve25519/ref/$(DEPDIR) crypto_secretbox/$(DEPDIR) crypto_secretbox/xsalsa20poly1305/$(DEPDIR) crypto_secretbox/xsalsa20poly1305/ref/$(DEPDIR) crypto_shorthash/$(DEPDIR) crypto_shorthash/siphash24/$(DEPDIR) crypto_shorthash/siphash24/ref/$(DEPDIR) crypto_sign/$(DEPDIR) crypto_sign/ed25519/$(DEPDIR) crypto_sign/ed25519/ref10/$(DEPDIR) crypto_sign/edwards25519sha512batch/$(DEPDIR) crypto_sign/edwards25519sha512batch/ref/$(DEPDIR) crypto_stream/$(DEPDIR) crypto_stream/aes128ctr/$(DEPDIR) crypto_stream/aes128ctr/portable/$(DEPDIR) crypto_stream/aes256estream/$(DEPDIR) crypto_stream/aes256estream/hongjun/$(DEPDIR) crypto_stream/salsa20/$(DEPDIR) crypto_stream/salsa20/amd64_xmm6/$(DEPDIR) crypto_stream/salsa20/ref/$(DEPDIR) crypto_stream/salsa2012/$(DEPDIR) crypto_stream/salsa2012/ref/$(DEPDIR) crypto_stream/salsa208/$(DEPDIR) crypto_stream/salsa208/ref/$(DEPDIR) crypto_stream/xsalsa20/$(DEPDIR) crypto_stream/xsalsa20/ref/$(DEPDIR) crypto_verify/16/$(DEPDIR) crypto_verify/16/ref/$(DEPDIR) crypto_verify/32/$(DEPDIR) crypto_verify/32/ref/$(DEPDIR) randombytes/$(DEPDIR) randombytes/salsa20/$(DEPDIR) randombytes/sysrandom/$(DEPDIR) sodium/$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags @@ -3492,7 +3546,7 @@ install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive - -rm -rf crypto_auth/$(DEPDIR) crypto_auth/hmacsha256/$(DEPDIR) crypto_auth/hmacsha256/ref/$(DEPDIR) crypto_auth/hmacsha512256/$(DEPDIR) crypto_auth/hmacsha512256/ref/$(DEPDIR) crypto_box/$(DEPDIR) crypto_box/curve25519xsalsa20poly1305/$(DEPDIR) crypto_box/curve25519xsalsa20poly1305/ref/$(DEPDIR) crypto_core/hsalsa20/$(DEPDIR) crypto_core/hsalsa20/ref2/$(DEPDIR) crypto_core/salsa20/$(DEPDIR) crypto_core/salsa20/ref/$(DEPDIR) crypto_core/salsa2012/$(DEPDIR) crypto_core/salsa2012/ref/$(DEPDIR) crypto_core/salsa208/$(DEPDIR) crypto_core/salsa208/ref/$(DEPDIR) crypto_generichash/$(DEPDIR) crypto_generichash/blake2/$(DEPDIR) crypto_generichash/blake2/ref/$(DEPDIR) crypto_hash/$(DEPDIR) crypto_hash/sha256/$(DEPDIR) crypto_hash/sha256/ref/$(DEPDIR) crypto_hash/sha512/$(DEPDIR) crypto_hash/sha512/ref/$(DEPDIR) crypto_hashblocks/sha256/$(DEPDIR) crypto_hashblocks/sha256/ref/$(DEPDIR) crypto_hashblocks/sha512/$(DEPDIR) crypto_hashblocks/sha512/ref/$(DEPDIR) crypto_onetimeauth/$(DEPDIR) crypto_onetimeauth/poly1305/$(DEPDIR) crypto_onetimeauth/poly1305/53/$(DEPDIR) crypto_onetimeauth/poly1305/donna/$(DEPDIR) crypto_scalarmult/$(DEPDIR) crypto_scalarmult/curve25519/donna_c64/$(DEPDIR) crypto_scalarmult/curve25519/ref/$(DEPDIR) crypto_secretbox/$(DEPDIR) crypto_secretbox/xsalsa20poly1305/$(DEPDIR) crypto_secretbox/xsalsa20poly1305/ref/$(DEPDIR) crypto_shorthash/$(DEPDIR) crypto_shorthash/siphash24/$(DEPDIR) crypto_shorthash/siphash24/ref/$(DEPDIR) crypto_sign/$(DEPDIR) crypto_sign/ed25519/$(DEPDIR) crypto_sign/ed25519/ref10/$(DEPDIR) crypto_sign/edwards25519sha512batch/$(DEPDIR) crypto_sign/edwards25519sha512batch/ref/$(DEPDIR) crypto_stream/$(DEPDIR) crypto_stream/aes128ctr/$(DEPDIR) crypto_stream/aes128ctr/portable/$(DEPDIR) crypto_stream/aes256estream/$(DEPDIR) crypto_stream/aes256estream/hongjun/$(DEPDIR) crypto_stream/salsa20/amd64_xmm6/$(DEPDIR) crypto_stream/salsa20/ref/$(DEPDIR) crypto_stream/salsa2012/$(DEPDIR) crypto_stream/salsa2012/ref/$(DEPDIR) crypto_stream/salsa208/$(DEPDIR) crypto_stream/salsa208/ref/$(DEPDIR) crypto_stream/xsalsa20/$(DEPDIR) crypto_stream/xsalsa20/ref/$(DEPDIR) crypto_verify/16/$(DEPDIR) crypto_verify/16/ref/$(DEPDIR) crypto_verify/32/$(DEPDIR) crypto_verify/32/ref/$(DEPDIR) randombytes/$(DEPDIR) randombytes/salsa20/$(DEPDIR) randombytes/sysrandom/$(DEPDIR) sodium/$(DEPDIR) + -rm -rf crypto_auth/$(DEPDIR) crypto_auth/hmacsha256/$(DEPDIR) crypto_auth/hmacsha256/ref/$(DEPDIR) crypto_auth/hmacsha512256/$(DEPDIR) crypto_auth/hmacsha512256/ref/$(DEPDIR) crypto_box/$(DEPDIR) crypto_box/curve25519xsalsa20poly1305/$(DEPDIR) crypto_box/curve25519xsalsa20poly1305/ref/$(DEPDIR) crypto_core/hsalsa20/$(DEPDIR) crypto_core/hsalsa20/ref2/$(DEPDIR) crypto_core/salsa20/$(DEPDIR) crypto_core/salsa20/ref/$(DEPDIR) crypto_core/salsa2012/$(DEPDIR) crypto_core/salsa2012/ref/$(DEPDIR) crypto_core/salsa208/$(DEPDIR) crypto_core/salsa208/ref/$(DEPDIR) crypto_generichash/$(DEPDIR) crypto_generichash/blake2/$(DEPDIR) crypto_generichash/blake2/ref/$(DEPDIR) crypto_hash/$(DEPDIR) crypto_hash/sha256/$(DEPDIR) crypto_hash/sha256/ref/$(DEPDIR) crypto_hash/sha512/$(DEPDIR) crypto_hash/sha512/ref/$(DEPDIR) crypto_hashblocks/sha256/$(DEPDIR) crypto_hashblocks/sha256/ref/$(DEPDIR) crypto_hashblocks/sha512/$(DEPDIR) crypto_hashblocks/sha512/ref/$(DEPDIR) crypto_onetimeauth/$(DEPDIR) crypto_onetimeauth/poly1305/$(DEPDIR) crypto_onetimeauth/poly1305/53/$(DEPDIR) crypto_onetimeauth/poly1305/donna/$(DEPDIR) crypto_scalarmult/$(DEPDIR) crypto_scalarmult/curve25519/$(DEPDIR) crypto_scalarmult/curve25519/donna_c64/$(DEPDIR) crypto_scalarmult/curve25519/ref/$(DEPDIR) crypto_secretbox/$(DEPDIR) crypto_secretbox/xsalsa20poly1305/$(DEPDIR) crypto_secretbox/xsalsa20poly1305/ref/$(DEPDIR) crypto_shorthash/$(DEPDIR) crypto_shorthash/siphash24/$(DEPDIR) crypto_shorthash/siphash24/ref/$(DEPDIR) crypto_sign/$(DEPDIR) crypto_sign/ed25519/$(DEPDIR) crypto_sign/ed25519/ref10/$(DEPDIR) crypto_sign/edwards25519sha512batch/$(DEPDIR) crypto_sign/edwards25519sha512batch/ref/$(DEPDIR) crypto_stream/$(DEPDIR) crypto_stream/aes128ctr/$(DEPDIR) crypto_stream/aes128ctr/portable/$(DEPDIR) crypto_stream/aes256estream/$(DEPDIR) crypto_stream/aes256estream/hongjun/$(DEPDIR) crypto_stream/salsa20/$(DEPDIR) crypto_stream/salsa20/amd64_xmm6/$(DEPDIR) crypto_stream/salsa20/ref/$(DEPDIR) crypto_stream/salsa2012/$(DEPDIR) crypto_stream/salsa2012/ref/$(DEPDIR) crypto_stream/salsa208/$(DEPDIR) crypto_stream/salsa208/ref/$(DEPDIR) crypto_stream/xsalsa20/$(DEPDIR) crypto_stream/xsalsa20/ref/$(DEPDIR) crypto_verify/16/$(DEPDIR) crypto_verify/16/ref/$(DEPDIR) crypto_verify/32/$(DEPDIR) crypto_verify/32/ref/$(DEPDIR) randombytes/$(DEPDIR) randombytes/salsa20/$(DEPDIR) randombytes/sysrandom/$(DEPDIR) sodium/$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -3529,6 +3583,7 @@ uninstall-am: uninstall-defexecDATA uninstall-libLTLIBRARIES pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \ uninstall-defexecDATA uninstall-libLTLIBRARIES +@HAVE_LD_OUTPUT_DEF_TRUE@libsodium-$(DLL_VERSION).def: libsodium.la # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/src/libsodium/src/libsodium/crypto_auth/hmacsha256/ref/hmac_hmacsha256.c b/src/libsodium/src/libsodium/crypto_auth/hmacsha256/ref/hmac_hmacsha256.c index 2e7564a6b07a2c32db10a4a993fc4380a8958b71..c1498f8eaa9a9729ce335a44038d973b67b85a8a 100644 --- a/src/libsodium/src/libsodium/crypto_auth/hmacsha256/ref/hmac_hmacsha256.c +++ b/src/libsodium/src/libsodium/crypto_auth/hmacsha256/ref/hmac_hmacsha256.c @@ -11,7 +11,7 @@ typedef unsigned int uint32; -static const char iv[32] = { +static const unsigned char iv[32] = { 0x6a,0x09,0xe6,0x67, 0xbb,0x67,0xae,0x85, 0x3c,0x6e,0xf3,0x72, diff --git a/src/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-ref.c b/src/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-ref.c index dcb0239804d9f4424ad3605091a9659fc8fc7627..f43bc6bf571a8c25686dd57e3665eef64827f1ab 100644 --- a/src/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-ref.c +++ b/src/libsodium/src/libsodium/crypto_generichash/blake2/ref/blake2b-ref.c @@ -138,9 +138,10 @@ static inline int blake2b_param_set_personal( blake2b_param *P, const uint8_t pe static inline int blake2b_init0( blake2b_state *S ) { + int i; memset( S, 0, sizeof( blake2b_state ) ); - for( int i = 0; i < 8; ++i ) S->h[i] = blake2b_IV[i]; + for( i = 0; i < 8; ++i ) S->h[i] = blake2b_IV[i]; return 0; } @@ -148,11 +149,14 @@ static inline int blake2b_init0( blake2b_state *S ) /* init xors IV with input parameter block */ int blake2b_init_param( blake2b_state *S, const blake2b_param *P ) { + size_t i; + const uint8_t *p; + blake2b_init0( S ); - const uint8_t *p = ( const uint8_t * )( P ); + p = ( const uint8_t * )( P ); /* IV XOR ParamBlock */ - for( size_t i = 0; i < 8; ++i ) + for( i = 0; i < 8; ++i ) S->h[i] ^= load64( p + sizeof( S->h[i] ) * i ); return 0; @@ -217,7 +221,7 @@ static int blake2b_compress( blake2b_state *S, const uint8_t block[BLAKE2B_BLOCK { uint64_t m[16]; uint64_t v[16]; - int i; + int i; for( i = 0; i < 16; ++i ) m[i] = load64( block + i * sizeof( m[i] ) ); @@ -311,6 +315,7 @@ int blake2b_update( blake2b_state *S, const uint8_t *in, uint64_t inlen ) int blake2b_final( blake2b_state *S, uint8_t *out, uint8_t outlen ) { uint8_t buffer[BLAKE2B_OUTBYTES]; + int i; if( S->buflen > BLAKE2B_BLOCKBYTES ) { @@ -325,7 +330,7 @@ int blake2b_final( blake2b_state *S, uint8_t *out, uint8_t outlen ) memset( S->buf + S->buflen, 0, 2 * BLAKE2B_BLOCKBYTES - S->buflen ); /* Padding */ blake2b_compress( S, S->buf ); - for( int i = 0; i < 8; ++i ) /* Output full hash to temp buffer */ + for( i = 0; i < 8; ++i ) /* Output full hash to temp buffer */ store64( buffer + sizeof( S->h[i] ) * i, S->h[i] ); memcpy( out, buffer, outlen ); diff --git a/src/libsodium/src/libsodium/crypto_hash/sha256/ref/hash_sha256.c b/src/libsodium/src/libsodium/crypto_hash/sha256/ref/hash_sha256.c index 774271d65cd539c4568699c868e44c28911ce4cb..4b6891cb7b148d94b13e75d296732856613c3343 100644 --- a/src/libsodium/src/libsodium/crypto_hash/sha256/ref/hash_sha256.c +++ b/src/libsodium/src/libsodium/crypto_hash/sha256/ref/hash_sha256.c @@ -11,7 +11,7 @@ Public domain. typedef unsigned int uint32; -static const char iv[32] = { +static const unsigned char iv[32] = { 0x6a,0x09,0xe6,0x67, 0xbb,0x67,0xae,0x85, 0x3c,0x6e,0xf3,0x72, diff --git a/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/53/auth_poly1305_53.c b/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/53/auth_poly1305_53.c index 4570cc1589c230180663df65b63ea1b87f764f4a..d651b3dc87f47dff87c6c77a47301022722d8ef2 100644 --- a/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/53/auth_poly1305_53.c +++ b/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/53/auth_poly1305_53.c @@ -37,7 +37,11 @@ static const double poly1305_53_constants[] = { , 535217884764734955396857238543560676143529984.0 /* alpha96 = 3 2^147 */ , 35076039295941670036888435985190792471742381031424.0 /* alpha112 = 3 2^163 */ , 9194973245195333150150082162901855101712434733101613056.0 /* alpha130 = 3 2^181 */ +#ifdef _MSC_VER +, 3.67341984631964846240230167881951774318332986491277350471484908212005393579602241516113281250E-39 /* scale = 5 2^(-130) */ +#else , 0.0000000000000000000000000000000000000036734198463196484624023016788195177431833298649127735047148490821200539357960224151611328125 /* scale = 5 2^(-130) */ +#endif , 6755408030990331.0 /* offset0 = alpha0 + 2^33 - 5 */ , 29014256564239239022116864.0 /* offset1 = alpha32 + 2^65 - 2^33 */ , 124615283061160854719918951570079744.0 /* offset2 = alpha64 + 2^97 - 2^65 */ diff --git a/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/portable-jane.h b/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/portable-jane.h index 4d1f93a72b302c1ad5c8e4454286847cfce16d52..e4a01162e7c6fffac21fc0fc2cc3b32d0e31c1ed 100644 --- a/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/portable-jane.h +++ b/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna/portable-jane.h @@ -121,7 +121,9 @@ /* 0100-compiler-100-msvc.h */ #if defined(_MSC_VER) - #define _CRT_SECURE_NO_WARNINGS +#ifndef _CRT_SECURE_NO_WARNINGS +# define _CRT_SECURE_NO_WARNINGS +#endif #pragma warning(disable : 4127) /* conditional expression is constant */ #pragma warning(disable : 4100) /* unreferenced formal parameter */ @@ -667,21 +669,9 @@ /* 0400-uint128-100-clang.h */ -#if defined(CPU_64BITS) && (defined(COMPILER_CLANG) && (COMPILER_CLANG >= 30100)) - #define HAVE_NATIVE_UINT128 - typedef unsigned __int128 uint128_t; -#endif - -/* 0400-uint128-100-gcc.h */ - -#if (defined(CPU_64BITS) && defined(COMPILER_GCC)) && (!defined(COMPILER_CLANG) || (COMPILER_CLANG < 30100)) - #if defined(__SIZEOF_INT128__) - #define HAVE_NATIVE_UINT128 - typedef unsigned __int128 uint128_t; - #elif (COMPILER_GCC >= 40400) - #define HAVE_NATIVE_UINT128 - typedef unsigned uint128_t __attribute__((mode(TI))); - #endif +#ifdef HAVE_TI_MODE +# define HAVE_NATIVE_UINT128 +typedef unsigned uint128_t __attribute__((mode(TI))); #endif /* 0400-uint128-100-msvc.h */ diff --git a/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.c b/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.c index 15d4fc364944978b71b37110f3e7df1593c42fc2..d529b9619e05f89bc350096920e747f4d05ce4e1 100644 --- a/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.c +++ b/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.c @@ -1,10 +1,4 @@ -#include <sys/types.h> - -#include <assert.h> -#include <inttypes.h> -#include <limits.h> - #include "crypto_onetimeauth_poly1305.h" #include "crypto_onetimeauth_poly1305_donna.h" diff --git a/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305_try.c b/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305_try.c index 6e242d22ca1022ceadfc3902b8edfd79c629f71c..82d67867a20a1f535fbc8d5365432d447c4a483e 100644 --- a/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305_try.c +++ b/src/libsodium/src/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305_try.c @@ -47,6 +47,11 @@ deallocate(void) free(k2_); } +#ifdef HAVE_ARC4RANDOM +# undef rand +# define rand(X) arc4random(X) +#endif + static const char * checksum_compute(void) { diff --git a/src/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/smult_curve25519_donna_c64.c b/src/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/smult_curve25519_donna_c64.c index c10b9ad70e4dd4893eb43d169bbe3d6fcceb3cd8..0b1bc98f518c01736349828b991504c42feb3dd0 100644 --- a/src/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/smult_curve25519_donna_c64.c +++ b/src/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/smult_curve25519_donna_c64.c @@ -196,7 +196,7 @@ fexpand(limb *output, const u8 *in) { output[1] = (*((const uint64_t *)(in+6)) >> 3) & 0x7ffffffffffff; output[2] = (*((const uint64_t *)(in+12)) >> 6) & 0x7ffffffffffff; output[3] = (*((const uint64_t *)(in+19)) >> 1) & 0x7ffffffffffff; - output[4] = (*((const uint64_t *)(in+25)) >> 4) & 0x7ffffffffffff; + output[4] = (*((const uint64_t *)(in+25)) >> 4) & 0xfffffffffffff; } /* Take a fully reduced polynomial form number and contract it into a diff --git a/src/libsodium/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519_api.c b/src/libsodium/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519_api.c new file mode 100644 index 0000000000000000000000000000000000000000..94c720a297cc1b5e8a7414a854abca26f49a4513 --- /dev/null +++ b/src/libsodium/src/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519_api.c @@ -0,0 +1,14 @@ + +#include "crypto_scalarmult_curve25519.h" + +size_t +crypto_scalarmult_curve25519_bytes(void) +{ + return crypto_scalarmult_curve25519_BYTES; +} + +size_t +crypto_scalarmult_curve25519_scalarbytes(void) +{ + return crypto_scalarmult_curve25519_SCALARBYTES; +} diff --git a/src/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref/fe25519_edwards25519sha512batch.c b/src/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref/fe25519_edwards25519sha512batch.c index 4a490446ef6b20ef260446e62d2a2b0dd6d90d04..df7a923e40854835a0cf3f34b6133406e12ab315 100644 --- a/src/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref/fe25519_edwards25519sha512batch.c +++ b/src/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref/fe25519_edwards25519sha512batch.c @@ -100,11 +100,12 @@ void fe25519_unpack(fe25519 *r, const unsigned char x[32]) void fe25519_pack(unsigned char r[32], const fe25519 *x) { int i; + unsigned int m; for(i=0;i<32;i++) r[i] = x->v[i]; /* freeze byte array */ - unsigned int m = (r[31] == 127); /* XXX: some compilers might use branches; fix */ + m = (r[31] == 127); /* XXX: some compilers might use branches; fix */ for(i=30;i>1;i--) m *= (r[i] == 255); m *= (r[0] >= 237); @@ -212,11 +213,12 @@ void fe25519_pow(fe25519 *r, const fe25519 *x, const unsigned char *e) for(i=0;i<32;i++) r->v[i] = g.v[i]; */ fe25519 g; - fe25519_setone(&g); int i,j,k; - fe25519 pre[(1 << WINDOWSIZE)]; fe25519 t; unsigned char w; + fe25519 pre[(1 << WINDOWSIZE)]; + + fe25519_setone(&g); // Precomputation fe25519_setone(pre); @@ -248,14 +250,15 @@ void fe25519_pow(fe25519 *r, const fe25519 *x, const unsigned char *e) /* Return 0 on success, 1 otherwise */ int fe25519_sqrt_vartime(fe25519 *r, const fe25519 *x, unsigned char parity) { - /* See HAC, Alg. 3.37 */ - if (!issquare(x)) return -1; unsigned char e[32] = {0xfb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f}; /* (p-1)/4 */ unsigned char e2[32] = {0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f}; /* (p+3)/8 */ unsigned char e3[32] = {0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0f}; /* (p-5)/8 */ fe25519 p = {{0}}; fe25519 d; int i; + + /* See HAC, Alg. 3.37 */ + if (!issquare(x)) return -1; fe25519_pow(&d,x,e); freeze(&d); if(isone(&d)) diff --git a/src/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref/ge25519_edwards25519sha512batch.c b/src/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref/ge25519_edwards25519sha512batch.c index 7a8ff0ef3bf34eb94d1939077a698688b6e1d03f..253b68f4bf78fcd4da9d4fe13d1ea4a2a443acb2 100644 --- a/src/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref/ge25519_edwards25519sha512batch.c +++ b/src/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref/ge25519_edwards25519sha512batch.c @@ -120,9 +120,11 @@ int ge25519_unpack_vartime(ge25519_p3 *r, const unsigned char p[32]) { int ret; fe25519 t, fd; + unsigned char par; + fe25519_setone(&r->z); fe25519_unpack(&fd, ecd); - unsigned char par = p[31] >> 7; + par = p[31] >> 7; fe25519_unpack(&r->y, p); fe25519_square(&r->x, &r->y); fe25519_mul(&t, &r->x, &fd); @@ -163,16 +165,17 @@ void ge25519_scalarmult(ge25519_p3 *r, const ge25519_p3 *p, const sc25519 *s) { int i,j,k; ge25519_p3 g; - fe25519_unpack(&g.x, ge25519_neutral_x); - fe25519_unpack(&g.y, ge25519_neutral_y); - fe25519_unpack(&g.z, ge25519_neutral_z); - fe25519_unpack(&g.t, ge25519_neutral_t); - ge25519_p3 pre[(1 << WINDOWSIZE)]; ge25519_p3 t; ge25519_p1p1 tp1p1; unsigned char w; unsigned char sb[32]; + + fe25519_unpack(&g.x, ge25519_neutral_x); + fe25519_unpack(&g.y, ge25519_neutral_y); + fe25519_unpack(&g.z, ge25519_neutral_z); + fe25519_unpack(&g.t, ge25519_neutral_t); + sc25519_to32bytes(sb, s); // Precomputation diff --git a/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/afternm_aes128ctr.c b/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/afternm_aes128ctr.c index f74937e624fd17d19c4f0832f893a144b0ebcbae..efa71c699e0f47d4dd4c1ee16f4396b5a171f948 100644 --- a/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/afternm_aes128ctr.c +++ b/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/afternm_aes128ctr.c @@ -32,13 +32,14 @@ int crypto_stream_afternm(unsigned char *outp, unsigned long long len, const uns unsigned long long lensav; unsigned char bl[128]; unsigned char *blp; + unsigned char *np; unsigned char b; uint32 tmp; /* Copy nonce on the stack */ copy2(&nonce_stack, (const int128 *) (noncep + 0)); - unsigned char *np = (unsigned char *)&nonce_stack; + np = (unsigned char *)&nonce_stack; enc_block: diff --git a/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/int128_aes128ctr.c b/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/int128_aes128ctr.c index 5433bd605644bc2676429be8ced5f17815cec271..2d8daf4e9dbfbe5c0706ba71ba58591394c598e1 100644 --- a/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/int128_aes128ctr.c +++ b/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/int128_aes128ctr.c @@ -28,9 +28,12 @@ void copy2(int128 *r, const int128 *x) void shufb(int128 *r, const unsigned char *l) { int128 t; + unsigned char *cr; + unsigned char *ct; + copy2(&t,r); - unsigned char *cr = (unsigned char *)r; - unsigned char *ct = (unsigned char *)&t; + cr = (unsigned char *)r; + ct = (unsigned char *)&t; cr[0] = ct[l[0]]; cr[1] = ct[l[1]]; cr[2] = ct[l[2]]; diff --git a/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/xor_afternm_aes128ctr.c b/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/xor_afternm_aes128ctr.c index def7011ab21b9f0df3e3c7f69b627f12ff885d6b..91ca929558ac23429b797f1efc19f36f4a26f8f1 100644 --- a/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/xor_afternm_aes128ctr.c +++ b/src/libsodium/src/libsodium/crypto_stream/aes128ctr/portable/xor_afternm_aes128ctr.c @@ -33,13 +33,14 @@ int crypto_stream_xor_afternm(unsigned char *outp, const unsigned char *inp, uns unsigned long long lensav; unsigned char bl[128]; unsigned char *blp; + unsigned char *np; unsigned char b; uint32 tmp; /* Copy nonce on the stack */ copy2(&nonce_stack, (const int128 *) (noncep + 0)); - unsigned char *np = (unsigned char *)&nonce_stack; + np = (unsigned char *)&nonce_stack; enc_block: diff --git a/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table-be.h b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table-be.h new file mode 100644 index 0000000000000000000000000000000000000000..d103658d991a6138586fb342f9393cf9d0d09cff --- /dev/null +++ b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table-be.h @@ -0,0 +1,274 @@ + +#ifndef __AES_TABLE_BE_H__ +#define __AES_TABLE_BE_H__ + +unsigned int T0[256] = { + 0xc66363a5, 0xf87c7c84, 0xee777799, 0xf67b7b8d, + 0xfff2f20d, 0xd66b6bbd, 0xde6f6fb1, 0x91c5c554, + 0x60303050, 0x02010103, 0xce6767a9, 0x562b2b7d, + 0xe7fefe19, 0xb5d7d762, 0x4dababe6, 0xec76769a, + 0x8fcaca45, 0x1f82829d, 0x89c9c940, 0xfa7d7d87, + 0xeffafa15, 0xb25959eb, 0x8e4747c9, 0xfbf0f00b, + 0x41adadec, 0xb3d4d467, 0x5fa2a2fd, 0x45afafea, + 0x239c9cbf, 0x53a4a4f7, 0xe4727296, 0x9bc0c05b, + 0x75b7b7c2, 0xe1fdfd1c, 0x3d9393ae, 0x4c26266a, + 0x6c36365a, 0x7e3f3f41, 0xf5f7f702, 0x83cccc4f, + 0x6834345c, 0x51a5a5f4, 0xd1e5e534, 0xf9f1f108, + 0xe2717193, 0xabd8d873, 0x62313153, 0x2a15153f, + 0x0804040c, 0x95c7c752, 0x46232365, 0x9dc3c35e, + 0x30181828, 0x379696a1, 0x0a05050f, 0x2f9a9ab5, + 0x0e070709, 0x24121236, 0x1b80809b, 0xdfe2e23d, + 0xcdebeb26, 0x4e272769, 0x7fb2b2cd, 0xea75759f, + 0x1209091b, 0x1d83839e, 0x582c2c74, 0x341a1a2e, + 0x361b1b2d, 0xdc6e6eb2, 0xb45a5aee, 0x5ba0a0fb, + 0xa45252f6, 0x763b3b4d, 0xb7d6d661, 0x7db3b3ce, + 0x5229297b, 0xdde3e33e, 0x5e2f2f71, 0x13848497, + 0xa65353f5, 0xb9d1d168, 0x00000000, 0xc1eded2c, + 0x40202060, 0xe3fcfc1f, 0x79b1b1c8, 0xb65b5bed, + 0xd46a6abe, 0x8dcbcb46, 0x67bebed9, 0x7239394b, + 0x944a4ade, 0x984c4cd4, 0xb05858e8, 0x85cfcf4a, + 0xbbd0d06b, 0xc5efef2a, 0x4faaaae5, 0xedfbfb16, + 0x864343c5, 0x9a4d4dd7, 0x66333355, 0x11858594, + 0x8a4545cf, 0xe9f9f910, 0x04020206, 0xfe7f7f81, + 0xa05050f0, 0x783c3c44, 0x259f9fba, 0x4ba8a8e3, + 0xa25151f3, 0x5da3a3fe, 0x804040c0, 0x058f8f8a, + 0x3f9292ad, 0x219d9dbc, 0x70383848, 0xf1f5f504, + 0x63bcbcdf, 0x77b6b6c1, 0xafdada75, 0x42212163, + 0x20101030, 0xe5ffff1a, 0xfdf3f30e, 0xbfd2d26d, + 0x81cdcd4c, 0x180c0c14, 0x26131335, 0xc3ecec2f, + 0xbe5f5fe1, 0x359797a2, 0x884444cc, 0x2e171739, + 0x93c4c457, 0x55a7a7f2, 0xfc7e7e82, 0x7a3d3d47, + 0xc86464ac, 0xba5d5de7, 0x3219192b, 0xe6737395, + 0xc06060a0, 0x19818198, 0x9e4f4fd1, 0xa3dcdc7f, + 0x44222266, 0x542a2a7e, 0x3b9090ab, 0x0b888883, + 0x8c4646ca, 0xc7eeee29, 0x6bb8b8d3, 0x2814143c, + 0xa7dede79, 0xbc5e5ee2, 0x160b0b1d, 0xaddbdb76, + 0xdbe0e03b, 0x64323256, 0x743a3a4e, 0x140a0a1e, + 0x924949db, 0x0c06060a, 0x4824246c, 0xb85c5ce4, + 0x9fc2c25d, 0xbdd3d36e, 0x43acacef, 0xc46262a6, + 0x399191a8, 0x319595a4, 0xd3e4e437, 0xf279798b, + 0xd5e7e732, 0x8bc8c843, 0x6e373759, 0xda6d6db7, + 0x018d8d8c, 0xb1d5d564, 0x9c4e4ed2, 0x49a9a9e0, + 0xd86c6cb4, 0xac5656fa, 0xf3f4f407, 0xcfeaea25, + 0xca6565af, 0xf47a7a8e, 0x47aeaee9, 0x10080818, + 0x6fbabad5, 0xf0787888, 0x4a25256f, 0x5c2e2e72, + 0x381c1c24, 0x57a6a6f1, 0x73b4b4c7, 0x97c6c651, + 0xcbe8e823, 0xa1dddd7c, 0xe874749c, 0x3e1f1f21, + 0x964b4bdd, 0x61bdbddc, 0x0d8b8b86, 0x0f8a8a85, + 0xe0707090, 0x7c3e3e42, 0x71b5b5c4, 0xcc6666aa, + 0x904848d8, 0x06030305, 0xf7f6f601, 0x1c0e0e12, + 0xc26161a3, 0x6a35355f, 0xae5757f9, 0x69b9b9d0, + 0x17868691, 0x99c1c158, 0x3a1d1d27, 0x279e9eb9, + 0xd9e1e138, 0xebf8f813, 0x2b9898b3, 0x22111133, + 0xd26969bb, 0xa9d9d970, 0x078e8e89, 0x339494a7, + 0x2d9b9bb6, 0x3c1e1e22, 0x15878792, 0xc9e9e920, + 0x87cece49, 0xaa5555ff, 0x50282878, 0xa5dfdf7a, + 0x038c8c8f, 0x59a1a1f8, 0x09898980, 0x1a0d0d17, + 0x65bfbfda, 0xd7e6e631, 0x844242c6, 0xd06868b8, + 0x824141c3, 0x299999b0, 0x5a2d2d77, 0x1e0f0f11, + 0x7bb0b0cb, 0xa85454fc, 0x6dbbbbd6, 0x2c16163a +}; + + +unsigned int T1[256] = { + 0xa5c66363, 0x84f87c7c, 0x99ee7777, 0x8df67b7b, + 0x0dfff2f2, 0xbdd66b6b, 0xb1de6f6f, 0x5491c5c5, + 0x50603030, 0x03020101, 0xa9ce6767, 0x7d562b2b, + 0x19e7fefe, 0x62b5d7d7, 0xe64dabab, 0x9aec7676, + 0x458fcaca, 0x9d1f8282, 0x4089c9c9, 0x87fa7d7d, + 0x15effafa, 0xebb25959, 0xc98e4747, 0x0bfbf0f0, + 0xec41adad, 0x67b3d4d4, 0xfd5fa2a2, 0xea45afaf, + 0xbf239c9c, 0xf753a4a4, 0x96e47272, 0x5b9bc0c0, + 0xc275b7b7, 0x1ce1fdfd, 0xae3d9393, 0x6a4c2626, + 0x5a6c3636, 0x417e3f3f, 0x02f5f7f7, 0x4f83cccc, + 0x5c683434, 0xf451a5a5, 0x34d1e5e5, 0x08f9f1f1, + 0x93e27171, 0x73abd8d8, 0x53623131, 0x3f2a1515, + 0x0c080404, 0x5295c7c7, 0x65462323, 0x5e9dc3c3, + 0x28301818, 0xa1379696, 0x0f0a0505, 0xb52f9a9a, + 0x090e0707, 0x36241212, 0x9b1b8080, 0x3ddfe2e2, + 0x26cdebeb, 0x694e2727, 0xcd7fb2b2, 0x9fea7575, + 0x1b120909, 0x9e1d8383, 0x74582c2c, 0x2e341a1a, + 0x2d361b1b, 0xb2dc6e6e, 0xeeb45a5a, 0xfb5ba0a0, + 0xf6a45252, 0x4d763b3b, 0x61b7d6d6, 0xce7db3b3, + 0x7b522929, 0x3edde3e3, 0x715e2f2f, 0x97138484, + 0xf5a65353, 0x68b9d1d1, 0x00000000, 0x2cc1eded, + 0x60402020, 0x1fe3fcfc, 0xc879b1b1, 0xedb65b5b, + 0xbed46a6a, 0x468dcbcb, 0xd967bebe, 0x4b723939, + 0xde944a4a, 0xd4984c4c, 0xe8b05858, 0x4a85cfcf, + 0x6bbbd0d0, 0x2ac5efef, 0xe54faaaa, 0x16edfbfb, + 0xc5864343, 0xd79a4d4d, 0x55663333, 0x94118585, + 0xcf8a4545, 0x10e9f9f9, 0x06040202, 0x81fe7f7f, + 0xf0a05050, 0x44783c3c, 0xba259f9f, 0xe34ba8a8, + 0xf3a25151, 0xfe5da3a3, 0xc0804040, 0x8a058f8f, + 0xad3f9292, 0xbc219d9d, 0x48703838, 0x04f1f5f5, + 0xdf63bcbc, 0xc177b6b6, 0x75afdada, 0x63422121, + 0x30201010, 0x1ae5ffff, 0x0efdf3f3, 0x6dbfd2d2, + 0x4c81cdcd, 0x14180c0c, 0x35261313, 0x2fc3ecec, + 0xe1be5f5f, 0xa2359797, 0xcc884444, 0x392e1717, + 0x5793c4c4, 0xf255a7a7, 0x82fc7e7e, 0x477a3d3d, + 0xacc86464, 0xe7ba5d5d, 0x2b321919, 0x95e67373, + 0xa0c06060, 0x98198181, 0xd19e4f4f, 0x7fa3dcdc, + 0x66442222, 0x7e542a2a, 0xab3b9090, 0x830b8888, + 0xca8c4646, 0x29c7eeee, 0xd36bb8b8, 0x3c281414, + 0x79a7dede, 0xe2bc5e5e, 0x1d160b0b, 0x76addbdb, + 0x3bdbe0e0, 0x56643232, 0x4e743a3a, 0x1e140a0a, + 0xdb924949, 0x0a0c0606, 0x6c482424, 0xe4b85c5c, + 0x5d9fc2c2, 0x6ebdd3d3, 0xef43acac, 0xa6c46262, + 0xa8399191, 0xa4319595, 0x37d3e4e4, 0x8bf27979, + 0x32d5e7e7, 0x438bc8c8, 0x596e3737, 0xb7da6d6d, + 0x8c018d8d, 0x64b1d5d5, 0xd29c4e4e, 0xe049a9a9, + 0xb4d86c6c, 0xfaac5656, 0x07f3f4f4, 0x25cfeaea, + 0xafca6565, 0x8ef47a7a, 0xe947aeae, 0x18100808, + 0xd56fbaba, 0x88f07878, 0x6f4a2525, 0x725c2e2e, + 0x24381c1c, 0xf157a6a6, 0xc773b4b4, 0x5197c6c6, + 0x23cbe8e8, 0x7ca1dddd, 0x9ce87474, 0x213e1f1f, + 0xdd964b4b, 0xdc61bdbd, 0x860d8b8b, 0x850f8a8a, + 0x90e07070, 0x427c3e3e, 0xc471b5b5, 0xaacc6666, + 0xd8904848, 0x05060303, 0x01f7f6f6, 0x121c0e0e, + 0xa3c26161, 0x5f6a3535, 0xf9ae5757, 0xd069b9b9, + 0x91178686, 0x5899c1c1, 0x273a1d1d, 0xb9279e9e, + 0x38d9e1e1, 0x13ebf8f8, 0xb32b9898, 0x33221111, + 0xbbd26969, 0x70a9d9d9, 0x89078e8e, 0xa7339494, + 0xb62d9b9b, 0x223c1e1e, 0x92158787, 0x20c9e9e9, + 0x4987cece, 0xffaa5555, 0x78502828, 0x7aa5dfdf, + 0x8f038c8c, 0xf859a1a1, 0x80098989, 0x171a0d0d, + 0xda65bfbf, 0x31d7e6e6, 0xc6844242, 0xb8d06868, + 0xc3824141, 0xb0299999, 0x775a2d2d, 0x111e0f0f, + 0xcb7bb0b0, 0xfca85454, 0xd66dbbbb, 0x3a2c1616 +}; + +unsigned int T2[256] = { + 0x63a5c663, 0x7c84f87c, 0x7799ee77, 0x7b8df67b, + 0xf20dfff2, 0x6bbdd66b, 0x6fb1de6f, 0xc55491c5, + 0x30506030, 0x01030201, 0x67a9ce67, 0x2b7d562b, + 0xfe19e7fe, 0xd762b5d7, 0xabe64dab, 0x769aec76, + 0xca458fca, 0x829d1f82, 0xc94089c9, 0x7d87fa7d, + 0xfa15effa, 0x59ebb259, 0x47c98e47, 0xf00bfbf0, + 0xadec41ad, 0xd467b3d4, 0xa2fd5fa2, 0xafea45af, + 0x9cbf239c, 0xa4f753a4, 0x7296e472, 0xc05b9bc0, + 0xb7c275b7, 0xfd1ce1fd, 0x93ae3d93, 0x266a4c26, + 0x365a6c36, 0x3f417e3f, 0xf702f5f7, 0xcc4f83cc, + 0x345c6834, 0xa5f451a5, 0xe534d1e5, 0xf108f9f1, + 0x7193e271, 0xd873abd8, 0x31536231, 0x153f2a15, + 0x040c0804, 0xc75295c7, 0x23654623, 0xc35e9dc3, + 0x18283018, 0x96a13796, 0x050f0a05, 0x9ab52f9a, + 0x07090e07, 0x12362412, 0x809b1b80, 0xe23ddfe2, + 0xeb26cdeb, 0x27694e27, 0xb2cd7fb2, 0x759fea75, + 0x091b1209, 0x839e1d83, 0x2c74582c, 0x1a2e341a, + 0x1b2d361b, 0x6eb2dc6e, 0x5aeeb45a, 0xa0fb5ba0, + 0x52f6a452, 0x3b4d763b, 0xd661b7d6, 0xb3ce7db3, + 0x297b5229, 0xe33edde3, 0x2f715e2f, 0x84971384, + 0x53f5a653, 0xd168b9d1, 0x00000000, 0xed2cc1ed, + 0x20604020, 0xfc1fe3fc, 0xb1c879b1, 0x5bedb65b, + 0x6abed46a, 0xcb468dcb, 0xbed967be, 0x394b7239, + 0x4ade944a, 0x4cd4984c, 0x58e8b058, 0xcf4a85cf, + 0xd06bbbd0, 0xef2ac5ef, 0xaae54faa, 0xfb16edfb, + 0x43c58643, 0x4dd79a4d, 0x33556633, 0x85941185, + 0x45cf8a45, 0xf910e9f9, 0x02060402, 0x7f81fe7f, + 0x50f0a050, 0x3c44783c, 0x9fba259f, 0xa8e34ba8, + 0x51f3a251, 0xa3fe5da3, 0x40c08040, 0x8f8a058f, + 0x92ad3f92, 0x9dbc219d, 0x38487038, 0xf504f1f5, + 0xbcdf63bc, 0xb6c177b6, 0xda75afda, 0x21634221, + 0x10302010, 0xff1ae5ff, 0xf30efdf3, 0xd26dbfd2, + 0xcd4c81cd, 0x0c14180c, 0x13352613, 0xec2fc3ec, + 0x5fe1be5f, 0x97a23597, 0x44cc8844, 0x17392e17, + 0xc45793c4, 0xa7f255a7, 0x7e82fc7e, 0x3d477a3d, + 0x64acc864, 0x5de7ba5d, 0x192b3219, 0x7395e673, + 0x60a0c060, 0x81981981, 0x4fd19e4f, 0xdc7fa3dc, + 0x22664422, 0x2a7e542a, 0x90ab3b90, 0x88830b88, + 0x46ca8c46, 0xee29c7ee, 0xb8d36bb8, 0x143c2814, + 0xde79a7de, 0x5ee2bc5e, 0x0b1d160b, 0xdb76addb, + 0xe03bdbe0, 0x32566432, 0x3a4e743a, 0x0a1e140a, + 0x49db9249, 0x060a0c06, 0x246c4824, 0x5ce4b85c, + 0xc25d9fc2, 0xd36ebdd3, 0xacef43ac, 0x62a6c462, + 0x91a83991, 0x95a43195, 0xe437d3e4, 0x798bf279, + 0xe732d5e7, 0xc8438bc8, 0x37596e37, 0x6db7da6d, + 0x8d8c018d, 0xd564b1d5, 0x4ed29c4e, 0xa9e049a9, + 0x6cb4d86c, 0x56faac56, 0xf407f3f4, 0xea25cfea, + 0x65afca65, 0x7a8ef47a, 0xaee947ae, 0x08181008, + 0xbad56fba, 0x7888f078, 0x256f4a25, 0x2e725c2e, + 0x1c24381c, 0xa6f157a6, 0xb4c773b4, 0xc65197c6, + 0xe823cbe8, 0xdd7ca1dd, 0x749ce874, 0x1f213e1f, + 0x4bdd964b, 0xbddc61bd, 0x8b860d8b, 0x8a850f8a, + 0x7090e070, 0x3e427c3e, 0xb5c471b5, 0x66aacc66, + 0x48d89048, 0x03050603, 0xf601f7f6, 0x0e121c0e, + 0x61a3c261, 0x355f6a35, 0x57f9ae57, 0xb9d069b9, + 0x86911786, 0xc15899c1, 0x1d273a1d, 0x9eb9279e, + 0xe138d9e1, 0xf813ebf8, 0x98b32b98, 0x11332211, + 0x69bbd269, 0xd970a9d9, 0x8e89078e, 0x94a73394, + 0x9bb62d9b, 0x1e223c1e, 0x87921587, 0xe920c9e9, + 0xce4987ce, 0x55ffaa55, 0x28785028, 0xdf7aa5df, + 0x8c8f038c, 0xa1f859a1, 0x89800989, 0x0d171a0d, + 0xbfda65bf, 0xe631d7e6, 0x42c68442, 0x68b8d068, + 0x41c38241, 0x99b02999, 0x2d775a2d, 0x0f111e0f, + 0xb0cb7bb0, 0x54fca854, 0xbbd66dbb, 0x163a2c16 +}; + +unsigned int T3[256] = { + 0x6363a5c6, 0x7c7c84f8, 0x777799ee, 0x7b7b8df6, + 0xf2f20dff, 0x6b6bbdd6, 0x6f6fb1de, 0xc5c55491, + 0x30305060, 0x01010302, 0x6767a9ce, 0x2b2b7d56, + 0xfefe19e7, 0xd7d762b5, 0xababe64d, 0x76769aec, + 0xcaca458f, 0x82829d1f, 0xc9c94089, 0x7d7d87fa, + 0xfafa15ef, 0x5959ebb2, 0x4747c98e, 0xf0f00bfb, + 0xadadec41, 0xd4d467b3, 0xa2a2fd5f, 0xafafea45, + 0x9c9cbf23, 0xa4a4f753, 0x727296e4, 0xc0c05b9b, + 0xb7b7c275, 0xfdfd1ce1, 0x9393ae3d, 0x26266a4c, + 0x36365a6c, 0x3f3f417e, 0xf7f702f5, 0xcccc4f83, + 0x34345c68, 0xa5a5f451, 0xe5e534d1, 0xf1f108f9, + 0x717193e2, 0xd8d873ab, 0x31315362, 0x15153f2a, + 0x04040c08, 0xc7c75295, 0x23236546, 0xc3c35e9d, + 0x18182830, 0x9696a137, 0x05050f0a, 0x9a9ab52f, + 0x0707090e, 0x12123624, 0x80809b1b, 0xe2e23ddf, + 0xebeb26cd, 0x2727694e, 0xb2b2cd7f, 0x75759fea, + 0x09091b12, 0x83839e1d, 0x2c2c7458, 0x1a1a2e34, + 0x1b1b2d36, 0x6e6eb2dc, 0x5a5aeeb4, 0xa0a0fb5b, + 0x5252f6a4, 0x3b3b4d76, 0xd6d661b7, 0xb3b3ce7d, + 0x29297b52, 0xe3e33edd, 0x2f2f715e, 0x84849713, + 0x5353f5a6, 0xd1d168b9, 0x00000000, 0xeded2cc1, + 0x20206040, 0xfcfc1fe3, 0xb1b1c879, 0x5b5bedb6, + 0x6a6abed4, 0xcbcb468d, 0xbebed967, 0x39394b72, + 0x4a4ade94, 0x4c4cd498, 0x5858e8b0, 0xcfcf4a85, + 0xd0d06bbb, 0xefef2ac5, 0xaaaae54f, 0xfbfb16ed, + 0x4343c586, 0x4d4dd79a, 0x33335566, 0x85859411, + 0x4545cf8a, 0xf9f910e9, 0x02020604, 0x7f7f81fe, + 0x5050f0a0, 0x3c3c4478, 0x9f9fba25, 0xa8a8e34b, + 0x5151f3a2, 0xa3a3fe5d, 0x4040c080, 0x8f8f8a05, + 0x9292ad3f, 0x9d9dbc21, 0x38384870, 0xf5f504f1, + 0xbcbcdf63, 0xb6b6c177, 0xdada75af, 0x21216342, + 0x10103020, 0xffff1ae5, 0xf3f30efd, 0xd2d26dbf, + 0xcdcd4c81, 0x0c0c1418, 0x13133526, 0xecec2fc3, + 0x5f5fe1be, 0x9797a235, 0x4444cc88, 0x1717392e, + 0xc4c45793, 0xa7a7f255, 0x7e7e82fc, 0x3d3d477a, + 0x6464acc8, 0x5d5de7ba, 0x19192b32, 0x737395e6, + 0x6060a0c0, 0x81819819, 0x4f4fd19e, 0xdcdc7fa3, + 0x22226644, 0x2a2a7e54, 0x9090ab3b, 0x8888830b, + 0x4646ca8c, 0xeeee29c7, 0xb8b8d36b, 0x14143c28, + 0xdede79a7, 0x5e5ee2bc, 0x0b0b1d16, 0xdbdb76ad, + 0xe0e03bdb, 0x32325664, 0x3a3a4e74, 0x0a0a1e14, + 0x4949db92, 0x06060a0c, 0x24246c48, 0x5c5ce4b8, + 0xc2c25d9f, 0xd3d36ebd, 0xacacef43, 0x6262a6c4, + 0x9191a839, 0x9595a431, 0xe4e437d3, 0x79798bf2, + 0xe7e732d5, 0xc8c8438b, 0x3737596e, 0x6d6db7da, + 0x8d8d8c01, 0xd5d564b1, 0x4e4ed29c, 0xa9a9e049, + 0x6c6cb4d8, 0x5656faac, 0xf4f407f3, 0xeaea25cf, + 0x6565afca, 0x7a7a8ef4, 0xaeaee947, 0x08081810, + 0xbabad56f, 0x787888f0, 0x25256f4a, 0x2e2e725c, + 0x1c1c2438, 0xa6a6f157, 0xb4b4c773, 0xc6c65197, + 0xe8e823cb, 0xdddd7ca1, 0x74749ce8, 0x1f1f213e, + 0x4b4bdd96, 0xbdbddc61, 0x8b8b860d, 0x8a8a850f, + 0x707090e0, 0x3e3e427c, 0xb5b5c471, 0x6666aacc, + 0x4848d890, 0x03030506, 0xf6f601f7, 0x0e0e121c, + 0x6161a3c2, 0x35355f6a, 0x5757f9ae, 0xb9b9d069, + 0x86869117, 0xc1c15899, 0x1d1d273a, 0x9e9eb927, + 0xe1e138d9, 0xf8f813eb, 0x9898b32b, 0x11113322, + 0x6969bbd2, 0xd9d970a9, 0x8e8e8907, 0x9494a733, + 0x9b9bb62d, 0x1e1e223c, 0x87879215, 0xe9e920c9, + 0xcece4987, 0x5555ffaa, 0x28287850, 0xdfdf7aa5, + 0x8c8c8f03, 0xa1a1f859, 0x89898009, 0x0d0d171a, + 0xbfbfda65, 0xe6e631d7, 0x4242c684, 0x6868b8d0, + 0x4141c382, 0x9999b029, 0x2d2d775a, 0x0f0f111e, + 0xb0b0cb7b, 0x5454fca8, 0xbbbbd66d, 0x16163a2c +}; + +#endif diff --git a/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table-le.h b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table-le.h new file mode 100644 index 0000000000000000000000000000000000000000..4af46ac940de808141a2f8d12a886503f4b9e240 --- /dev/null +++ b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table-le.h @@ -0,0 +1,274 @@ + +#ifndef __AES_TABLE_LE_H__ +#define __AES_TABLE_LE_H__ + +unsigned int T0[256] = { + 0xa56363c6, 0x847c7cf8, 0x997777ee, 0x8d7b7bf6, + 0x0df2f2ff, 0xbd6b6bd6, 0xb16f6fde, 0x54c5c591, + 0x50303060, 0x03010102, 0xa96767ce, 0x7d2b2b56, + 0x19fefee7, 0x62d7d7b5, 0xe6abab4d, 0x9a7676ec, + 0x45caca8f, 0x9d82821f, 0x40c9c989, 0x877d7dfa, + 0x15fafaef, 0xeb5959b2, 0xc947478e, 0x0bf0f0fb, + 0xecadad41, 0x67d4d4b3, 0xfda2a25f, 0xeaafaf45, + 0xbf9c9c23, 0xf7a4a453, 0x967272e4, 0x5bc0c09b, + 0xc2b7b775, 0x1cfdfde1, 0xae93933d, 0x6a26264c, + 0x5a36366c, 0x413f3f7e, 0x02f7f7f5, 0x4fcccc83, + 0x5c343468, 0xf4a5a551, 0x34e5e5d1, 0x08f1f1f9, + 0x937171e2, 0x73d8d8ab, 0x53313162, 0x3f15152a, + 0x0c040408, 0x52c7c795, 0x65232346, 0x5ec3c39d, + 0x28181830, 0xa1969637, 0x0f05050a, 0xb59a9a2f, + 0x0907070e, 0x36121224, 0x9b80801b, 0x3de2e2df, + 0x26ebebcd, 0x6927274e, 0xcdb2b27f, 0x9f7575ea, + 0x1b090912, 0x9e83831d, 0x742c2c58, 0x2e1a1a34, + 0x2d1b1b36, 0xb26e6edc, 0xee5a5ab4, 0xfba0a05b, + 0xf65252a4, 0x4d3b3b76, 0x61d6d6b7, 0xceb3b37d, + 0x7b292952, 0x3ee3e3dd, 0x712f2f5e, 0x97848413, + 0xf55353a6, 0x68d1d1b9, 0x00000000, 0x2cededc1, + 0x60202040, 0x1ffcfce3, 0xc8b1b179, 0xed5b5bb6, + 0xbe6a6ad4, 0x46cbcb8d, 0xd9bebe67, 0x4b393972, + 0xde4a4a94, 0xd44c4c98, 0xe85858b0, 0x4acfcf85, + 0x6bd0d0bb, 0x2aefefc5, 0xe5aaaa4f, 0x16fbfbed, + 0xc5434386, 0xd74d4d9a, 0x55333366, 0x94858511, + 0xcf45458a, 0x10f9f9e9, 0x06020204, 0x817f7ffe, + 0xf05050a0, 0x443c3c78, 0xba9f9f25, 0xe3a8a84b, + 0xf35151a2, 0xfea3a35d, 0xc0404080, 0x8a8f8f05, + 0xad92923f, 0xbc9d9d21, 0x48383870, 0x04f5f5f1, + 0xdfbcbc63, 0xc1b6b677, 0x75dadaaf, 0x63212142, + 0x30101020, 0x1affffe5, 0x0ef3f3fd, 0x6dd2d2bf, + 0x4ccdcd81, 0x140c0c18, 0x35131326, 0x2fececc3, + 0xe15f5fbe, 0xa2979735, 0xcc444488, 0x3917172e, + 0x57c4c493, 0xf2a7a755, 0x827e7efc, 0x473d3d7a, + 0xac6464c8, 0xe75d5dba, 0x2b191932, 0x957373e6, + 0xa06060c0, 0x98818119, 0xd14f4f9e, 0x7fdcdca3, + 0x66222244, 0x7e2a2a54, 0xab90903b, 0x8388880b, + 0xca46468c, 0x29eeeec7, 0xd3b8b86b, 0x3c141428, + 0x79dedea7, 0xe25e5ebc, 0x1d0b0b16, 0x76dbdbad, + 0x3be0e0db, 0x56323264, 0x4e3a3a74, 0x1e0a0a14, + 0xdb494992, 0x0a06060c, 0x6c242448, 0xe45c5cb8, + 0x5dc2c29f, 0x6ed3d3bd, 0xefacac43, 0xa66262c4, + 0xa8919139, 0xa4959531, 0x37e4e4d3, 0x8b7979f2, + 0x32e7e7d5, 0x43c8c88b, 0x5937376e, 0xb76d6dda, + 0x8c8d8d01, 0x64d5d5b1, 0xd24e4e9c, 0xe0a9a949, + 0xb46c6cd8, 0xfa5656ac, 0x07f4f4f3, 0x25eaeacf, + 0xaf6565ca, 0x8e7a7af4, 0xe9aeae47, 0x18080810, + 0xd5baba6f, 0x887878f0, 0x6f25254a, 0x722e2e5c, + 0x241c1c38, 0xf1a6a657, 0xc7b4b473, 0x51c6c697, + 0x23e8e8cb, 0x7cdddda1, 0x9c7474e8, 0x211f1f3e, + 0xdd4b4b96, 0xdcbdbd61, 0x868b8b0d, 0x858a8a0f, + 0x907070e0, 0x423e3e7c, 0xc4b5b571, 0xaa6666cc, + 0xd8484890, 0x05030306, 0x01f6f6f7, 0x120e0e1c, + 0xa36161c2, 0x5f35356a, 0xf95757ae, 0xd0b9b969, + 0x91868617, 0x58c1c199, 0x271d1d3a, 0xb99e9e27, + 0x38e1e1d9, 0x13f8f8eb, 0xb398982b, 0x33111122, + 0xbb6969d2, 0x70d9d9a9, 0x898e8e07, 0xa7949433, + 0xb69b9b2d, 0x221e1e3c, 0x92878715, 0x20e9e9c9, + 0x49cece87, 0xff5555aa, 0x78282850, 0x7adfdfa5, + 0x8f8c8c03, 0xf8a1a159, 0x80898909, 0x170d0d1a, + 0xdabfbf65, 0x31e6e6d7, 0xc6424284, 0xb86868d0, + 0xc3414182, 0xb0999929, 0x772d2d5a, 0x110f0f1e, + 0xcbb0b07b, 0xfc5454a8, 0xd6bbbb6d, 0x3a16162c +}; + + +unsigned int T1[256] = { + 0x6363c6a5, 0x7c7cf884, 0x7777ee99, 0x7b7bf68d, + 0xf2f2ff0d, 0x6b6bd6bd, 0x6f6fdeb1, 0xc5c59154, + 0x30306050, 0x01010203, 0x6767cea9, 0x2b2b567d, + 0xfefee719, 0xd7d7b562, 0xabab4de6, 0x7676ec9a, + 0xcaca8f45, 0x82821f9d, 0xc9c98940, 0x7d7dfa87, + 0xfafaef15, 0x5959b2eb, 0x47478ec9, 0xf0f0fb0b, + 0xadad41ec, 0xd4d4b367, 0xa2a25ffd, 0xafaf45ea, + 0x9c9c23bf, 0xa4a453f7, 0x7272e496, 0xc0c09b5b, + 0xb7b775c2, 0xfdfde11c, 0x93933dae, 0x26264c6a, + 0x36366c5a, 0x3f3f7e41, 0xf7f7f502, 0xcccc834f, + 0x3434685c, 0xa5a551f4, 0xe5e5d134, 0xf1f1f908, + 0x7171e293, 0xd8d8ab73, 0x31316253, 0x15152a3f, + 0x0404080c, 0xc7c79552, 0x23234665, 0xc3c39d5e, + 0x18183028, 0x969637a1, 0x05050a0f, 0x9a9a2fb5, + 0x07070e09, 0x12122436, 0x80801b9b, 0xe2e2df3d, + 0xebebcd26, 0x27274e69, 0xb2b27fcd, 0x7575ea9f, + 0x0909121b, 0x83831d9e, 0x2c2c5874, 0x1a1a342e, + 0x1b1b362d, 0x6e6edcb2, 0x5a5ab4ee, 0xa0a05bfb, + 0x5252a4f6, 0x3b3b764d, 0xd6d6b761, 0xb3b37dce, + 0x2929527b, 0xe3e3dd3e, 0x2f2f5e71, 0x84841397, + 0x5353a6f5, 0xd1d1b968, 0x00000000, 0xededc12c, + 0x20204060, 0xfcfce31f, 0xb1b179c8, 0x5b5bb6ed, + 0x6a6ad4be, 0xcbcb8d46, 0xbebe67d9, 0x3939724b, + 0x4a4a94de, 0x4c4c98d4, 0x5858b0e8, 0xcfcf854a, + 0xd0d0bb6b, 0xefefc52a, 0xaaaa4fe5, 0xfbfbed16, + 0x434386c5, 0x4d4d9ad7, 0x33336655, 0x85851194, + 0x45458acf, 0xf9f9e910, 0x02020406, 0x7f7ffe81, + 0x5050a0f0, 0x3c3c7844, 0x9f9f25ba, 0xa8a84be3, + 0x5151a2f3, 0xa3a35dfe, 0x404080c0, 0x8f8f058a, + 0x92923fad, 0x9d9d21bc, 0x38387048, 0xf5f5f104, + 0xbcbc63df, 0xb6b677c1, 0xdadaaf75, 0x21214263, + 0x10102030, 0xffffe51a, 0xf3f3fd0e, 0xd2d2bf6d, + 0xcdcd814c, 0x0c0c1814, 0x13132635, 0xececc32f, + 0x5f5fbee1, 0x979735a2, 0x444488cc, 0x17172e39, + 0xc4c49357, 0xa7a755f2, 0x7e7efc82, 0x3d3d7a47, + 0x6464c8ac, 0x5d5dbae7, 0x1919322b, 0x7373e695, + 0x6060c0a0, 0x81811998, 0x4f4f9ed1, 0xdcdca37f, + 0x22224466, 0x2a2a547e, 0x90903bab, 0x88880b83, + 0x46468cca, 0xeeeec729, 0xb8b86bd3, 0x1414283c, + 0xdedea779, 0x5e5ebce2, 0x0b0b161d, 0xdbdbad76, + 0xe0e0db3b, 0x32326456, 0x3a3a744e, 0x0a0a141e, + 0x494992db, 0x06060c0a, 0x2424486c, 0x5c5cb8e4, + 0xc2c29f5d, 0xd3d3bd6e, 0xacac43ef, 0x6262c4a6, + 0x919139a8, 0x959531a4, 0xe4e4d337, 0x7979f28b, + 0xe7e7d532, 0xc8c88b43, 0x37376e59, 0x6d6ddab7, + 0x8d8d018c, 0xd5d5b164, 0x4e4e9cd2, 0xa9a949e0, + 0x6c6cd8b4, 0x5656acfa, 0xf4f4f307, 0xeaeacf25, + 0x6565caaf, 0x7a7af48e, 0xaeae47e9, 0x08081018, + 0xbaba6fd5, 0x7878f088, 0x25254a6f, 0x2e2e5c72, + 0x1c1c3824, 0xa6a657f1, 0xb4b473c7, 0xc6c69751, + 0xe8e8cb23, 0xdddda17c, 0x7474e89c, 0x1f1f3e21, + 0x4b4b96dd, 0xbdbd61dc, 0x8b8b0d86, 0x8a8a0f85, + 0x7070e090, 0x3e3e7c42, 0xb5b571c4, 0x6666ccaa, + 0x484890d8, 0x03030605, 0xf6f6f701, 0x0e0e1c12, + 0x6161c2a3, 0x35356a5f, 0x5757aef9, 0xb9b969d0, + 0x86861791, 0xc1c19958, 0x1d1d3a27, 0x9e9e27b9, + 0xe1e1d938, 0xf8f8eb13, 0x98982bb3, 0x11112233, + 0x6969d2bb, 0xd9d9a970, 0x8e8e0789, 0x949433a7, + 0x9b9b2db6, 0x1e1e3c22, 0x87871592, 0xe9e9c920, + 0xcece8749, 0x5555aaff, 0x28285078, 0xdfdfa57a, + 0x8c8c038f, 0xa1a159f8, 0x89890980, 0x0d0d1a17, + 0xbfbf65da, 0xe6e6d731, 0x424284c6, 0x6868d0b8, + 0x414182c3, 0x999929b0, 0x2d2d5a77, 0x0f0f1e11, + 0xb0b07bcb, 0x5454a8fc, 0xbbbb6dd6, 0x16162c3a +}; + +unsigned int T2[256] = { + 0x63c6a563, 0x7cf8847c, 0x77ee9977, 0x7bf68d7b, + 0xf2ff0df2, 0x6bd6bd6b, 0x6fdeb16f, 0xc59154c5, + 0x30605030, 0x01020301, 0x67cea967, 0x2b567d2b, + 0xfee719fe, 0xd7b562d7, 0xab4de6ab, 0x76ec9a76, + 0xca8f45ca, 0x821f9d82, 0xc98940c9, 0x7dfa877d, + 0xfaef15fa, 0x59b2eb59, 0x478ec947, 0xf0fb0bf0, + 0xad41ecad, 0xd4b367d4, 0xa25ffda2, 0xaf45eaaf, + 0x9c23bf9c, 0xa453f7a4, 0x72e49672, 0xc09b5bc0, + 0xb775c2b7, 0xfde11cfd, 0x933dae93, 0x264c6a26, + 0x366c5a36, 0x3f7e413f, 0xf7f502f7, 0xcc834fcc, + 0x34685c34, 0xa551f4a5, 0xe5d134e5, 0xf1f908f1, + 0x71e29371, 0xd8ab73d8, 0x31625331, 0x152a3f15, + 0x04080c04, 0xc79552c7, 0x23466523, 0xc39d5ec3, + 0x18302818, 0x9637a196, 0x050a0f05, 0x9a2fb59a, + 0x070e0907, 0x12243612, 0x801b9b80, 0xe2df3de2, + 0xebcd26eb, 0x274e6927, 0xb27fcdb2, 0x75ea9f75, + 0x09121b09, 0x831d9e83, 0x2c58742c, 0x1a342e1a, + 0x1b362d1b, 0x6edcb26e, 0x5ab4ee5a, 0xa05bfba0, + 0x52a4f652, 0x3b764d3b, 0xd6b761d6, 0xb37dceb3, + 0x29527b29, 0xe3dd3ee3, 0x2f5e712f, 0x84139784, + 0x53a6f553, 0xd1b968d1, 0x00000000, 0xedc12ced, + 0x20406020, 0xfce31ffc, 0xb179c8b1, 0x5bb6ed5b, + 0x6ad4be6a, 0xcb8d46cb, 0xbe67d9be, 0x39724b39, + 0x4a94de4a, 0x4c98d44c, 0x58b0e858, 0xcf854acf, + 0xd0bb6bd0, 0xefc52aef, 0xaa4fe5aa, 0xfbed16fb, + 0x4386c543, 0x4d9ad74d, 0x33665533, 0x85119485, + 0x458acf45, 0xf9e910f9, 0x02040602, 0x7ffe817f, + 0x50a0f050, 0x3c78443c, 0x9f25ba9f, 0xa84be3a8, + 0x51a2f351, 0xa35dfea3, 0x4080c040, 0x8f058a8f, + 0x923fad92, 0x9d21bc9d, 0x38704838, 0xf5f104f5, + 0xbc63dfbc, 0xb677c1b6, 0xdaaf75da, 0x21426321, + 0x10203010, 0xffe51aff, 0xf3fd0ef3, 0xd2bf6dd2, + 0xcd814ccd, 0x0c18140c, 0x13263513, 0xecc32fec, + 0x5fbee15f, 0x9735a297, 0x4488cc44, 0x172e3917, + 0xc49357c4, 0xa755f2a7, 0x7efc827e, 0x3d7a473d, + 0x64c8ac64, 0x5dbae75d, 0x19322b19, 0x73e69573, + 0x60c0a060, 0x81199881, 0x4f9ed14f, 0xdca37fdc, + 0x22446622, 0x2a547e2a, 0x903bab90, 0x880b8388, + 0x468cca46, 0xeec729ee, 0xb86bd3b8, 0x14283c14, + 0xdea779de, 0x5ebce25e, 0x0b161d0b, 0xdbad76db, + 0xe0db3be0, 0x32645632, 0x3a744e3a, 0x0a141e0a, + 0x4992db49, 0x060c0a06, 0x24486c24, 0x5cb8e45c, + 0xc29f5dc2, 0xd3bd6ed3, 0xac43efac, 0x62c4a662, + 0x9139a891, 0x9531a495, 0xe4d337e4, 0x79f28b79, + 0xe7d532e7, 0xc88b43c8, 0x376e5937, 0x6ddab76d, + 0x8d018c8d, 0xd5b164d5, 0x4e9cd24e, 0xa949e0a9, + 0x6cd8b46c, 0x56acfa56, 0xf4f307f4, 0xeacf25ea, + 0x65caaf65, 0x7af48e7a, 0xae47e9ae, 0x08101808, + 0xba6fd5ba, 0x78f08878, 0x254a6f25, 0x2e5c722e, + 0x1c38241c, 0xa657f1a6, 0xb473c7b4, 0xc69751c6, + 0xe8cb23e8, 0xdda17cdd, 0x74e89c74, 0x1f3e211f, + 0x4b96dd4b, 0xbd61dcbd, 0x8b0d868b, 0x8a0f858a, + 0x70e09070, 0x3e7c423e, 0xb571c4b5, 0x66ccaa66, + 0x4890d848, 0x03060503, 0xf6f701f6, 0x0e1c120e, + 0x61c2a361, 0x356a5f35, 0x57aef957, 0xb969d0b9, + 0x86179186, 0xc19958c1, 0x1d3a271d, 0x9e27b99e, + 0xe1d938e1, 0xf8eb13f8, 0x982bb398, 0x11223311, + 0x69d2bb69, 0xd9a970d9, 0x8e07898e, 0x9433a794, + 0x9b2db69b, 0x1e3c221e, 0x87159287, 0xe9c920e9, + 0xce8749ce, 0x55aaff55, 0x28507828, 0xdfa57adf, + 0x8c038f8c, 0xa159f8a1, 0x89098089, 0x0d1a170d, + 0xbf65dabf, 0xe6d731e6, 0x4284c642, 0x68d0b868, + 0x4182c341, 0x9929b099, 0x2d5a772d, 0x0f1e110f, + 0xb07bcbb0, 0x54a8fc54, 0xbb6dd6bb, 0x162c3a16 +}; + +unsigned int T3[256] = { + 0xc6a56363, 0xf8847c7c, 0xee997777, 0xf68d7b7b, + 0xff0df2f2, 0xd6bd6b6b, 0xdeb16f6f, 0x9154c5c5, + 0x60503030, 0x02030101, 0xcea96767, 0x567d2b2b, + 0xe719fefe, 0xb562d7d7, 0x4de6abab, 0xec9a7676, + 0x8f45caca, 0x1f9d8282, 0x8940c9c9, 0xfa877d7d, + 0xef15fafa, 0xb2eb5959, 0x8ec94747, 0xfb0bf0f0, + 0x41ecadad, 0xb367d4d4, 0x5ffda2a2, 0x45eaafaf, + 0x23bf9c9c, 0x53f7a4a4, 0xe4967272, 0x9b5bc0c0, + 0x75c2b7b7, 0xe11cfdfd, 0x3dae9393, 0x4c6a2626, + 0x6c5a3636, 0x7e413f3f, 0xf502f7f7, 0x834fcccc, + 0x685c3434, 0x51f4a5a5, 0xd134e5e5, 0xf908f1f1, + 0xe2937171, 0xab73d8d8, 0x62533131, 0x2a3f1515, + 0x080c0404, 0x9552c7c7, 0x46652323, 0x9d5ec3c3, + 0x30281818, 0x37a19696, 0x0a0f0505, 0x2fb59a9a, + 0x0e090707, 0x24361212, 0x1b9b8080, 0xdf3de2e2, + 0xcd26ebeb, 0x4e692727, 0x7fcdb2b2, 0xea9f7575, + 0x121b0909, 0x1d9e8383, 0x58742c2c, 0x342e1a1a, + 0x362d1b1b, 0xdcb26e6e, 0xb4ee5a5a, 0x5bfba0a0, + 0xa4f65252, 0x764d3b3b, 0xb761d6d6, 0x7dceb3b3, + 0x527b2929, 0xdd3ee3e3, 0x5e712f2f, 0x13978484, + 0xa6f55353, 0xb968d1d1, 0x00000000, 0xc12ceded, + 0x40602020, 0xe31ffcfc, 0x79c8b1b1, 0xb6ed5b5b, + 0xd4be6a6a, 0x8d46cbcb, 0x67d9bebe, 0x724b3939, + 0x94de4a4a, 0x98d44c4c, 0xb0e85858, 0x854acfcf, + 0xbb6bd0d0, 0xc52aefef, 0x4fe5aaaa, 0xed16fbfb, + 0x86c54343, 0x9ad74d4d, 0x66553333, 0x11948585, + 0x8acf4545, 0xe910f9f9, 0x04060202, 0xfe817f7f, + 0xa0f05050, 0x78443c3c, 0x25ba9f9f, 0x4be3a8a8, + 0xa2f35151, 0x5dfea3a3, 0x80c04040, 0x058a8f8f, + 0x3fad9292, 0x21bc9d9d, 0x70483838, 0xf104f5f5, + 0x63dfbcbc, 0x77c1b6b6, 0xaf75dada, 0x42632121, + 0x20301010, 0xe51affff, 0xfd0ef3f3, 0xbf6dd2d2, + 0x814ccdcd, 0x18140c0c, 0x26351313, 0xc32fecec, + 0xbee15f5f, 0x35a29797, 0x88cc4444, 0x2e391717, + 0x9357c4c4, 0x55f2a7a7, 0xfc827e7e, 0x7a473d3d, + 0xc8ac6464, 0xbae75d5d, 0x322b1919, 0xe6957373, + 0xc0a06060, 0x19988181, 0x9ed14f4f, 0xa37fdcdc, + 0x44662222, 0x547e2a2a, 0x3bab9090, 0x0b838888, + 0x8cca4646, 0xc729eeee, 0x6bd3b8b8, 0x283c1414, + 0xa779dede, 0xbce25e5e, 0x161d0b0b, 0xad76dbdb, + 0xdb3be0e0, 0x64563232, 0x744e3a3a, 0x141e0a0a, + 0x92db4949, 0x0c0a0606, 0x486c2424, 0xb8e45c5c, + 0x9f5dc2c2, 0xbd6ed3d3, 0x43efacac, 0xc4a66262, + 0x39a89191, 0x31a49595, 0xd337e4e4, 0xf28b7979, + 0xd532e7e7, 0x8b43c8c8, 0x6e593737, 0xdab76d6d, + 0x018c8d8d, 0xb164d5d5, 0x9cd24e4e, 0x49e0a9a9, + 0xd8b46c6c, 0xacfa5656, 0xf307f4f4, 0xcf25eaea, + 0xcaaf6565, 0xf48e7a7a, 0x47e9aeae, 0x10180808, + 0x6fd5baba, 0xf0887878, 0x4a6f2525, 0x5c722e2e, + 0x38241c1c, 0x57f1a6a6, 0x73c7b4b4, 0x9751c6c6, + 0xcb23e8e8, 0xa17cdddd, 0xe89c7474, 0x3e211f1f, + 0x96dd4b4b, 0x61dcbdbd, 0x0d868b8b, 0x0f858a8a, + 0xe0907070, 0x7c423e3e, 0x71c4b5b5, 0xccaa6666, + 0x90d84848, 0x06050303, 0xf701f6f6, 0x1c120e0e, + 0xc2a36161, 0x6a5f3535, 0xaef95757, 0x69d0b9b9, + 0x17918686, 0x9958c1c1, 0x3a271d1d, 0x27b99e9e, + 0xd938e1e1, 0xeb13f8f8, 0x2bb39898, 0x22331111, + 0xd2bb6969, 0xa970d9d9, 0x07898e8e, 0x33a79494, + 0x2db69b9b, 0x3c221e1e, 0x15928787, 0xc920e9e9, + 0x8749cece, 0xaaff5555, 0x50782828, 0xa57adfdf, + 0x038f8c8c, 0x59f8a1a1, 0x09808989, 0x1a170d0d, + 0x65dabfbf, 0xd731e6e6, 0x84c64242, 0xd0b86868, + 0x82c34141, 0x29b09999, 0x5a772d2d, 0x1e110f0f, + 0x7bcbb0b0, 0xa8fc5454, 0x6dd6bbbb, 0x2c3a1616 +}; + +#endif diff --git a/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table.h b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table.h index 827e9330d3eb55b4234200f9a05efbc30fbcea0a..913a10bc81b9f08ce83195cbbd19ed40f0bc44ad 100644 --- a/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table.h +++ b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes-table.h @@ -1,3 +1,15 @@ + +#ifndef __AES_TABLE_H__ +#define __AES_TABLE_H__ + +#ifdef NATIVE_LITTLE_ENDIAN +# include "aes-table-le.h" +#elif defined(NATIVE_BIG_ENDIAN) +# include "aes-table-be.h" +#else +# error Unsupported byte ordering +#endif + static const unsigned char Rcon[31] = { 0x0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, @@ -41,269 +53,4 @@ static const unsigned char Sbox[256] = { 0x9b, 0x1e, 0x87, 0xe9, 0xce, 0x55, 0x28, 0xdf, 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16}; - -unsigned int T0[256] = { -0xa56363c6, 0x847c7cf8, 0x997777ee, 0x8d7b7bf6, -0xdf2f2ff, 0xbd6b6bd6, 0xb16f6fde, 0x54c5c591, -0x50303060, 0x3010102, 0xa96767ce, 0x7d2b2b56, -0x19fefee7, 0x62d7d7b5, 0xe6abab4d, 0x9a7676ec, -0x45caca8f, 0x9d82821f, 0x40c9c989, 0x877d7dfa, -0x15fafaef, 0xeb5959b2, 0xc947478e, 0xbf0f0fb, -0xecadad41, 0x67d4d4b3, 0xfda2a25f, 0xeaafaf45, -0xbf9c9c23, 0xf7a4a453, 0x967272e4, 0x5bc0c09b, -0xc2b7b775, 0x1cfdfde1, 0xae93933d, 0x6a26264c, -0x5a36366c, 0x413f3f7e, 0x2f7f7f5, 0x4fcccc83, -0x5c343468, 0xf4a5a551, 0x34e5e5d1, 0x8f1f1f9, -0x937171e2, 0x73d8d8ab, 0x53313162, 0x3f15152a, -0xc040408, 0x52c7c795, 0x65232346, 0x5ec3c39d, -0x28181830, 0xa1969637, 0xf05050a, 0xb59a9a2f, -0x907070e, 0x36121224, 0x9b80801b, 0x3de2e2df, -0x26ebebcd, 0x6927274e, 0xcdb2b27f, 0x9f7575ea, -0x1b090912, 0x9e83831d, 0x742c2c58, 0x2e1a1a34, -0x2d1b1b36, 0xb26e6edc, 0xee5a5ab4, 0xfba0a05b, -0xf65252a4, 0x4d3b3b76, 0x61d6d6b7, 0xceb3b37d, -0x7b292952, 0x3ee3e3dd, 0x712f2f5e, 0x97848413, -0xf55353a6, 0x68d1d1b9, 0x0, 0x2cededc1, -0x60202040, 0x1ffcfce3, 0xc8b1b179, 0xed5b5bb6, -0xbe6a6ad4, 0x46cbcb8d, 0xd9bebe67, 0x4b393972, -0xde4a4a94, 0xd44c4c98, 0xe85858b0, 0x4acfcf85, -0x6bd0d0bb, 0x2aefefc5, 0xe5aaaa4f, 0x16fbfbed, -0xc5434386, 0xd74d4d9a, 0x55333366, 0x94858511, -0xcf45458a, 0x10f9f9e9, 0x6020204, 0x817f7ffe, -0xf05050a0, 0x443c3c78, 0xba9f9f25, 0xe3a8a84b, -0xf35151a2, 0xfea3a35d, 0xc0404080, 0x8a8f8f05, -0xad92923f, 0xbc9d9d21, 0x48383870, 0x4f5f5f1, -0xdfbcbc63, 0xc1b6b677, 0x75dadaaf, 0x63212142, -0x30101020, 0x1affffe5, 0xef3f3fd, 0x6dd2d2bf, -0x4ccdcd81, 0x140c0c18, 0x35131326, 0x2fececc3, -0xe15f5fbe, 0xa2979735, 0xcc444488, 0x3917172e, -0x57c4c493, 0xf2a7a755, 0x827e7efc, 0x473d3d7a, -0xac6464c8, 0xe75d5dba, 0x2b191932, 0x957373e6, -0xa06060c0, 0x98818119, 0xd14f4f9e, 0x7fdcdca3, -0x66222244, 0x7e2a2a54, 0xab90903b, 0x8388880b, -0xca46468c, 0x29eeeec7, 0xd3b8b86b, 0x3c141428, -0x79dedea7, 0xe25e5ebc, 0x1d0b0b16, 0x76dbdbad, -0x3be0e0db, 0x56323264, 0x4e3a3a74, 0x1e0a0a14, -0xdb494992, 0xa06060c, 0x6c242448, 0xe45c5cb8, -0x5dc2c29f, 0x6ed3d3bd, 0xefacac43, 0xa66262c4, -0xa8919139, 0xa4959531, 0x37e4e4d3, 0x8b7979f2, -0x32e7e7d5, 0x43c8c88b, 0x5937376e, 0xb76d6dda, -0x8c8d8d01, 0x64d5d5b1, 0xd24e4e9c, 0xe0a9a949, -0xb46c6cd8, 0xfa5656ac, 0x7f4f4f3, 0x25eaeacf, -0xaf6565ca, 0x8e7a7af4, 0xe9aeae47, 0x18080810, -0xd5baba6f, 0x887878f0, 0x6f25254a, 0x722e2e5c, -0x241c1c38, 0xf1a6a657, 0xc7b4b473, 0x51c6c697, -0x23e8e8cb, 0x7cdddda1, 0x9c7474e8, 0x211f1f3e, -0xdd4b4b96, 0xdcbdbd61, 0x868b8b0d, 0x858a8a0f, -0x907070e0, 0x423e3e7c, 0xc4b5b571, 0xaa6666cc, -0xd8484890, 0x5030306, 0x1f6f6f7, 0x120e0e1c, -0xa36161c2, 0x5f35356a, 0xf95757ae, 0xd0b9b969, -0x91868617, 0x58c1c199, 0x271d1d3a, 0xb99e9e27, -0x38e1e1d9, 0x13f8f8eb, 0xb398982b, 0x33111122, -0xbb6969d2, 0x70d9d9a9, 0x898e8e07, 0xa7949433, -0xb69b9b2d, 0x221e1e3c, 0x92878715, 0x20e9e9c9, -0x49cece87, 0xff5555aa, 0x78282850, 0x7adfdfa5, -0x8f8c8c03, 0xf8a1a159, 0x80898909, 0x170d0d1a, -0xdabfbf65, 0x31e6e6d7, 0xc6424284, 0xb86868d0, -0xc3414182, 0xb0999929, 0x772d2d5a, 0x110f0f1e, -0xcbb0b07b, 0xfc5454a8, 0xd6bbbb6d, 0x3a16162c}; - - -unsigned int T1[256] = { -0x6363c6a5, 0x7c7cf884, 0x7777ee99, 0x7b7bf68d, -0xf2f2ff0d, 0x6b6bd6bd, 0x6f6fdeb1, 0xc5c59154, -0x30306050, 0x1010203, 0x6767cea9, 0x2b2b567d, -0xfefee719, 0xd7d7b562, 0xabab4de6, 0x7676ec9a, -0xcaca8f45, 0x82821f9d, 0xc9c98940, 0x7d7dfa87, -0xfafaef15, 0x5959b2eb, 0x47478ec9, 0xf0f0fb0b, -0xadad41ec, 0xd4d4b367, 0xa2a25ffd, 0xafaf45ea, -0x9c9c23bf, 0xa4a453f7, 0x7272e496, 0xc0c09b5b, -0xb7b775c2, 0xfdfde11c, 0x93933dae, 0x26264c6a, -0x36366c5a, 0x3f3f7e41, 0xf7f7f502, 0xcccc834f, -0x3434685c, 0xa5a551f4, 0xe5e5d134, 0xf1f1f908, -0x7171e293, 0xd8d8ab73, 0x31316253, 0x15152a3f, -0x404080c, 0xc7c79552, 0x23234665, 0xc3c39d5e, -0x18183028, 0x969637a1, 0x5050a0f, 0x9a9a2fb5, -0x7070e09, 0x12122436, 0x80801b9b, 0xe2e2df3d, -0xebebcd26, 0x27274e69, 0xb2b27fcd, 0x7575ea9f, -0x909121b, 0x83831d9e, 0x2c2c5874, 0x1a1a342e, -0x1b1b362d, 0x6e6edcb2, 0x5a5ab4ee, 0xa0a05bfb, -0x5252a4f6, 0x3b3b764d, 0xd6d6b761, 0xb3b37dce, -0x2929527b, 0xe3e3dd3e, 0x2f2f5e71, 0x84841397, -0x5353a6f5, 0xd1d1b968, 0x0, 0xededc12c, -0x20204060, 0xfcfce31f, 0xb1b179c8, 0x5b5bb6ed, -0x6a6ad4be, 0xcbcb8d46, 0xbebe67d9, 0x3939724b, -0x4a4a94de, 0x4c4c98d4, 0x5858b0e8, 0xcfcf854a, -0xd0d0bb6b, 0xefefc52a, 0xaaaa4fe5, 0xfbfbed16, -0x434386c5, 0x4d4d9ad7, 0x33336655, 0x85851194, -0x45458acf, 0xf9f9e910, 0x2020406, 0x7f7ffe81, -0x5050a0f0, 0x3c3c7844, 0x9f9f25ba, 0xa8a84be3, -0x5151a2f3, 0xa3a35dfe, 0x404080c0, 0x8f8f058a, -0x92923fad, 0x9d9d21bc, 0x38387048, 0xf5f5f104, -0xbcbc63df, 0xb6b677c1, 0xdadaaf75, 0x21214263, -0x10102030, 0xffffe51a, 0xf3f3fd0e, 0xd2d2bf6d, -0xcdcd814c, 0xc0c1814, 0x13132635, 0xececc32f, -0x5f5fbee1, 0x979735a2, 0x444488cc, 0x17172e39, -0xc4c49357, 0xa7a755f2, 0x7e7efc82, 0x3d3d7a47, -0x6464c8ac, 0x5d5dbae7, 0x1919322b, 0x7373e695, -0x6060c0a0, 0x81811998, 0x4f4f9ed1, 0xdcdca37f, -0x22224466, 0x2a2a547e, 0x90903bab, 0x88880b83, -0x46468cca, 0xeeeec729, 0xb8b86bd3, 0x1414283c, -0xdedea779, 0x5e5ebce2, 0xb0b161d, 0xdbdbad76, -0xe0e0db3b, 0x32326456, 0x3a3a744e, 0xa0a141e, -0x494992db, 0x6060c0a, 0x2424486c, 0x5c5cb8e4, -0xc2c29f5d, 0xd3d3bd6e, 0xacac43ef, 0x6262c4a6, -0x919139a8, 0x959531a4, 0xe4e4d337, 0x7979f28b, -0xe7e7d532, 0xc8c88b43, 0x37376e59, 0x6d6ddab7, -0x8d8d018c, 0xd5d5b164, 0x4e4e9cd2, 0xa9a949e0, -0x6c6cd8b4, 0x5656acfa, 0xf4f4f307, 0xeaeacf25, -0x6565caaf, 0x7a7af48e, 0xaeae47e9, 0x8081018, -0xbaba6fd5, 0x7878f088, 0x25254a6f, 0x2e2e5c72, -0x1c1c3824, 0xa6a657f1, 0xb4b473c7, 0xc6c69751, -0xe8e8cb23, 0xdddda17c, 0x7474e89c, 0x1f1f3e21, -0x4b4b96dd, 0xbdbd61dc, 0x8b8b0d86, 0x8a8a0f85, -0x7070e090, 0x3e3e7c42, 0xb5b571c4, 0x6666ccaa, -0x484890d8, 0x3030605, 0xf6f6f701, 0xe0e1c12, -0x6161c2a3, 0x35356a5f, 0x5757aef9, 0xb9b969d0, -0x86861791, 0xc1c19958, 0x1d1d3a27, 0x9e9e27b9, -0xe1e1d938, 0xf8f8eb13, 0x98982bb3, 0x11112233, -0x6969d2bb, 0xd9d9a970, 0x8e8e0789, 0x949433a7, -0x9b9b2db6, 0x1e1e3c22, 0x87871592, 0xe9e9c920, -0xcece8749, 0x5555aaff, 0x28285078, 0xdfdfa57a, -0x8c8c038f, 0xa1a159f8, 0x89890980, 0xd0d1a17, -0xbfbf65da, 0xe6e6d731, 0x424284c6, 0x6868d0b8, -0x414182c3, 0x999929b0, 0x2d2d5a77, 0xf0f1e11, -0xb0b07bcb, 0x5454a8fc, 0xbbbb6dd6, 0x16162c3a}; - -unsigned int T2[256] = { -0x63c6a563, 0x7cf8847c, 0x77ee9977, 0x7bf68d7b, -0xf2ff0df2, 0x6bd6bd6b, 0x6fdeb16f, 0xc59154c5, -0x30605030, 0x1020301, 0x67cea967, 0x2b567d2b, -0xfee719fe, 0xd7b562d7, 0xab4de6ab, 0x76ec9a76, -0xca8f45ca, 0x821f9d82, 0xc98940c9, 0x7dfa877d, -0xfaef15fa, 0x59b2eb59, 0x478ec947, 0xf0fb0bf0, -0xad41ecad, 0xd4b367d4, 0xa25ffda2, 0xaf45eaaf, -0x9c23bf9c, 0xa453f7a4, 0x72e49672, 0xc09b5bc0, -0xb775c2b7, 0xfde11cfd, 0x933dae93, 0x264c6a26, -0x366c5a36, 0x3f7e413f, 0xf7f502f7, 0xcc834fcc, -0x34685c34, 0xa551f4a5, 0xe5d134e5, 0xf1f908f1, -0x71e29371, 0xd8ab73d8, 0x31625331, 0x152a3f15, -0x4080c04, 0xc79552c7, 0x23466523, 0xc39d5ec3, -0x18302818, 0x9637a196, 0x50a0f05, 0x9a2fb59a, -0x70e0907, 0x12243612, 0x801b9b80, 0xe2df3de2, -0xebcd26eb, 0x274e6927, 0xb27fcdb2, 0x75ea9f75, -0x9121b09, 0x831d9e83, 0x2c58742c, 0x1a342e1a, -0x1b362d1b, 0x6edcb26e, 0x5ab4ee5a, 0xa05bfba0, -0x52a4f652, 0x3b764d3b, 0xd6b761d6, 0xb37dceb3, -0x29527b29, 0xe3dd3ee3, 0x2f5e712f, 0x84139784, -0x53a6f553, 0xd1b968d1, 0x0, 0xedc12ced, -0x20406020, 0xfce31ffc, 0xb179c8b1, 0x5bb6ed5b, -0x6ad4be6a, 0xcb8d46cb, 0xbe67d9be, 0x39724b39, -0x4a94de4a, 0x4c98d44c, 0x58b0e858, 0xcf854acf, -0xd0bb6bd0, 0xefc52aef, 0xaa4fe5aa, 0xfbed16fb, -0x4386c543, 0x4d9ad74d, 0x33665533, 0x85119485, -0x458acf45, 0xf9e910f9, 0x2040602, 0x7ffe817f, -0x50a0f050, 0x3c78443c, 0x9f25ba9f, 0xa84be3a8, -0x51a2f351, 0xa35dfea3, 0x4080c040, 0x8f058a8f, -0x923fad92, 0x9d21bc9d, 0x38704838, 0xf5f104f5, -0xbc63dfbc, 0xb677c1b6, 0xdaaf75da, 0x21426321, -0x10203010, 0xffe51aff, 0xf3fd0ef3, 0xd2bf6dd2, -0xcd814ccd, 0xc18140c, 0x13263513, 0xecc32fec, -0x5fbee15f, 0x9735a297, 0x4488cc44, 0x172e3917, -0xc49357c4, 0xa755f2a7, 0x7efc827e, 0x3d7a473d, -0x64c8ac64, 0x5dbae75d, 0x19322b19, 0x73e69573, -0x60c0a060, 0x81199881, 0x4f9ed14f, 0xdca37fdc, -0x22446622, 0x2a547e2a, 0x903bab90, 0x880b8388, -0x468cca46, 0xeec729ee, 0xb86bd3b8, 0x14283c14, -0xdea779de, 0x5ebce25e, 0xb161d0b, 0xdbad76db, -0xe0db3be0, 0x32645632, 0x3a744e3a, 0xa141e0a, -0x4992db49, 0x60c0a06, 0x24486c24, 0x5cb8e45c, -0xc29f5dc2, 0xd3bd6ed3, 0xac43efac, 0x62c4a662, -0x9139a891, 0x9531a495, 0xe4d337e4, 0x79f28b79, -0xe7d532e7, 0xc88b43c8, 0x376e5937, 0x6ddab76d, -0x8d018c8d, 0xd5b164d5, 0x4e9cd24e, 0xa949e0a9, -0x6cd8b46c, 0x56acfa56, 0xf4f307f4, 0xeacf25ea, -0x65caaf65, 0x7af48e7a, 0xae47e9ae, 0x8101808, -0xba6fd5ba, 0x78f08878, 0x254a6f25, 0x2e5c722e, -0x1c38241c, 0xa657f1a6, 0xb473c7b4, 0xc69751c6, -0xe8cb23e8, 0xdda17cdd, 0x74e89c74, 0x1f3e211f, -0x4b96dd4b, 0xbd61dcbd, 0x8b0d868b, 0x8a0f858a, -0x70e09070, 0x3e7c423e, 0xb571c4b5, 0x66ccaa66, -0x4890d848, 0x3060503, 0xf6f701f6, 0xe1c120e, -0x61c2a361, 0x356a5f35, 0x57aef957, 0xb969d0b9, -0x86179186, 0xc19958c1, 0x1d3a271d, 0x9e27b99e, -0xe1d938e1, 0xf8eb13f8, 0x982bb398, 0x11223311, -0x69d2bb69, 0xd9a970d9, 0x8e07898e, 0x9433a794, -0x9b2db69b, 0x1e3c221e, 0x87159287, 0xe9c920e9, -0xce8749ce, 0x55aaff55, 0x28507828, 0xdfa57adf, -0x8c038f8c, 0xa159f8a1, 0x89098089, 0xd1a170d, -0xbf65dabf, 0xe6d731e6, 0x4284c642, 0x68d0b868, -0x4182c341, 0x9929b099, 0x2d5a772d, 0xf1e110f, -0xb07bcbb0, 0x54a8fc54, 0xbb6dd6bb, 0x162c3a16}; - -unsigned int T3[256] = { -0xc6a56363, 0xf8847c7c, 0xee997777, 0xf68d7b7b, -0xff0df2f2, 0xd6bd6b6b, 0xdeb16f6f, 0x9154c5c5, -0x60503030, 0x2030101, 0xcea96767, 0x567d2b2b, -0xe719fefe, 0xb562d7d7, 0x4de6abab, 0xec9a7676, -0x8f45caca, 0x1f9d8282, 0x8940c9c9, 0xfa877d7d, -0xef15fafa, 0xb2eb5959, 0x8ec94747, 0xfb0bf0f0, -0x41ecadad, 0xb367d4d4, 0x5ffda2a2, 0x45eaafaf, -0x23bf9c9c, 0x53f7a4a4, 0xe4967272, 0x9b5bc0c0, -0x75c2b7b7, 0xe11cfdfd, 0x3dae9393, 0x4c6a2626, -0x6c5a3636, 0x7e413f3f, 0xf502f7f7, 0x834fcccc, -0x685c3434, 0x51f4a5a5, 0xd134e5e5, 0xf908f1f1, -0xe2937171, 0xab73d8d8, 0x62533131, 0x2a3f1515, -0x80c0404, 0x9552c7c7, 0x46652323, 0x9d5ec3c3, -0x30281818, 0x37a19696, 0xa0f0505, 0x2fb59a9a, -0xe090707, 0x24361212, 0x1b9b8080, 0xdf3de2e2, -0xcd26ebeb, 0x4e692727, 0x7fcdb2b2, 0xea9f7575, -0x121b0909, 0x1d9e8383, 0x58742c2c, 0x342e1a1a, -0x362d1b1b, 0xdcb26e6e, 0xb4ee5a5a, 0x5bfba0a0, -0xa4f65252, 0x764d3b3b, 0xb761d6d6, 0x7dceb3b3, -0x527b2929, 0xdd3ee3e3, 0x5e712f2f, 0x13978484, -0xa6f55353, 0xb968d1d1, 0x0, 0xc12ceded, -0x40602020, 0xe31ffcfc, 0x79c8b1b1, 0xb6ed5b5b, -0xd4be6a6a, 0x8d46cbcb, 0x67d9bebe, 0x724b3939, -0x94de4a4a, 0x98d44c4c, 0xb0e85858, 0x854acfcf, -0xbb6bd0d0, 0xc52aefef, 0x4fe5aaaa, 0xed16fbfb, -0x86c54343, 0x9ad74d4d, 0x66553333, 0x11948585, -0x8acf4545, 0xe910f9f9, 0x4060202, 0xfe817f7f, -0xa0f05050, 0x78443c3c, 0x25ba9f9f, 0x4be3a8a8, -0xa2f35151, 0x5dfea3a3, 0x80c04040, 0x58a8f8f, -0x3fad9292, 0x21bc9d9d, 0x70483838, 0xf104f5f5, -0x63dfbcbc, 0x77c1b6b6, 0xaf75dada, 0x42632121, -0x20301010, 0xe51affff, 0xfd0ef3f3, 0xbf6dd2d2, -0x814ccdcd, 0x18140c0c, 0x26351313, 0xc32fecec, -0xbee15f5f, 0x35a29797, 0x88cc4444, 0x2e391717, -0x9357c4c4, 0x55f2a7a7, 0xfc827e7e, 0x7a473d3d, -0xc8ac6464, 0xbae75d5d, 0x322b1919, 0xe6957373, -0xc0a06060, 0x19988181, 0x9ed14f4f, 0xa37fdcdc, -0x44662222, 0x547e2a2a, 0x3bab9090, 0xb838888, -0x8cca4646, 0xc729eeee, 0x6bd3b8b8, 0x283c1414, -0xa779dede, 0xbce25e5e, 0x161d0b0b, 0xad76dbdb, -0xdb3be0e0, 0x64563232, 0x744e3a3a, 0x141e0a0a, -0x92db4949, 0xc0a0606, 0x486c2424, 0xb8e45c5c, -0x9f5dc2c2, 0xbd6ed3d3, 0x43efacac, 0xc4a66262, -0x39a89191, 0x31a49595, 0xd337e4e4, 0xf28b7979, -0xd532e7e7, 0x8b43c8c8, 0x6e593737, 0xdab76d6d, -0x18c8d8d, 0xb164d5d5, 0x9cd24e4e, 0x49e0a9a9, -0xd8b46c6c, 0xacfa5656, 0xf307f4f4, 0xcf25eaea, -0xcaaf6565, 0xf48e7a7a, 0x47e9aeae, 0x10180808, -0x6fd5baba, 0xf0887878, 0x4a6f2525, 0x5c722e2e, -0x38241c1c, 0x57f1a6a6, 0x73c7b4b4, 0x9751c6c6, -0xcb23e8e8, 0xa17cdddd, 0xe89c7474, 0x3e211f1f, -0x96dd4b4b, 0x61dcbdbd, 0xd868b8b, 0xf858a8a, -0xe0907070, 0x7c423e3e, 0x71c4b5b5, 0xccaa6666, -0x90d84848, 0x6050303, 0xf701f6f6, 0x1c120e0e, -0xc2a36161, 0x6a5f3535, 0xaef95757, 0x69d0b9b9, -0x17918686, 0x9958c1c1, 0x3a271d1d, 0x27b99e9e, -0xd938e1e1, 0xeb13f8f8, 0x2bb39898, 0x22331111, -0xd2bb6969, 0xa970d9d9, 0x7898e8e, 0x33a79494, -0x2db69b9b, 0x3c221e1e, 0x15928787, 0xc920e9e9, -0x8749cece, 0xaaff5555, 0x50782828, 0xa57adfdf, -0x38f8c8c, 0x59f8a1a1, 0x9808989, 0x1a170d0d, -0x65dabfbf, 0xd731e6e6, 0x84c64242, 0xd0b86868, -0x82c34141, 0x29b09999, 0x5a772d2d, 0x1e110f0f, -0x7bcbb0b0, 0xa8fc5454, 0x6dd6bbbb, 0x2c3a1616}; - +#endif diff --git a/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes256-ctr.c b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes256-ctr.c index 4259ac35d93c4b9275351dbac9c6cc8b8fcf50ac..4983a1724cd4630160f716c67e6826bb6d9ba14f 100644 --- a/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes256-ctr.c +++ b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes256-ctr.c @@ -78,7 +78,7 @@ ECRYPT_keysetup(ECRYPT_ctx* ctx, const u8* key, u32 keysize, u32 ivsize) for (i = 0; i <= Nr; i++) { for (j = 0; j < Nb; j++) { - ctx->round_key[i][j] = w[(i<<2)+j]; + ctx->round_key[i][j] = SWP32(w[(i<<2)+j]); } } } @@ -104,7 +104,7 @@ partial_precompute_tworounds(ECRYPT_ctx* ctx) x1 = ctx->counter[1] ^ ctx->round_key[0][1]; x2 = ctx->counter[2] ^ ctx->round_key[0][2]; x3 = ctx->counter[3] ^ ctx->round_key[0][3]; - x0 &= 0xffffff00; + x0 &= SWP32(0xffffff00); round(ctx,x0,x1,x2,x3,y0,y1,y2,y3,1); ctx->first_round_output_x0 = y0 ^ T0[0]; y0 = 0; @@ -151,9 +151,9 @@ ECRYPT_process_bytes(int action, ECRYPT_ctx* ctx, const u8* input, u8* output, ((u32*)output)[2] = UNALIGNED_U32_READ(input, 2) ^ ((u32*)keystream)[2] ^ ctx->round_key[Nr][2]; ((u32*)output)[3] = UNALIGNED_U32_READ(input, 3) ^ ((u32*)keystream)[3] ^ ctx->round_key[Nr][3]; - ctx->counter[0]++; + ctx->counter[0] = SWP32(SWP32(ctx->counter[0]) + 1); - if ((ctx->counter[0] & 0xff)== 0) { + if ((ctx->counter[0] & SWP32(0xff))== 0) { partial_precompute_tworounds(ctx); } } diff --git a/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes256.h b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes256.h index 9b54f2476dcf9598ef2a00eb3d2abf477320a28e..d562b1d506f3a699d94dc4304149ed8874e532bc 100644 --- a/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes256.h +++ b/src/libsodium/src/libsodium/crypto_stream/aes256estream/hongjun/aes256.h @@ -7,27 +7,40 @@ #include <stdio.h> +#ifdef NATIVE_LITTLE_ENDIAN +# define LEROT(X, S) ((uint8_t) ((uint32_t)(X) >> (S))) +# define SWP32(X) (X) +#elif defined(NATIVE_BIG_ENDIAN) +# define LEROT(X, S) ((uint8_t) ((uint32_t)(X) >> (24 - (S)))) +# define SWP32(X) ((uint32_t)((((uint32_t)(X) & 0xff000000) >> 24) | \ + (((uint32_t)(X) & 0x00ff0000) >> 8) | \ + (((uint32_t)(X) & 0x0000ff00) << 8) | \ + (((uint32_t)(X) & 0x000000ff) << 24))) +#else +# error Unsupported byte ordering +#endif + #define first_round(ctx,x0,y0) { \ u32 z0,t0,tem0; \ z0 = (x0) ^ ctx->round_key[0][0]; \ - t0 = (u8) z0; \ + t0 = LEROT(z0, 0); \ tem0 = T0[t0]; \ - (y0) = tem0 ^ ctx->first_round_output_x0; \ + (y0) = tem0 ^ ctx->first_round_output_x0; \ } #define second_round(ctx,x0,y0,y1,y2,y3) { \ u32 t0,t7,t10,t13; \ u32 tem0,tem7,tem10,tem13; \ - t0 = (u8)(x0); \ + t0 = LEROT(x0, 0); \ tem0 = T0[t0]; \ (y0) = tem0 ^ ctx->second_round_output[0]; \ - t7 = (u8)((x0)>>24); \ + t7 = LEROT(x0, 24); \ tem7 = T3[t7]; \ (y1) = tem7 ^ ctx->second_round_output[1]; \ - t10 = (u8)((x0)>>16); \ + t10 = LEROT(x0, 16); \ tem10 = T2[t10]; \ (y2) = tem10 ^ ctx->second_round_output[2]; \ - t13 = (u8)((x0)>>8); \ + t13 = LEROT(x0, 8); \ tem13 = T1[t13];\ (y3) = tem13 ^ ctx->second_round_output[3]; \ } @@ -42,43 +55,43 @@ u32 tem8,tem9,tem10,tem11; \ u32 tem12,tem13,tem14,tem15;\ \ - t0 = (u8)(x0); \ + t0 = LEROT(x0, 0); \ tem0 = T0[t0]; \ - t1 = (u8)((x1)>>8); \ + t1 = LEROT(x1, 8); \ tem1 = tem0 ^ T1[t1]; \ - t2 = (u8)((x2)>>16); \ + t2 = LEROT(x2, 16); \ tem2 = tem1 ^ T2[t2]; \ - t3 = (u8)((x3)>>24); \ + t3 = LEROT(x3, 24); \ tem3 = tem2 ^ T3[t3]; \ (y0) = tem3 ^ ctx->round_key[r][0]; \ \ - t4 = (u8)(x1); \ + t4 = LEROT(x1, 0); \ tem4 = T0[t4]; \ - t5 = (u8)((x2)>>8); \ + t5 = LEROT(x2, 8); \ tem5 = tem4 ^ T1[t5]; \ - t6 = (u8)((x3)>>16); \ + t6 = LEROT(x3, 16); \ tem6 = tem5 ^ T2[t6]; \ - t7 = (u8)((x0)>>24); \ + t7 = LEROT(x0, 24); \ tem7 = tem6 ^ T3[t7]; \ (y1) = tem7 ^ ctx->round_key[r][1]; \ \ - t8 = (u8)(x2); \ + t8 = LEROT(x2, 0); \ tem8 = T0[t8]; \ - t9 = (u8)((x3)>>8); \ + t9 = LEROT(x3, 8); \ tem9 = tem8 ^ T1[t9]; \ - t10 = (u8)((x0)>>16); \ + t10 = LEROT(x0, 16); \ tem10 = tem9 ^ T2[t10]; \ - t11 = (u8)((x1)>>24); \ + t11 = LEROT(x1, 24); \ tem11 = tem10 ^ T3[t11];\ (y2) = tem11 ^ ctx->round_key[r][2]; \ \ - t12 = (u8)(x3); \ + t12 = LEROT(x3, 0); \ tem12 = T0[t12]; \ - t13 = (u8)((x0)>>8); \ + t13 = LEROT(x0, 8); \ tem13 = tem12 ^ T1[t13];\ - t14 = (u8)((x1)>>16); \ + t14 = LEROT(x1, 16); \ tem14 = tem13 ^ T2[t14];\ - t15 = (u8)((x2)>>24); \ + t15 = LEROT(x2, 24); \ tem15 = tem14 ^ T3[t15];\ (y3) = tem15 ^ ctx->round_key[r][3]; \ } @@ -90,40 +103,40 @@ u32 t8,t9,t10,t11; \ u32 t12,t13,t14,t15;\ \ - t0 = (u8)(x0); \ + t0 = LEROT(x0, 0); \ output[0] = Sbox[t0]; \ - t7 = (u8)((x0)>>24); \ + t7 = LEROT(x0, 24); \ output[7] = Sbox[t7]; \ - t10 = (u8)((x0)>>16); \ + t10 = LEROT(x0, 16); \ output[10] = Sbox[t10]; \ - t13 = (u8)((x0)>>8); \ + t13 = LEROT(x0, 8); \ output[13] = Sbox[t13]; \ \ - t1 = (u8)((x1)>>8); \ + t1 = LEROT(x1, 8); \ output[1] = Sbox[t1]; \ - t4 = (u8)(x1); \ + t4 = LEROT(x1, 0); \ output[4] = Sbox[t4]; \ - t11 = (u8)((x1)>>24); \ + t11 = LEROT(x1, 24); \ output[11] = Sbox[t11]; \ - t14 = (u8)((x1)>>16); \ + t14 = LEROT(x1, 16); \ output[14] = Sbox[t14]; \ \ - t2 = (u8)((x2)>>16); \ + t2 = LEROT(x2, 16); \ output[2] = Sbox[t2]; \ - t5 = (u8)((x2)>>8); \ + t5 = LEROT(x2, 8); \ output[5] = Sbox[t5]; \ - t8 = (u8)(x2); \ + t8 = LEROT(x2, 0); \ output[8] = Sbox[t8]; \ - t15 = (u8)((x2)>>24); \ + t15 = LEROT(x2, 24); \ output[15] = Sbox[t15]; \ \ - t3 = (u8)((x3)>>24); \ + t3 = LEROT(x3, 24); \ output[3] = Sbox[t3]; \ - t6 = (u8)((x3)>>16); \ + t6 = LEROT(x3, 16); \ output[6] = Sbox[t6]; \ - t9 = (u8)((x3)>>8); \ + t9 = LEROT(x3, 8); \ output[9] = Sbox[t9]; \ - t12 = (u8)(x3); \ + t12 = LEROT(x3, 0); \ output[12] = Sbox[t12]; \ } diff --git a/src/libsodium/src/libsodium/crypto_stream/salsa20/stream_salsa20_api.c b/src/libsodium/src/libsodium/crypto_stream/salsa20/stream_salsa20_api.c new file mode 100644 index 0000000000000000000000000000000000000000..fce456e4122818e957a3988b14c6bc5fd3795bba --- /dev/null +++ b/src/libsodium/src/libsodium/crypto_stream/salsa20/stream_salsa20_api.c @@ -0,0 +1,16 @@ +#include "crypto_stream_salsa20.h" + +size_t +crypto_stream_salsa20_keybytes(void) { + return crypto_stream_salsa20_KEYBYTES; +} + +size_t +crypto_stream_salsa20_noncebytes(void) { + return crypto_stream_salsa20_NONCEBYTES; +} + +const char * +crypto_stream_salsa20_primitive(void) { + return "salsa20"; +} diff --git a/src/libsodium/src/libsodium/include/Makefile.am b/src/libsodium/src/libsodium/include/Makefile.am index 50e787a65bc747ce5a5e3739ef2841ce6a72f10a..dbbc9da503ba61f8b07a4c8894eecbe41295395e 100644 --- a/src/libsodium/src/libsodium/include/Makefile.am +++ b/src/libsodium/src/libsodium/include/Makefile.am @@ -23,7 +23,6 @@ SODIUM_EXPORT = \ sodium/crypto_onetimeauth_poly1305_53.h \ sodium/crypto_onetimeauth_poly1305_donna.h \ sodium/crypto_scalarmult.h \ - sodium/crypto_scalarmult_curve25519.h \ sodium/crypto_secretbox.h \ sodium/crypto_secretbox_xsalsa20poly1305.h \ sodium/crypto_shorthash.h \ @@ -34,7 +33,6 @@ SODIUM_EXPORT = \ sodium/crypto_stream.h \ sodium/crypto_stream_aes128ctr.h \ sodium/crypto_stream_aes256estream.h \ - sodium/crypto_stream_salsa20.h \ sodium/crypto_stream_salsa2012.h \ sodium/crypto_stream_salsa208.h \ sodium/crypto_stream_xsalsa20.h \ @@ -50,8 +48,7 @@ SODIUM_EXPORT = \ sodium/randombytes.h \ sodium/randombytes_salsa20_random.h \ sodium/randombytes_sysrandom.h \ - sodium/utils.h \ - sodium/version.h + sodium/utils.h EXTRA_SRC = $(SODIUM_EXPORT) \ sodium/crypto_scalarmult_curve25519.h.in \ @@ -59,3 +56,8 @@ EXTRA_SRC = $(SODIUM_EXPORT) \ sodium/version.h.in nobase_include_HEADERS = $(SODIUM_EXPORT) + +nobase_nodist_include_HEADERS = \ + sodium/crypto_scalarmult_curve25519.h \ + sodium/crypto_stream_salsa20.h \ + sodium/version.h diff --git a/src/libsodium/src/libsodium/include/Makefile.in b/src/libsodium/src/libsodium/include/Makefile.in index a74029be7b13079af50872e76f935e64a4664538..56d0c5399ea0e39db89b0c8f5594439cf9a87133 100644 --- a/src/libsodium/src/libsodium/include/Makefile.in +++ b/src/libsodium/src/libsodium/include/Makefile.in @@ -139,8 +139,8 @@ am__uninstall_files_from_dir = { \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } -am__installdirs = "$(DESTDIR)$(includedir)" -HEADERS = $(nobase_include_HEADERS) +am__installdirs = "$(DESTDIR)$(includedir)" "$(DESTDIR)$(includedir)" +HEADERS = $(nobase_include_HEADERS) $(nobase_nodist_include_HEADERS) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -320,7 +320,6 @@ SODIUM_EXPORT = \ sodium/crypto_onetimeauth_poly1305_53.h \ sodium/crypto_onetimeauth_poly1305_donna.h \ sodium/crypto_scalarmult.h \ - sodium/crypto_scalarmult_curve25519.h \ sodium/crypto_secretbox.h \ sodium/crypto_secretbox_xsalsa20poly1305.h \ sodium/crypto_shorthash.h \ @@ -331,7 +330,6 @@ SODIUM_EXPORT = \ sodium/crypto_stream.h \ sodium/crypto_stream_aes128ctr.h \ sodium/crypto_stream_aes256estream.h \ - sodium/crypto_stream_salsa20.h \ sodium/crypto_stream_salsa2012.h \ sodium/crypto_stream_salsa208.h \ sodium/crypto_stream_xsalsa20.h \ @@ -347,8 +345,7 @@ SODIUM_EXPORT = \ sodium/randombytes.h \ sodium/randombytes_salsa20_random.h \ sodium/randombytes_sysrandom.h \ - sodium/utils.h \ - sodium/version.h + sodium/utils.h EXTRA_SRC = $(SODIUM_EXPORT) \ sodium/crypto_scalarmult_curve25519.h.in \ @@ -356,6 +353,11 @@ EXTRA_SRC = $(SODIUM_EXPORT) \ sodium/version.h.in nobase_include_HEADERS = $(SODIUM_EXPORT) +nobase_nodist_include_HEADERS = \ + sodium/crypto_scalarmult_curve25519.h \ + sodium/crypto_stream_salsa20.h \ + sodium/version.h + all: all-am .SUFFIXES: @@ -419,6 +421,30 @@ uninstall-nobase_includeHEADERS: @list='$(nobase_include_HEADERS)'; test -n "$(includedir)" || list=; \ $(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \ dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir) +install-nobase_nodist_includeHEADERS: $(nobase_nodist_include_HEADERS) + @$(NORMAL_INSTALL) + @list='$(nobase_nodist_include_HEADERS)'; test -n "$(includedir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \ + fi; \ + $(am__nobase_list) | while read dir files; do \ + xfiles=; for file in $$files; do \ + if test -f "$$file"; then xfiles="$$xfiles $$file"; \ + else xfiles="$$xfiles $(srcdir)/$$file"; fi; done; \ + test -z "$$xfiles" || { \ + test "x$$dir" = x. || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(includedir)/$$dir'"; \ + $(MKDIR_P) "$(DESTDIR)$(includedir)/$$dir"; }; \ + echo " $(INSTALL_HEADER) $$xfiles '$(DESTDIR)$(includedir)/$$dir'"; \ + $(INSTALL_HEADER) $$xfiles "$(DESTDIR)$(includedir)/$$dir" || exit $$?; }; \ + done + +uninstall-nobase_nodist_includeHEADERS: + @$(NORMAL_UNINSTALL) + @list='$(nobase_nodist_include_HEADERS)'; test -n "$(includedir)" || list=; \ + $(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \ + dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir) ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique @@ -506,7 +532,7 @@ check-am: all-am check: check-am all-am: Makefile $(HEADERS) installdirs: - for dir in "$(DESTDIR)$(includedir)"; do \ + for dir in "$(DESTDIR)$(includedir)" "$(DESTDIR)$(includedir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -559,7 +585,8 @@ info: info-am info-am: -install-data-am: install-nobase_includeHEADERS +install-data-am: install-nobase_includeHEADERS \ + install-nobase_nodist_includeHEADERS install-dvi: install-dvi-am @@ -603,7 +630,8 @@ ps: ps-am ps-am: -uninstall-am: uninstall-nobase_includeHEADERS +uninstall-am: uninstall-nobase_includeHEADERS \ + uninstall-nobase_nodist_includeHEADERS .MAKE: install-am install-strip @@ -614,12 +642,14 @@ uninstall-am: uninstall-nobase_includeHEADERS install-data install-data-am install-dvi install-dvi-am \ install-exec install-exec-am install-html install-html-am \ install-info install-info-am install-man \ - install-nobase_includeHEADERS install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ + install-nobase_includeHEADERS \ + install-nobase_nodist_includeHEADERS install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ - uninstall-am uninstall-nobase_includeHEADERS + uninstall-am uninstall-nobase_includeHEADERS \ + uninstall-nobase_nodist_includeHEADERS # Tell versions [3.59,3.63) of GNU make to not export all variables. diff --git a/src/libsodium/src/libsodium/include/sodium/crypto_scalarmult_curve25519.h b/src/libsodium/src/libsodium/include/sodium/crypto_scalarmult_curve25519.h deleted file mode 100644 index 5d35d44cbc86c1e654e41a5ad5c247f5c63ca230..0000000000000000000000000000000000000000 --- a/src/libsodium/src/libsodium/include/sodium/crypto_scalarmult_curve25519.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef crypto_scalarmult_curve25519_H -#define crypto_scalarmult_curve25519_H - -#if 1 -# ifndef SODIUM_HAVE_TI_MODE -# define SODIUM_HAVE_TI_MODE -# endif -#endif - -#include "export.h" - -#define crypto_scalarmult_curve25519_BYTES 32 -#define crypto_scalarmult_curve25519_SCALARBYTES 32 - -#ifdef __cplusplus -extern "C" { -#endif - -SODIUM_EXPORT -int crypto_scalarmult_curve25519(unsigned char *,const unsigned char *,const unsigned char *); - -SODIUM_EXPORT -int crypto_scalarmult_curve25519_base(unsigned char *,const unsigned char *); - -#ifdef SODIUM_HAVE_TI_MODE -# define crypto_scalarmult_curve25519_donna_c64 crypto_scalarmult_curve25519 -# define crypto_scalarmult_curve25519_donna_c64_base crypto_scalarmult_curve25519_base -#else -# define crypto_scalarmult_curve25519_ref crypto_scalarmult_curve25519 -# define crypto_scalarmult_curve25519_ref_base crypto_scalarmult_curve25519_base -#endif - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/src/libsodium/src/libsodium/include/sodium/crypto_scalarmult_curve25519.h.in b/src/libsodium/src/libsodium/include/sodium/crypto_scalarmult_curve25519.h.in index e87657fff7015f20e3b61fdafaebfab81991c2c7..cc30155d0e3cd109706fbf313af0bb9cb2f3650f 100644 --- a/src/libsodium/src/libsodium/include/sodium/crypto_scalarmult_curve25519.h.in +++ b/src/libsodium/src/libsodium/include/sodium/crypto_scalarmult_curve25519.h.in @@ -7,15 +7,22 @@ # endif #endif -#include "export.h" +#include <stddef.h> -#define crypto_scalarmult_curve25519_BYTES 32 -#define crypto_scalarmult_curve25519_SCALARBYTES 32 +#include "export.h" #ifdef __cplusplus extern "C" { #endif +#define crypto_scalarmult_curve25519_BYTES 32 +SODIUM_EXPORT +size_t crypto_scalarmult_curve25519_bytes(void); + +#define crypto_scalarmult_curve25519_SCALARBYTES 32 +SODIUM_EXPORT +size_t crypto_scalarmult_curve25519_scalarbytes(void); + SODIUM_EXPORT int crypto_scalarmult_curve25519(unsigned char *,const unsigned char *,const unsigned char *); diff --git a/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa20.h b/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa20.h deleted file mode 100644 index f3e1091af056a74aaa21e80941450eaafa55a35f..0000000000000000000000000000000000000000 --- a/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa20.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef crypto_stream_salsa20_H -#define crypto_stream_salsa20_H - -/* - * WARNING: This is just a stream cipher. It is NOT authenticated encryption. - * While it provides some protection against eavesdropping, it does NOT - * provide any security against active attacks. - * Unless you know what you're doing, what you are looking for is probably - * the crypto_box functions. - */ - -#if 1 -# ifndef SODIUM_HAVE_AMD64_ASM -# define SODIUM_HAVE_AMD64_ASM -# endif -#endif - -#include "export.h" - -#define crypto_stream_salsa20_KEYBYTES 32U -#define crypto_stream_salsa20_NONCEBYTES 8U - -#ifdef __cplusplus -extern "C" { -#endif - -SODIUM_EXPORT -int crypto_stream_salsa20(unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); - -SODIUM_EXPORT -int crypto_stream_salsa20_xor(unsigned char *,const unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); - -#ifdef SODIUM_HAVE_AMD64_ASM -# define crypto_stream_salsa20_amd64_xmm6 crypto_stream_salsa20 -# define crypto_stream_salsa20_amd64_xmm6_xor crypto_stream_salsa20_xor -#else -# define crypto_stream_salsa20_ref crypto_stream_salsa20 -# define crypto_stream_salsa20_ref_xor crypto_stream_salsa20_xor -#endif - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa20.h.in b/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa20.h.in index 9f8e9df2e5aef1ea5c73ff39330b85f65d793e7c..b55e0ef3dbae36bbf301bf119e037d549959e5af 100644 --- a/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa20.h.in +++ b/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa20.h.in @@ -15,15 +15,24 @@ # endif #endif +#include <stddef.h> #include "export.h" -#define crypto_stream_salsa20_KEYBYTES 32U -#define crypto_stream_salsa20_NONCEBYTES 8U - #ifdef __cplusplus extern "C" { #endif +#define crypto_stream_salsa20_KEYBYTES 32U +SODIUM_EXPORT +size_t crypto_stream_salsa20_keybytes(void); + +#define crypto_stream_salsa20_NONCEBYTES 8U +SODIUM_EXPORT +size_t crypto_stream_salsa20_noncebytes(void); + +SODIUM_EXPORT +const char * crypto_stream_salsa20_primitive(void); + SODIUM_EXPORT int crypto_stream_salsa20(unsigned char *,unsigned long long,const unsigned char *,const unsigned char *); diff --git a/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa2012.h b/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa2012.h index 742a7a1a52cbab3a110912ac87241caca5248d1d..674729d38097cfec7fc82ddb26b3d4ed6bf34fb0 100644 --- a/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa2012.h +++ b/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa2012.h @@ -12,16 +12,15 @@ #include <stddef.h> #include "export.h" -#define crypto_stream_salsa2012_KEYBYTES 32U -#define crypto_stream_salsa2012_NONCEBYTES 8U - #ifdef __cplusplus extern "C" { #endif +#define crypto_stream_salsa2012_KEYBYTES 32U SODIUM_EXPORT size_t crypto_stream_salsa2012_keybytes(void); +#define crypto_stream_salsa2012_NONCEBYTES 8U SODIUM_EXPORT size_t crypto_stream_salsa2012_noncebytes(void); diff --git a/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa208.h b/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa208.h index cd6742ce7bb99e3816ff68887933a7747a888540..200fcc03b1c5be106c503762c7d3004c6e8f2a04 100644 --- a/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa208.h +++ b/src/libsodium/src/libsodium/include/sodium/crypto_stream_salsa208.h @@ -12,16 +12,15 @@ #include <stddef.h> #include "export.h" -#define crypto_stream_salsa208_KEYBYTES 32U -#define crypto_stream_salsa208_NONCEBYTES 8U - #ifdef __cplusplus extern "C" { #endif +#define crypto_stream_salsa208_KEYBYTES 32U SODIUM_EXPORT size_t crypto_stream_salsa208_keybytes(void); +#define crypto_stream_salsa208_NONCEBYTES 8U SODIUM_EXPORT size_t crypto_stream_salsa208_noncebytes(void); diff --git a/src/libsodium/src/libsodium/include/sodium/export.h b/src/libsodium/src/libsodium/include/sodium/export.h index 1fcbaae88018dd376ebfcf01464809d9655a0cf9..51cedb7b32f1a117f162817da417dff4bfe18a98 100644 --- a/src/libsodium/src/libsodium/include/sodium/export.h +++ b/src/libsodium/src/libsodium/include/sodium/export.h @@ -9,7 +9,9 @@ # define __attribute__(a) #endif -#ifndef SODIUM_STATIC +#ifdef SODIUM_STATIC +# define SODIUM_EXPORT +#else # if defined(_MSC_VER) # ifdef DLL_EXPORT # define SODIUM_EXPORT __declspec(dllexport) diff --git a/src/libsodium/src/libsodium/include/sodium/randombytes.h b/src/libsodium/src/libsodium/include/sodium/randombytes.h index 5a2176b900859c4cb459d9b72c6617c831c3b4c3..db5077e6b25d5537637ae32f3ab25b2a95723b92 100644 --- a/src/libsodium/src/libsodium/include/sodium/randombytes.h +++ b/src/libsodium/src/libsodium/include/sodium/randombytes.h @@ -26,7 +26,7 @@ SODIUM_EXPORT int randombytes_set_implementation(randombytes_implementation *impl); SODIUM_EXPORT -void randombytes(unsigned char *buf, unsigned long long size); +void randombytes(unsigned char * const buf, const unsigned long long buf_len); SODIUM_EXPORT const char *randombytes_implementation_name(void); diff --git a/src/libsodium/src/libsodium/include/sodium/utils.h b/src/libsodium/src/libsodium/include/sodium/utils.h index e2aaf69741e50e5a378f2675f05cc1e6442cf6b7..14b6a747277a08d406afbb9972ac66ed6862dcd8 100644 --- a/src/libsodium/src/libsodium/include/sodium/utils.h +++ b/src/libsodium/src/libsodium/include/sodium/utils.h @@ -10,10 +10,10 @@ extern "C" { #endif -#ifndef __cplusplus -# define _SODIUM_C99(X) X -#else +#if defined(__cplusplus) || !defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L # define _SODIUM_C99(X) +#else +# define _SODIUM_C99(X) X #endif unsigned char *_sodium_alignedcalloc(unsigned char ** const unaligned_p, diff --git a/src/libsodium/src/libsodium/include/sodium/version.h b/src/libsodium/src/libsodium/include/sodium/version.h deleted file mode 100644 index 3a3f34fd123281cedeb50ec7e3805da2733cf0bb..0000000000000000000000000000000000000000 --- a/src/libsodium/src/libsodium/include/sodium/version.h +++ /dev/null @@ -1,29 +0,0 @@ - -#ifndef __SODIUM_VERSION_H__ -#define __SODIUM_VERSION_H__ - -#include "export.h" - -#define SODIUM_VERSION_STRING "0.4.3" - -#define SODIUM_LIBRARY_VERSION_MAJOR 4 -#define SODIUM_LIBRARY_VERSION_MINOR 3 - -#ifdef __cplusplus -extern "C" { -#endif - -SODIUM_EXPORT -const char *sodium_version_string(void); - -SODIUM_EXPORT -int sodium_library_version_major(void); - -SODIUM_EXPORT -int sodium_library_version_minor(void); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/src/libsodium/src/libsodium/randombytes/randombytes.c b/src/libsodium/src/libsodium/randombytes/randombytes.c index 38bc939bb48c25501134ac822e7871b9fd4c33d6..3a223d4f152fd8c3508df37dbb169556a1009373 100644 --- a/src/libsodium/src/libsodium/randombytes/randombytes.c +++ b/src/libsodium/src/libsodium/randombytes/randombytes.c @@ -2,7 +2,6 @@ #include <sys/types.h> #include <assert.h> -#include <inttypes.h> #include <limits.h> #include <stdint.h> @@ -35,7 +34,7 @@ randombytes_random(void) void randombytes_stir(void) { - return implementation->stir(); + implementation->stir(); } uint32_t diff --git a/src/libsodium/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c b/src/libsodium/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c index cf617360dafec9dd86ac841846dd2943e44665c0..30f57a9b826b235ab43eac520371ff63b00c0312 100644 --- a/src/libsodium/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c +++ b/src/libsodium/src/libsodium/randombytes/salsa20/randombytes_salsa20_random.c @@ -1,16 +1,19 @@ #include <sys/types.h> -#include <sys/time.h> +#ifndef _WIN32 +# include <sys/time.h> +#endif #include <assert.h> #include <errno.h> #include <fcntl.h> #include <limits.h> -#include <stdbool.h> #include <stdint.h> #include <stdlib.h> #include <string.h> -#include <unistd.h> +#ifndef _MSC_VER +# include <unistd.h> +#endif #include "crypto_core_salsa20.h" #include "crypto_auth_hmacsha512256.h" @@ -35,12 +38,14 @@ typedef struct Salsa20Random_ { unsigned char rnd32[SALSA20_RANDOM_BLOCK_SIZE]; uint64_t nonce; size_t rnd32_outleft; +#ifndef _MSC_VER pid_t pid; +#endif #ifdef _WIN32 HCRYPTPROV hcrypt_prov; #endif int random_data_source_fd; - bool initialized; + int initialized; } Salsa20Random; static Salsa20Random stream = { @@ -172,7 +177,7 @@ randombytes_salsa20_random_stir(void) abort(); } #else /* _WIN32 */ - if (! CryptGenRandom(stream.hcrypt_prov, sizeof m0, m0)) { + if (! CryptGenRandom(stream.hcrypt_prov, sizeof m0, (BYTE *) m0)) { abort(); } #endif @@ -188,12 +193,18 @@ randombytes_salsa20_random_stir(void) static void randombytes_salsa20_random_stir_if_needed(void) { +#ifdef _MSC_VER + if (stream.initialized == 0) { + randombytes_salsa20_random_stir(); + } +#else const pid_t pid = getpid(); if (stream.initialized == 0 || stream.pid != pid) { stream.pid = pid; randombytes_salsa20_random_stir(); } +#endif } static uint32_t diff --git a/src/libsodium/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c b/src/libsodium/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c index eec5e55cd0964929b5300ca3262846016753f3f9..35a3bcd54a2f245300a2581ad01855afe2b02355 100644 --- a/src/libsodium/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c +++ b/src/libsodium/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c @@ -1,19 +1,20 @@ #include <sys/types.h> -#include <sys/time.h> +#ifndef _WIN32 +# include <sys/time.h> +#endif #include <assert.h> #include <errno.h> #include <fcntl.h> #include <limits.h> -#ifndef _WIN32 -# include <poll.h> -#endif -#include <stdbool.h> #include <stdint.h> #include <stdlib.h> #include <string.h> -#include <unistd.h> +#ifndef _WIN32 +# include <poll.h> +# include <unistd.h> +#endif #include "randombytes.h" #include "randombytes_sysrandom.h" @@ -29,7 +30,7 @@ typedef struct SysRandom_ { HCRYPTPROV hcrypt_prov; #endif int random_data_source_fd; - bool initialized; + int initialized; } SysRandom; static SysRandom stream = { @@ -165,7 +166,7 @@ randombytes_sysrandom_buf(void * const buf, const size_t size) abort(); } #else - if (! CryptGenRandom(stream.hcrypt_prov, size, buf)) { + if (! CryptGenRandom(stream.hcrypt_prov, size, (BYTE *) buf)) { abort(); } #endif diff --git a/src/libsodium/src/libsodium/sodium/compat.c b/src/libsodium/src/libsodium/sodium/compat.c index 75db241872887604a6b563e21b3e7e42802067b2..a2067744bfdd875a4486cc686f46920772386b41 100644 --- a/src/libsodium/src/libsodium/sodium/compat.c +++ b/src/libsodium/src/libsodium/sodium/compat.c @@ -4,6 +4,7 @@ #include "crypto_box_curve25519xsalsa20poly1305.h" #include "crypto_hash_sha256.h" #include "crypto_hash_sha512.h" +#include "crypto_onetimeauth_poly1305.h" #include "crypto_scalarmult_curve25519.h" #include "crypto_secretbox_xsalsa20poly1305.h" #include "crypto_sign_ed25519.h" @@ -232,6 +233,16 @@ crypto_verify_32_ref(const unsigned char *x, const unsigned char *y) return crypto_verify_32(x, y); } +#undef crypto_onetimeauth_poly1305_ref +SODIUM_EXPORT int +crypto_onetimeauth_poly1305_ref(unsigned char *out, + const unsigned char *in, + unsigned long long inlen, + const unsigned char *k) +{ + return crypto_onetimeauth_poly1305(out, in, inlen, k); +} + #ifdef __cplusplus } #endif diff --git a/src/libsodium/src/libsodium/sodium/core.c b/src/libsodium/src/libsodium/sodium/core.c index 654b1ec80c5414cffbf02a9f3a89bb09dacc07fc..9ab858b3ec966a591ee12253b81e8938748ddc65 100644 --- a/src/libsodium/src/libsodium/sodium/core.c +++ b/src/libsodium/src/libsodium/sodium/core.c @@ -1,11 +1,9 @@ -#include <stdbool.h> - #include "core.h" #include "crypto_onetimeauth.h" #include "randombytes.h" -static bool initialized; +static int initialized; int sodium_init(void) diff --git a/src/libsodium/src/libsodium/sodium/utils.c b/src/libsodium/src/libsodium/sodium/utils.c index 74fc2d864f4a9220f89ba21cd114b6eac59caddf..6263dfc10ef29da0ef1b2cf8f449edc2dd3c8f15 100644 --- a/src/libsodium/src/libsodium/sodium/utils.c +++ b/src/libsodium/src/libsodium/sodium/utils.c @@ -54,9 +54,14 @@ _sodium_alignedcalloc(unsigned char ** const unaligned_p, const size_t len) return NULL; } *unaligned_p = unaligned; +#ifdef HAVE_ARC4RANDOM_BUF + (void) i; + arc4random_buf(unaligned, len + (size_t) 256U); +#else for (i = (size_t) 0U; i < len + (size_t) 256U; ++i) { unaligned[i] = (unsigned char) rand(); } +#endif aligned = unaligned + 64; aligned += (ptrdiff_t) 63 & (-(ptrdiff_t) aligned); memset(aligned, 0, len); diff --git a/src/libsodium/test/default/Makefile.am b/src/libsodium/test/default/Makefile.am index 45f2494c97d94643de3f1c940053f13c221d265d..ebc23532d4455ae85b4049ed487a9428765559f1 100644 --- a/src/libsodium/test/default/Makefile.am +++ b/src/libsodium/test/default/Makefile.am @@ -1,6 +1,7 @@ EXTRA_DIST = \ cmptest.h \ + wintest.bat \ auth.exp \ auth2.exp \ auth3.exp \ @@ -27,6 +28,8 @@ EXTRA_DIST = \ scalarmult2.exp \ scalarmult5.exp \ scalarmult6.exp \ + scalarmult7.exp \ + scalarmult8.exp \ secretbox.exp \ secretbox2.exp \ secretbox7.exp \ @@ -69,6 +72,8 @@ DISTCLEANFILES = \ scalarmult2.res \ scalarmult5.res \ scalarmult6.res \ + scalarmult7.res \ + scalarmult8.res \ secretbox.res \ secretbox2.res \ secretbox7.res \ @@ -119,6 +124,8 @@ TESTS_TARGETS = \ scalarmult2 \ scalarmult5 \ scalarmult6 \ + scalarmult7 \ + scalarmult8 \ secretbox \ secretbox2 \ secretbox7 \ @@ -219,6 +226,12 @@ scalarmult5_LDADD = $(TESTS_LDADD) scalarmult6_SOURCE = cmptest.h scalarmult6.c scalarmult6_LDADD = $(TESTS_LDADD) +scalarmult7_SOURCE = cmptest.h scalarmult7.c +scalarmult7_LDADD = $(TESTS_LDADD) + +scalarmult8_SOURCE = cmptest.h scalarmult8.c +scalarmult8_LDADD = $(TESTS_LDADD) + secretbox_SOURCE = cmptest.h secretbox.c secretbox_LDADD = $(TESTS_LDADD) diff --git a/src/libsodium/test/default/Makefile.in b/src/libsodium/test/default/Makefile.in index 98813575f948613801bc94b35528b776bcdd6394..3d67fd5d7f68efc7a257a7e8804f9ea1611a2838 100644 --- a/src/libsodium/test/default/Makefile.in +++ b/src/libsodium/test/default/Makefile.in @@ -102,11 +102,12 @@ am__EXEEXT_1 = auth$(EXEEXT) auth2$(EXEEXT) auth3$(EXEEXT) \ hash3$(EXEEXT) onetimeauth$(EXEEXT) onetimeauth2$(EXEEXT) \ onetimeauth7$(EXEEXT) randombytes$(EXEEXT) scalarmult$(EXEEXT) \ scalarmult2$(EXEEXT) scalarmult5$(EXEEXT) scalarmult6$(EXEEXT) \ - secretbox$(EXEEXT) secretbox2$(EXEEXT) secretbox7$(EXEEXT) \ - secretbox8$(EXEEXT) shorthash$(EXEEXT) sodium_core$(EXEEXT) \ - sodium_utils$(EXEEXT) sodium_version$(EXEEXT) stream$(EXEEXT) \ - stream2$(EXEEXT) stream3$(EXEEXT) stream4$(EXEEXT) \ - stream5$(EXEEXT) stream6$(EXEEXT) + scalarmult7$(EXEEXT) scalarmult8$(EXEEXT) secretbox$(EXEEXT) \ + secretbox2$(EXEEXT) secretbox7$(EXEEXT) secretbox8$(EXEEXT) \ + shorthash$(EXEEXT) sodium_core$(EXEEXT) sodium_utils$(EXEEXT) \ + sodium_version$(EXEEXT) stream$(EXEEXT) stream2$(EXEEXT) \ + stream3$(EXEEXT) stream4$(EXEEXT) stream5$(EXEEXT) \ + stream6$(EXEEXT) auth_SOURCES = auth.c auth_OBJECTS = auth.$(OBJEXT) auth_DEPENDENCIES = $(TESTS_LDADD) @@ -189,6 +190,12 @@ scalarmult5_DEPENDENCIES = $(TESTS_LDADD) scalarmult6_SOURCES = scalarmult6.c scalarmult6_OBJECTS = scalarmult6.$(OBJEXT) scalarmult6_DEPENDENCIES = $(TESTS_LDADD) +scalarmult7_SOURCES = scalarmult7.c +scalarmult7_OBJECTS = scalarmult7.$(OBJEXT) +scalarmult7_DEPENDENCIES = $(TESTS_LDADD) +scalarmult8_SOURCES = scalarmult8.c +scalarmult8_OBJECTS = scalarmult8.$(OBJEXT) +scalarmult8_DEPENDENCIES = $(TESTS_LDADD) secretbox_SOURCES = secretbox.c secretbox_OBJECTS = secretbox.$(OBJEXT) secretbox_DEPENDENCIES = $(TESTS_LDADD) @@ -269,18 +276,19 @@ SOURCES = auth.c auth2.c auth3.c auth5.c box.c box2.c box7.c box8.c \ core1.c core2.c core3.c core4.c core5.c core6.c generichash.c \ generichash2.c hash.c hash3.c onetimeauth.c onetimeauth2.c \ onetimeauth7.c randombytes.c scalarmult.c scalarmult2.c \ - scalarmult5.c scalarmult6.c secretbox.c secretbox2.c \ - secretbox7.c secretbox8.c shorthash.c sodium_core.c \ - sodium_utils.c sodium_version.c stream.c stream2.c stream3.c \ - stream4.c stream5.c stream6.c + scalarmult5.c scalarmult6.c scalarmult7.c scalarmult8.c \ + secretbox.c secretbox2.c secretbox7.c secretbox8.c shorthash.c \ + sodium_core.c sodium_utils.c sodium_version.c stream.c \ + stream2.c stream3.c stream4.c stream5.c stream6.c DIST_SOURCES = auth.c auth2.c auth3.c auth5.c box.c box2.c box7.c \ box8.c core1.c core2.c core3.c core4.c core5.c core6.c \ generichash.c generichash2.c hash.c hash3.c onetimeauth.c \ onetimeauth2.c onetimeauth7.c randombytes.c scalarmult.c \ - scalarmult2.c scalarmult5.c scalarmult6.c secretbox.c \ - secretbox2.c secretbox7.c secretbox8.c shorthash.c \ - sodium_core.c sodium_utils.c sodium_version.c stream.c \ - stream2.c stream3.c stream4.c stream5.c stream6.c + scalarmult2.c scalarmult5.c scalarmult6.c scalarmult7.c \ + scalarmult8.c secretbox.c secretbox2.c secretbox7.c \ + secretbox8.c shorthash.c sodium_core.c sodium_utils.c \ + sodium_version.c stream.c stream2.c stream3.c stream4.c \ + stream5.c stream6.c am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -647,6 +655,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ EXTRA_DIST = \ cmptest.h \ + wintest.bat \ auth.exp \ auth2.exp \ auth3.exp \ @@ -673,6 +682,8 @@ EXTRA_DIST = \ scalarmult2.exp \ scalarmult5.exp \ scalarmult6.exp \ + scalarmult7.exp \ + scalarmult8.exp \ secretbox.exp \ secretbox2.exp \ secretbox7.exp \ @@ -715,6 +726,8 @@ DISTCLEANFILES = \ scalarmult2.res \ scalarmult5.res \ scalarmult6.res \ + scalarmult7.res \ + scalarmult8.res \ secretbox.res \ secretbox2.res \ secretbox7.res \ @@ -765,6 +778,8 @@ TESTS_TARGETS = \ scalarmult2 \ scalarmult5 \ scalarmult6 \ + scalarmult7 \ + scalarmult8 \ secretbox \ secretbox2 \ secretbox7 \ @@ -835,6 +850,10 @@ scalarmult5_SOURCE = cmptest.h scalarmult5.c scalarmult5_LDADD = $(TESTS_LDADD) scalarmult6_SOURCE = cmptest.h scalarmult6.c scalarmult6_LDADD = $(TESTS_LDADD) +scalarmult7_SOURCE = cmptest.h scalarmult7.c +scalarmult7_LDADD = $(TESTS_LDADD) +scalarmult8_SOURCE = cmptest.h scalarmult8.c +scalarmult8_LDADD = $(TESTS_LDADD) secretbox_SOURCE = cmptest.h secretbox.c secretbox_LDADD = $(TESTS_LDADD) secretbox2_SOURCE = cmptest.h secretbox2.c @@ -1011,6 +1030,14 @@ scalarmult6$(EXEEXT): $(scalarmult6_OBJECTS) $(scalarmult6_DEPENDENCIES) $(EXTRA @rm -f scalarmult6$(EXEEXT) $(AM_V_CCLD)$(LINK) $(scalarmult6_OBJECTS) $(scalarmult6_LDADD) $(LIBS) +scalarmult7$(EXEEXT): $(scalarmult7_OBJECTS) $(scalarmult7_DEPENDENCIES) $(EXTRA_scalarmult7_DEPENDENCIES) + @rm -f scalarmult7$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(scalarmult7_OBJECTS) $(scalarmult7_LDADD) $(LIBS) + +scalarmult8$(EXEEXT): $(scalarmult8_OBJECTS) $(scalarmult8_DEPENDENCIES) $(EXTRA_scalarmult8_DEPENDENCIES) + @rm -f scalarmult8$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(scalarmult8_OBJECTS) $(scalarmult8_LDADD) $(LIBS) + secretbox$(EXEEXT): $(secretbox_OBJECTS) $(secretbox_DEPENDENCIES) $(EXTRA_secretbox_DEPENDENCIES) @rm -f secretbox$(EXEEXT) $(AM_V_CCLD)$(LINK) $(secretbox_OBJECTS) $(secretbox_LDADD) $(LIBS) @@ -1099,6 +1126,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult2.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult5.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult6.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult7.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalarmult8.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secretbox.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secretbox2.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/secretbox7.Po@am__quote@ @@ -1519,6 +1548,20 @@ scalarmult6.log: scalarmult6$(EXEEXT) --log-file $$b.log --trs-file $$b.trs \ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ "$$tst" $(AM_TESTS_FD_REDIRECT) +scalarmult7.log: scalarmult7$(EXEEXT) + @p='scalarmult7$(EXEEXT)'; \ + b='scalarmult7'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +scalarmult8.log: scalarmult8$(EXEEXT) + @p='scalarmult8$(EXEEXT)'; \ + b='scalarmult8'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) secretbox.log: secretbox$(EXEEXT) @p='secretbox$(EXEEXT)'; \ b='secretbox'; \ diff --git a/src/libsodium/test/default/cmptest.h b/src/libsodium/test/default/cmptest.h index dd38361669ed9241f4caf6e12acc9aebfcaaaa2e..9689bb28a46b2289f4c05141242b7dbd061540d5 100644 --- a/src/libsodium/test/default/cmptest.h +++ b/src/libsodium/test/default/cmptest.h @@ -9,6 +9,11 @@ #define TEST_NAME_RES TEST_NAME ".res" #define TEST_NAME_OUT TEST_SRCDIR "/" TEST_NAME ".exp" +#ifdef HAVE_ARC4RANDOM +# undef rand +# define rand(X) arc4random(X) +#endif + FILE *fp_res; int xmain(void); diff --git a/src/libsodium/test/default/scalarmult7.c b/src/libsodium/test/default/scalarmult7.c new file mode 100644 index 0000000000000000000000000000000000000000..77ce820b1d304b710405f59882c18ca7e4a799b9 --- /dev/null +++ b/src/libsodium/test/default/scalarmult7.c @@ -0,0 +1,34 @@ +#include <stdio.h> +#include <string.h> +#define TEST_NAME "scalarmult7" +#include "cmptest.h" + +unsigned char p1[32] = { + 0x72, 0x20, 0xf0, 0x09, 0x89, 0x30, 0xa7, 0x54, + 0x74, 0x8b, 0x7d, 0xdc, 0xb4, 0x3e, 0xf7, 0x5a, + 0x0d, 0xbf, 0x3a, 0x0d, 0x26, 0x38, 0x1a, 0xf4, + 0xeb, 0xa4, 0xa9, 0x8e, 0xaa, 0x9b, 0x4e, 0xea +}; + +unsigned char p2[32] = { + 0x85, 0x20, 0xf0, 0x09, 0x89, 0x30, 0xa7, 0x54, + 0x74, 0x8b, 0x7d, 0xdc, 0xb4, 0x3e, 0xf7, 0x5a, + 0x0d, 0xbf, 0x3a, 0x0d, 0x26, 0x38, 0x1a, 0xf4, + 0xeb, 0xa4, 0xa9, 0x8e, 0xaa, 0x9b, 0x4e, 0x6a +}; + +unsigned char scalar[32]; +unsigned char out1[32]; +unsigned char out2[32]; + +int main(void) +{ + int i; + + scalar[0] = 1U; + crypto_scalarmult_curve25519(out1, scalar, p1); + crypto_scalarmult_curve25519(out2, scalar, p2); + printf("%d\n", memcmp(out1, out2, sizeof out1)); + + return 0; +} diff --git a/src/libsodium/test/default/scalarmult7.exp b/src/libsodium/test/default/scalarmult7.exp new file mode 100644 index 0000000000000000000000000000000000000000..573541ac9702dd3969c9bc859d2b91ec1f7e6e56 --- /dev/null +++ b/src/libsodium/test/default/scalarmult7.exp @@ -0,0 +1 @@ +0 diff --git a/src/libsodium/test/default/scalarmult8.c b/src/libsodium/test/default/scalarmult8.c new file mode 100644 index 0000000000000000000000000000000000000000..0092bcd0590c135720a426e4b85c80ab7ee4251c --- /dev/null +++ b/src/libsodium/test/default/scalarmult8.c @@ -0,0 +1,34 @@ +#include <stdio.h> +#include <string.h> +#define TEST_NAME "scalarmult7" +#include "cmptest.h" + +unsigned char p1[32] = { + 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, + 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, + 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, + 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF +}; + +unsigned char p2[32] = { + 0x25,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 +}; + +unsigned char scalar[32]; +unsigned char out1[32]; +unsigned char out2[32]; + +int main(void) +{ + int i; + + scalar[0] = 1U; + crypto_scalarmult_curve25519(out1, scalar, p1); + crypto_scalarmult_curve25519(out2, scalar, p2); + printf("%d\n", memcmp(out1, out2, sizeof out1)); + + return 0; +} diff --git a/src/libsodium/test/default/scalarmult8.exp b/src/libsodium/test/default/scalarmult8.exp new file mode 100644 index 0000000000000000000000000000000000000000..573541ac9702dd3969c9bc859d2b91ec1f7e6e56 --- /dev/null +++ b/src/libsodium/test/default/scalarmult8.exp @@ -0,0 +1 @@ +0 diff --git a/src/libsodium/test/default/wintest.bat b/src/libsodium/test/default/wintest.bat new file mode 100755 index 0000000000000000000000000000000000000000..e50fb49493e1b7b05cc27dcadbdedfe38c832803 --- /dev/null +++ b/src/libsodium/test/default/wintest.bat @@ -0,0 +1,56 @@ +@ECHO OFF + +if "%1" == "" ( + echo "Usage: wintest.bat <Release | ReleaseDLL | Debug | DebugDLL" + goto :END +) + +if not exist sodium_version.c ( + CD test\default + if not exist sodium_version.c ( + echo "Are you on the right path?" %CD% + goto :END + ) +) + +if "%2" == "x64" (SET ARCH=x64) else (SET ARCH=Win32) +SET CFLAGS=/nologo /DTEST_SRCDIR=\".\" /I..\..\src\libsodium\include\sodium /I..\..\src\libsodium\include /I..\quirks +SET LDFLAGS=/link /LTCG advapi32.lib ..\..\Build\%1\%ARCH%\libsodium.lib +if "%1" == "ReleaseDLL" ( goto :ReleaseDLL ) +if "%1" == "DebugDLL" ( goto :DebugDLL ) +if "%1" == "Release" ( goto :Release ) +if "%1" == "Debug" ( goto :Debug ) +echo "Invalid build type" +goto :END +:ReleaseDLL + SET CFLAGS=%CFLAGS% /MD /Ox + SET PATH=..\..\Build\%1\%ARCH%;%PATH% + goto :COMPILE +:Release + SET CFLAGS=%CFLAGS% /MT /Ox /DSODIUM_STATIC /DSODIUM_EXPORT= + goto :COMPILE +:DebugDLL + SET CFLAGS=%CFLAGS% /GS /MDd /Od + SET PATH=..\..\Build\%1\%ARCH%;%PATH% + goto :COMPILE +:Debug + SET CFLAGS=%CFLAGS% /GS /MTd /Od /DSODIUM_STATIC /DSODIUM_EXPORT= + goto :COMPILE +:COMPILE +echo Running the test suite: +FOR %%f in (*.c) DO ( + cl %CFLAGS% %%f %LDFLAGS% /OUT:%%f.exe > NUL 2>&1 + if not exist %%f.exe ( + echo %%f compile failed + goto :END + ) + %%f.exe + if errorlevel 1 ( + echo %%f failed + ) else ( + echo %%f ok + ) +) +REM Remove temporary files +del *.exe *.obj *.res +:END