1 | /* |
1 | /* |
2 | * Copyright (c) 2000-2002 Marc Alexander Lehmann <pcg@goof.com> |
2 | * Copyright (c) 2000-2003 Marc Alexander Lehmann <pcg@goof.com> |
3 | * |
3 | * |
4 | * Redistribution and use in source and binary forms, with or without modifica- |
4 | * Redistribution and use in source and binary forms, with or without modifica- |
5 | * tion, are permitted provided that the following conditions are met: |
5 | * tion, are permitted provided that the following conditions are met: |
6 | * |
6 | * |
7 | * 1. Redistributions of source code must retain the above copyright notice, |
7 | * 1. Redistributions of source code must retain the above copyright notice, |
… | |
… | |
54 | * architecture-independent and will result in the original data when |
54 | * architecture-independent and will result in the original data when |
55 | * decompressed using lzf_decompress. |
55 | * decompressed using lzf_decompress. |
56 | * |
56 | * |
57 | * The buffers must not be overlapping. |
57 | * The buffers must not be overlapping. |
58 | * |
58 | * |
|
|
59 | * If the option LZF_STATE_ARG is enabled, an extra argument must be |
|
|
60 | * supplied which is not reflected in this header file. Refer to lzf_c.c. |
|
|
61 | * |
59 | */ |
62 | */ |
60 | unsigned int |
63 | unsigned int |
61 | lzf_compress (const void *const in_data, unsigned int in_len, |
64 | lzf_compress (const void *const in_data, unsigned int in_len, |
62 | void *out_data, unsigned int out_len); |
65 | void *out_data, unsigned int out_len); |
63 | |
66 | |
64 | /* |
67 | /* |
65 | * Decompress data compressed with some version of the lzf_compress |
68 | * Decompress data compressed with some version of the lzf_compress |
66 | * function and stored at location in_data and length in_len. The result |
69 | * function and stored at location in_data and length in_len. The result |
67 | * will be stored at out_data up to a maximum of out_len characters. |
70 | * will be stored at out_data up to a maximum of out_len characters. |
68 | * |
71 | * |
69 | * If * the output buffer is not large enough to hold the decompressed |
72 | * If the output buffer is not large enough to hold the decompressed |
70 | * data, a 0 is returned and errno is set to E2BIG. Otherwise the number |
73 | * data, a 0 is returned and errno is set to E2BIG. Otherwise the number |
71 | * of decompressed bytes (i.e. the original length of the data) is |
74 | * of decompressed bytes (i.e. the original length of the data) is |
72 | * returned. |
75 | * returned. |
73 | * |
76 | * |
74 | * If an error in the compressed data is detected, a zero is returned and |
77 | * If an error in the compressed data is detected, a zero is returned and |