1*4d1abfb2Sjoerg /////////////////////////////////////////////////////////////////////////////// 2*4d1abfb2Sjoerg // 3*4d1abfb2Sjoerg /// \file stream_flags_common.h 4*4d1abfb2Sjoerg /// \brief Common stuff for Stream flags coders 5*4d1abfb2Sjoerg // 6*4d1abfb2Sjoerg // Author: Lasse Collin 7*4d1abfb2Sjoerg // 8*4d1abfb2Sjoerg // This file has been put into the public domain. 9*4d1abfb2Sjoerg // You can do whatever you want with this file. 10*4d1abfb2Sjoerg // 11*4d1abfb2Sjoerg /////////////////////////////////////////////////////////////////////////////// 12*4d1abfb2Sjoerg 13*4d1abfb2Sjoerg #ifndef LZMA_STREAM_FLAGS_COMMON_H 14*4d1abfb2Sjoerg #define LZMA_STREAM_FLAGS_COMMON_H 15*4d1abfb2Sjoerg 16*4d1abfb2Sjoerg #include "common.h" 17*4d1abfb2Sjoerg 18*4d1abfb2Sjoerg /// Size of the Stream Flags field 19*4d1abfb2Sjoerg #define LZMA_STREAM_FLAGS_SIZE 2 20*4d1abfb2Sjoerg 21*4d1abfb2Sjoerg extern const uint8_t lzma_header_magic[6]; 22*4d1abfb2Sjoerg extern const uint8_t lzma_footer_magic[2]; 23*4d1abfb2Sjoerg 24*4d1abfb2Sjoerg 25*4d1abfb2Sjoerg static inline bool is_backward_size_valid(const lzma_stream_flags * options)26*4d1abfb2Sjoergis_backward_size_valid(const lzma_stream_flags *options) 27*4d1abfb2Sjoerg { 28*4d1abfb2Sjoerg return options->backward_size >= LZMA_BACKWARD_SIZE_MIN 29*4d1abfb2Sjoerg && options->backward_size <= LZMA_BACKWARD_SIZE_MAX 30*4d1abfb2Sjoerg && (options->backward_size & 3) == 0; 31*4d1abfb2Sjoerg } 32*4d1abfb2Sjoerg 33*4d1abfb2Sjoerg #endif 34