1 /* 2 3 HTML manglizer 4 -------------- 5 Copyright (C) 2004 by Michal Zalewski <lcamtuf (at) coredump.cx> 6 7 Tag and parameter list: guesstimating / reference compilation. 8 9 */ 10 11 12 #define MAXTAGS 80 13 #define MAXPARS 20 14 15 static char* tags[MAXTAGS][MAXPARS] = { 16 { "A", "NAME", "HREF", "REF", "REV", "TITLE", "TARGET", "SHAPE", "onLoad", "STYLE", 0 }, 17 { "APPLET", "CODEBASE", "CODE", "NAME", "ALIGN", "ALT", "HEIGHT", "WIDTH", "HSPACE", "VSPACE", "DOWNLOAD", "HEIGHT", "NAME", "TITLE", "onLoad", "STYLE", 0 }, 18 { "AREA", "SHAPE", "ALT", "CO-ORDS", "HREF", "onLoad", "STYLE", 0 }, 19 { "B", "onLoad", "STYLE", 0 }, 20 { "BANNER", "onLoad", "STYLE", 0 }, 21 { "BASE", "HREF", "TARGET", "onLoad", "STYLE", 0 }, 22 { "BASEFONT", "SIZE", "onLoad", "STYLE", 0 }, 23 { "BGSOUND", "SRC", "LOOP", "onLoad", "STYLE", 0 }, 24 { "BQ", "CLEAR", "NOWRAP", "onLoad", "STYLE", 0 }, 25 { "BODY", "BACKGROUND", "BGCOLOR", "TEXT", "LINK", "ALINK", "VLINK", "LEFTMARGIN", "TOPMARGIN", "BGPROPERTIES", "onLoad", "STYLE", 0 }, 26 { "CAPTION", "ALIGN", "VALIGN", "onLoad", "STYLE", 0 }, 27 { "CENTER", "onLoad", "STYLE", 0 }, 28 { "COL", "ALIGN", "SPAN", "onLoad", "STYLE", 0 }, 29 { "COLGROUP", "ALIGN", "VALIGN", "HALIGN", "WIDTH", "SPAN", "onLoad", "STYLE", 0 }, 30 { "DIV", "ALIGN", "CLASS", "LANG", "onLoad", "STYLE", 0 }, 31 { "EMBED", "SRC", "HEIGHT", "WIDTH", "UNITS", "NAME", "PALETTE", "onLoad", "STYLE", 0 }, 32 { "FIG", "SRC", "ALIGN", "HEIGHT", "WIDTH", "UNITS", "IMAGEMAP", "onLoad", "STYLE", 0 }, 33 { "FN", "ID", "onLoad", "STYLE", 0 }, 34 { "FONT", "SIZE", "COLOR", "FACE", "onLoad", "STYLE", 0 }, 35 { "FORM", "ACTION", "METHOD", "ENCTYPE", "TARGET", "SCRIPT", "onLoad", "STYLE", 0 }, 36 { "FRAME", "SRC", "NAME", "MARGINWIDTH", "MARGINHEIGHT", "SCROLLING", "FRAMESPACING", "onLoad", "STYLE", 0 }, 37 { "FRAMESET", "ROWS", "COLS", "onLoad", "STYLE", 0 }, 38 { "H1", "SRC", "DINGBAT", "onLoad", "STYLE", 0 }, 39 { "HEAD", "onLoad", "STYLE", 0 }, 40 { "HR", "SRC", "SIZE", "WIDTH", "ALIGN", "COLOR", "onLoad", "STYLE", 0 }, 41 { "HTML", "onLoad", "STYLE", 0 }, 42 { "IFRAME", "ALIGN", "FRAMEBORDER", "HEIGHT", "MARGINHEIGHT", "MARGINWIDTH", "NAME", "SCROLLING", "SRC", "ADDRESS", "WIDTH", "onLoad", "STYLE", 0 }, 43 { "IMG", "ALIGN", "ALT", "SRC", "BORDER", "DYNSRC", "HEIGHT", "HSPACE", "ISMAP", "LOOP", "LOWSRC", "START", "UNITS", "USEMAP", "WIDTH", "VSPACE", "onLoad", "STYLE", 0 }, 44 { "INPUT", "TYPE", "NAME", "VALUE", "onLoad", "STYLE", 0 }, 45 { "ISINDEX", "HREF", "PROMPT", "onLoad", "STYLE", 0 }, 46 { "LI", "SRC", "DINGBAT", "SKIP", "TYPE", "VALUE", "onLoad", "STYLE", 0 }, 47 { "LINK", "REL", "REV", "HREF", "TITLE", "onLoad", "STYLE", 0 }, 48 { "MAP", "NAME", "onLoad", "STYLE", 0 }, 49 { "MARQUEE", "ALIGN", "BEHAVIOR", "BGCOLOR", "DIRECTION", "HEIGHT", "HSPACE", "LOOP", "SCROLLAMOUNT", "SCROLLDELAY", "WIDTH", "VSPACE", "onLoad", "STYLE", 0 }, 50 { "MENU", "onLoad", "STYLE", 0 }, 51 { "META", "HTTP-EQUIV", "CONTENT", "NAME", "onLoad", "STYLE", 0 }, 52 { "MULTICOL", "COLS", "GUTTER", "WIDTH", "onLoad", "STYLE", 0 }, 53 { "NOFRAMES", "onLoad", "STYLE", 0 }, 54 { "NOTE", "CLASS", "SRC", "onLoad", "STYLE", 0 }, 55 { "OVERLAY", "SRC", "X", "Y", "HEIGHT", "WIDTH", "UNITS", "IMAGEMAP", "onLoad", "STYLE", 0 }, 56 { "PARAM", "NAME", "VALUE", "onLoad", "STYLE", 0 }, 57 { "RANGE", "FROM", "UNTIL", "onLoad", "STYLE", 0 }, 58 { "SCRIPT", "LANGUAGE", "onLoad", "STYLE", 0 }, 59 { "SELECT", "NAME", "SIZE", "MULTIPLE", "WIDTH", "HEIGHT", "UNITS", "onLoad", "STYLE", 0 }, 60 { "OPTION", "VALUE", "SHAPE", "onLoad", "STYLE", 0 }, 61 { "SPACER", "TYPE", "SIZE", "WIDTH", "HEIGHT", "ALIGN", "onLoad", "STYLE", 0 }, 62 { "SPOT", "ID", "onLoad", "STYLE", 0 }, 63 { "TAB", "INDENT", "TO", "ALIGN", "DP", "onLoad", "STYLE", 0 }, 64 { "TABLE", "ALIGN", "WIDTH", "BORDER", "CELLPADDING", "CELLSPACING", "BGCOLOR", "VALIGN", "COLSPEC", "UNITS", "DP", "onLoad", "STYLE", 0 }, 65 { "TBODY", "CLASS", "ID", "onLoad", "STYLE", 0 }, 66 { "TD", "COLSPAN", "ROWSPAN", "ALIGN", "VALIGN", "BGCOLOR", "onLoad", "STYLE", 0 }, 67 { "TEXTAREA", "NAME", "COLS", "ROWS", "onLoad", "STYLE", 0 }, 68 { "TEXTFLOW", "CLASS", "ID", "onLoad", "STYLE", 0 }, 69 { "TFOOT", "COLSPAN", "ROWSPAN", "ALIGN", "VALIGN", "BGCOLOR", "onLoad", "STYLE", 0 }, 70 { "TH", "ALIGN", "CLASS", "ID", "onLoad", "STYLE", 0 }, 71 { "TITLE", "onLoad", "STYLE", 0 }, 72 { "TR", "ALIGN", "VALIGN", "BGCOLOR", "CLASS", "onLoad", "STYLE", 0 }, 73 { "UL", "SRC", "DINGBAT", "WRAP", "TYPE", "PLAIN", "onLoad", "STYLE", 0 }, 74 { 0 } 75 }; 76 77