libclamav/htmlnorm.h
9b8e00a0
 /*
e1cbc270
  *  Copyright (C) 2013-2019 Cisco Systems, Inc. and/or its affiliates. All rights reserved.
6289eda8
  *  Copyright (C) 2007-2013 Sourcefire, Inc.
2023340a
  *
  *  Authors: Trog
6289eda8
  * 
  *  Summary: Normalise HTML text. Decode MS Script Encoder protection. 
  *           The ScrEnc decoder was initially based upon an analysis by Andreas Marx.
9b8e00a0
  *
  *  This program is free software; you can redistribute it and/or modify
2023340a
  *  it under the terms of the GNU General Public License version 2 as
  *  published by the Free Software Foundation.
9b8e00a0
  *
  *  This program is distributed in the hope that it will be useful,
  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  *  GNU General Public License for more details.
  *
  *  You should have received a copy of the GNU General Public License
  *  along with this program; if not, write to the Free Software
48b7b4a7
  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  *  MA 02110-1301, USA.
9b8e00a0
  */
2023340a
 
888f5794
 #ifndef __HTMLNORM_H
 #define __HTMLNORM_H
9b8e00a0
 
288057e9
 typedef struct tag_arguments_tag {
6289eda8
     int count;
     int scanContents;
     unsigned char **tag;
     unsigned char **value;
     unsigned char **contents;
e57fa318
 } tag_arguments_t;
9b8e00a0
 
288057e9
 typedef struct m_area_tag {
6289eda8
     unsigned char *buffer;
     off_t length;
     off_t offset;
     fmap_t *map;
3506ac49
 } m_area_t;
 
6289eda8
 int html_normalise_mem(unsigned char *in_buff, off_t in_size, const char *dirname, tag_arguments_t *hrefs, const struct cli_dconf *dconf);
 int html_normalise_map(fmap_t *map, const char *dirname, tag_arguments_t *hrefs, const struct cli_dconf *dconf);
e57fa318
 void html_tag_arg_free(tag_arguments_t *tags);
32f7e1d7
 int html_screnc_decode(fmap_t *map, const char *dirname);
f2b71eb9
 void html_tag_arg_add(tag_arguments_t *tags, const char *tag, char *value);
e57fa318
 
6289eda8
 #endif