xref: /freebsd/contrib/xz/src/liblzma/common/stream_flags_common.h (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1 // SPDX-License-Identifier: 0BSD
2 
3 ///////////////////////////////////////////////////////////////////////////////
4 //
5 /// \file       stream_flags_common.h
6 /// \brief      Common stuff for Stream flags coders
7 //
8 //  Author:     Lasse Collin
9 //
10 ///////////////////////////////////////////////////////////////////////////////
11 
12 #ifndef LZMA_STREAM_FLAGS_COMMON_H
13 #define LZMA_STREAM_FLAGS_COMMON_H
14 
15 #include "common.h"
16 
17 /// Size of the Stream Flags field
18 #define LZMA_STREAM_FLAGS_SIZE 2
19 
20 lzma_attr_visibility_hidden
21 extern const uint8_t lzma_header_magic[6];
22 
23 lzma_attr_visibility_hidden
24 extern const uint8_t lzma_footer_magic[2];
25 
26 
27 static inline bool
28 is_backward_size_valid(const lzma_stream_flags *options)
29 {
30 	return options->backward_size >= LZMA_BACKWARD_SIZE_MIN
31 			&& options->backward_size <= LZMA_BACKWARD_SIZE_MAX
32 			&& (options->backward_size & 3) == 0;
33 }
34 
35 #endif
36