version 1.172, 2014/09/27 11:17:19 |
version 1.177, 2014/10/26 17:12:03 |
|
|
/* $Id$ */ |
/* $Id$ */ |
/* |
/* |
* Copyright (c) 2008, 2009, 2010, 2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2008-2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2011, 2012, 2013, 2014 Ingo Schwarze <schwarze@openbsd.org> |
* Copyright (c) 2011, 2012, 2013, 2014 Ingo Schwarze <schwarze@openbsd.org> |
* |
* |
* Permission to use, copy, modify, and distribute this software for any |
* Permission to use, copy, modify, and distribute this software for any |
Line 74 static const struct htmldata htmltags[TAG_MAX] = { |
|
Line 74 static const struct htmldata htmltags[TAG_MAX] = { |
|
{"code", 0 }, /* TAG_CODE */ |
{"code", 0 }, /* TAG_CODE */ |
{"small", 0 }, /* TAG_SMALL */ |
{"small", 0 }, /* TAG_SMALL */ |
{"style", HTML_CLRLINE}, /* TAG_STYLE */ |
{"style", HTML_CLRLINE}, /* TAG_STYLE */ |
|
{"math", HTML_CLRLINE}, /* TAG_MATH */ |
|
{"mrow", 0}, /* TAG_MROW */ |
|
{"mi", 0}, /* TAG_MI */ |
|
{"mo", 0}, /* TAG_MO */ |
|
{"msup", 0}, /* TAG_MSUP */ |
|
{"msub", 0}, /* TAG_MSUB */ |
|
{"msubsup", 0}, /* TAG_MSUBSUP */ |
|
{"mfrac", 0}, /* TAG_MFRAC */ |
|
{"msqrt", 0}, /* TAG_MSQRT */ |
|
{"mfenced", 0}, /* TAG_MFENCED */ |
|
{"mtable", 0}, /* TAG_MTABLE */ |
|
{"mtr", 0}, /* TAG_MTR */ |
|
{"mtd", 0}, /* TAG_MTD */ |
|
{"munderover", 0}, /* TAG_MUNDEROVER */ |
|
{"munder", 0}, /* TAG_MUNDER*/ |
|
{"mover", 0}, /* TAG_MOVER*/ |
}; |
}; |
|
|
static const char *const htmlattrs[ATTR_MAX] = { |
static const char *const htmlattrs[ATTR_MAX] = { |
Line 87 static const char *const htmlattrs[ATTR_MAX] = { |
|
Line 103 static const char *const htmlattrs[ATTR_MAX] = { |
|
"id", /* ATTR_ID */ |
"id", /* ATTR_ID */ |
"colspan", /* ATTR_COLSPAN */ |
"colspan", /* ATTR_COLSPAN */ |
"charset", /* ATTR_CHARSET */ |
"charset", /* ATTR_CHARSET */ |
|
"open", /* ATTR_OPEN */ |
|
"close", /* ATTR_CLOSE */ |
|
"mathvariant", /* ATTR_MATHVARIANT */ |
}; |
}; |
|
|
static const char *const roffscales[SCALE_MAX] = { |
static const char *const roffscales[SCALE_MAX] = { |
Line 418 print_encode(struct html *h, const char *p, int norecu |
|
Line 437 print_encode(struct html *h, const char *p, int norecu |
|
case ESCAPE_UNICODE: |
case ESCAPE_UNICODE: |
/* Skip past "u" header. */ |
/* Skip past "u" header. */ |
c = mchars_num2uc(seq + 1, len - 1); |
c = mchars_num2uc(seq + 1, len - 1); |
if ('\0' != c) |
|
printf("&#x%x;", c); |
/* |
|
* XXX Security warning: |
|
* For now, forbid Unicode obfuscation of ASCII |
|
* characters. An audit of the callers is |
|
* required before this can be removed. |
|
*/ |
|
|
|
if (c < 0x80) |
|
c = 0xFFFD; |
|
|
|
printf("&#x%x;", c); |
break; |
break; |
case ESCAPE_NUMBERED: |
case ESCAPE_NUMBERED: |
c = mchars_num2char(seq, len); |
c = mchars_num2char(seq, len); |