X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=deanimate.h;h=906dcfc32bdec59747bcfb576221d815ef58fe7b;hp=ed5ccf23a838d5144a4937069b23fdeda8ccd77e;hb=7d6a731e174342aec42a91aa3886ad9f2ef835c8;hpb=af4addff048ee2542d1eab8740e085f06d77b2f7 diff --git a/deanimate.h b/deanimate.h index ed5ccf23..906dcfc3 100644 --- a/deanimate.h +++ b/deanimate.h @@ -1,17 +1,21 @@ -#ifndef _DEANIMATE_H -#define _DEANIMATE_H -#define DEANIMATE_H_VERSION "$Id: $" +#ifndef DEANIMATE_H_INCLUDED +#define DEANIMATE_H_INCLUDED +#define DEANIMATE_H_VERSION "$Id: deanimate.h,v 1.10 2006/07/18 14:48:45 david__schmidt Exp $" /********************************************************************* * - * File : $Source: $ + * File : $Source: /cvsroot/ijbswa/current/deanimate.h,v $ * - * Purpose : Declares functions to deanimate GIF images on the fly. + * Purpose : Declares functions to manipulate binary images on the + * fly. High-level functions include: + * - Deanimation of GIF images + * - Fixup of malformed comment block in JPEG headers * - * Functions declared include: gif_deanimate, buf_free + * Functions declared include: gif_deanimate, buf_free, + * jpeg_inspect * * - * Copyright : Written by and Copyright (C) 2001 Andreas S. Oesterhelt - * for the SourceForge IJBSWA team. http://ijbswa.sourceforge.net + * Copyright : Written by and Copyright (C) 2001 - 2004 by the the + * SourceForge Privoxy team. http://www.privoxy.org/ * * Based on ideas from the Image::DeAnim Perl module by * Ken MacFarlane, @@ -39,27 +43,65 @@ * Temple Place - Suite 330, Boston, MA 02111-1307, USA. * * Revisions : - * $Log: $ + * $Log: deanimate.h,v $ + * Revision 1.10 2006/07/18 14:48:45 david__schmidt + * Reorganizing the repository: swapping out what was HEAD (the old 3.1 branch) + * with what was really the latest development (the v_3_0_branch branch) + * + * Revision 1.8.2.1 2004/10/03 12:53:32 david__schmidt + * Add the ability to check jpeg images for invalid + * lengths of comment blocks. Defensive strategy + * against the exploit: + * Microsoft Security Bulletin MS04-028 + * Buffer Overrun in JPEG Processing (GDI+) Could + * Allow Code Execution (833987) + * Enabled with +inspect-jpegs in actions files. + * + * Revision 1.8 2002/03/26 22:29:54 swa + * we have a new homepage! + * + * Revision 1.7 2002/03/24 13:25:43 swa + * name change related issues + * + * Revision 1.6 2002/03/08 17:46:04 jongfoster + * Fixing int/size_t warnings + * + * Revision 1.5 2002/03/07 03:46:17 oes + * Fixed compiler warnings + * + * Revision 1.4 2001/07/29 18:50:04 jongfoster + * Fixing "extern C" block, and renaming #define _DEANIMATE_H + * + * Revision 1.3 2001/07/18 12:29:05 oes + * Updated prototype for gif_deanimate + * + * Revision 1.2 2001/07/13 13:46:20 oes + * Introduced GIF deanimation feature * * *********************************************************************/ +#ifdef __cplusplus +extern "C" { +#endif + /* * A struct that holds a buffer, a read/write offset, * and the buffer's capacity. */ struct binbuffer { - char *buffer; - int offset; - int size; + char *buffer; + size_t offset; + size_t size; }; /* * Function prototypes */ -extern int gif_deanimate(struct binbuffer *src, struct binbuffer *dst); +extern int gif_deanimate(struct binbuffer *src, struct binbuffer *dst, int get_first_image); +extern int jpeg_inspect(struct binbuffer *src, struct binbuffer *dst); extern void buf_free(struct binbuffer *buf); /* @@ -72,7 +114,7 @@ extern const char deanimate_h_rcs[]; } /* extern "C" */ #endif -#endif /* ndef _DEANIMATE_H */ +#endif /* ndef DEANIMATE_H_INCLUDED */ /* Local Variables: