Change-Id: I6faeb7c783052edc4217d2d301dbb905e1fc6a19 Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr> Reviewed-on: https://review.coreboot.org/c/coreboot/+/44605 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Michael Niewöhner <foss@mniewoehner.de>
		
			
				
	
	
		
			65 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|   LzmaDecode.h
 | |
|   LZMA Decoder interface
 | |
| 
 | |
|   LZMA SDK 4.40 Copyright (c) 1999-2006 Igor Pavlov (2006-05-01)
 | |
|   http://www.7-zip.org/
 | |
| 
 | |
|   LZMA SDK is licensed under two licenses:
 | |
|   1) GNU Lesser General Public License (GNU LGPL)
 | |
|   2) Common Public License (CPL)
 | |
|   It means that you can select one of these two licenses and
 | |
|   follow rules of that license.
 | |
| 
 | |
|   SPECIAL EXCEPTION:
 | |
|   Igor Pavlov, as the author of this code, expressly permits you to
 | |
|   statically or dynamically link your code (or bind by name) to the
 | |
|   interfaces of this file without subjecting your linked code to the
 | |
|   terms of the CPL or GNU LGPL. Any modifications or additions
 | |
|   to this file, however, are subject to the LGPL or CPL terms.
 | |
| */
 | |
| 
 | |
| #ifndef __LZMADECODE_H
 | |
| #define __LZMADECODE_H
 | |
| 
 | |
| typedef unsigned char Byte;
 | |
| typedef unsigned short UInt16;
 | |
| typedef unsigned int UInt32;
 | |
| typedef UInt32 SizeT;
 | |
| 
 | |
| #define CProb UInt16
 | |
| 
 | |
| #define LZMA_RESULT_OK 0
 | |
| #define LZMA_RESULT_DATA_ERROR 1
 | |
| 
 | |
| #define LZMA_BASE_SIZE 1846
 | |
| #define LZMA_LIT_SIZE 768
 | |
| 
 | |
| #define LZMA_PROPERTIES_SIZE 5
 | |
| 
 | |
| typedef struct _CLzmaProperties
 | |
| {
 | |
|   int lc;
 | |
|   int lp;
 | |
|   int pb;
 | |
| }CLzmaProperties;
 | |
| 
 | |
| int LzmaDecodeProperties(CLzmaProperties *propsRes, const unsigned char *propsData, int size);
 | |
| 
 | |
| #define LzmaGetNumProbs(Properties) (LZMA_BASE_SIZE + (LZMA_LIT_SIZE << ((Properties)->lc + (Properties)->lp)))
 | |
| 
 | |
| #define kLzmaNeedInitId (-2)
 | |
| 
 | |
| typedef struct _CLzmaDecoderState
 | |
| {
 | |
|   CLzmaProperties Properties;
 | |
|   CProb *Probs;
 | |
| 
 | |
| } CLzmaDecoderState;
 | |
| 
 | |
| int LzmaDecode(CLzmaDecoderState *vs,
 | |
|     const unsigned char *inStream, SizeT inSize, SizeT *inSizeProcessed,
 | |
|     unsigned char *outStream, SizeT outSize, SizeT *outSizeProcessed);
 | |
| 
 | |
| #endif
 |