mirror of
				https://github.com/ton-blockchain/ton
				synced 2025-03-09 15:40:10 +00:00 
			
		
		
		
	TVM Upgrade (#686)
* New TVM instructions * Remove PREVBLOCKS * Separate target ton_crypto into TVM-related and -unrelared code * Add fine for failed "send message"; rework SENDMSG * Fix include * Fix bugs, improve action fines * Disable fines for special accounts * Handle msg_balance_remaining.grams == null in transaction.cpp * Bugfixes in SENDMSG * Fix fee calculation in SENDMSG * Fix CellStorageStat and transaction.cpp after merge * SETBOUNCEONACTIONPHASEFAIL instruction * ADDDIVMOD instructions * RUNVM, RUNVMX instructions * Changes in RUNVM * Tests for adddiv and runvm * HASHEXT instruction * Improve opcode-timing More iterations Don't measure preliminary run Remove logs and other excessive operations Add "error" to output * Increase RUNVM gas price * Optimize HASHEXT, adjust gas price * Add "bounce of action fail" flag to actions * Stack operations with unlimited arguments * Ristretto255 instructions * Adjust gas consumption * Optional fixed number of return values in RUNVM, fix exception handling * Adjust gas consumption * Simplify gas consumption logic * Support of secp256k1 and sodium libraries in builds (#11) * add support of secp256k1 library to the builds (linux, win) * add support of secp256k1 library to the builds (linux, win) * install secp256k1 via brew * install libsodium via brew; change sodium to upper case in FindSodium.cmake * install libsodium via brew; change sodium to upper case in FindSodium.cmake * simplify FindSodium.cmake * bug fixing * bug fixing * bug fixing * add macro SODIUM_STATIC * adjust build command for windows * put back original FindSodium.cmake * put back original FindSodium.cmake * fix sodium unzipped path for windows; add ninja * fix sodium unzipped path for windows; add ninja * fix sodium unzipped path for windows; add ninja * Win32 github build for secp256k1 * x64 architecture github build for secp256k1 * fix sodium linking on linux * enable docker buildx arm64 builds from forked repos * enable docker buildx arm64 builds from forked repos * enable docker buildx arm64 builds from forked repos * adjust mac builds for secp2561k and sodium * fix tonlib jni generation * minor fix * sync fixes across platforms * add libsodium build script for android and precompiled static libraries * build tonlib for android (fails) * FindSodium uppercase * remove system libsodium for android, use precompiled instead; specify SECP256K1_INCLUDE_DIR fir mac 12.6 * uppercase sodium * simplify FindSodium * fix windows build sodium path; use ninja for windows * simplify sodium 2 * adjust windows sodium paths; add paths to android jni * add ninja build windows * add ninja build windows * add ninja build windows 2 * remove win ninja * fix 1 * fix 2 * fix win 3 * fix linux compile 3 * fix jni 1 * fix jni 2 and mac * fix jni 3 * fix jni 4 * fix jni 5 * fix mac 6 * fix mac 7 and jni paths * fix jni 8 * rework sodium for android * rework sodium for android * rework sodium for android 2 * fixed sodium for android 2 * fixed sodium for android 3 * static secp256k1 for android * add precompiled arm secp256k1 * add precompiled arm secp256k1 * build native-lib with secp256k1 x86-64 (non arm) * update precompiled with NDK libsecp256k1.a * update precompiled with NDK libsecp256k1.a * update precompiled with NDK libsecp256k1.a * refactor llvm-strip location * refactor llvm-strip location * add native-lib.so for armv7a, armv8a * add native-lib.so for armv7a, armv8a * test armv7a, armv8a * armv7a - fails linking on sodium, test -> armv8a * works x86-64, armv7a - fails linking on sodium, armv8a - fails linking secp256k1 (incompatible with aarch64linux) * update libpsec256k1, sodium static libs * test x86 android native-lib * test armv7 android native-lib * test armv8 android native-lib * x86_64 and arm64 android native-lib works * x86_64 and arm64 android native-lib works * x86_64 and arm64 android native-lib works * test armv7 android native-lib * test all android native-libs * test all android native-libs * test all android native-libs * test all android native-libs - without SodiumAndroid * test all android native-libs - with FindSodiumAndroid.cmake * win, with Sodium via SODIUM_DIR * win, with Sodium via SODIUM_DIR env * win, with Sodium via SODIUM_DIR env * win, with Sodium via SODIUM_DIR env and SODIUM_USE_STATIC_LIBS * win, with Sodium via SODIUM_DIR, SODIUM_USE_STATIC_LIBS and SODIUM_INCLUDE_DIR * android, with FindSodium * android, with FindSodium with SODIUM_USE_STATIC_LIBS * remove if not apple * target_link_libraries(ton_crypto_core PUBLIC secp256k1) * android SECP256K1_INCLUDE_DIRS * android SECP256K1_INCLUDE_DIR * add libsecp256k1.a/so pre-compiled with ubuntu 22 x86-64 * add libsecp256k1.a/so pre-compiled with ubuntu 22 x86-64 * sodium dirs * sodium dirs * sodium dirs * remove NOT APPLE and SodiumAndroid * add NOT APPLE and remove SodiumAndroid * add NOT APPLE and remove SodiumAndroid * remove build scripts for 18.04, reduce CMakeLists.txt * remove build scripts for 18.04, reduce CMakeLists.txt * Fix cas consumption during library load * Fix fetch_config_params after merge * Add all ADDDIVMOD ops to Asm.fif * Save unpaid storage fee to due_payment * Add "set prev blocks info" to emulator * Adjusted builds (#13) * Update flake.nix Add libsodium * add libsecp256k1-dev and libsodium-dev into wasm build * make back emulator a shared library; put emulator to artifacts; compile wasm artifacts with sodium and secp256k1. * add secp256k1 to nix * compile emulator statically with nix * compile emulator statically with nix * compile emulator lib statically with nix * compile emulator lib statically with nix * add libemulator to artifacts * add shared libemulator library to artifacts * minor release fix * update set-output commands; add recent_changelog.md * releases fixes * releases fixes, multiline * releases fixes, multiline * releases fixes, multiline * put back multiline changelog * put back multiline changelog * ConfigParam 19 (global-id) and GLOBALID instruction * Fix gas consumption in HASHEXT * Add blst library * Add bls instructions * Allow passing long code to opcode-timing * Add bls testcase * More BLS instructions * Fix tests, add bls tests * Add more bls tests * Improve some bls operations * Adjust some BLS gas prices * Adjust BLS gas prices * Enable __BLST_PORTABLE__ flag only if PORTABLE flag is set * Add tests for BLS_PAIRING * GASCONSUMED instruction * Fix compilation against docker with blst library; (#14) * fix compilation against docker with blst library; add precompiled libblst.a to android builds * minor fix * Adjust BLKSWX gas * Fix comparison with NAN * Allow arbitrary integers for scalars in ristretto multiplication, fix test * Adjust nix builds according to PR 694 (#15) * integrate and test PR-694 * integrate and test PR-694, test 2 * Add P256_CHKSIGN (secp256r1) --------- Co-authored-by: SpyCheese <mikle98@yandex.ru> Co-authored-by: neodiX42 <namlem@gmail.com>
This commit is contained in:
		
							parent
							
								
									d6b11d9d36
								
							
						
					
					
						commit
						9f93888cf4
					
				
					 374 changed files with 25800 additions and 387 deletions
				
			
		
							
								
								
									
										69
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,69 @@ | |||
| 
 | ||||
| #ifndef sodium_H | ||||
| #define sodium_H | ||||
| 
 | ||||
| #include "sodium/version.h" | ||||
| 
 | ||||
| #include "sodium/core.h" | ||||
| #include "sodium/crypto_aead_aes256gcm.h" | ||||
| #include "sodium/crypto_aead_chacha20poly1305.h" | ||||
| #include "sodium/crypto_aead_xchacha20poly1305.h" | ||||
| #include "sodium/crypto_auth.h" | ||||
| #include "sodium/crypto_auth_hmacsha256.h" | ||||
| #include "sodium/crypto_auth_hmacsha512.h" | ||||
| #include "sodium/crypto_auth_hmacsha512256.h" | ||||
| #include "sodium/crypto_box.h" | ||||
| #include "sodium/crypto_box_curve25519xsalsa20poly1305.h" | ||||
| #include "sodium/crypto_core_hsalsa20.h" | ||||
| #include "sodium/crypto_core_hchacha20.h" | ||||
| #include "sodium/crypto_core_salsa20.h" | ||||
| #include "sodium/crypto_core_salsa2012.h" | ||||
| #include "sodium/crypto_core_salsa208.h" | ||||
| #include "sodium/crypto_generichash.h" | ||||
| #include "sodium/crypto_generichash_blake2b.h" | ||||
| #include "sodium/crypto_hash.h" | ||||
| #include "sodium/crypto_hash_sha256.h" | ||||
| #include "sodium/crypto_hash_sha512.h" | ||||
| #include "sodium/crypto_kdf.h" | ||||
| #include "sodium/crypto_kdf_blake2b.h" | ||||
| #include "sodium/crypto_kx.h" | ||||
| #include "sodium/crypto_onetimeauth.h" | ||||
| #include "sodium/crypto_onetimeauth_poly1305.h" | ||||
| #include "sodium/crypto_pwhash.h" | ||||
| #include "sodium/crypto_pwhash_argon2i.h" | ||||
| #include "sodium/crypto_scalarmult.h" | ||||
| #include "sodium/crypto_scalarmult_curve25519.h" | ||||
| #include "sodium/crypto_secretbox.h" | ||||
| #include "sodium/crypto_secretbox_xsalsa20poly1305.h" | ||||
| #include "sodium/crypto_secretstream_xchacha20poly1305.h" | ||||
| #include "sodium/crypto_shorthash.h" | ||||
| #include "sodium/crypto_shorthash_siphash24.h" | ||||
| #include "sodium/crypto_sign.h" | ||||
| #include "sodium/crypto_sign_ed25519.h" | ||||
| #include "sodium/crypto_stream.h" | ||||
| #include "sodium/crypto_stream_chacha20.h" | ||||
| #include "sodium/crypto_stream_salsa20.h" | ||||
| #include "sodium/crypto_stream_xsalsa20.h" | ||||
| #include "sodium/crypto_verify_16.h" | ||||
| #include "sodium/crypto_verify_32.h" | ||||
| #include "sodium/crypto_verify_64.h" | ||||
| #include "sodium/randombytes.h" | ||||
| #include "sodium/randombytes_internal_random.h" | ||||
| #include "sodium/randombytes_sysrandom.h" | ||||
| #include "sodium/runtime.h" | ||||
| #include "sodium/utils.h" | ||||
| 
 | ||||
| #ifndef SODIUM_LIBRARY_MINIMAL | ||||
| # include "sodium/crypto_box_curve25519xchacha20poly1305.h" | ||||
| # include "sodium/crypto_core_ed25519.h" | ||||
| # include "sodium/crypto_core_ristretto255.h" | ||||
| # include "sodium/crypto_scalarmult_ed25519.h" | ||||
| # include "sodium/crypto_scalarmult_ristretto255.h" | ||||
| # include "sodium/crypto_secretbox_xchacha20poly1305.h" | ||||
| # include "sodium/crypto_pwhash_scryptsalsa208sha256.h" | ||||
| # include "sodium/crypto_stream_salsa2012.h" | ||||
| # include "sodium/crypto_stream_salsa208.h" | ||||
| # include "sodium/crypto_stream_xchacha20.h" | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										28
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/core.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/core.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,28 @@ | |||
| 
 | ||||
| #ifndef sodium_core_H | ||||
| #define sodium_core_H | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_init(void) | ||||
|             __attribute__ ((warn_unused_result)); | ||||
| 
 | ||||
| /* ---- */ | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_set_misuse_handler(void (*handler)(void)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void sodium_misuse(void) | ||||
|             __attribute__ ((noreturn)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										179
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_aead_aes256gcm.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										179
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_aead_aes256gcm.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,179 @@ | |||
| #ifndef crypto_aead_aes256gcm_H | ||||
| #define crypto_aead_aes256gcm_H | ||||
| 
 | ||||
| /*
 | ||||
|  * WARNING: Despite being the most popular AEAD construction due to its | ||||
|  * use in TLS, safely using AES-GCM in a different context is tricky. | ||||
|  * | ||||
|  * No more than ~ 350 GB of input data should be encrypted with a given key. | ||||
|  * This is for ~ 16 KB messages -- Actual figures vary according to | ||||
|  * message sizes. | ||||
|  * | ||||
|  * In addition, nonces are short and repeated nonces would totally destroy | ||||
|  * the security of this scheme. | ||||
|  * | ||||
|  * Nonces should thus come from atomic counters, which can be difficult to | ||||
|  * set up in a distributed environment. | ||||
|  * | ||||
|  * Unless you absolutely need AES-GCM, use crypto_aead_xchacha20poly1305_ietf_*() | ||||
|  * instead. It doesn't have any of these limitations. | ||||
|  * Or, if you don't need to authenticate additional data, just stick to | ||||
|  * crypto_secretbox(). | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_is_available(void); | ||||
| 
 | ||||
| #define crypto_aead_aes256gcm_KEYBYTES  32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_aes256gcm_keybytes(void); | ||||
| 
 | ||||
| #define crypto_aead_aes256gcm_NSECBYTES 0U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_aes256gcm_nsecbytes(void); | ||||
| 
 | ||||
| #define crypto_aead_aes256gcm_NPUBBYTES 12U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_aes256gcm_npubbytes(void); | ||||
| 
 | ||||
| #define crypto_aead_aes256gcm_ABYTES    16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_aes256gcm_abytes(void); | ||||
| 
 | ||||
| #define crypto_aead_aes256gcm_MESSAGEBYTES_MAX \ | ||||
|     SODIUM_MIN(SODIUM_SIZE_MAX - crypto_aead_aes256gcm_ABYTES, \ | ||||
|                (16ULL * ((1ULL << 32) - 2ULL))) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_aes256gcm_messagebytes_max(void); | ||||
| 
 | ||||
| typedef struct CRYPTO_ALIGN(16) crypto_aead_aes256gcm_state_ { | ||||
|     unsigned char opaque[512]; | ||||
| } crypto_aead_aes256gcm_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_aes256gcm_statebytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_encrypt(unsigned char *c, | ||||
|                                   unsigned long long *clen_p, | ||||
|                                   const unsigned char *m, | ||||
|                                   unsigned long long mlen, | ||||
|                                   const unsigned char *ad, | ||||
|                                   unsigned long long adlen, | ||||
|                                   const unsigned char *nsec, | ||||
|                                   const unsigned char *npub, | ||||
|                                   const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_decrypt(unsigned char *m, | ||||
|                                   unsigned long long *mlen_p, | ||||
|                                   unsigned char *nsec, | ||||
|                                   const unsigned char *c, | ||||
|                                   unsigned long long clen, | ||||
|                                   const unsigned char *ad, | ||||
|                                   unsigned long long adlen, | ||||
|                                   const unsigned char *npub, | ||||
|                                   const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(4, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_encrypt_detached(unsigned char *c, | ||||
|                                            unsigned char *mac, | ||||
|                                            unsigned long long *maclen_p, | ||||
|                                            const unsigned char *m, | ||||
|                                            unsigned long long mlen, | ||||
|                                            const unsigned char *ad, | ||||
|                                            unsigned long long adlen, | ||||
|                                            const unsigned char *nsec, | ||||
|                                            const unsigned char *npub, | ||||
|                                            const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 2, 9, 10))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_decrypt_detached(unsigned char *m, | ||||
|                                            unsigned char *nsec, | ||||
|                                            const unsigned char *c, | ||||
|                                            unsigned long long clen, | ||||
|                                            const unsigned char *mac, | ||||
|                                            const unsigned char *ad, | ||||
|                                            unsigned long long adlen, | ||||
|                                            const unsigned char *npub, | ||||
|                                            const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(3, 5, 8, 9))); | ||||
| 
 | ||||
| /* -- Precomputation interface -- */ | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_beforenm(crypto_aead_aes256gcm_state *ctx_, | ||||
|                                    const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_encrypt_afternm(unsigned char *c, | ||||
|                                           unsigned long long *clen_p, | ||||
|                                           const unsigned char *m, | ||||
|                                           unsigned long long mlen, | ||||
|                                           const unsigned char *ad, | ||||
|                                           unsigned long long adlen, | ||||
|                                           const unsigned char *nsec, | ||||
|                                           const unsigned char *npub, | ||||
|                                           const crypto_aead_aes256gcm_state *ctx_) | ||||
|             __attribute__ ((nonnull(1, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_decrypt_afternm(unsigned char *m, | ||||
|                                           unsigned long long *mlen_p, | ||||
|                                           unsigned char *nsec, | ||||
|                                           const unsigned char *c, | ||||
|                                           unsigned long long clen, | ||||
|                                           const unsigned char *ad, | ||||
|                                           unsigned long long adlen, | ||||
|                                           const unsigned char *npub, | ||||
|                                           const crypto_aead_aes256gcm_state *ctx_) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(4, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_encrypt_detached_afternm(unsigned char *c, | ||||
|                                                    unsigned char *mac, | ||||
|                                                    unsigned long long *maclen_p, | ||||
|                                                    const unsigned char *m, | ||||
|                                                    unsigned long long mlen, | ||||
|                                                    const unsigned char *ad, | ||||
|                                                    unsigned long long adlen, | ||||
|                                                    const unsigned char *nsec, | ||||
|                                                    const unsigned char *npub, | ||||
|                                                    const crypto_aead_aes256gcm_state *ctx_) | ||||
|             __attribute__ ((nonnull(1, 2, 9, 10))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_aes256gcm_decrypt_detached_afternm(unsigned char *m, | ||||
|                                                    unsigned char *nsec, | ||||
|                                                    const unsigned char *c, | ||||
|                                                    unsigned long long clen, | ||||
|                                                    const unsigned char *mac, | ||||
|                                                    const unsigned char *ad, | ||||
|                                                    unsigned long long adlen, | ||||
|                                                    const unsigned char *npub, | ||||
|                                                    const crypto_aead_aes256gcm_state *ctx_) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(3, 5, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_aead_aes256gcm_keygen(unsigned char k[crypto_aead_aes256gcm_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,180 @@ | |||
| #ifndef crypto_aead_chacha20poly1305_H | ||||
| #define crypto_aead_chacha20poly1305_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| /* -- IETF ChaCha20-Poly1305 construction with a 96-bit nonce and a 32-bit internal counter -- */ | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_ietf_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_ietf_keybytes(void); | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_ietf_NSECBYTES 0U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_ietf_nsecbytes(void); | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_ietf_NPUBBYTES 12U | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_ietf_npubbytes(void); | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_ietf_ABYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_ietf_abytes(void); | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX \ | ||||
|     SODIUM_MIN(SODIUM_SIZE_MAX - crypto_aead_chacha20poly1305_ietf_ABYTES, \ | ||||
|                (64ULL * ((1ULL << 32) - 1ULL))) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_ietf_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_chacha20poly1305_ietf_encrypt(unsigned char *c, | ||||
|                                               unsigned long long *clen_p, | ||||
|                                               const unsigned char *m, | ||||
|                                               unsigned long long mlen, | ||||
|                                               const unsigned char *ad, | ||||
|                                               unsigned long long adlen, | ||||
|                                               const unsigned char *nsec, | ||||
|                                               const unsigned char *npub, | ||||
|                                               const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_chacha20poly1305_ietf_decrypt(unsigned char *m, | ||||
|                                               unsigned long long *mlen_p, | ||||
|                                               unsigned char *nsec, | ||||
|                                               const unsigned char *c, | ||||
|                                               unsigned long long clen, | ||||
|                                               const unsigned char *ad, | ||||
|                                               unsigned long long adlen, | ||||
|                                               const unsigned char *npub, | ||||
|                                               const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(4, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_chacha20poly1305_ietf_encrypt_detached(unsigned char *c, | ||||
|                                                        unsigned char *mac, | ||||
|                                                        unsigned long long *maclen_p, | ||||
|                                                        const unsigned char *m, | ||||
|                                                        unsigned long long mlen, | ||||
|                                                        const unsigned char *ad, | ||||
|                                                        unsigned long long adlen, | ||||
|                                                        const unsigned char *nsec, | ||||
|                                                        const unsigned char *npub, | ||||
|                                                        const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 2, 9, 10))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_chacha20poly1305_ietf_decrypt_detached(unsigned char *m, | ||||
|                                                        unsigned char *nsec, | ||||
|                                                        const unsigned char *c, | ||||
|                                                        unsigned long long clen, | ||||
|                                                        const unsigned char *mac, | ||||
|                                                        const unsigned char *ad, | ||||
|                                                        unsigned long long adlen, | ||||
|                                                        const unsigned char *npub, | ||||
|                                                        const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(3, 5, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_aead_chacha20poly1305_ietf_keygen(unsigned char k[crypto_aead_chacha20poly1305_ietf_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* -- Original ChaCha20-Poly1305 construction with a 64-bit nonce and a 64-bit internal counter -- */ | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_keybytes(void); | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_NSECBYTES 0U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_nsecbytes(void); | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_NPUBBYTES 8U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_npubbytes(void); | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_ABYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_abytes(void); | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX \ | ||||
|     (SODIUM_SIZE_MAX - crypto_aead_chacha20poly1305_ABYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_chacha20poly1305_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_chacha20poly1305_encrypt(unsigned char *c, | ||||
|                                          unsigned long long *clen_p, | ||||
|                                          const unsigned char *m, | ||||
|                                          unsigned long long mlen, | ||||
|                                          const unsigned char *ad, | ||||
|                                          unsigned long long adlen, | ||||
|                                          const unsigned char *nsec, | ||||
|                                          const unsigned char *npub, | ||||
|                                          const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_chacha20poly1305_decrypt(unsigned char *m, | ||||
|                                          unsigned long long *mlen_p, | ||||
|                                          unsigned char *nsec, | ||||
|                                          const unsigned char *c, | ||||
|                                          unsigned long long clen, | ||||
|                                          const unsigned char *ad, | ||||
|                                          unsigned long long adlen, | ||||
|                                          const unsigned char *npub, | ||||
|                                          const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(4, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_chacha20poly1305_encrypt_detached(unsigned char *c, | ||||
|                                                   unsigned char *mac, | ||||
|                                                   unsigned long long *maclen_p, | ||||
|                                                   const unsigned char *m, | ||||
|                                                   unsigned long long mlen, | ||||
|                                                   const unsigned char *ad, | ||||
|                                                   unsigned long long adlen, | ||||
|                                                   const unsigned char *nsec, | ||||
|                                                   const unsigned char *npub, | ||||
|                                                   const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 2, 9, 10))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_chacha20poly1305_decrypt_detached(unsigned char *m, | ||||
|                                                   unsigned char *nsec, | ||||
|                                                   const unsigned char *c, | ||||
|                                                   unsigned long long clen, | ||||
|                                                   const unsigned char *mac, | ||||
|                                                   const unsigned char *ad, | ||||
|                                                   unsigned long long adlen, | ||||
|                                                   const unsigned char *npub, | ||||
|                                                   const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(3, 5, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_aead_chacha20poly1305_keygen(unsigned char k[crypto_aead_chacha20poly1305_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* Aliases */ | ||||
| 
 | ||||
| #define crypto_aead_chacha20poly1305_IETF_KEYBYTES         crypto_aead_chacha20poly1305_ietf_KEYBYTES | ||||
| #define crypto_aead_chacha20poly1305_IETF_NSECBYTES        crypto_aead_chacha20poly1305_ietf_NSECBYTES | ||||
| #define crypto_aead_chacha20poly1305_IETF_NPUBBYTES        crypto_aead_chacha20poly1305_ietf_NPUBBYTES | ||||
| #define crypto_aead_chacha20poly1305_IETF_ABYTES           crypto_aead_chacha20poly1305_ietf_ABYTES | ||||
| #define crypto_aead_chacha20poly1305_IETF_MESSAGEBYTES_MAX crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,100 @@ | |||
| #ifndef crypto_aead_xchacha20poly1305_H | ||||
| #define crypto_aead_xchacha20poly1305_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_aead_xchacha20poly1305_ietf_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_xchacha20poly1305_ietf_keybytes(void); | ||||
| 
 | ||||
| #define crypto_aead_xchacha20poly1305_ietf_NSECBYTES 0U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_xchacha20poly1305_ietf_nsecbytes(void); | ||||
| 
 | ||||
| #define crypto_aead_xchacha20poly1305_ietf_NPUBBYTES 24U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_xchacha20poly1305_ietf_npubbytes(void); | ||||
| 
 | ||||
| #define crypto_aead_xchacha20poly1305_ietf_ABYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_xchacha20poly1305_ietf_abytes(void); | ||||
| 
 | ||||
| #define crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX \ | ||||
|     (SODIUM_SIZE_MAX - crypto_aead_xchacha20poly1305_ietf_ABYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_aead_xchacha20poly1305_ietf_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_xchacha20poly1305_ietf_encrypt(unsigned char *c, | ||||
|                                                unsigned long long *clen_p, | ||||
|                                                const unsigned char *m, | ||||
|                                                unsigned long long mlen, | ||||
|                                                const unsigned char *ad, | ||||
|                                                unsigned long long adlen, | ||||
|                                                const unsigned char *nsec, | ||||
|                                                const unsigned char *npub, | ||||
|                                                const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_xchacha20poly1305_ietf_decrypt(unsigned char *m, | ||||
|                                                unsigned long long *mlen_p, | ||||
|                                                unsigned char *nsec, | ||||
|                                                const unsigned char *c, | ||||
|                                                unsigned long long clen, | ||||
|                                                const unsigned char *ad, | ||||
|                                                unsigned long long adlen, | ||||
|                                                const unsigned char *npub, | ||||
|                                                const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(4, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_xchacha20poly1305_ietf_encrypt_detached(unsigned char *c, | ||||
|                                                         unsigned char *mac, | ||||
|                                                         unsigned long long *maclen_p, | ||||
|                                                         const unsigned char *m, | ||||
|                                                         unsigned long long mlen, | ||||
|                                                         const unsigned char *ad, | ||||
|                                                         unsigned long long adlen, | ||||
|                                                         const unsigned char *nsec, | ||||
|                                                         const unsigned char *npub, | ||||
|                                                         const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 2, 9, 10))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_aead_xchacha20poly1305_ietf_decrypt_detached(unsigned char *m, | ||||
|                                                         unsigned char *nsec, | ||||
|                                                         const unsigned char *c, | ||||
|                                                         unsigned long long clen, | ||||
|                                                         const unsigned char *mac, | ||||
|                                                         const unsigned char *ad, | ||||
|                                                         unsigned long long adlen, | ||||
|                                                         const unsigned char *npub, | ||||
|                                                         const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(3, 5, 8, 9))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_aead_xchacha20poly1305_ietf_keygen(unsigned char k[crypto_aead_xchacha20poly1305_ietf_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* Aliases */ | ||||
| 
 | ||||
| #define crypto_aead_xchacha20poly1305_IETF_KEYBYTES         crypto_aead_xchacha20poly1305_ietf_KEYBYTES | ||||
| #define crypto_aead_xchacha20poly1305_IETF_NSECBYTES        crypto_aead_xchacha20poly1305_ietf_NSECBYTES | ||||
| #define crypto_aead_xchacha20poly1305_IETF_NPUBBYTES        crypto_aead_xchacha20poly1305_ietf_NPUBBYTES | ||||
| #define crypto_aead_xchacha20poly1305_IETF_ABYTES           crypto_aead_xchacha20poly1305_ietf_ABYTES | ||||
| #define crypto_aead_xchacha20poly1305_IETF_MESSAGEBYTES_MAX crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										46
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_auth.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_auth.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,46 @@ | |||
| #ifndef crypto_auth_H | ||||
| #define crypto_auth_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_auth_hmacsha512256.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_auth_BYTES crypto_auth_hmacsha512256_BYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_auth_bytes(void); | ||||
| 
 | ||||
| #define crypto_auth_KEYBYTES crypto_auth_hmacsha512256_KEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_auth_keybytes(void); | ||||
| 
 | ||||
| #define crypto_auth_PRIMITIVE "hmacsha512256" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_auth_primitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth(unsigned char *out, const unsigned char *in, | ||||
|                 unsigned long long inlen, const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_verify(const unsigned char *h, const unsigned char *in, | ||||
|                        unsigned long long inlen, const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_auth_keygen(unsigned char k[crypto_auth_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,70 @@ | |||
| #ifndef crypto_auth_hmacsha256_H | ||||
| #define crypto_auth_hmacsha256_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "crypto_hash_sha256.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_auth_hmacsha256_BYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha256_bytes(void); | ||||
| 
 | ||||
| #define crypto_auth_hmacsha256_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha256_keybytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha256(unsigned char *out, | ||||
|                            const unsigned char *in, | ||||
|                            unsigned long long inlen, | ||||
|                            const unsigned char *k) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha256_verify(const unsigned char *h, | ||||
|                                   const unsigned char *in, | ||||
|                                   unsigned long long inlen, | ||||
|                                   const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| /* ------------------------------------------------------------------------- */ | ||||
| 
 | ||||
| typedef struct crypto_auth_hmacsha256_state { | ||||
|     crypto_hash_sha256_state ictx; | ||||
|     crypto_hash_sha256_state octx; | ||||
| } crypto_auth_hmacsha256_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha256_statebytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha256_init(crypto_auth_hmacsha256_state *state, | ||||
|                                 const unsigned char *key, | ||||
|                                 size_t keylen) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha256_update(crypto_auth_hmacsha256_state *state, | ||||
|                                   const unsigned char *in, | ||||
|                                   unsigned long long inlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha256_final(crypto_auth_hmacsha256_state *state, | ||||
|                                  unsigned char *out) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_auth_hmacsha256_keygen(unsigned char k[crypto_auth_hmacsha256_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,68 @@ | |||
| #ifndef crypto_auth_hmacsha512_H | ||||
| #define crypto_auth_hmacsha512_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "crypto_hash_sha512.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_auth_hmacsha512_BYTES 64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha512_bytes(void); | ||||
| 
 | ||||
| #define crypto_auth_hmacsha512_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha512_keybytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512(unsigned char *out, | ||||
|                            const unsigned char *in, | ||||
|                            unsigned long long inlen, | ||||
|                            const unsigned char *k) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512_verify(const unsigned char *h, | ||||
|                                   const unsigned char *in, | ||||
|                                   unsigned long long inlen, | ||||
|                                   const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| /* ------------------------------------------------------------------------- */ | ||||
| 
 | ||||
| typedef struct crypto_auth_hmacsha512_state { | ||||
|     crypto_hash_sha512_state ictx; | ||||
|     crypto_hash_sha512_state octx; | ||||
| } crypto_auth_hmacsha512_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha512_statebytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512_init(crypto_auth_hmacsha512_state *state, | ||||
|                                 const unsigned char *key, | ||||
|                                 size_t keylen) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512_update(crypto_auth_hmacsha512_state *state, | ||||
|                                   const unsigned char *in, | ||||
|                                   unsigned long long inlen) __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512_final(crypto_auth_hmacsha512_state *state, | ||||
|                                  unsigned char *out) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_auth_hmacsha512_keygen(unsigned char k[crypto_auth_hmacsha512_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,65 @@ | |||
| #ifndef crypto_auth_hmacsha512256_H | ||||
| #define crypto_auth_hmacsha512256_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "crypto_auth_hmacsha512.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_auth_hmacsha512256_BYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha512256_bytes(void); | ||||
| 
 | ||||
| #define crypto_auth_hmacsha512256_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha512256_keybytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512256(unsigned char *out, | ||||
|                               const unsigned char *in, | ||||
|                               unsigned long long inlen, | ||||
|                               const unsigned char *k) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512256_verify(const unsigned char *h, | ||||
|                                      const unsigned char *in, | ||||
|                                      unsigned long long inlen, | ||||
|                                      const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| /* ------------------------------------------------------------------------- */ | ||||
| 
 | ||||
| typedef crypto_auth_hmacsha512_state crypto_auth_hmacsha512256_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_auth_hmacsha512256_statebytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512256_init(crypto_auth_hmacsha512256_state *state, | ||||
|                                    const unsigned char *key, | ||||
|                                    size_t keylen) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512256_update(crypto_auth_hmacsha512256_state *state, | ||||
|                                      const unsigned char *in, | ||||
|                                      unsigned long long inlen) __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_auth_hmacsha512256_final(crypto_auth_hmacsha512256_state *state, | ||||
|                                     unsigned char *out) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_auth_hmacsha512256_keygen(unsigned char k[crypto_auth_hmacsha512256_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										177
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_box.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										177
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_box.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,177 @@ | |||
| #ifndef crypto_box_H | ||||
| #define crypto_box_H | ||||
| 
 | ||||
| /*
 | ||||
|  * THREAD SAFETY: crypto_box_keypair() is thread-safe, | ||||
|  * provided that sodium_init() was called before. | ||||
|  * | ||||
|  * Other functions are always thread-safe. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_box_curve25519xsalsa20poly1305.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_box_SEEDBYTES crypto_box_curve25519xsalsa20poly1305_SEEDBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_seedbytes(void); | ||||
| 
 | ||||
| #define crypto_box_PUBLICKEYBYTES crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_publickeybytes(void); | ||||
| 
 | ||||
| #define crypto_box_SECRETKEYBYTES crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_secretkeybytes(void); | ||||
| 
 | ||||
| #define crypto_box_NONCEBYTES crypto_box_curve25519xsalsa20poly1305_NONCEBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_box_MACBYTES crypto_box_curve25519xsalsa20poly1305_MACBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_macbytes(void); | ||||
| 
 | ||||
| #define crypto_box_MESSAGEBYTES_MAX crypto_box_curve25519xsalsa20poly1305_MESSAGEBYTES_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_messagebytes_max(void); | ||||
| 
 | ||||
| #define crypto_box_PRIMITIVE "curve25519xsalsa20poly1305" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_box_primitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_seed_keypair(unsigned char *pk, unsigned char *sk, | ||||
|                             const unsigned char *seed) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_keypair(unsigned char *pk, unsigned char *sk) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_easy(unsigned char *c, const unsigned char *m, | ||||
|                     unsigned long long mlen, const unsigned char *n, | ||||
|                     const unsigned char *pk, const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_open_easy(unsigned char *m, const unsigned char *c, | ||||
|                          unsigned long long clen, const unsigned char *n, | ||||
|                          const unsigned char *pk, const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_detached(unsigned char *c, unsigned char *mac, | ||||
|                         const unsigned char *m, unsigned long long mlen, | ||||
|                         const unsigned char *n, const unsigned char *pk, | ||||
|                         const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 2, 5, 6, 7))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_open_detached(unsigned char *m, const unsigned char *c, | ||||
|                              const unsigned char *mac, | ||||
|                              unsigned long long clen, | ||||
|                              const unsigned char *n, | ||||
|                              const unsigned char *pk, | ||||
|                              const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 3, 5, 6, 7))); | ||||
| 
 | ||||
| /* -- Precomputation interface -- */ | ||||
| 
 | ||||
| #define crypto_box_BEFORENMBYTES crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_beforenmbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_beforenm(unsigned char *k, const unsigned char *pk, | ||||
|                         const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_easy_afternm(unsigned char *c, const unsigned char *m, | ||||
|                             unsigned long long mlen, const unsigned char *n, | ||||
|                             const unsigned char *k) __attribute__ ((nonnull(1, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_open_easy_afternm(unsigned char *m, const unsigned char *c, | ||||
|                                  unsigned long long clen, const unsigned char *n, | ||||
|                                  const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_detached_afternm(unsigned char *c, unsigned char *mac, | ||||
|                                 const unsigned char *m, unsigned long long mlen, | ||||
|                                 const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 2, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_open_detached_afternm(unsigned char *m, const unsigned char *c, | ||||
|                                      const unsigned char *mac, | ||||
|                                      unsigned long long clen, const unsigned char *n, | ||||
|                                      const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 3, 5, 6))); | ||||
| 
 | ||||
| /* -- Ephemeral SK interface -- */ | ||||
| 
 | ||||
| #define crypto_box_SEALBYTES (crypto_box_PUBLICKEYBYTES + crypto_box_MACBYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_sealbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_seal(unsigned char *c, const unsigned char *m, | ||||
|                     unsigned long long mlen, const unsigned char *pk) | ||||
|             __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_seal_open(unsigned char *m, const unsigned char *c, | ||||
|                          unsigned long long clen, | ||||
|                          const unsigned char *pk, const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| /* -- NaCl compatibility interface ; Requires padding -- */ | ||||
| 
 | ||||
| #define crypto_box_ZEROBYTES crypto_box_curve25519xsalsa20poly1305_ZEROBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_zerobytes(void); | ||||
| 
 | ||||
| #define crypto_box_BOXZEROBYTES crypto_box_curve25519xsalsa20poly1305_BOXZEROBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_box_boxzerobytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box(unsigned char *c, const unsigned char *m, | ||||
|                unsigned long long mlen, const unsigned char *n, | ||||
|                const unsigned char *pk, const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_open(unsigned char *m, const unsigned char *c, | ||||
|                     unsigned long long clen, const unsigned char *n, | ||||
|                     const unsigned char *pk, const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_afternm(unsigned char *c, const unsigned char *m, | ||||
|                        unsigned long long mlen, const unsigned char *n, | ||||
|                        const unsigned char *k) __attribute__ ((nonnull(1, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_open_afternm(unsigned char *m, const unsigned char *c, | ||||
|                             unsigned long long clen, const unsigned char *n, | ||||
|                             const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,164 @@ | |||
| 
 | ||||
| #ifndef crypto_box_curve25519xchacha20poly1305_H | ||||
| #define crypto_box_curve25519xchacha20poly1305_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "crypto_stream_xchacha20.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_box_curve25519xchacha20poly1305_SEEDBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xchacha20poly1305_seedbytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xchacha20poly1305_publickeybytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xchacha20poly1305_SECRETKEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xchacha20poly1305_secretkeybytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xchacha20poly1305_BEFORENMBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xchacha20poly1305_beforenmbytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xchacha20poly1305_NONCEBYTES 24U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xchacha20poly1305_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xchacha20poly1305_MACBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xchacha20poly1305_macbytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xchacha20poly1305_MESSAGEBYTES_MAX \ | ||||
|     (crypto_stream_xchacha20_MESSAGEBYTES_MAX - crypto_box_curve25519xchacha20poly1305_MACBYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xchacha20poly1305_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_seed_keypair(unsigned char *pk, | ||||
|                                                         unsigned char *sk, | ||||
|                                                         const unsigned char *seed) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_keypair(unsigned char *pk, | ||||
|                                                    unsigned char *sk) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_easy(unsigned char *c, | ||||
|                                                 const unsigned char *m, | ||||
|                                                 unsigned long long mlen, | ||||
|                                                 const unsigned char *n, | ||||
|                                                 const unsigned char *pk, | ||||
|                                                 const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_open_easy(unsigned char *m, | ||||
|                                                      const unsigned char *c, | ||||
|                                                      unsigned long long clen, | ||||
|                                                      const unsigned char *n, | ||||
|                                                      const unsigned char *pk, | ||||
|                                                      const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_detached(unsigned char *c, | ||||
|                                                     unsigned char *mac, | ||||
|                                                     const unsigned char *m, | ||||
|                                                     unsigned long long mlen, | ||||
|                                                     const unsigned char *n, | ||||
|                                                     const unsigned char *pk, | ||||
|                                                     const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 2, 5, 6, 7))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_open_detached(unsigned char *m, | ||||
|                                                          const unsigned char *c, | ||||
|                                                          const unsigned char *mac, | ||||
|                                                          unsigned long long clen, | ||||
|                                                          const unsigned char *n, | ||||
|                                                          const unsigned char *pk, | ||||
|                                                          const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 3, 5, 6, 7))); | ||||
| 
 | ||||
| /* -- Precomputation interface -- */ | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_beforenm(unsigned char *k, | ||||
|                                                     const unsigned char *pk, | ||||
|                                                     const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_easy_afternm(unsigned char *c, | ||||
|                                                         const unsigned char *m, | ||||
|                                                         unsigned long long mlen, | ||||
|                                                         const unsigned char *n, | ||||
|                                                         const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_open_easy_afternm(unsigned char *m, | ||||
|                                                              const unsigned char *c, | ||||
|                                                              unsigned long long clen, | ||||
|                                                              const unsigned char *n, | ||||
|                                                              const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_detached_afternm(unsigned char *c, | ||||
|                                                             unsigned char *mac, | ||||
|                                                             const unsigned char *m, | ||||
|                                                             unsigned long long mlen, | ||||
|                                                             const unsigned char *n, | ||||
|                                                             const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 2, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_open_detached_afternm(unsigned char *m, | ||||
|                                                                  const unsigned char *c, | ||||
|                                                                  const unsigned char *mac, | ||||
|                                                                  unsigned long long clen, | ||||
|                                                                  const unsigned char *n, | ||||
|                                                                  const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 3, 5, 6))); | ||||
| 
 | ||||
| /* -- Ephemeral SK interface -- */ | ||||
| 
 | ||||
| #define crypto_box_curve25519xchacha20poly1305_SEALBYTES \ | ||||
|     (crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES + \ | ||||
|      crypto_box_curve25519xchacha20poly1305_MACBYTES) | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xchacha20poly1305_sealbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_seal(unsigned char *c, | ||||
|                                                 const unsigned char *m, | ||||
|                                                 unsigned long long mlen, | ||||
|                                                 const unsigned char *pk) | ||||
|             __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xchacha20poly1305_seal_open(unsigned char *m, | ||||
|                                                      const unsigned char *c, | ||||
|                                                      unsigned long long clen, | ||||
|                                                      const unsigned char *pk, | ||||
|                                                      const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,112 @@ | |||
| #ifndef crypto_box_curve25519xsalsa20poly1305_H | ||||
| #define crypto_box_curve25519xsalsa20poly1305_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "crypto_stream_xsalsa20.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_box_curve25519xsalsa20poly1305_SEEDBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_seedbytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_publickeybytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_secretkeybytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_beforenmbytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xsalsa20poly1305_NONCEBYTES 24U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xsalsa20poly1305_MACBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_macbytes(void); | ||||
| 
 | ||||
| /* Only for the libsodium API - The NaCl compatibility API would require BOXZEROBYTES extra bytes */ | ||||
| #define crypto_box_curve25519xsalsa20poly1305_MESSAGEBYTES_MAX \ | ||||
|     (crypto_stream_xsalsa20_MESSAGEBYTES_MAX - crypto_box_curve25519xsalsa20poly1305_MACBYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xsalsa20poly1305_seed_keypair(unsigned char *pk, | ||||
|                                                        unsigned char *sk, | ||||
|                                                        const unsigned char *seed) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xsalsa20poly1305_keypair(unsigned char *pk, | ||||
|                                                   unsigned char *sk) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xsalsa20poly1305_beforenm(unsigned char *k, | ||||
|                                                    const unsigned char *pk, | ||||
|                                                    const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* -- NaCl compatibility interface ; Requires padding -- */ | ||||
| 
 | ||||
| #define crypto_box_curve25519xsalsa20poly1305_BOXZEROBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_boxzerobytes(void); | ||||
| 
 | ||||
| #define crypto_box_curve25519xsalsa20poly1305_ZEROBYTES \ | ||||
|     (crypto_box_curve25519xsalsa20poly1305_BOXZEROBYTES + \ | ||||
|      crypto_box_curve25519xsalsa20poly1305_MACBYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_box_curve25519xsalsa20poly1305_zerobytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xsalsa20poly1305(unsigned char *c, | ||||
|                                           const unsigned char *m, | ||||
|                                           unsigned long long mlen, | ||||
|                                           const unsigned char *n, | ||||
|                                           const unsigned char *pk, | ||||
|                                           const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xsalsa20poly1305_open(unsigned char *m, | ||||
|                                                const unsigned char *c, | ||||
|                                                unsigned long long clen, | ||||
|                                                const unsigned char *n, | ||||
|                                                const unsigned char *pk, | ||||
|                                                const unsigned char *sk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xsalsa20poly1305_afternm(unsigned char *c, | ||||
|                                                   const unsigned char *m, | ||||
|                                                   unsigned long long mlen, | ||||
|                                                   const unsigned char *n, | ||||
|                                                   const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_box_curve25519xsalsa20poly1305_open_afternm(unsigned char *m, | ||||
|                                                        const unsigned char *c, | ||||
|                                                        unsigned long long clen, | ||||
|                                                        const unsigned char *n, | ||||
|                                                        const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										100
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_core_ed25519.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_core_ed25519.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,100 @@ | |||
| #ifndef crypto_core_ed25519_H | ||||
| #define crypto_core_ed25519_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_core_ed25519_BYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ed25519_bytes(void); | ||||
| 
 | ||||
| #define crypto_core_ed25519_UNIFORMBYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ed25519_uniformbytes(void); | ||||
| 
 | ||||
| #define crypto_core_ed25519_HASHBYTES 64 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ed25519_hashbytes(void); | ||||
| 
 | ||||
| #define crypto_core_ed25519_SCALARBYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ed25519_scalarbytes(void); | ||||
| 
 | ||||
| #define crypto_core_ed25519_NONREDUCEDSCALARBYTES 64 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ed25519_nonreducedscalarbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ed25519_is_valid_point(const unsigned char *p) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ed25519_add(unsigned char *r, | ||||
|                             const unsigned char *p, const unsigned char *q) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ed25519_sub(unsigned char *r, | ||||
|                             const unsigned char *p, const unsigned char *q) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ed25519_from_uniform(unsigned char *p, const unsigned char *r) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ed25519_from_hash(unsigned char *p, const unsigned char *h) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ed25519_random(unsigned char *p) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ed25519_scalar_random(unsigned char *r) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ed25519_scalar_invert(unsigned char *recip, const unsigned char *s) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ed25519_scalar_negate(unsigned char *neg, const unsigned char *s) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ed25519_scalar_complement(unsigned char *comp, const unsigned char *s) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ed25519_scalar_add(unsigned char *z, const unsigned char *x, | ||||
|                                     const unsigned char *y) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ed25519_scalar_sub(unsigned char *z, const unsigned char *x, | ||||
|                                     const unsigned char *y) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ed25519_scalar_mul(unsigned char *z, const unsigned char *x, | ||||
|                                     const unsigned char *y) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /*
 | ||||
|  * The interval `s` is sampled from should be at least 317 bits to ensure almost | ||||
|  * uniformity of `r` over `L`. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ed25519_scalar_reduce(unsigned char *r, const unsigned char *s) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,36 @@ | |||
| #ifndef crypto_core_hchacha20_H | ||||
| #define crypto_core_hchacha20_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_core_hchacha20_OUTPUTBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_hchacha20_outputbytes(void); | ||||
| 
 | ||||
| #define crypto_core_hchacha20_INPUTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_hchacha20_inputbytes(void); | ||||
| 
 | ||||
| #define crypto_core_hchacha20_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_hchacha20_keybytes(void); | ||||
| 
 | ||||
| #define crypto_core_hchacha20_CONSTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_hchacha20_constbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_hchacha20(unsigned char *out, const unsigned char *in, | ||||
|                           const unsigned char *k, const unsigned char *c) | ||||
|             __attribute__ ((nonnull(1, 2, 3))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,36 @@ | |||
| #ifndef crypto_core_hsalsa20_H | ||||
| #define crypto_core_hsalsa20_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_core_hsalsa20_OUTPUTBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_hsalsa20_outputbytes(void); | ||||
| 
 | ||||
| #define crypto_core_hsalsa20_INPUTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_hsalsa20_inputbytes(void); | ||||
| 
 | ||||
| #define crypto_core_hsalsa20_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_hsalsa20_keybytes(void); | ||||
| 
 | ||||
| #define crypto_core_hsalsa20_CONSTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_hsalsa20_constbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_hsalsa20(unsigned char *out, const unsigned char *in, | ||||
|                          const unsigned char *k, const unsigned char *c) | ||||
|             __attribute__ ((nonnull(1, 2, 3))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,100 @@ | |||
| #ifndef crypto_core_ristretto255_H | ||||
| #define crypto_core_ristretto255_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_core_ristretto255_BYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ristretto255_bytes(void); | ||||
| 
 | ||||
| #define crypto_core_ristretto255_HASHBYTES 64 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ristretto255_hashbytes(void); | ||||
| 
 | ||||
| #define crypto_core_ristretto255_SCALARBYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ristretto255_scalarbytes(void); | ||||
| 
 | ||||
| #define crypto_core_ristretto255_NONREDUCEDSCALARBYTES 64 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_ristretto255_nonreducedscalarbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ristretto255_is_valid_point(const unsigned char *p) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ristretto255_add(unsigned char *r, | ||||
|                                  const unsigned char *p, const unsigned char *q) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ristretto255_sub(unsigned char *r, | ||||
|                                  const unsigned char *p, const unsigned char *q) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ristretto255_from_hash(unsigned char *p, | ||||
|                                        const unsigned char *r) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ristretto255_random(unsigned char *p) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ristretto255_scalar_random(unsigned char *r) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_ristretto255_scalar_invert(unsigned char *recip, | ||||
|                                            const unsigned char *s) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ristretto255_scalar_negate(unsigned char *neg, | ||||
|                                             const unsigned char *s) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ristretto255_scalar_complement(unsigned char *comp, | ||||
|                                                 const unsigned char *s) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ristretto255_scalar_add(unsigned char *z, | ||||
|                                          const unsigned char *x, | ||||
|                                          const unsigned char *y) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ristretto255_scalar_sub(unsigned char *z, | ||||
|                                          const unsigned char *x, | ||||
|                                          const unsigned char *y) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ristretto255_scalar_mul(unsigned char *z, | ||||
|                                          const unsigned char *x, | ||||
|                                          const unsigned char *y) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /*
 | ||||
|  * The interval `s` is sampled from should be at least 317 bits to ensure almost | ||||
|  * uniformity of `r` over `L`. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| void crypto_core_ristretto255_scalar_reduce(unsigned char *r, | ||||
|                                             const unsigned char *s) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,36 @@ | |||
| #ifndef crypto_core_salsa20_H | ||||
| #define crypto_core_salsa20_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_core_salsa20_OUTPUTBYTES 64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa20_outputbytes(void); | ||||
| 
 | ||||
| #define crypto_core_salsa20_INPUTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa20_inputbytes(void); | ||||
| 
 | ||||
| #define crypto_core_salsa20_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa20_keybytes(void); | ||||
| 
 | ||||
| #define crypto_core_salsa20_CONSTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa20_constbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_salsa20(unsigned char *out, const unsigned char *in, | ||||
|                         const unsigned char *k, const unsigned char *c) | ||||
|             __attribute__ ((nonnull(1, 2, 3))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,36 @@ | |||
| #ifndef crypto_core_salsa2012_H | ||||
| #define crypto_core_salsa2012_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_core_salsa2012_OUTPUTBYTES 64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa2012_outputbytes(void); | ||||
| 
 | ||||
| #define crypto_core_salsa2012_INPUTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa2012_inputbytes(void); | ||||
| 
 | ||||
| #define crypto_core_salsa2012_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa2012_keybytes(void); | ||||
| 
 | ||||
| #define crypto_core_salsa2012_CONSTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa2012_constbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_salsa2012(unsigned char *out, const unsigned char *in, | ||||
|                           const unsigned char *k, const unsigned char *c) | ||||
|             __attribute__ ((nonnull(1, 2, 3))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,40 @@ | |||
| #ifndef crypto_core_salsa208_H | ||||
| #define crypto_core_salsa208_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_core_salsa208_OUTPUTBYTES 64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa208_outputbytes(void) | ||||
|             __attribute__ ((deprecated)); | ||||
| 
 | ||||
| #define crypto_core_salsa208_INPUTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa208_inputbytes(void) | ||||
|             __attribute__ ((deprecated)); | ||||
| 
 | ||||
| #define crypto_core_salsa208_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa208_keybytes(void) | ||||
|             __attribute__ ((deprecated)); | ||||
| 
 | ||||
| #define crypto_core_salsa208_CONSTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_core_salsa208_constbytes(void) | ||||
|             __attribute__ ((deprecated)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_core_salsa208(unsigned char *out, const unsigned char *in, | ||||
|                          const unsigned char *k, const unsigned char *c) | ||||
|             __attribute__ ((nonnull(1, 2, 3))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										84
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_generichash.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_generichash.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,84 @@ | |||
| #ifndef crypto_generichash_H | ||||
| #define crypto_generichash_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_generichash_blake2b.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_generichash_BYTES_MIN crypto_generichash_blake2b_BYTES_MIN | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_generichash_bytes_min(void); | ||||
| 
 | ||||
| #define crypto_generichash_BYTES_MAX crypto_generichash_blake2b_BYTES_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_generichash_bytes_max(void); | ||||
| 
 | ||||
| #define crypto_generichash_BYTES crypto_generichash_blake2b_BYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_generichash_bytes(void); | ||||
| 
 | ||||
| #define crypto_generichash_KEYBYTES_MIN crypto_generichash_blake2b_KEYBYTES_MIN | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_generichash_keybytes_min(void); | ||||
| 
 | ||||
| #define crypto_generichash_KEYBYTES_MAX crypto_generichash_blake2b_KEYBYTES_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_generichash_keybytes_max(void); | ||||
| 
 | ||||
| #define crypto_generichash_KEYBYTES crypto_generichash_blake2b_KEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_generichash_keybytes(void); | ||||
| 
 | ||||
| #define crypto_generichash_PRIMITIVE "blake2b" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_generichash_primitive(void); | ||||
| 
 | ||||
| /*
 | ||||
|  * Important when writing bindings for other programming languages: | ||||
|  * the state address should be 64-bytes aligned. | ||||
|  */ | ||||
| typedef crypto_generichash_blake2b_state crypto_generichash_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_generichash_statebytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash(unsigned char *out, size_t outlen, | ||||
|                        const unsigned char *in, unsigned long long inlen, | ||||
|                        const unsigned char *key, size_t keylen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_init(crypto_generichash_state *state, | ||||
|                             const unsigned char *key, | ||||
|                             const size_t keylen, const size_t outlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_update(crypto_generichash_state *state, | ||||
|                               const unsigned char *in, | ||||
|                               unsigned long long inlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_final(crypto_generichash_state *state, | ||||
|                              unsigned char *out, const size_t outlen) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_generichash_keygen(unsigned char k[crypto_generichash_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,118 @@ | |||
| #ifndef crypto_generichash_blake2b_H | ||||
| #define crypto_generichash_blake2b_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| #include <stdlib.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #if defined(__IBMC__) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) | ||||
| # pragma pack(1) | ||||
| #else | ||||
| # pragma pack(push, 1) | ||||
| #endif | ||||
| 
 | ||||
| typedef struct CRYPTO_ALIGN(64) crypto_generichash_blake2b_state { | ||||
|     unsigned char opaque[384]; | ||||
| } crypto_generichash_blake2b_state; | ||||
| 
 | ||||
| #if defined(__IBMC__) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) | ||||
| # pragma pack() | ||||
| #else | ||||
| # pragma pack(pop) | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_generichash_blake2b_BYTES_MIN     16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_bytes_min(void); | ||||
| 
 | ||||
| #define crypto_generichash_blake2b_BYTES_MAX     64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_bytes_max(void); | ||||
| 
 | ||||
| #define crypto_generichash_blake2b_BYTES         32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_bytes(void); | ||||
| 
 | ||||
| #define crypto_generichash_blake2b_KEYBYTES_MIN  16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_keybytes_min(void); | ||||
| 
 | ||||
| #define crypto_generichash_blake2b_KEYBYTES_MAX  64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_keybytes_max(void); | ||||
| 
 | ||||
| #define crypto_generichash_blake2b_KEYBYTES      32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_keybytes(void); | ||||
| 
 | ||||
| #define crypto_generichash_blake2b_SALTBYTES     16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_saltbytes(void); | ||||
| 
 | ||||
| #define crypto_generichash_blake2b_PERSONALBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_personalbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_generichash_blake2b_statebytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_blake2b(unsigned char *out, size_t outlen, | ||||
|                                const unsigned char *in, | ||||
|                                unsigned long long inlen, | ||||
|                                const unsigned char *key, size_t keylen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_blake2b_salt_personal(unsigned char *out, size_t outlen, | ||||
|                                              const unsigned char *in, | ||||
|                                              unsigned long long inlen, | ||||
|                                              const unsigned char *key, | ||||
|                                              size_t keylen, | ||||
|                                              const unsigned char *salt, | ||||
|                                              const unsigned char *personal) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_blake2b_init(crypto_generichash_blake2b_state *state, | ||||
|                                     const unsigned char *key, | ||||
|                                     const size_t keylen, const size_t outlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_blake2b_init_salt_personal(crypto_generichash_blake2b_state *state, | ||||
|                                                   const unsigned char *key, | ||||
|                                                   const size_t keylen, const size_t outlen, | ||||
|                                                   const unsigned char *salt, | ||||
|                                                   const unsigned char *personal) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_blake2b_update(crypto_generichash_blake2b_state *state, | ||||
|                                       const unsigned char *in, | ||||
|                                       unsigned long long inlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_generichash_blake2b_final(crypto_generichash_blake2b_state *state, | ||||
|                                      unsigned char *out, | ||||
|                                      const size_t outlen) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_generichash_blake2b_keygen(unsigned char k[crypto_generichash_blake2b_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										40
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_hash.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_hash.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,40 @@ | |||
| #ifndef crypto_hash_H | ||||
| #define crypto_hash_H | ||||
| 
 | ||||
| /*
 | ||||
|  * WARNING: Unless you absolutely need to use SHA512 for interoperatibility, | ||||
|  * purposes, you might want to consider crypto_generichash() instead. | ||||
|  * Unlike SHA512, crypto_generichash() is not vulnerable to length | ||||
|  * extension attacks. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_hash_sha512.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_hash_BYTES crypto_hash_sha512_BYTES | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_hash_bytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash(unsigned char *out, const unsigned char *in, | ||||
|                 unsigned long long inlen) __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| #define crypto_hash_PRIMITIVE "sha512" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_hash_primitive(void) | ||||
|             __attribute__ ((warn_unused_result)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										60
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_hash_sha256.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_hash_sha256.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,60 @@ | |||
| #ifndef crypto_hash_sha256_H | ||||
| #define crypto_hash_sha256_H | ||||
| 
 | ||||
| /*
 | ||||
|  * WARNING: Unless you absolutely need to use SHA256 for interoperatibility, | ||||
|  * purposes, you might want to consider crypto_generichash() instead. | ||||
|  * Unlike SHA256, crypto_generichash() is not vulnerable to length | ||||
|  * extension attacks. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| #include <stdlib.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| typedef struct crypto_hash_sha256_state { | ||||
|     uint32_t state[8]; | ||||
|     uint64_t count; | ||||
|     uint8_t  buf[64]; | ||||
| } crypto_hash_sha256_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_hash_sha256_statebytes(void); | ||||
| 
 | ||||
| #define crypto_hash_sha256_BYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_hash_sha256_bytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash_sha256(unsigned char *out, const unsigned char *in, | ||||
|                        unsigned long long inlen) __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash_sha256_init(crypto_hash_sha256_state *state) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash_sha256_update(crypto_hash_sha256_state *state, | ||||
|                               const unsigned char *in, | ||||
|                               unsigned long long inlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash_sha256_final(crypto_hash_sha256_state *state, | ||||
|                              unsigned char *out) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										60
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_hash_sha512.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_hash_sha512.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,60 @@ | |||
| #ifndef crypto_hash_sha512_H | ||||
| #define crypto_hash_sha512_H | ||||
| 
 | ||||
| /*
 | ||||
|  * WARNING: Unless you absolutely need to use SHA512 for interoperatibility, | ||||
|  * purposes, you might want to consider crypto_generichash() instead. | ||||
|  * Unlike SHA512, crypto_generichash() is not vulnerable to length | ||||
|  * extension attacks. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| #include <stdlib.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| typedef struct crypto_hash_sha512_state { | ||||
|     uint64_t state[8]; | ||||
|     uint64_t count[2]; | ||||
|     uint8_t  buf[128]; | ||||
| } crypto_hash_sha512_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_hash_sha512_statebytes(void); | ||||
| 
 | ||||
| #define crypto_hash_sha512_BYTES 64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_hash_sha512_bytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash_sha512(unsigned char *out, const unsigned char *in, | ||||
|                        unsigned long long inlen) __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash_sha512_init(crypto_hash_sha512_state *state) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash_sha512_update(crypto_hash_sha512_state *state, | ||||
|                               const unsigned char *in, | ||||
|                               unsigned long long inlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_hash_sha512_final(crypto_hash_sha512_state *state, | ||||
|                              unsigned char *out) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										53
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_kdf.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_kdf.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,53 @@ | |||
| #ifndef crypto_kdf_H | ||||
| #define crypto_kdf_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| 
 | ||||
| #include "crypto_kdf_blake2b.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_kdf_BYTES_MIN crypto_kdf_blake2b_BYTES_MIN | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kdf_bytes_min(void); | ||||
| 
 | ||||
| #define crypto_kdf_BYTES_MAX crypto_kdf_blake2b_BYTES_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kdf_bytes_max(void); | ||||
| 
 | ||||
| #define crypto_kdf_CONTEXTBYTES crypto_kdf_blake2b_CONTEXTBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kdf_contextbytes(void); | ||||
| 
 | ||||
| #define crypto_kdf_KEYBYTES crypto_kdf_blake2b_KEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kdf_keybytes(void); | ||||
| 
 | ||||
| #define crypto_kdf_PRIMITIVE "blake2b" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_kdf_primitive(void) | ||||
|             __attribute__ ((warn_unused_result)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_kdf_derive_from_key(unsigned char *subkey, size_t subkey_len, | ||||
|                                uint64_t subkey_id, | ||||
|                                const char ctx[crypto_kdf_CONTEXTBYTES], | ||||
|                                const unsigned char key[crypto_kdf_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_kdf_keygen(unsigned char k[crypto_kdf_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										44
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_kdf_blake2b.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_kdf_blake2b.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,44 @@ | |||
| #ifndef crypto_kdf_blake2b_H | ||||
| #define crypto_kdf_blake2b_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| 
 | ||||
| #include "crypto_kdf_blake2b.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_kdf_blake2b_BYTES_MIN 16 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kdf_blake2b_bytes_min(void); | ||||
| 
 | ||||
| #define crypto_kdf_blake2b_BYTES_MAX 64 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kdf_blake2b_bytes_max(void); | ||||
| 
 | ||||
| #define crypto_kdf_blake2b_CONTEXTBYTES 8 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kdf_blake2b_contextbytes(void); | ||||
| 
 | ||||
| #define crypto_kdf_blake2b_KEYBYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kdf_blake2b_keybytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_kdf_blake2b_derive_from_key(unsigned char *subkey, size_t subkey_len, | ||||
|                                        uint64_t subkey_id, | ||||
|                                        const char ctx[crypto_kdf_blake2b_CONTEXTBYTES], | ||||
|                                        const unsigned char key[crypto_kdf_blake2b_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										66
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_kx.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_kx.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,66 @@ | |||
| #ifndef crypto_kx_H | ||||
| #define crypto_kx_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_kx_PUBLICKEYBYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kx_publickeybytes(void); | ||||
| 
 | ||||
| #define crypto_kx_SECRETKEYBYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kx_secretkeybytes(void); | ||||
| 
 | ||||
| #define crypto_kx_SEEDBYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kx_seedbytes(void); | ||||
| 
 | ||||
| #define crypto_kx_SESSIONKEYBYTES 32 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_kx_sessionkeybytes(void); | ||||
| 
 | ||||
| #define crypto_kx_PRIMITIVE "x25519blake2b" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_kx_primitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_kx_seed_keypair(unsigned char pk[crypto_kx_PUBLICKEYBYTES], | ||||
|                            unsigned char sk[crypto_kx_SECRETKEYBYTES], | ||||
|                            const unsigned char seed[crypto_kx_SEEDBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_kx_keypair(unsigned char pk[crypto_kx_PUBLICKEYBYTES], | ||||
|                       unsigned char sk[crypto_kx_SECRETKEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_kx_client_session_keys(unsigned char rx[crypto_kx_SESSIONKEYBYTES], | ||||
|                                   unsigned char tx[crypto_kx_SESSIONKEYBYTES], | ||||
|                                   const unsigned char client_pk[crypto_kx_PUBLICKEYBYTES], | ||||
|                                   const unsigned char client_sk[crypto_kx_SECRETKEYBYTES], | ||||
|                                   const unsigned char server_pk[crypto_kx_PUBLICKEYBYTES]) | ||||
|             __attribute__ ((warn_unused_result))  __attribute__ ((nonnull(3, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_kx_server_session_keys(unsigned char rx[crypto_kx_SESSIONKEYBYTES], | ||||
|                                   unsigned char tx[crypto_kx_SESSIONKEYBYTES], | ||||
|                                   const unsigned char server_pk[crypto_kx_PUBLICKEYBYTES], | ||||
|                                   const unsigned char server_sk[crypto_kx_SECRETKEYBYTES], | ||||
|                                   const unsigned char client_pk[crypto_kx_PUBLICKEYBYTES]) | ||||
|             __attribute__ ((warn_unused_result))  __attribute__ ((nonnull(3, 4, 5))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										65
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_onetimeauth.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_onetimeauth.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,65 @@ | |||
| #ifndef crypto_onetimeauth_H | ||||
| #define crypto_onetimeauth_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_onetimeauth_poly1305.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| typedef crypto_onetimeauth_poly1305_state crypto_onetimeauth_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_onetimeauth_statebytes(void); | ||||
| 
 | ||||
| #define crypto_onetimeauth_BYTES crypto_onetimeauth_poly1305_BYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_onetimeauth_bytes(void); | ||||
| 
 | ||||
| #define crypto_onetimeauth_KEYBYTES crypto_onetimeauth_poly1305_KEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_onetimeauth_keybytes(void); | ||||
| 
 | ||||
| #define crypto_onetimeauth_PRIMITIVE "poly1305" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_onetimeauth_primitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth(unsigned char *out, const unsigned char *in, | ||||
|                        unsigned long long inlen, const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_verify(const unsigned char *h, const unsigned char *in, | ||||
|                               unsigned long long inlen, const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_init(crypto_onetimeauth_state *state, | ||||
|                             const unsigned char *key) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_update(crypto_onetimeauth_state *state, | ||||
|                               const unsigned char *in, | ||||
|                               unsigned long long inlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_final(crypto_onetimeauth_state *state, | ||||
|                              unsigned char *out) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_onetimeauth_keygen(unsigned char k[crypto_onetimeauth_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,72 @@ | |||
| #ifndef crypto_onetimeauth_poly1305_H | ||||
| #define crypto_onetimeauth_poly1305_H | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #include <stdint.h> | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| 
 | ||||
| #include <sys/types.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| typedef struct CRYPTO_ALIGN(16) crypto_onetimeauth_poly1305_state { | ||||
|     unsigned char opaque[256]; | ||||
| } crypto_onetimeauth_poly1305_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_onetimeauth_poly1305_statebytes(void); | ||||
| 
 | ||||
| #define crypto_onetimeauth_poly1305_BYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_onetimeauth_poly1305_bytes(void); | ||||
| 
 | ||||
| #define crypto_onetimeauth_poly1305_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_onetimeauth_poly1305_keybytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_poly1305(unsigned char *out, | ||||
|                                 const unsigned char *in, | ||||
|                                 unsigned long long inlen, | ||||
|                                 const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_poly1305_verify(const unsigned char *h, | ||||
|                                        const unsigned char *in, | ||||
|                                        unsigned long long inlen, | ||||
|                                        const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_poly1305_init(crypto_onetimeauth_poly1305_state *state, | ||||
|                                      const unsigned char *key) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_poly1305_update(crypto_onetimeauth_poly1305_state *state, | ||||
|                                        const unsigned char *in, | ||||
|                                        unsigned long long inlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_onetimeauth_poly1305_final(crypto_onetimeauth_poly1305_state *state, | ||||
|                                       unsigned char *out) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_onetimeauth_poly1305_keygen(unsigned char k[crypto_onetimeauth_poly1305_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										147
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_pwhash.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										147
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_pwhash.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,147 @@ | |||
| #ifndef crypto_pwhash_H | ||||
| #define crypto_pwhash_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_pwhash_argon2i.h" | ||||
| #include "crypto_pwhash_argon2id.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_pwhash_ALG_ARGON2I13 crypto_pwhash_argon2i_ALG_ARGON2I13 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_alg_argon2i13(void); | ||||
| 
 | ||||
| #define crypto_pwhash_ALG_ARGON2ID13 crypto_pwhash_argon2id_ALG_ARGON2ID13 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_alg_argon2id13(void); | ||||
| 
 | ||||
| #define crypto_pwhash_ALG_DEFAULT crypto_pwhash_ALG_ARGON2ID13 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_alg_default(void); | ||||
| 
 | ||||
| #define crypto_pwhash_BYTES_MIN crypto_pwhash_argon2id_BYTES_MIN | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_bytes_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_BYTES_MAX crypto_pwhash_argon2id_BYTES_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_bytes_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_PASSWD_MIN crypto_pwhash_argon2id_PASSWD_MIN | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_passwd_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_PASSWD_MAX crypto_pwhash_argon2id_PASSWD_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_passwd_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_SALTBYTES crypto_pwhash_argon2id_SALTBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_saltbytes(void); | ||||
| 
 | ||||
| #define crypto_pwhash_STRBYTES crypto_pwhash_argon2id_STRBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_strbytes(void); | ||||
| 
 | ||||
| #define crypto_pwhash_STRPREFIX crypto_pwhash_argon2id_STRPREFIX | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_pwhash_strprefix(void); | ||||
| 
 | ||||
| #define crypto_pwhash_OPSLIMIT_MIN crypto_pwhash_argon2id_OPSLIMIT_MIN | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_opslimit_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_OPSLIMIT_MAX crypto_pwhash_argon2id_OPSLIMIT_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_opslimit_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_MEMLIMIT_MIN crypto_pwhash_argon2id_MEMLIMIT_MIN | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_memlimit_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_MEMLIMIT_MAX crypto_pwhash_argon2id_MEMLIMIT_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_memlimit_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_OPSLIMIT_INTERACTIVE crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_opslimit_interactive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_MEMLIMIT_INTERACTIVE crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_memlimit_interactive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_OPSLIMIT_MODERATE crypto_pwhash_argon2id_OPSLIMIT_MODERATE | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_opslimit_moderate(void); | ||||
| 
 | ||||
| #define crypto_pwhash_MEMLIMIT_MODERATE crypto_pwhash_argon2id_MEMLIMIT_MODERATE | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_memlimit_moderate(void); | ||||
| 
 | ||||
| #define crypto_pwhash_OPSLIMIT_SENSITIVE crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_opslimit_sensitive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_MEMLIMIT_SENSITIVE crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_memlimit_sensitive(void); | ||||
| 
 | ||||
| /*
 | ||||
|  * With this function, do not forget to store all parameters, including the | ||||
|  * algorithm identifier in order to produce deterministic output. | ||||
|  * The crypto_pwhash_* definitions, including crypto_pwhash_ALG_DEFAULT, | ||||
|  * may change. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash(unsigned char * const out, unsigned long long outlen, | ||||
|                   const char * const passwd, unsigned long long passwdlen, | ||||
|                   const unsigned char * const salt, | ||||
|                   unsigned long long opslimit, size_t memlimit, int alg) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /*
 | ||||
|  * The output string already includes all the required parameters, including | ||||
|  * the algorithm identifier. The string is all that has to be stored in | ||||
|  * order to verify a password. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_str(char out[crypto_pwhash_STRBYTES], | ||||
|                       const char * const passwd, unsigned long long passwdlen, | ||||
|                       unsigned long long opslimit, size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_str_alg(char out[crypto_pwhash_STRBYTES], | ||||
|                           const char * const passwd, unsigned long long passwdlen, | ||||
|                           unsigned long long opslimit, size_t memlimit, int alg) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_str_verify(const char str[crypto_pwhash_STRBYTES], | ||||
|                              const char * const passwd, | ||||
|                              unsigned long long passwdlen) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_str_needs_rehash(const char str[crypto_pwhash_STRBYTES], | ||||
|                                    unsigned long long opslimit, size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #define crypto_pwhash_PRIMITIVE "argon2i" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_pwhash_primitive(void) | ||||
|             __attribute__ ((warn_unused_result)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										122
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_pwhash_argon2i.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										122
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_pwhash_argon2i.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,122 @@ | |||
| #ifndef crypto_pwhash_argon2i_H | ||||
| #define crypto_pwhash_argon2i_H | ||||
| 
 | ||||
| #include <limits.h> | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_ALG_ARGON2I13 1 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2i_alg_argon2i13(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_BYTES_MIN 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_bytes_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_BYTES_MAX SODIUM_MIN(SODIUM_SIZE_MAX, 4294967295U) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_bytes_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_PASSWD_MIN 0U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_passwd_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_PASSWD_MAX 4294967295U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_passwd_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_SALTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_saltbytes(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_STRBYTES 128U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_strbytes(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_STRPREFIX "$argon2i$" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_pwhash_argon2i_strprefix(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_OPSLIMIT_MIN 3U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_opslimit_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_OPSLIMIT_MAX 4294967295U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_opslimit_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_MEMLIMIT_MIN 8192U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_memlimit_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_MEMLIMIT_MAX \ | ||||
|     ((SIZE_MAX >= 4398046510080U) ? 4398046510080U : (SIZE_MAX >= 2147483648U) ? 2147483648U : 32768U) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_memlimit_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE 4U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_opslimit_interactive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE 33554432U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_memlimit_interactive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_OPSLIMIT_MODERATE 6U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_opslimit_moderate(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_MEMLIMIT_MODERATE 134217728U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_memlimit_moderate(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_OPSLIMIT_SENSITIVE 8U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_opslimit_sensitive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2i_MEMLIMIT_SENSITIVE 536870912U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2i_memlimit_sensitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2i(unsigned char * const out, | ||||
|                           unsigned long long outlen, | ||||
|                           const char * const passwd, | ||||
|                           unsigned long long passwdlen, | ||||
|                           const unsigned char * const salt, | ||||
|                           unsigned long long opslimit, size_t memlimit, | ||||
|                           int alg) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2i_str(char out[crypto_pwhash_argon2i_STRBYTES], | ||||
|                               const char * const passwd, | ||||
|                               unsigned long long passwdlen, | ||||
|                               unsigned long long opslimit, size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2i_str_verify(const char str[crypto_pwhash_argon2i_STRBYTES], | ||||
|                                      const char * const passwd, | ||||
|                                      unsigned long long passwdlen) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2i_str_needs_rehash(const char str[crypto_pwhash_argon2i_STRBYTES], | ||||
|                                            unsigned long long opslimit, size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result))  __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										122
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_pwhash_argon2id.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										122
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_pwhash_argon2id.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,122 @@ | |||
| #ifndef crypto_pwhash_argon2id_H | ||||
| #define crypto_pwhash_argon2id_H | ||||
| 
 | ||||
| #include <limits.h> | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_ALG_ARGON2ID13 2 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2id_alg_argon2id13(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_BYTES_MIN 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_bytes_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_BYTES_MAX SODIUM_MIN(SODIUM_SIZE_MAX, 4294967295U) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_bytes_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_PASSWD_MIN 0U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_passwd_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_PASSWD_MAX 4294967295U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_passwd_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_SALTBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_saltbytes(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_STRBYTES 128U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_strbytes(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_STRPREFIX "$argon2id$" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_pwhash_argon2id_strprefix(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_OPSLIMIT_MIN 1U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_opslimit_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_OPSLIMIT_MAX 4294967295U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_opslimit_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_MEMLIMIT_MIN 8192U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_memlimit_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_MEMLIMIT_MAX \ | ||||
|     ((SIZE_MAX >= 4398046510080U) ? 4398046510080U : (SIZE_MAX >= 2147483648U) ? 2147483648U : 32768U) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_memlimit_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE 2U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_opslimit_interactive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE 67108864U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_memlimit_interactive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_OPSLIMIT_MODERATE 3U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_opslimit_moderate(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_MEMLIMIT_MODERATE 268435456U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_memlimit_moderate(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE 4U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_opslimit_sensitive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE 1073741824U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_argon2id_memlimit_sensitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2id(unsigned char * const out, | ||||
|                            unsigned long long outlen, | ||||
|                            const char * const passwd, | ||||
|                            unsigned long long passwdlen, | ||||
|                            const unsigned char * const salt, | ||||
|                            unsigned long long opslimit, size_t memlimit, | ||||
|                            int alg) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2id_str(char out[crypto_pwhash_argon2id_STRBYTES], | ||||
|                                const char * const passwd, | ||||
|                                unsigned long long passwdlen, | ||||
|                                unsigned long long opslimit, size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2id_str_verify(const char str[crypto_pwhash_argon2id_STRBYTES], | ||||
|                                       const char * const passwd, | ||||
|                                       unsigned long long passwdlen) | ||||
|             __attribute__ ((warn_unused_result))  __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_argon2id_str_needs_rehash(const char str[crypto_pwhash_argon2id_STRBYTES], | ||||
|                                             unsigned long long opslimit, size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result))  __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,120 @@ | |||
| #ifndef crypto_pwhash_scryptsalsa208sha256_H | ||||
| #define crypto_pwhash_scryptsalsa208sha256_H | ||||
| 
 | ||||
| #include <limits.h> | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_BYTES_MIN 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_bytes_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_BYTES_MAX \ | ||||
|     SODIUM_MIN(SODIUM_SIZE_MAX, 0x1fffffffe0ULL) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_bytes_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_PASSWD_MIN 0U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_passwd_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_PASSWD_MAX SODIUM_SIZE_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_passwd_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_SALTBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_saltbytes(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_STRBYTES 102U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_strbytes(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_STRPREFIX "$7$" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_pwhash_scryptsalsa208sha256_strprefix(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN 32768U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_opslimit_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX 4294967295U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_opslimit_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN 16777216U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_memlimit_min(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX \ | ||||
|     SODIUM_MIN(SIZE_MAX, 68719476736ULL) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_memlimit_max(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE 524288U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_opslimit_interactive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE 16777216U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_memlimit_interactive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE 33554432U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_opslimit_sensitive(void); | ||||
| 
 | ||||
| #define crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE 1073741824U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_pwhash_scryptsalsa208sha256_memlimit_sensitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_scryptsalsa208sha256(unsigned char * const out, | ||||
|                                        unsigned long long outlen, | ||||
|                                        const char * const passwd, | ||||
|                                        unsigned long long passwdlen, | ||||
|                                        const unsigned char * const salt, | ||||
|                                        unsigned long long opslimit, | ||||
|                                        size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_scryptsalsa208sha256_str(char out[crypto_pwhash_scryptsalsa208sha256_STRBYTES], | ||||
|                                            const char * const passwd, | ||||
|                                            unsigned long long passwdlen, | ||||
|                                            unsigned long long opslimit, | ||||
|                                            size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_scryptsalsa208sha256_str_verify(const char str[crypto_pwhash_scryptsalsa208sha256_STRBYTES], | ||||
|                                                   const char * const passwd, | ||||
|                                                   unsigned long long passwdlen) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_scryptsalsa208sha256_ll(const uint8_t * passwd, size_t passwdlen, | ||||
|                                           const uint8_t * salt, size_t saltlen, | ||||
|                                           uint64_t N, uint32_t r, uint32_t p, | ||||
|                                           uint8_t * buf, size_t buflen) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_pwhash_scryptsalsa208sha256_str_needs_rehash(const char str[crypto_pwhash_scryptsalsa208sha256_STRBYTES], | ||||
|                                                         unsigned long long opslimit, | ||||
|                                                         size_t memlimit) | ||||
|             __attribute__ ((warn_unused_result))  __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										46
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_scalarmult.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_scalarmult.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,46 @@ | |||
| #ifndef crypto_scalarmult_H | ||||
| #define crypto_scalarmult_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_scalarmult_curve25519.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_scalarmult_BYTES crypto_scalarmult_curve25519_BYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_scalarmult_bytes(void); | ||||
| 
 | ||||
| #define crypto_scalarmult_SCALARBYTES crypto_scalarmult_curve25519_SCALARBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_scalarmult_scalarbytes(void); | ||||
| 
 | ||||
| #define crypto_scalarmult_PRIMITIVE "curve25519" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_scalarmult_primitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_base(unsigned char *q, const unsigned char *n) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /*
 | ||||
|  * NOTE: Do not use the result of this function directly for key exchange. | ||||
|  * | ||||
|  * Hash the result with the public keys in order to compute a shared | ||||
|  * secret key: H(q || client_pk || server_pk) | ||||
|  * | ||||
|  * Or unless this is not an option, use the crypto_kx() API instead. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult(unsigned char *q, const unsigned char *n, | ||||
|                       const unsigned char *p) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,42 @@ | |||
| #ifndef crypto_scalarmult_curve25519_H | ||||
| #define crypto_scalarmult_curve25519_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_scalarmult_curve25519_BYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_scalarmult_curve25519_bytes(void); | ||||
| 
 | ||||
| #define crypto_scalarmult_curve25519_SCALARBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_scalarmult_curve25519_scalarbytes(void); | ||||
| 
 | ||||
| /*
 | ||||
|  * NOTE: Do not use the result of this function directly for key exchange. | ||||
|  * | ||||
|  * Hash the result with the public keys in order to compute a shared | ||||
|  * secret key: H(q || client_pk || server_pk) | ||||
|  * | ||||
|  * Or unless this is not an option, use the crypto_kx() API instead. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_curve25519(unsigned char *q, const unsigned char *n, | ||||
|                                  const unsigned char *p) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_curve25519_base(unsigned char *q, | ||||
|                                       const unsigned char *n) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,51 @@ | |||
| 
 | ||||
| #ifndef crypto_scalarmult_ed25519_H | ||||
| #define crypto_scalarmult_ed25519_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_scalarmult_ed25519_BYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_scalarmult_ed25519_bytes(void); | ||||
| 
 | ||||
| #define crypto_scalarmult_ed25519_SCALARBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_scalarmult_ed25519_scalarbytes(void); | ||||
| 
 | ||||
| /*
 | ||||
|  * NOTE: Do not use the result of this function directly for key exchange. | ||||
|  * | ||||
|  * Hash the result with the public keys in order to compute a shared | ||||
|  * secret key: H(q || client_pk || server_pk) | ||||
|  * | ||||
|  * Or unless this is not an option, use the crypto_kx() API instead. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_ed25519(unsigned char *q, const unsigned char *n, | ||||
|                               const unsigned char *p) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_ed25519_noclamp(unsigned char *q, const unsigned char *n, | ||||
|                                       const unsigned char *p) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_ed25519_base(unsigned char *q, const unsigned char *n) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_ed25519_base_noclamp(unsigned char *q, const unsigned char *n) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,43 @@ | |||
| 
 | ||||
| #ifndef crypto_scalarmult_ristretto255_H | ||||
| #define crypto_scalarmult_ristretto255_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_scalarmult_ristretto255_BYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_scalarmult_ristretto255_bytes(void); | ||||
| 
 | ||||
| #define crypto_scalarmult_ristretto255_SCALARBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_scalarmult_ristretto255_scalarbytes(void); | ||||
| 
 | ||||
| /*
 | ||||
|  * NOTE: Do not use the result of this function directly for key exchange. | ||||
|  * | ||||
|  * Hash the result with the public keys in order to compute a shared | ||||
|  * secret key: H(q || client_pk || server_pk) | ||||
|  * | ||||
|  * Or unless this is not an option, use the crypto_kx() API instead. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_ristretto255(unsigned char *q, const unsigned char *n, | ||||
|                                    const unsigned char *p) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_scalarmult_ristretto255_base(unsigned char *q, | ||||
|                                         const unsigned char *n) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										93
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_secretbox.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_secretbox.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,93 @@ | |||
| #ifndef crypto_secretbox_H | ||||
| #define crypto_secretbox_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_secretbox_xsalsa20poly1305.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_secretbox_KEYBYTES crypto_secretbox_xsalsa20poly1305_KEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_secretbox_keybytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_NONCEBYTES crypto_secretbox_xsalsa20poly1305_NONCEBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_secretbox_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_MACBYTES crypto_secretbox_xsalsa20poly1305_MACBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_secretbox_macbytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_PRIMITIVE "xsalsa20poly1305" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_secretbox_primitive(void); | ||||
| 
 | ||||
| #define crypto_secretbox_MESSAGEBYTES_MAX crypto_secretbox_xsalsa20poly1305_MESSAGEBYTES_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_easy(unsigned char *c, const unsigned char *m, | ||||
|                           unsigned long long mlen, const unsigned char *n, | ||||
|                           const unsigned char *k) __attribute__ ((nonnull(1, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_open_easy(unsigned char *m, const unsigned char *c, | ||||
|                                unsigned long long clen, const unsigned char *n, | ||||
|                                const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_detached(unsigned char *c, unsigned char *mac, | ||||
|                               const unsigned char *m, | ||||
|                               unsigned long long mlen, | ||||
|                               const unsigned char *n, | ||||
|                               const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 2, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_open_detached(unsigned char *m, | ||||
|                                    const unsigned char *c, | ||||
|                                    const unsigned char *mac, | ||||
|                                    unsigned long long clen, | ||||
|                                    const unsigned char *n, | ||||
|                                    const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 3, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_secretbox_keygen(unsigned char k[crypto_secretbox_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* -- NaCl compatibility interface ; Requires padding -- */ | ||||
| 
 | ||||
| #define crypto_secretbox_ZEROBYTES crypto_secretbox_xsalsa20poly1305_ZEROBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_secretbox_zerobytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_BOXZEROBYTES crypto_secretbox_xsalsa20poly1305_BOXZEROBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_secretbox_boxzerobytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox(unsigned char *c, const unsigned char *m, | ||||
|                      unsigned long long mlen, const unsigned char *n, | ||||
|                      const unsigned char *k) __attribute__ ((nonnull(1, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_open(unsigned char *m, const unsigned char *c, | ||||
|                           unsigned long long clen, const unsigned char *n, | ||||
|                           const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,70 @@ | |||
| #ifndef crypto_secretbox_xchacha20poly1305_H | ||||
| #define crypto_secretbox_xchacha20poly1305_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "crypto_stream_xchacha20.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_secretbox_xchacha20poly1305_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xchacha20poly1305_keybytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_xchacha20poly1305_NONCEBYTES 24U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xchacha20poly1305_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_xchacha20poly1305_MACBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xchacha20poly1305_macbytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_xchacha20poly1305_MESSAGEBYTES_MAX \ | ||||
|     (crypto_stream_xchacha20_MESSAGEBYTES_MAX - crypto_secretbox_xchacha20poly1305_MACBYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xchacha20poly1305_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_xchacha20poly1305_easy(unsigned char *c, | ||||
|                                             const unsigned char *m, | ||||
|                                             unsigned long long mlen, | ||||
|                                             const unsigned char *n, | ||||
|                                             const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_xchacha20poly1305_open_easy(unsigned char *m, | ||||
|                                                  const unsigned char *c, | ||||
|                                                  unsigned long long clen, | ||||
|                                                  const unsigned char *n, | ||||
|                                                  const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_xchacha20poly1305_detached(unsigned char *c, | ||||
|                                                 unsigned char *mac, | ||||
|                                                 const unsigned char *m, | ||||
|                                                 unsigned long long mlen, | ||||
|                                                 const unsigned char *n, | ||||
|                                                 const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 2, 5, 6))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_xchacha20poly1305_open_detached(unsigned char *m, | ||||
|                                                      const unsigned char *c, | ||||
|                                                      const unsigned char *mac, | ||||
|                                                      unsigned long long clen, | ||||
|                                                      const unsigned char *n, | ||||
|                                                      const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 3, 5, 6))); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,69 @@ | |||
| #ifndef crypto_secretbox_xsalsa20poly1305_H | ||||
| #define crypto_secretbox_xsalsa20poly1305_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "crypto_stream_xsalsa20.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_secretbox_xsalsa20poly1305_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xsalsa20poly1305_keybytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_xsalsa20poly1305_NONCEBYTES 24U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xsalsa20poly1305_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_xsalsa20poly1305_MACBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xsalsa20poly1305_macbytes(void); | ||||
| 
 | ||||
| /* Only for the libsodium API - The NaCl compatibility API would require BOXZEROBYTES extra bytes */ | ||||
| #define crypto_secretbox_xsalsa20poly1305_MESSAGEBYTES_MAX \ | ||||
|     (crypto_stream_xsalsa20_MESSAGEBYTES_MAX - crypto_secretbox_xsalsa20poly1305_MACBYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xsalsa20poly1305_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_xsalsa20poly1305(unsigned char *c, | ||||
|                                       const unsigned char *m, | ||||
|                                       unsigned long long mlen, | ||||
|                                       const unsigned char *n, | ||||
|                                       const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretbox_xsalsa20poly1305_open(unsigned char *m, | ||||
|                                            const unsigned char *c, | ||||
|                                            unsigned long long clen, | ||||
|                                            const unsigned char *n, | ||||
|                                            const unsigned char *k) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(2, 4, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_secretbox_xsalsa20poly1305_keygen(unsigned char k[crypto_secretbox_xsalsa20poly1305_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* -- NaCl compatibility interface ; Requires padding -- */ | ||||
| 
 | ||||
| #define crypto_secretbox_xsalsa20poly1305_BOXZEROBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xsalsa20poly1305_boxzerobytes(void); | ||||
| 
 | ||||
| #define crypto_secretbox_xsalsa20poly1305_ZEROBYTES \ | ||||
|     (crypto_secretbox_xsalsa20poly1305_BOXZEROBYTES + \ | ||||
|      crypto_secretbox_xsalsa20poly1305_MACBYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretbox_xsalsa20poly1305_zerobytes(void); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,108 @@ | |||
| #ifndef crypto_secretstream_xchacha20poly1305_H | ||||
| #define crypto_secretstream_xchacha20poly1305_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_aead_xchacha20poly1305.h" | ||||
| #include "crypto_stream_chacha20.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_secretstream_xchacha20poly1305_ABYTES \ | ||||
|     (1U + crypto_aead_xchacha20poly1305_ietf_ABYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretstream_xchacha20poly1305_abytes(void); | ||||
| 
 | ||||
| #define crypto_secretstream_xchacha20poly1305_HEADERBYTES \ | ||||
|     crypto_aead_xchacha20poly1305_ietf_NPUBBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretstream_xchacha20poly1305_headerbytes(void); | ||||
| 
 | ||||
| #define crypto_secretstream_xchacha20poly1305_KEYBYTES \ | ||||
|     crypto_aead_xchacha20poly1305_ietf_KEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretstream_xchacha20poly1305_keybytes(void); | ||||
| 
 | ||||
| #define crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX \ | ||||
|     SODIUM_MIN(SODIUM_SIZE_MAX - crypto_secretstream_xchacha20poly1305_ABYTES, \ | ||||
|               (64ULL * ((1ULL << 32) - 2ULL))) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretstream_xchacha20poly1305_messagebytes_max(void); | ||||
| 
 | ||||
| #define crypto_secretstream_xchacha20poly1305_TAG_MESSAGE 0x00 | ||||
| SODIUM_EXPORT | ||||
| unsigned char crypto_secretstream_xchacha20poly1305_tag_message(void); | ||||
| 
 | ||||
| #define crypto_secretstream_xchacha20poly1305_TAG_PUSH    0x01 | ||||
| SODIUM_EXPORT | ||||
| unsigned char crypto_secretstream_xchacha20poly1305_tag_push(void); | ||||
| 
 | ||||
| #define crypto_secretstream_xchacha20poly1305_TAG_REKEY   0x02 | ||||
| SODIUM_EXPORT | ||||
| unsigned char crypto_secretstream_xchacha20poly1305_tag_rekey(void); | ||||
| 
 | ||||
| #define crypto_secretstream_xchacha20poly1305_TAG_FINAL \ | ||||
|     (crypto_secretstream_xchacha20poly1305_TAG_PUSH | \ | ||||
|      crypto_secretstream_xchacha20poly1305_TAG_REKEY) | ||||
| SODIUM_EXPORT | ||||
| unsigned char crypto_secretstream_xchacha20poly1305_tag_final(void); | ||||
| 
 | ||||
| typedef struct crypto_secretstream_xchacha20poly1305_state { | ||||
|     unsigned char k[crypto_stream_chacha20_ietf_KEYBYTES]; | ||||
|     unsigned char nonce[crypto_stream_chacha20_ietf_NONCEBYTES]; | ||||
|     unsigned char _pad[8]; | ||||
| } crypto_secretstream_xchacha20poly1305_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_secretstream_xchacha20poly1305_statebytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_secretstream_xchacha20poly1305_keygen | ||||
|    (unsigned char k[crypto_secretstream_xchacha20poly1305_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretstream_xchacha20poly1305_init_push | ||||
|    (crypto_secretstream_xchacha20poly1305_state *state, | ||||
|     unsigned char header[crypto_secretstream_xchacha20poly1305_HEADERBYTES], | ||||
|     const unsigned char k[crypto_secretstream_xchacha20poly1305_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretstream_xchacha20poly1305_push | ||||
|    (crypto_secretstream_xchacha20poly1305_state *state, | ||||
|     unsigned char *c, unsigned long long *clen_p, | ||||
|     const unsigned char *m, unsigned long long mlen, | ||||
|     const unsigned char *ad, unsigned long long adlen, unsigned char tag) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretstream_xchacha20poly1305_init_pull | ||||
|    (crypto_secretstream_xchacha20poly1305_state *state, | ||||
|     const unsigned char header[crypto_secretstream_xchacha20poly1305_HEADERBYTES], | ||||
|     const unsigned char k[crypto_secretstream_xchacha20poly1305_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_secretstream_xchacha20poly1305_pull | ||||
|    (crypto_secretstream_xchacha20poly1305_state *state, | ||||
|     unsigned char *m, unsigned long long *mlen_p, unsigned char *tag_p, | ||||
|     const unsigned char *c, unsigned long long clen, | ||||
|     const unsigned char *ad, unsigned long long adlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_secretstream_xchacha20poly1305_rekey | ||||
|     (crypto_secretstream_xchacha20poly1305_state *state); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										41
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_shorthash.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_shorthash.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,41 @@ | |||
| #ifndef crypto_shorthash_H | ||||
| #define crypto_shorthash_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_shorthash_siphash24.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_shorthash_BYTES crypto_shorthash_siphash24_BYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_shorthash_bytes(void); | ||||
| 
 | ||||
| #define crypto_shorthash_KEYBYTES crypto_shorthash_siphash24_KEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_shorthash_keybytes(void); | ||||
| 
 | ||||
| #define crypto_shorthash_PRIMITIVE "siphash24" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_shorthash_primitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_shorthash(unsigned char *out, const unsigned char *in, | ||||
|                      unsigned long long inlen, const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_shorthash_keygen(unsigned char k[crypto_shorthash_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,50 @@ | |||
| #ifndef crypto_shorthash_siphash24_H | ||||
| #define crypto_shorthash_siphash24_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| /* -- 64-bit output -- */ | ||||
| 
 | ||||
| #define crypto_shorthash_siphash24_BYTES 8U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_shorthash_siphash24_bytes(void); | ||||
| 
 | ||||
| #define crypto_shorthash_siphash24_KEYBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_shorthash_siphash24_keybytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_shorthash_siphash24(unsigned char *out, const unsigned char *in, | ||||
|                                unsigned long long inlen, const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| #ifndef SODIUM_LIBRARY_MINIMAL | ||||
| /* -- 128-bit output -- */ | ||||
| 
 | ||||
| #define crypto_shorthash_siphashx24_BYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_shorthash_siphashx24_bytes(void); | ||||
| 
 | ||||
| #define crypto_shorthash_siphashx24_KEYBYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_shorthash_siphashx24_keybytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_shorthash_siphashx24(unsigned char *out, const unsigned char *in, | ||||
|                                 unsigned long long inlen, const unsigned char *k) | ||||
|             __attribute__ ((nonnull(1, 4))); | ||||
| #endif | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										107
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_sign.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										107
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_sign.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,107 @@ | |||
| #ifndef crypto_sign_H | ||||
| #define crypto_sign_H | ||||
| 
 | ||||
| /*
 | ||||
|  * THREAD SAFETY: crypto_sign_keypair() is thread-safe, | ||||
|  * provided that sodium_init() was called before. | ||||
|  * | ||||
|  * Other functions, including crypto_sign_seed_keypair() are always thread-safe. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_sign_ed25519.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| typedef crypto_sign_ed25519ph_state crypto_sign_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_sign_statebytes(void); | ||||
| 
 | ||||
| #define crypto_sign_BYTES crypto_sign_ed25519_BYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_sign_bytes(void); | ||||
| 
 | ||||
| #define crypto_sign_SEEDBYTES crypto_sign_ed25519_SEEDBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_sign_seedbytes(void); | ||||
| 
 | ||||
| #define crypto_sign_PUBLICKEYBYTES crypto_sign_ed25519_PUBLICKEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_sign_publickeybytes(void); | ||||
| 
 | ||||
| #define crypto_sign_SECRETKEYBYTES crypto_sign_ed25519_SECRETKEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_sign_secretkeybytes(void); | ||||
| 
 | ||||
| #define crypto_sign_MESSAGEBYTES_MAX crypto_sign_ed25519_MESSAGEBYTES_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_sign_messagebytes_max(void); | ||||
| 
 | ||||
| #define crypto_sign_PRIMITIVE "ed25519" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_sign_primitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_seed_keypair(unsigned char *pk, unsigned char *sk, | ||||
|                              const unsigned char *seed) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_keypair(unsigned char *pk, unsigned char *sk) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign(unsigned char *sm, unsigned long long *smlen_p, | ||||
|                 const unsigned char *m, unsigned long long mlen, | ||||
|                 const unsigned char *sk) __attribute__ ((nonnull(1, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_open(unsigned char *m, unsigned long long *mlen_p, | ||||
|                      const unsigned char *sm, unsigned long long smlen, | ||||
|                      const unsigned char *pk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(3, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_detached(unsigned char *sig, unsigned long long *siglen_p, | ||||
|                          const unsigned char *m, unsigned long long mlen, | ||||
|                          const unsigned char *sk) __attribute__ ((nonnull(1, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_verify_detached(const unsigned char *sig, | ||||
|                                 const unsigned char *m, | ||||
|                                 unsigned long long mlen, | ||||
|                                 const unsigned char *pk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_init(crypto_sign_state *state); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_update(crypto_sign_state *state, | ||||
|                        const unsigned char *m, unsigned long long mlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_final_create(crypto_sign_state *state, unsigned char *sig, | ||||
|                              unsigned long long *siglen_p, | ||||
|                              const unsigned char *sk) | ||||
|             __attribute__ ((nonnull(1, 2, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_final_verify(crypto_sign_state *state, const unsigned char *sig, | ||||
|                              const unsigned char *pk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										124
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_sign_ed25519.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										124
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_sign_ed25519.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,124 @@ | |||
| #ifndef crypto_sign_ed25519_H | ||||
| #define crypto_sign_ed25519_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "crypto_hash_sha512.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| typedef struct crypto_sign_ed25519ph_state { | ||||
|     crypto_hash_sha512_state hs; | ||||
| } crypto_sign_ed25519ph_state; | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_sign_ed25519ph_statebytes(void); | ||||
| 
 | ||||
| #define crypto_sign_ed25519_BYTES 64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_sign_ed25519_bytes(void); | ||||
| 
 | ||||
| #define crypto_sign_ed25519_SEEDBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_sign_ed25519_seedbytes(void); | ||||
| 
 | ||||
| #define crypto_sign_ed25519_PUBLICKEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_sign_ed25519_publickeybytes(void); | ||||
| 
 | ||||
| #define crypto_sign_ed25519_SECRETKEYBYTES (32U + 32U) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_sign_ed25519_secretkeybytes(void); | ||||
| 
 | ||||
| #define crypto_sign_ed25519_MESSAGEBYTES_MAX (SODIUM_SIZE_MAX - crypto_sign_ed25519_BYTES) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_sign_ed25519_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519(unsigned char *sm, unsigned long long *smlen_p, | ||||
|                         const unsigned char *m, unsigned long long mlen, | ||||
|                         const unsigned char *sk) | ||||
|             __attribute__ ((nonnull(1, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_open(unsigned char *m, unsigned long long *mlen_p, | ||||
|                              const unsigned char *sm, unsigned long long smlen, | ||||
|                              const unsigned char *pk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(3, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_detached(unsigned char *sig, | ||||
|                                  unsigned long long *siglen_p, | ||||
|                                  const unsigned char *m, | ||||
|                                  unsigned long long mlen, | ||||
|                                  const unsigned char *sk) | ||||
|             __attribute__ ((nonnull(1, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_verify_detached(const unsigned char *sig, | ||||
|                                         const unsigned char *m, | ||||
|                                         unsigned long long mlen, | ||||
|                                         const unsigned char *pk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull(1, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_keypair(unsigned char *pk, unsigned char *sk) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_seed_keypair(unsigned char *pk, unsigned char *sk, | ||||
|                                      const unsigned char *seed) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_pk_to_curve25519(unsigned char *curve25519_pk, | ||||
|                                          const unsigned char *ed25519_pk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_sk_to_curve25519(unsigned char *curve25519_sk, | ||||
|                                          const unsigned char *ed25519_sk) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_sk_to_seed(unsigned char *seed, | ||||
|                                    const unsigned char *sk) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519_sk_to_pk(unsigned char *pk, const unsigned char *sk) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519ph_init(crypto_sign_ed25519ph_state *state) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519ph_update(crypto_sign_ed25519ph_state *state, | ||||
|                                  const unsigned char *m, | ||||
|                                  unsigned long long mlen) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519ph_final_create(crypto_sign_ed25519ph_state *state, | ||||
|                                        unsigned char *sig, | ||||
|                                        unsigned long long *siglen_p, | ||||
|                                        const unsigned char *sk) | ||||
|             __attribute__ ((nonnull(1, 2, 4))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_ed25519ph_final_verify(crypto_sign_ed25519ph_state *state, | ||||
|                                        const unsigned char *sig, | ||||
|                                        const unsigned char *pk) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,55 @@ | |||
| #ifndef crypto_sign_edwards25519sha512batch_H | ||||
| #define crypto_sign_edwards25519sha512batch_H | ||||
| 
 | ||||
| /*
 | ||||
|  * WARNING: This construction was a prototype, which should not be used | ||||
|  * any more in new projects. | ||||
|  * | ||||
|  * crypto_sign_edwards25519sha512batch is provided for applications | ||||
|  * initially built with NaCl, but as recommended by the author of this | ||||
|  * construction, new applications should use ed25519 instead. | ||||
|  * | ||||
|  * In Sodium, you should use the high-level crypto_sign_*() functions instead. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_sign_edwards25519sha512batch_BYTES 64U | ||||
| #define crypto_sign_edwards25519sha512batch_PUBLICKEYBYTES 32U | ||||
| #define crypto_sign_edwards25519sha512batch_SECRETKEYBYTES (32U + 32U) | ||||
| #define crypto_sign_edwards25519sha512batch_MESSAGEBYTES_MAX (SODIUM_SIZE_MAX - crypto_sign_edwards25519sha512batch_BYTES) | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_edwards25519sha512batch(unsigned char *sm, | ||||
|                                         unsigned long long *smlen_p, | ||||
|                                         const unsigned char *m, | ||||
|                                         unsigned long long mlen, | ||||
|                                         const unsigned char *sk) | ||||
|             __attribute__ ((deprecated)) __attribute__ ((nonnull(1, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_edwards25519sha512batch_open(unsigned char *m, | ||||
|                                              unsigned long long *mlen_p, | ||||
|                                              const unsigned char *sm, | ||||
|                                              unsigned long long smlen, | ||||
|                                              const unsigned char *pk) | ||||
|             __attribute__ ((deprecated)) __attribute__ ((nonnull(3, 5))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_sign_edwards25519sha512batch_keypair(unsigned char *pk, | ||||
|                                                 unsigned char *sk) | ||||
|             __attribute__ ((deprecated)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										59
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_stream.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_stream.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,59 @@ | |||
| #ifndef crypto_stream_H | ||||
| #define crypto_stream_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. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "crypto_stream_xsalsa20.h" | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_stream_KEYBYTES crypto_stream_xsalsa20_KEYBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_stream_keybytes(void); | ||||
| 
 | ||||
| #define crypto_stream_NONCEBYTES crypto_stream_xsalsa20_NONCEBYTES | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_stream_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_stream_MESSAGEBYTES_MAX crypto_stream_xsalsa20_MESSAGEBYTES_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t  crypto_stream_messagebytes_max(void); | ||||
| 
 | ||||
| #define crypto_stream_PRIMITIVE "xsalsa20" | ||||
| SODIUM_EXPORT | ||||
| const char *crypto_stream_primitive(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream(unsigned char *c, unsigned long long clen, | ||||
|                   const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_xor(unsigned char *c, const unsigned char *m, | ||||
|                       unsigned long long mlen, const unsigned char *n, | ||||
|                       const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_stream_keygen(unsigned char k[crypto_stream_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										106
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_stream_chacha20.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										106
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_stream_chacha20.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,106 @@ | |||
| #ifndef crypto_stream_chacha20_H | ||||
| #define crypto_stream_chacha20_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. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_stream_chacha20_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_chacha20_keybytes(void); | ||||
| 
 | ||||
| #define crypto_stream_chacha20_NONCEBYTES 8U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_chacha20_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_stream_chacha20_MESSAGEBYTES_MAX SODIUM_SIZE_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_chacha20_messagebytes_max(void); | ||||
| 
 | ||||
| /* ChaCha20 with a 64-bit nonce and a 64-bit counter, as originally designed */ | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_chacha20(unsigned char *c, unsigned long long clen, | ||||
|                            const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_chacha20_xor(unsigned char *c, const unsigned char *m, | ||||
|                                unsigned long long mlen, const unsigned char *n, | ||||
|                                const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_chacha20_xor_ic(unsigned char *c, const unsigned char *m, | ||||
|                                   unsigned long long mlen, | ||||
|                                   const unsigned char *n, uint64_t ic, | ||||
|                                   const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_stream_chacha20_keygen(unsigned char k[crypto_stream_chacha20_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* ChaCha20 with a 96-bit nonce and a 32-bit counter (IETF) */ | ||||
| 
 | ||||
| #define crypto_stream_chacha20_ietf_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_chacha20_ietf_keybytes(void); | ||||
| 
 | ||||
| #define crypto_stream_chacha20_ietf_NONCEBYTES 12U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_chacha20_ietf_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX \ | ||||
|     SODIUM_MIN(SODIUM_SIZE_MAX, 64ULL * (1ULL << 32)) | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_chacha20_ietf_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_chacha20_ietf(unsigned char *c, unsigned long long clen, | ||||
|                                 const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_chacha20_ietf_xor(unsigned char *c, const unsigned char *m, | ||||
|                                     unsigned long long mlen, const unsigned char *n, | ||||
|                                     const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_chacha20_ietf_xor_ic(unsigned char *c, const unsigned char *m, | ||||
|                                        unsigned long long mlen, | ||||
|                                        const unsigned char *n, uint32_t ic, | ||||
|                                        const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_stream_chacha20_ietf_keygen(unsigned char k[crypto_stream_chacha20_ietf_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* Aliases */ | ||||
| 
 | ||||
| #define crypto_stream_chacha20_IETF_KEYBYTES crypto_stream_chacha20_ietf_KEYBYTES | ||||
| #define crypto_stream_chacha20_IETF_NONCEBYTES crypto_stream_chacha20_ietf_NONCEBYTES | ||||
| #define crypto_stream_chacha20_IETF_MESSAGEBYTES_MAX crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,61 @@ | |||
| #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. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| 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); | ||||
| 
 | ||||
| #define crypto_stream_salsa20_MESSAGEBYTES_MAX SODIUM_SIZE_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_salsa20_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_salsa20(unsigned char *c, unsigned long long clen, | ||||
|                           const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_salsa20_xor(unsigned char *c, const unsigned char *m, | ||||
|                               unsigned long long mlen, const unsigned char *n, | ||||
|                               const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_salsa20_xor_ic(unsigned char *c, const unsigned char *m, | ||||
|                                  unsigned long long mlen, | ||||
|                                  const unsigned char *n, uint64_t ic, | ||||
|                                  const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_stream_salsa20_keygen(unsigned char k[crypto_stream_salsa20_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,53 @@ | |||
| #ifndef crypto_stream_salsa2012_H | ||||
| #define crypto_stream_salsa2012_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. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| 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); | ||||
| 
 | ||||
| #define crypto_stream_salsa2012_MESSAGEBYTES_MAX SODIUM_SIZE_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_salsa2012_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_salsa2012(unsigned char *c, unsigned long long clen, | ||||
|                             const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_salsa2012_xor(unsigned char *c, const unsigned char *m, | ||||
|                                 unsigned long long mlen, const unsigned char *n, | ||||
|                                 const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_stream_salsa2012_keygen(unsigned char k[crypto_stream_salsa2012_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,56 @@ | |||
| #ifndef crypto_stream_salsa208_H | ||||
| #define crypto_stream_salsa208_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. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_stream_salsa208_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_salsa208_keybytes(void) | ||||
|             __attribute__ ((deprecated)); | ||||
| 
 | ||||
| #define crypto_stream_salsa208_NONCEBYTES 8U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_salsa208_noncebytes(void) | ||||
|             __attribute__ ((deprecated)); | ||||
| 
 | ||||
| #define crypto_stream_salsa208_MESSAGEBYTES_MAX SODIUM_SIZE_MAX | ||||
|     SODIUM_EXPORT | ||||
| size_t crypto_stream_salsa208_messagebytes_max(void) | ||||
|             __attribute__ ((deprecated)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_salsa208(unsigned char *c, unsigned long long clen, | ||||
|                            const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((deprecated)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_salsa208_xor(unsigned char *c, const unsigned char *m, | ||||
|                                unsigned long long mlen, const unsigned char *n, | ||||
|                                const unsigned char *k) | ||||
|             __attribute__ ((deprecated)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_stream_salsa208_keygen(unsigned char k[crypto_stream_salsa208_KEYBYTES]) | ||||
|             __attribute__ ((deprecated)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,61 @@ | |||
| #ifndef crypto_stream_xchacha20_H | ||||
| #define crypto_stream_xchacha20_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. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_stream_xchacha20_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_xchacha20_keybytes(void); | ||||
| 
 | ||||
| #define crypto_stream_xchacha20_NONCEBYTES 24U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_xchacha20_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_stream_xchacha20_MESSAGEBYTES_MAX SODIUM_SIZE_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_xchacha20_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_xchacha20(unsigned char *c, unsigned long long clen, | ||||
|                             const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_xchacha20_xor(unsigned char *c, const unsigned char *m, | ||||
|                                 unsigned long long mlen, const unsigned char *n, | ||||
|                                 const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_xchacha20_xor_ic(unsigned char *c, const unsigned char *m, | ||||
|                                    unsigned long long mlen, | ||||
|                                    const unsigned char *n, uint64_t ic, | ||||
|                                    const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_stream_xchacha20_keygen(unsigned char k[crypto_stream_xchacha20_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,61 @@ | |||
| #ifndef crypto_stream_xsalsa20_H | ||||
| #define crypto_stream_xsalsa20_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. | ||||
|  */ | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_stream_xsalsa20_KEYBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_xsalsa20_keybytes(void); | ||||
| 
 | ||||
| #define crypto_stream_xsalsa20_NONCEBYTES 24U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_xsalsa20_noncebytes(void); | ||||
| 
 | ||||
| #define crypto_stream_xsalsa20_MESSAGEBYTES_MAX SODIUM_SIZE_MAX | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_stream_xsalsa20_messagebytes_max(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_xsalsa20(unsigned char *c, unsigned long long clen, | ||||
|                            const unsigned char *n, const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_xsalsa20_xor(unsigned char *c, const unsigned char *m, | ||||
|                                unsigned long long mlen, const unsigned char *n, | ||||
|                                const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_stream_xsalsa20_xor_ic(unsigned char *c, const unsigned char *m, | ||||
|                                   unsigned long long mlen, | ||||
|                                   const unsigned char *n, uint64_t ic, | ||||
|                                   const unsigned char *k) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void crypto_stream_xsalsa20_keygen(unsigned char k[crypto_stream_xsalsa20_KEYBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										23
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_verify_16.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_verify_16.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,23 @@ | |||
| #ifndef crypto_verify_16_H | ||||
| #define crypto_verify_16_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_verify_16_BYTES 16U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_verify_16_bytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_verify_16(const unsigned char *x, const unsigned char *y) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										23
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_verify_32.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_verify_32.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,23 @@ | |||
| #ifndef crypto_verify_32_H | ||||
| #define crypto_verify_32_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_verify_32_BYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_verify_32_bytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_verify_32(const unsigned char *x, const unsigned char *y) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										23
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_verify_64.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/crypto_verify_64.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,23 @@ | |||
| #ifndef crypto_verify_64_H | ||||
| #define crypto_verify_64_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #define crypto_verify_64_BYTES 64U | ||||
| SODIUM_EXPORT | ||||
| size_t crypto_verify_64_bytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int crypto_verify_64(const unsigned char *x, const unsigned char *y) | ||||
|             __attribute__ ((warn_unused_result)) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										57
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/export.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/export.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,57 @@ | |||
| 
 | ||||
| #ifndef sodium_export_H | ||||
| #define sodium_export_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| #include <limits.h> | ||||
| 
 | ||||
| #if !defined(__clang__) && !defined(__GNUC__) | ||||
| # ifdef __attribute__ | ||||
| #  undef __attribute__ | ||||
| # endif | ||||
| # define __attribute__(a) | ||||
| #endif | ||||
| 
 | ||||
| #ifdef SODIUM_STATIC | ||||
| # define SODIUM_EXPORT | ||||
| # define SODIUM_EXPORT_WEAK | ||||
| #else | ||||
| # if defined(_MSC_VER) | ||||
| #  ifdef SODIUM_DLL_EXPORT | ||||
| #   define SODIUM_EXPORT __declspec(dllexport) | ||||
| #  else | ||||
| #   define SODIUM_EXPORT __declspec(dllimport) | ||||
| #  endif | ||||
| # else | ||||
| #  if defined(__SUNPRO_C) | ||||
| #   ifndef __GNU_C__ | ||||
| #    define SODIUM_EXPORT __attribute__ (visibility(__global)) | ||||
| #   else | ||||
| #    define SODIUM_EXPORT __attribute__ __global | ||||
| #   endif | ||||
| #  elif defined(_MSG_VER) | ||||
| #   define SODIUM_EXPORT extern __declspec(dllexport) | ||||
| #  else | ||||
| #   define SODIUM_EXPORT __attribute__ ((visibility ("default"))) | ||||
| #  endif | ||||
| # endif | ||||
| # if defined(__ELF__) && !defined(SODIUM_DISABLE_WEAK_FUNCTIONS) | ||||
| #  define SODIUM_EXPORT_WEAK SODIUM_EXPORT __attribute__((weak)) | ||||
| # else | ||||
| #  define SODIUM_EXPORT_WEAK SODIUM_EXPORT | ||||
| # endif | ||||
| #endif | ||||
| 
 | ||||
| #ifndef CRYPTO_ALIGN | ||||
| # if defined(__INTEL_COMPILER) || defined(_MSC_VER) | ||||
| #  define CRYPTO_ALIGN(x) __declspec(align(x)) | ||||
| # else | ||||
| #  define CRYPTO_ALIGN(x) __attribute__ ((aligned(x))) | ||||
| # endif | ||||
| #endif | ||||
| 
 | ||||
| #define SODIUM_MIN(A, B) ((A) < (B) ? (A) : (B)) | ||||
| #define SODIUM_SIZE_MAX SODIUM_MIN(UINT64_MAX, SIZE_MAX) | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										72
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/randombytes.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/randombytes.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,72 @@ | |||
| 
 | ||||
| #ifndef randombytes_H | ||||
| #define randombytes_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| #include <stdint.h> | ||||
| 
 | ||||
| #include <sys/types.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| # ifdef __GNUC__ | ||||
| #  pragma GCC diagnostic ignored "-Wlong-long" | ||||
| # endif | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| typedef struct randombytes_implementation { | ||||
|     const char *(*implementation_name)(void); /* required */ | ||||
|     uint32_t    (*random)(void);              /* required */ | ||||
|     void        (*stir)(void);                /* optional */ | ||||
|     uint32_t    (*uniform)(const uint32_t upper_bound); /* optional, a default implementation will be used if NULL */ | ||||
|     void        (*buf)(void * const buf, const size_t size); /* required */ | ||||
|     int         (*close)(void);               /* optional */ | ||||
| } randombytes_implementation; | ||||
| 
 | ||||
| #define randombytes_BYTES_MAX SODIUM_MIN(SODIUM_SIZE_MAX, 0xffffffffUL) | ||||
| 
 | ||||
| #define randombytes_SEEDBYTES 32U | ||||
| SODIUM_EXPORT | ||||
| size_t randombytes_seedbytes(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void randombytes_buf(void * const buf, const size_t size) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void randombytes_buf_deterministic(void * const buf, const size_t size, | ||||
|                                    const unsigned char seed[randombytes_SEEDBYTES]) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| uint32_t randombytes_random(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| uint32_t randombytes_uniform(const uint32_t upper_bound); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void randombytes_stir(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int randombytes_close(void); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int randombytes_set_implementation(randombytes_implementation *impl) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| const char *randombytes_implementation_name(void); | ||||
| 
 | ||||
| /* -- NaCl compatibility interface -- */ | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void randombytes(unsigned char * const buf, const unsigned long long buf_len) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,22 @@ | |||
| 
 | ||||
| #ifndef randombytes_internal_random_H | ||||
| #define randombytes_internal_random_H | ||||
| 
 | ||||
| #include "export.h" | ||||
| #include "randombytes.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| extern struct randombytes_implementation randombytes_internal_implementation; | ||||
| 
 | ||||
| /* Backwards compatibility with libsodium < 1.0.18 */ | ||||
| #define randombytes_salsa20_implementation randombytes_internal_implementation | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
|  | @ -0,0 +1,19 @@ | |||
| 
 | ||||
| #ifndef randombytes_sysrandom_H | ||||
| #define randombytes_sysrandom_H | ||||
| 
 | ||||
| #include "export.h" | ||||
| #include "randombytes.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| extern struct randombytes_implementation randombytes_sysrandom_implementation; | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										52
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/runtime.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/runtime.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,52 @@ | |||
| 
 | ||||
| #ifndef sodium_runtime_H | ||||
| #define sodium_runtime_H | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_neon(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_sse2(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_sse3(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_ssse3(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_sse41(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_avx(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_avx2(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_avx512f(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_pclmul(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_aesni(void); | ||||
| 
 | ||||
| SODIUM_EXPORT_WEAK | ||||
| int sodium_runtime_has_rdrand(void); | ||||
| 
 | ||||
| /* ------------------------------------------------------------------------- */ | ||||
| 
 | ||||
| int _sodium_runtime_get_cpu_features(void); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										179
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/utils.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										179
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/utils.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,179 @@ | |||
| 
 | ||||
| #ifndef sodium_utils_H | ||||
| #define sodium_utils_H | ||||
| 
 | ||||
| #include <stddef.h> | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| extern "C" { | ||||
| #endif | ||||
| 
 | ||||
| #ifndef SODIUM_C99 | ||||
| # if defined(__cplusplus) || !defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L | ||||
| #  define SODIUM_C99(X) | ||||
| # else | ||||
| #  define SODIUM_C99(X) X | ||||
| # endif | ||||
| #endif | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void sodium_memzero(void * const pnt, const size_t len); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void sodium_stackzero(const size_t len); | ||||
| 
 | ||||
| /*
 | ||||
|  * WARNING: sodium_memcmp() must be used to verify if two secret keys | ||||
|  * are equal, in constant time. | ||||
|  * It returns 0 if the keys are equal, and -1 if they differ. | ||||
|  * This function is not designed for lexicographical comparisons. | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| int sodium_memcmp(const void * const b1_, const void * const b2_, size_t len) | ||||
|             __attribute__ ((warn_unused_result)); | ||||
| 
 | ||||
| /*
 | ||||
|  * sodium_compare() returns -1 if b1_ < b2_, 1 if b1_ > b2_ and 0 if b1_ == b2_ | ||||
|  * It is suitable for lexicographical comparisons, or to compare nonces | ||||
|  * and counters stored in little-endian format. | ||||
|  * However, it is slower than sodium_memcmp(). | ||||
|  */ | ||||
| SODIUM_EXPORT | ||||
| int sodium_compare(const unsigned char *b1_, const unsigned char *b2_, | ||||
|                    size_t len) __attribute__ ((warn_unused_result)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_is_zero(const unsigned char *n, const size_t nlen); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void sodium_increment(unsigned char *n, const size_t nlen); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void sodium_add(unsigned char *a, const unsigned char *b, const size_t len); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void sodium_sub(unsigned char *a, const unsigned char *b, const size_t len); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| char *sodium_bin2hex(char * const hex, const size_t hex_maxlen, | ||||
|                      const unsigned char * const bin, const size_t bin_len) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_hex2bin(unsigned char * const bin, const size_t bin_maxlen, | ||||
|                    const char * const hex, const size_t hex_len, | ||||
|                    const char * const ignore, size_t * const bin_len, | ||||
|                    const char ** const hex_end) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| #define sodium_base64_VARIANT_ORIGINAL            1 | ||||
| #define sodium_base64_VARIANT_ORIGINAL_NO_PADDING 3 | ||||
| #define sodium_base64_VARIANT_URLSAFE             5 | ||||
| #define sodium_base64_VARIANT_URLSAFE_NO_PADDING  7 | ||||
| 
 | ||||
| /*
 | ||||
|  * Computes the required length to encode BIN_LEN bytes as a base64 string | ||||
|  * using the given variant. The computed length includes a trailing \0. | ||||
|  */ | ||||
| #define sodium_base64_ENCODED_LEN(BIN_LEN, VARIANT) \ | ||||
|     (((BIN_LEN) / 3U) * 4U + \ | ||||
|     ((((BIN_LEN) - ((BIN_LEN) / 3U) * 3U) | (((BIN_LEN) - ((BIN_LEN) / 3U) * 3U) >> 1)) & 1U) * \ | ||||
|      (4U - (~((((VARIANT) & 2U) >> 1) - 1U) & (3U - ((BIN_LEN) - ((BIN_LEN) / 3U) * 3U)))) + 1U) | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| size_t sodium_base64_encoded_len(const size_t bin_len, const int variant); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| char *sodium_bin2base64(char * const b64, const size_t b64_maxlen, | ||||
|                         const unsigned char * const bin, const size_t bin_len, | ||||
|                         const int variant) __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_base642bin(unsigned char * const bin, const size_t bin_maxlen, | ||||
|                       const char * const b64, const size_t b64_len, | ||||
|                       const char * const ignore, size_t * const bin_len, | ||||
|                       const char ** const b64_end, const int variant) | ||||
|             __attribute__ ((nonnull(1))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_mlock(void * const addr, const size_t len) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_munlock(void * const addr, const size_t len) | ||||
|             __attribute__ ((nonnull)); | ||||
| 
 | ||||
| /* WARNING: sodium_malloc() and sodium_allocarray() are not general-purpose
 | ||||
|  * allocation functions. | ||||
|  * | ||||
|  * They return a pointer to a region filled with 0xd0 bytes, immediately | ||||
|  * followed by a guard page. | ||||
|  * As a result, accessing a single byte after the requested allocation size | ||||
|  * will intentionally trigger a segmentation fault. | ||||
|  * | ||||
|  * A canary and an additional guard page placed before the beginning of the | ||||
|  * region may also kill the process if a buffer underflow is detected. | ||||
|  * | ||||
|  * The memory layout is: | ||||
|  * [unprotected region size (read only)][guard page (no access)][unprotected pages (read/write)][guard page (no access)] | ||||
|  * With the layout of the unprotected pages being: | ||||
|  * [optional padding][16-bytes canary][user region] | ||||
|  * | ||||
|  * However: | ||||
|  * - These functions are significantly slower than standard functions | ||||
|  * - Each allocation requires 3 or 4 additional pages | ||||
|  * - The returned address will not be aligned if the allocation size is not | ||||
|  *   a multiple of the required alignment. For this reason, these functions | ||||
|  *   are designed to store data, such as secret keys and messages. | ||||
|  * | ||||
|  * sodium_malloc() can be used to allocate any libsodium data structure. | ||||
|  * | ||||
|  * The crypto_generichash_state structure is packed and its length is | ||||
|  * either 357 or 361 bytes. For this reason, when using sodium_malloc() to | ||||
|  * allocate a crypto_generichash_state structure, padding must be added in | ||||
|  * order to ensure proper alignment. crypto_generichash_statebytes() | ||||
|  * returns the rounded up structure size, and should be prefered to sizeof(): | ||||
|  * state = sodium_malloc(crypto_generichash_statebytes()); | ||||
|  */ | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void *sodium_malloc(const size_t size) | ||||
|             __attribute__ ((malloc)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void *sodium_allocarray(size_t count, size_t size) | ||||
|             __attribute__ ((malloc)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| void sodium_free(void *ptr); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_mprotect_noaccess(void *ptr) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_mprotect_readonly(void *ptr) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_mprotect_readwrite(void *ptr) __attribute__ ((nonnull)); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_pad(size_t *padded_buflen_p, unsigned char *buf, | ||||
|                size_t unpadded_buflen, size_t blocksize, size_t max_buflen) | ||||
|             __attribute__ ((nonnull(2))); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int sodium_unpad(size_t *unpadded_buflen_p, const unsigned char *buf, | ||||
|                  size_t padded_buflen, size_t blocksize) | ||||
|             __attribute__ ((nonnull(2))); | ||||
| 
 | ||||
| /* -------- */ | ||||
| 
 | ||||
| int _sodium_alloc_init(void); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										33
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/version.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								example/android/third_party/libsodium/libsodium-android-i686/include/sodium/version.h
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,33 @@ | |||
| 
 | ||||
| #ifndef sodium_version_H | ||||
| #define sodium_version_H | ||||
| 
 | ||||
| #include "export.h" | ||||
| 
 | ||||
| #define SODIUM_VERSION_STRING "1.0.18" | ||||
| 
 | ||||
| #define SODIUM_LIBRARY_VERSION_MAJOR 10 | ||||
| #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); | ||||
| 
 | ||||
| SODIUM_EXPORT | ||||
| int         sodium_library_minimal(void); | ||||
| 
 | ||||
| #ifdef __cplusplus | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| #endif | ||||
							
								
								
									
										
											BIN
										
									
								
								example/android/third_party/libsodium/libsodium-android-i686/lib/libsodium.a
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								example/android/third_party/libsodium/libsodium-android-i686/lib/libsodium.a
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										41
									
								
								example/android/third_party/libsodium/libsodium-android-i686/lib/libsodium.la
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								example/android/third_party/libsodium/libsodium-android-i686/lib/libsodium.la
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,41 @@ | |||
| # libsodium.la - a libtool library file | ||||
| # Generated by libtool (GNU libtool) 2.4.6 | ||||
| # | ||||
| # Please DO NOT delete this file! | ||||
| # It is necessary for linking the library. | ||||
| 
 | ||||
| # The name that we can dlopen(3). | ||||
| dlname='libsodium.so' | ||||
| 
 | ||||
| # Names of this library. | ||||
| library_names='libsodium.so' | ||||
| 
 | ||||
| # The name of the static archive. | ||||
| old_library='libsodium.a' | ||||
| 
 | ||||
| # Linker flags that cannot go in dependency_libs. | ||||
| inherited_linker_flags=' -pthread' | ||||
| 
 | ||||
| # Libraries that this one depends upon. | ||||
| dependency_libs='' | ||||
| 
 | ||||
| # Names of additional weak libraries provided by this library | ||||
| weak_library_names='' | ||||
| 
 | ||||
| # Version information for libsodium. | ||||
| current=0 | ||||
| age=0 | ||||
| revision=0 | ||||
| 
 | ||||
| # Is this an already installed library? | ||||
| installed=yes | ||||
| 
 | ||||
| # Should we warn about portability when linking against -modules? | ||||
| shouldnotlink=no | ||||
| 
 | ||||
| # Files to dlopen/dlpreopen | ||||
| dlopen='' | ||||
| dlpreopen='' | ||||
| 
 | ||||
| # Directory that this library needs to be installed in: | ||||
| libdir='/home/alex/magnet/example/android/third_party/libsodium/libsodium-1.0.18/libsodium-android-i686/lib' | ||||
							
								
								
									
										
											BIN
										
									
								
								example/android/third_party/libsodium/libsodium-android-i686/lib/libsodium.so
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								example/android/third_party/libsodium/libsodium-android-i686/lib/libsodium.so
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										12
									
								
								example/android/third_party/libsodium/libsodium-android-i686/lib/pkgconfig/libsodium.pc
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								example/android/third_party/libsodium/libsodium-android-i686/lib/pkgconfig/libsodium.pc
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| prefix=/home/alex/magnet/example/android/third_party/libsodium/libsodium-1.0.18/libsodium-android-i686 | ||||
| exec_prefix=${prefix} | ||||
| libdir=${exec_prefix}/lib | ||||
| includedir=${prefix}/include | ||||
| 
 | ||||
| Name: libsodium | ||||
| Version: 1.0.18 | ||||
| Description: A modern and easy-to-use crypto library | ||||
| 
 | ||||
| Libs: -L${libdir} -lsodium | ||||
| Libs.private:  -pthread  | ||||
| Cflags: -I${includedir} | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue