uboot/lib/zlib/zutil.c
<<
>>
Prefs
   1/* zutil.c -- target dependent utility functions for the compression library
   2 * Copyright (C) 1995-2005 Jean-loup Gailly.
   3 * For conditions of distribution and use, see copyright notice in zlib.h
   4 */
   5
   6/* @(#) $Id$ */
   7
   8#include "zutil.h"
   9
  10#ifndef NO_DUMMY_DECL
  11struct internal_state      {int dummy;}; /* for buggy compilers */
  12#endif
  13
  14const char * const z_errmsg[10] = {
  15"need dictionary",     /* Z_NEED_DICT       2  */
  16"stream end",          /* Z_STREAM_END      1  */
  17"",                    /* Z_OK              0  */
  18"file error",          /* Z_ERRNO         (-1) */
  19"stream error",        /* Z_STREAM_ERROR  (-2) */
  20"data error",          /* Z_DATA_ERROR    (-3) */
  21"insufficient memory", /* Z_MEM_ERROR     (-4) */
  22"buffer error",        /* Z_BUF_ERROR     (-5) */
  23"incompatible version",/* Z_VERSION_ERROR (-6) */
  24""};
  25
  26#ifdef DEBUG
  27
  28#ifndef verbose
  29#define verbose 0
  30#endif
  31int z_verbose = verbose;
  32
  33void z_error (m)
  34    char *m;
  35{
  36        fprintf(stderr, "%s\n", m);
  37        hang ();
  38}
  39#endif
  40
  41/* exported to allow conversion of error code to string for compress() and
  42 * uncompress()
  43 */
  44#ifndef MY_ZCALLOC /* Any system without a special alloc function */
  45
  46#ifndef STDC
  47extern voidp    malloc OF((uInt size));
  48extern voidp    calloc OF((uInt items, uInt size));
  49extern void     free   OF((voidpf ptr));
  50#endif
  51
  52voidpf zcalloc(voidpf opaque, unsigned items, unsigned size)
  53{
  54        if (opaque)
  55                items += size - size; /* make compiler happy */
  56        return sizeof(uInt) > 2 ? (voidpf)malloc(items * size) :
  57                (voidpf)calloc(items, size);
  58}
  59
  60void  zcfree(voidpf opaque, voidpf ptr, unsigned nb)
  61{
  62        free(ptr);
  63        if (opaque)
  64                return; /* make compiler happy */
  65}
  66
  67#endif /* MY_ZCALLOC */
  68