1 1.1 christos /* puff.h 2 1.1.1.2 christos Copyright (C) 2002-2013 Mark Adler, all rights reserved 3 1.1.1.2 christos version 2.3, 21 Jan 2013 4 1.1 christos 5 1.1 christos This software is provided 'as-is', without any express or implied 6 1.1 christos warranty. In no event will the author be held liable for any damages 7 1.1 christos arising from the use of this software. 8 1.1 christos 9 1.1 christos Permission is granted to anyone to use this software for any purpose, 10 1.1 christos including commercial applications, and to alter it and redistribute it 11 1.1 christos freely, subject to the following restrictions: 12 1.1 christos 13 1.1 christos 1. The origin of this software must not be misrepresented; you must not 14 1.1 christos claim that you wrote the original software. If you use this software 15 1.1 christos in a product, an acknowledgment in the product documentation would be 16 1.1 christos appreciated but is not required. 17 1.1 christos 2. Altered source versions must be plainly marked as such, and must not be 18 1.1 christos misrepresented as being the original software. 19 1.1 christos 3. This notice may not be removed or altered from any source distribution. 20 1.1 christos 21 1.1 christos Mark Adler madler (at) alumni.caltech.edu 22 1.1 christos */ 23 1.1 christos 24 1.1 christos 25 1.1 christos /* 26 1.1 christos * See puff.c for purpose and usage. 27 1.1 christos */ 28 1.1.1.2 christos #ifndef NIL 29 1.1.1.2 christos # define NIL ((unsigned char *)0) /* for no output option */ 30 1.1.1.2 christos #endif 31 1.1.1.2 christos 32 1.1 christos int puff(unsigned char *dest, /* pointer to destination pointer */ 33 1.1 christos unsigned long *destlen, /* amount of output space */ 34 1.1.1.2 christos const unsigned char *source, /* pointer to source data pointer */ 35 1.1 christos unsigned long *sourcelen); /* amount of input available */ 36