X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=src%2Fos_zlib%2Fos_zlib.c;h=5caf680573bcbd88651329815847498f07c48106;hb=HEAD;hp=ad208fb7c1b6c8aa96650c186bfcabafc83200c6;hpb=6ef2f786c6c8ead94841b5f93baf9f43421f08c8;p=ossec-hids.git diff --git a/src/os_zlib/os_zlib.c b/src/os_zlib/os_zlib.c old mode 100755 new mode 100644 index ad208fb..5caf680 --- a/src/os_zlib/os_zlib.c +++ b/src/os_zlib/os_zlib.c @@ -1,6 +1,3 @@ -/* @(#) $Id: ./src/os_zlib/os_zlib.c, 2011/09/08 dcid Exp $ - */ - /* Copyright (C) 2009 Trend Micro Inc. * All rights reserved. * @@ -10,43 +7,42 @@ * Foundation */ -#include "shared.h" #include "os_zlib.h" -/* os_compress: Compress a string with zlib. */ -int os_compress(char *src, char *dst, int src_size, int dst_size) -{ - unsigned long int zl_dst = dst_size; +#ifdef ZLIB_SYSTEM +#include +#else +#include "../external/zlib-1.2.11/zlib.h" +#endif - /* We make sure to do not allow long sizes */ - if(compress2((unsigned char *)dst, - &zl_dst, - (unsigned char *)src, - (unsigned long int)src_size, 9) == Z_OK) - { - dst[zl_dst] = '\0'; - return(zl_dst); +unsigned long int os_zlib_compress(const char *src, char *dst, + unsigned long int src_size, + unsigned long int dst_size) +{ + if (compress2((Bytef *)dst, + &dst_size, + (const Bytef *)src, + src_size, + Z_BEST_COMPRESSION) == Z_OK) { + dst[dst_size] = '\0'; + return (dst_size); } - return(0); + return (0); } - -/* os_uncompress: Uncompress a string with zlib. */ -int os_uncompress(char *src, char *dst, int src_size, int dst_size) +unsigned long int os_zlib_uncompress(const char *src, char *dst, + unsigned long int src_size, + unsigned long int dst_size) { - unsigned long int zl_dst = dst_size; - - if(uncompress((unsigned char *)dst, - &zl_dst, - (unsigned char *)src, - (unsigned long int)src_size) == Z_OK) - { - dst[zl_dst] = '\0'; - return(zl_dst); + if (uncompress((Bytef *)dst, + &dst_size, + (const Bytef *)src, + src_size) == Z_OK) { + dst[dst_size] = '\0'; + return (dst_size); } - return(0); -} + return (0); +} -/* EOF */