gunzip_util.h 921 B

123456789101112131415161718192021222324252627282930
  1. /*
  2. * Decompression convenience functions
  3. *
  4. * Copyright 2007 David Gibson, IBM Corporation.
  5. *
  6. * This file is licensed under the terms of the GNU General Public
  7. * License version 2. This program is licensed "as is" without any
  8. * warranty of any kind, whether express or implied.
  9. */
  10. #ifndef _PPC_BOOT_GUNZIP_UTIL_H_
  11. #define _PPC_BOOT_GUNZIP_UTIL_H_
  12. #include "zlib.h"
  13. /* scratch space for gunzip; 46912 is from zlib_inflate_workspacesize() */
  14. #define GUNZIP_SCRATCH_SIZE 46912
  15. struct gunzip_state {
  16. z_stream s;
  17. char scratch[46912];
  18. };
  19. void gunzip_start(struct gunzip_state *state, void *src, int srclen);
  20. int gunzip_partial(struct gunzip_state *state, void *dst, int dstlen);
  21. void gunzip_exactly(struct gunzip_state *state, void *dst, int len);
  22. void gunzip_discard(struct gunzip_state *state, int len);
  23. int gunzip_finish(struct gunzip_state *state, void *dst, int len);
  24. #endif /* _PPC_BOOT_GUNZIP_UTIL_H_ */