mirror of
				https://gitcode.com/gh_mirrors/re/react-native-pushy.git
				synced 2025-10-31 21:33:12 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			74 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
| /*
 | |
|  ---------------------------------------------------------------------------
 | |
|  Copyright (c) 2002, Dr Brian Gladman, Worcester, UK.   All rights reserved.
 | |
| 
 | |
|  LICENSE TERMS
 | |
| 
 | |
|  The free distribution and use of this software in both source and binary
 | |
|  form is allowed (with or without changes) provided that:
 | |
| 
 | |
|    1. distributions of this source code include the above copyright
 | |
|       notice, this list of conditions and the following disclaimer;
 | |
| 
 | |
|    2. distributions in binary form include the above copyright
 | |
|       notice, this list of conditions and the following disclaimer
 | |
|       in the documentation and/or other associated materials;
 | |
| 
 | |
|    3. the copyright holder's name is not used to endorse products
 | |
|       built using this software without specific written permission.
 | |
| 
 | |
|  ALTERNATIVELY, provided that this notice is retained in full, this product
 | |
|  may be distributed under the terms of the GNU General Public License (GPL),
 | |
|  in which case the provisions of the GPL apply INSTEAD OF those given above.
 | |
| 
 | |
|  DISCLAIMER
 | |
| 
 | |
|  This software is provided 'as is' with no explicit or implied warranties
 | |
|  in respect of its properties, including, but not limited to, correctness
 | |
|  and/or fitness for purpose.
 | |
|  ---------------------------------------------------------------------------
 | |
|  Issue Date: 01/08/2005
 | |
| */
 | |
| 
 | |
| #ifndef _SHA1_H
 | |
| #define _SHA1_H
 | |
| 
 | |
| #include <stdlib.h>
 | |
| #include "brg_types.h"
 | |
| 
 | |
| #define SHA1_BLOCK_SIZE  64
 | |
| #define SHA1_DIGEST_SIZE 20
 | |
| 
 | |
| #if defined(__cplusplus)
 | |
| extern "C"
 | |
| {
 | |
| #endif
 | |
| 
 | |
| /* type to hold the SHA256 context  */
 | |
| 
 | |
| typedef struct
 | |
| {   uint_32t count[2];
 | |
|     uint_32t hash[5];
 | |
|     uint_32t wbuf[16];
 | |
| } sha1_ctx;
 | |
| 
 | |
| /* Note that these prototypes are the same for both bit and */
 | |
| /* byte oriented implementations. However the length fields */
 | |
| /* are in bytes or bits as appropriate for the version used */
 | |
| /* and bit sequences are input as arrays of bytes in which  */
 | |
| /* bit sequences run from the most to the least significant */
 | |
| /* end of each byte                                         */
 | |
| 
 | |
| VOID_RETURN sha1_compile(sha1_ctx ctx[1]);
 | |
| 
 | |
| VOID_RETURN sha1_begin(sha1_ctx ctx[1]);
 | |
| VOID_RETURN sha1_hash(const unsigned char data[], unsigned long len, sha1_ctx ctx[1]);
 | |
| VOID_RETURN sha1_end(unsigned char hval[], sha1_ctx ctx[1]);
 | |
| VOID_RETURN sha1(unsigned char hval[], const unsigned char data[], unsigned long len);
 | |
| 
 | |
| #if defined(__cplusplus)
 | |
| }
 | |
| #endif
 | |
| 
 | |
| #endif
 | 
