1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-01-26 10:03:34 +03:00

Large sync between my W3C base and Gnome's one:

- parser.[ch]: added xmlGetFeaturesList() xmlGetFeature() and xmlAddFeature()
- tree.[ch]: added xmlAddChildList()
- xmllint.c: MAP_FAILED macro test
- parser.h: added xmlParseCtxtExternalEntity()
- valid.c: applied bug fixes removed warning
- tree.c: added CDATA block to elements content
- testSAX.c: cleanup of output
- testHTML.c: added SAX testing
- encoding.c: better error recovery
- SAX.c, parser.c: fixed one of the external entity processing of the OASis testsuite
- Makefile.am: added HTML SAX regression tests
- configure.in: bumped to 2.2.2
- test/HTML/ result/HTML: added a few of HTML tests, and added the SAX results

Daniel
This commit is contained in:
Daniel Veillard 2000-08-12 21:12:04 +00:00
parent 7ebb1eebda
commit 87b9539573
42 changed files with 6571 additions and 124 deletions

View File

@ -1,3 +1,22 @@
Sat Aug 12 16:42:37 EDT 2000 Daniel Veillard <Daniel.Veillard@w3.org>
* parser.[ch]: added xmlGetFeaturesList() xmlGetFeature()
and xmlAddFeature()
* tree.[ch]: added xmlAddChildList()
* xmllint.c: MAP_FAILED macro test
* parser.h: added xmlParseCtxtExternalEntity()
* valid.c: applied bug fixes removed warning
* tree.c: added CDATA block to elements content
* testSAX.c: cleanup of output
* testHTML.c: added SAX testing
* encoding.c: better error recovery
* SAX.c, parser.c: fixed one of the external entity processing
of the OASis testsuite
* Makefile.am: added HTML SAX regression tests
* configure.in: bumped to 2.2.2
* test/HTML/ result/HTML: added a few of HTML tests, and added the
SAX results
Fri Aug 4 11:21:50 PDT 2000 Daniel Veillard <Daniel.Veillard@w3.org>
* configure.in: patch for HP compiler

View File

@ -2168,53 +2168,76 @@ htmlParseExternalID(htmlParserCtxtPtr ctxt, xmlChar **publicID, int strict) {
void
htmlParseComment(htmlParserCtxtPtr ctxt) {
xmlChar *buf = NULL;
int len = 0;
int len;
int size = HTML_PARSER_BUFFER_SIZE;
register xmlChar s, r, q;
int q, ql;
int r, rl;
int cur, l;
xmlParserInputState state;
/*
* Check that there is a comment right here.
*/
if ((CUR != '<') || (NXT(1) != '!') ||
if ((RAW != '<') || (NXT(1) != '!') ||
(NXT(2) != '-') || (NXT(3) != '-')) return;
state = ctxt->instate;
ctxt->instate = XML_PARSER_COMMENT;
SHRINK;
SKIP(4);
buf = (xmlChar *) xmlMalloc(size * sizeof(xmlChar));
if (buf == NULL) {
fprintf(stderr, "malloc of %d byte failed\n", size);
ctxt->instate = state;
return;
}
q = r = '-'; /* 0 or '-' to cover our ass against <!--> and <!---> ? !!! */
SKIP(4);
s = CUR;
while (IS_CHAR(s) &&
((s != '>') || (r != '-') || (q != '-'))) {
if (len + 1 >= size) {
q = CUR_CHAR(ql);
NEXTL(ql);
r = CUR_CHAR(rl);
NEXTL(rl);
cur = CUR_CHAR(l);
len = 0;
while (IS_CHAR(cur) &&
((cur != '>') ||
(r != '-') || (q != '-'))) {
if (len + 5 >= size) {
size *= 2;
buf = (xmlChar *) xmlRealloc(buf, size * sizeof(xmlChar));
if (buf == NULL) {
fprintf(stderr, "realloc of %d byte failed\n", size);
ctxt->instate = state;
return;
}
}
buf[len++] = s;
NEXT;
COPY_BUF(ql,buf,len,q);
q = r;
r = s;
s = CUR;
}
buf[len - 2] = 0;
if (!IS_CHAR(s)) {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData, "Comment not terminated \n<!--%.50s\n", buf);
ctxt->wellFormed = 0;
} else {
NEXT;
if ((ctxt->sax != NULL) && (ctxt->sax->comment != NULL)) {
ctxt->sax->comment(ctxt->userData, buf);
ql = rl;
r = cur;
rl = l;
NEXTL(l);
cur = CUR_CHAR(l);
if (cur == 0) {
SHRINK;
GROW;
cur = CUR_CHAR(l);
}
}
xmlFree(buf);
buf[len] = 0;
if (!IS_CHAR(cur)) {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData,
"Comment not terminated \n<!--%.50s\n", buf);
ctxt->errNo = XML_ERR_COMMENT_NOT_FINISHED;
ctxt->wellFormed = 0;
xmlFree(buf);
} else {
NEXT;
if ((ctxt->sax != NULL) && (ctxt->sax->comment != NULL) &&
(!ctxt->disableSAX))
ctxt->sax->comment(ctxt->userData, buf);
xmlFree(buf);
}
ctxt->instate = state;
}
/**
@ -2472,10 +2495,36 @@ htmlCheckEncoding(htmlParserCtxtPtr ctxt, const xmlChar *attvalue) {
handler = xmlFindCharEncodingHandler((const char *) encoding);
if (handler != NULL) {
xmlSwitchToEncoding(ctxt, handler);
ctxt->charset = XML_CHAR_ENCODING_UTF8;
} else {
ctxt->errNo = XML_ERR_UNSUPPORTED_ENCODING;
}
}
if ((ctxt->input->buf != NULL) &&
(ctxt->input->buf->encoder != NULL) &&
(ctxt->input->buf->raw != NULL) &&
(ctxt->input->buf->buffer != NULL)) {
int nbchars;
int processed;
/*
* convert as much as possible to the parser reading buffer.
*/
processed = ctxt->input->cur - ctxt->input->base;
xmlBufferShrink(ctxt->input->buf->buffer, processed);
nbchars = xmlCharEncInFunc(ctxt->input->buf->encoder,
ctxt->input->buf->buffer,
ctxt->input->buf->raw);
if (nbchars < 0) {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData,
"htmlCheckEncoding: encoder error\n");
ctxt->errNo = XML_ERR_INVALID_ENCODING;
}
ctxt->input->base =
ctxt->input->cur = ctxt->input->buf->buffer->content;
}
}
}
@ -2956,7 +3005,6 @@ htmlParseContent(htmlParserCtxtPtr ctxt) {
void
htmlParseElement(htmlParserCtxtPtr ctxt) {
const xmlChar *openTag = CUR_PTR;
xmlChar *name;
xmlChar *currentNode = NULL;
htmlElemDescPtr info;
@ -3030,8 +3078,9 @@ htmlParseElement(htmlParserCtxtPtr ctxt) {
NEXT;
} else {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData, "Couldn't find end of Start Tag\n%.30s\n",
openTag);
ctxt->sax->error(ctxt->userData,
"Couldn't find end of Start Tag %s\n",
name);
ctxt->wellFormed = 0;
/*
@ -3182,6 +3231,15 @@ htmlParseDocument(htmlParserCtxtPtr ctxt) {
}
SKIP_BLANKS;
/*
* Parse possible comments before any content
*/
while ((CUR == '<') && (NXT(1) == '!') &&
(NXT(2) == '-') && (NXT(3) == '-')) {
htmlParseComment(ctxt);
SKIP_BLANKS;
}
/*
* Time to start parsing the tree itself
*/
@ -3468,8 +3526,14 @@ htmlParseTryOrFinish(htmlParserCtxtPtr ctxt, int terminate) {
avail = in->buf->buffer->use - (in->cur - in->base);
if ((avail == 0) && (terminate)) {
htmlAutoClose(ctxt, NULL);
if (ctxt->nameNr == 0)
if ((ctxt->nameNr == 0) && (ctxt->instate != XML_PARSER_EOF)) {
/*
* SAX: end of the document processing.
*/
ctxt->instate = XML_PARSER_EOF;
if ((ctxt->sax) && (ctxt->sax->endDocument != NULL))
ctxt->sax->endDocument(ctxt->userData);
}
}
if (avail < 1)
goto done;
@ -3600,14 +3664,19 @@ htmlParseTryOrFinish(htmlParserCtxtPtr ctxt, int terminate) {
}
break;
case XML_PARSER_EPILOG:
SKIP_BLANKS;
if (in->buf == NULL)
avail = in->length - (in->cur - in->base);
else
avail = in->buf->buffer->use - (in->cur - in->base);
if (avail < 2)
if (avail < 1)
goto done;
cur = in->cur[0];
if (IS_BLANK(cur)) {
htmlParseCharData(ctxt, 0);
goto done;
}
if (avail < 2)
goto done;
next = in->cur[1];
if ((cur == '<') && (next == '!') &&
(in->cur[2] == '-') && (in->cur[3] == '-')) {
@ -3769,7 +3838,8 @@ htmlParseTryOrFinish(htmlParserCtxtPtr ctxt, int terminate) {
#endif
break;
}
case XML_PARSER_CONTENT:
case XML_PARSER_CONTENT: {
long cons;
/*
* Handle preparsed entities and charRef
*/
@ -3806,6 +3876,7 @@ htmlParseTryOrFinish(htmlParserCtxtPtr ctxt, int terminate) {
goto done;
cur = in->cur[0];
next = in->cur[1];
cons = ctxt->nbChars;
if ((cur == '<') && (next == '!') &&
(in->cur[2] == '-') && (in->cur[3] == '-')) {
if ((!terminate) &&
@ -3860,7 +3931,19 @@ htmlParseTryOrFinish(htmlParserCtxtPtr ctxt, int terminate) {
#endif
htmlParseCharData(ctxt, 0);
}
if (cons == ctxt->nbChars) {
if (ctxt->node != NULL) {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData,
"detected an error in element content\n");
ctxt->wellFormed = 0;
NEXT;
}
break;
}
break;
}
case XML_PARSER_END_TAG:
if (avail < 2)
goto done;
@ -3947,8 +4030,14 @@ htmlParseTryOrFinish(htmlParserCtxtPtr ctxt, int terminate) {
done:
if ((avail == 0) && (terminate)) {
htmlAutoClose(ctxt, NULL);
if (ctxt->nameNr == 0)
if ((ctxt->nameNr == 0) && (ctxt->instate != XML_PARSER_EOF)) {
/*
* SAX: end of the document processing.
*/
ctxt->instate = XML_PARSER_EOF;
if ((ctxt->sax) && (ctxt->sax->endDocument != NULL))
ctxt->sax->endDocument(ctxt->userData);
}
}
#ifdef DEBUG_PUSH
fprintf(stderr, "HPP: done %d\n", ret);
@ -4231,10 +4320,12 @@ htmlSAXParseFile(const char *filename, const char *encoding, htmlSAXHandlerPtr s
void *userData) {
htmlDocPtr ret;
htmlParserCtxtPtr ctxt;
htmlSAXHandlerPtr oldsax = NULL;
ctxt = htmlCreateFileParserCtxt(filename, encoding);
if (ctxt == NULL) return(NULL);
if (sax != NULL) {
oldsax = ctxt->sax;
ctxt->sax = sax;
ctxt->userData = userData;
}
@ -4243,7 +4334,7 @@ htmlSAXParseFile(const char *filename, const char *encoding, htmlSAXHandlerPtr s
ret = ctxt->myDoc;
if (sax != NULL) {
ctxt->sax = NULL;
ctxt->sax = oldsax;
ctxt->userData = NULL;
}
htmlFreeParserCtxt(ctxt);

View File

@ -99,6 +99,7 @@ testall : tests SVGtests SAXtests XPathtests XMLenttests
tests: XMLtests HTMLtests Validtests
HTMLtests : testHTML
@(rm -f .memdump ; touch .memdump)
@echo "##"
@echo "## HTML regression tests"
@echo "##"
@ -107,16 +108,71 @@ HTMLtests : testHTML
if [ ! -d $$i ] ; then \
if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \
echo New test file $$name ; \
$(top_builddir)/testHTML $$i > $(srcdir)/result/HTML/$$name 2>$(srcdir)/result/HTML/$$name.err ; \
testHTML $$i > $(srcdir)/result/HTML/$$name 2>$(srcdir)/result/HTML/$$name.err ; \
else \
echo Testing $$name ; \
$(top_builddir)/testHTML $$i > result.$$name 2> error.$$name ; \
testHTML $$i > result.$$name 2> error.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/HTML/$$name result.$$name ; \
diff $(srcdir)/result/HTML/$$name.err error.$$name ; \
$(top_builddir)/testHTML result.$$name > result2.$$name 2>error.$$name ; \
diff -b $(srcdir)/result/HTML/$$name.err error.$$name ; \
testHTML result.$$name > result2.$$name 2>error.$$name ; \
diff result.$$name result2.$$name ; \
rm result.$$name result2.$$name error.$$name ; \
fi ; fi ; done)
@echo "##"
@echo "## Push HTML regression tests"
@echo "##"
@(for i in $(srcdir)/test/HTML/* ; do \
name=`basename $$i`; \
if [ ! -d $$i ] ; then \
if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \
echo New test file $$name ; \
testHTML $$i > $(srcdir)/result/HTML/$$name 2>$(srcdir)/result/HTML/$$name.err ; \
else \
echo Testing $$name ; \
testHTML --push $$i > result.$$name 2> error.$$name ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/HTML/$$name result.$$name ; \
cut -b 1-15 $(srcdir)/result/HTML/$$name.err > errorcut.$$name; \
cut -b 1-15 error.$$name > errorcut2.$$name; \
diff -b errorcut.$$name errorcut2.$$name ; \
testHTML --push result.$$name > result2.$$name 2>error.$$name ; \
diff result.$$name result2.$$name ; \
rm result.$$name result2.$$name error.$$name errorcut.$$name errorcut2.$$name ; \
fi ; fi ; done)
@echo "##"
@echo "## HTML SAX regression tests"
@echo "##"
@(for i in $(srcdir)/test/HTML/* ; do \
name=`basename $$i`; \
if [ ! -d $$i ] ; then \
if [ ! -f $(srcdir)/result/HTML/$$name.sax ] ; then \
echo New test file $$name ; \
testHTML --sax $$i > $(srcdir)/result/HTML/$$name.sax ; \
else \
echo Testing $$name ; \
testHTML --sax $$i > result.$$name.sax ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/HTML/$$name.sax result.$$name.sax ; \
rm result.$$name.sax ; \
fi ; fi ; done)
@echo "##"
@echo "## Push HTML SAX regression tests"
@echo "##"
@(for i in $(srcdir)/test/HTML/* ; do \
name=`basename $$i`; \
if [ ! -d $$i ] ; then \
if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \
echo New test file $$name ; \
testHTML --sax $$i > $(srcdir)/result/HTML/$$name.sax ; \
else \
echo Testing $$name ; \
testHTML --push --sax $$i > result.$$name.sax ; \
grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\
diff $(srcdir)/result/HTML/$$name.sax result.$$name.sax ; \
rm result.$$name.sax ; \
fi ; fi ; done)
XMLtests : xmllint
@echo "##"

21
SAX.c
View File

@ -338,6 +338,19 @@ getEntity(void *ctx, const xmlChar *name)
#endif
ret = xmlGetDocEntity(ctxt->myDoc, name);
if ((ret != NULL) && (ctxt->validate) && (ret->children == NULL) &&
(ret->etype == XML_EXTERNAL_GENERAL_PARSED_ENTITY)) {
/*
* for validation purposes we really need to fetch and
* parse the external entity
*/
int parse;
xmlNodePtr children;
parse = xmlParseCtxtExternalEntity(ctxt,
ret->SystemID, ret->ExternalID, &children);
xmlAddChildList((xmlNodePtr) ret, children);
}
return(ret);
}
@ -591,7 +604,11 @@ startDocument(void *ctx)
#endif
if (ctxt->html) {
if (ctxt->myDoc == NULL)
#ifdef LIBXML_HTML_ENABLED
ctxt->myDoc = htmlNewDoc(NULL, NULL);
#else
fprintf(stderr, "libxml2 built without HTML support\n");
#endif
} else {
doc = ctxt->myDoc = xmlNewDoc(ctxt->version);
if (doc != NULL) {
@ -602,6 +619,10 @@ startDocument(void *ctx)
doc->standalone = ctxt->standalone;
}
}
if ((ctxt->myDoc != NULL) && (ctxt->myDoc->URL == NULL) &&
(ctxt->input != NULL) && (ctxt->input->filename != NULL)) {
ctxt->myDoc->URL = xmlStrdup((xmlChar *) ctxt->input->filename);
}
}
/**

View File

@ -5,7 +5,7 @@ AM_CONFIG_HEADER(config.h)
LIBXML_MAJOR_VERSION=2
LIBXML_MINOR_VERSION=2
LIBXML_MICRO_VERSION=1
LIBXML_MICRO_VERSION=2
LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION
LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION

View File

@ -420,8 +420,13 @@ UTF8Toisolat1(unsigned char* out, int *outlen,
}
for ( ; trailing; trailing--) {
if ((in >= inend) || (((d= *in++) & 0xC0) != 0x80))
if (in >= inend)
break;
if (((d= *in++) & 0xC0) != 0x80) {
*outlen = out - outstart;
*inlen = processed - instart;
return(-2);
}
c <<= 6;
c |= d & 0x3F;
}
@ -1033,6 +1038,8 @@ xmlGetCharEncodingName(xmlCharEncoding enc) {
return("Shift-JIS");
case XML_CHAR_ENCODING_EUC_JP:
return("EUC-JP");
case XML_CHAR_ENCODING_ASCII:
return(NULL);
}
return(NULL);
}
@ -1104,6 +1111,11 @@ xmlNewCharEncodingHandler(const char *name,
handler->output = output;
handler->name = up;
#ifdef LIBXML_ICONV_ENABLED
handler->iconv_in = NULL;
handler->iconv_out = NULL;
#endif /* LIBXML_ICONV_ENABLED */
/*
* registers and returns the handler.
*/
@ -1584,8 +1596,10 @@ xmlCharEncInFunc(xmlCharEncodingHandler *handler, xmlBufferPtr out,
if (out == NULL) return(-1);
if (in == NULL) return(-1);
written = out->size - out->use;
toconv = in->use;
if (toconv == 0)
return(0);
written = out->size - out->use;
if (toconv * 2 >= written) {
xmlBufferGrow(out, toconv * 2);
written = out->size - out->use - 1;
@ -1697,6 +1711,8 @@ retry:
* Convertion itself.
*/
toconv = in->use;
if (toconv == 0)
return(0);
if (toconv * 2 >= written) {
xmlBufferGrow(out, toconv * 2);
written = out->size - out->use - 1;
@ -1772,6 +1788,7 @@ retry:
fprintf(stderr, "Bytes: 0x%02X 0x%02X 0x%02X 0x%02X\n",
in->content[0], in->content[1],
in->content[2], in->content[3]);
in->content[0] = ' ';
}
break;
}

View File

@ -402,6 +402,10 @@ int xmlParseExternalEntity (xmlDocPtr doc,
const xmlChar *URL,
const xmlChar *ID,
xmlNodePtr *list);
int xmlParseCtxtExternalEntity(xmlParserCtxtPtr ctx,
const xmlChar *URL,
const xmlChar *ID,
xmlNodePtr *list);
/**
* SAX initialization routines
@ -420,6 +424,19 @@ void xmlSetupParserForBuffer (xmlParserCtxtPtr ctxt,
const char* filename);
xmlParserCtxtPtr xmlCreateDocParserCtxt (xmlChar *cur);
/**
* Reading/setting optional parsing features.
*/
int xmlGetFeaturesList (int *len,
const char **result);
int xmlGetFeature (xmlParserCtxtPtr ctxt,
const char *name,
void *result);
int xmlSetFeature (xmlParserCtxtPtr ctxt,
const char *name,
void *value);
/**
* Interfaces for the Push mode
*/

View File

@ -508,6 +508,8 @@ void xmlNodeSetName (xmlNodePtr cur,
const xmlChar *name);
xmlNodePtr xmlAddChild (xmlNodePtr parent,
xmlNodePtr cur);
xmlNodePtr xmlAddChildList (xmlNodePtr parent,
xmlNodePtr cur);
xmlNodePtr xmlReplaceNode (xmlNodePtr old,
xmlNodePtr cur);
xmlNodePtr xmlAddSibling (xmlNodePtr cur,

548
parser.c
View File

@ -62,10 +62,11 @@ void xmlParserHandleReference(xmlParserCtxtPtr ctxt);
void xmlParserHandlePEReference(xmlParserCtxtPtr ctxt);
xmlEntityPtr xmlParseStringPEReference(xmlParserCtxtPtr ctxt,
const xmlChar **str);
/*
* Version handling
*/
/************************************************************************
* *
* Version and Features handling *
* *
************************************************************************/
const char *xmlParserVersion = LIBXML_VERSION_STRING;
/*
@ -93,6 +94,293 @@ xmlCheckVersion(int version) {
}
const char *xmlFeaturesList[] = {
"validate",
"keep blanks",
"disable SAX",
"fetch external entities",
"substitute entities",
"gather line info",
"user data",
"is html",
"is standalone",
"stop parser",
"document",
"is well formed",
"is valid",
"SAX block",
"SAX function internalSubset",
"SAX function isStandalone",
"SAX function hasInternalSubset",
"SAX function hasExternalSubset",
"SAX function resolveEntity",
"SAX function getEntity",
"SAX function entityDecl",
"SAX function notationDecl",
"SAX function attributeDecl",
"SAX function elementDecl",
"SAX function unparsedEntityDecl",
"SAX function setDocumentLocator",
"SAX function startDocument",
"SAX function endDocument",
"SAX function startElement",
"SAX function endElement",
"SAX function reference",
"SAX function characters",
"SAX function ignorableWhitespace",
"SAX function processingInstruction",
"SAX function comment",
"SAX function warning",
"SAX function error",
"SAX function fatalError",
"SAX function getParameterEntity",
"SAX function cdataBlock",
"SAX function externalSubset",
};
/*
* xmlGetFeaturesList:
* @len: the length of the features name array (input/output)
* @result: an array of string to be filled with the features name.
*
* Copy at most *@len feature names into the @result array
*
* Returns -1 in case or error, or the total number of features,
* len is updated with the number of strings copied,
* strings must not be deallocated
*/
int
xmlGetFeaturesList(int *len, const char **result) {
int ret, i;
ret = sizeof(xmlFeaturesList)/sizeof(xmlFeaturesList[0]);
if ((len == NULL) || (result == NULL))
return(ret);
if ((*len < 0) || (*len >= 1000))
return(-1);
if (*len > ret)
*len = ret;
for (i = 0;i < *len;i++)
result[i] = xmlFeaturesList[i];
return(ret);
}
/*
* xmlGetFeature:
* @ctxt: an XML/HTML parser context
* @name: the feature name
* @result: location to store the result
*
* Read the current value of one feature of this parser instance
*
* Returns -1 in case or error, 0 otherwise
*/
int
xmlGetFeature(xmlParserCtxtPtr ctxt, const char *name, void *result) {
if ((ctxt == NULL) || (name == NULL) || (result == NULL))
return(-1);
if (!strcmp(name, "validate")) {
*((int *) result) = ctxt->validate;
} else if (!strcmp(name, "keep blanks")) {
*((int *) result) = ctxt->keepBlanks;
} else if (!strcmp(name, "disable SAX")) {
*((int *) result) = ctxt->disableSAX;
} else if (!strcmp(name, "fetch external entities")) {
*((int *) result) = ctxt->validate;
} else if (!strcmp(name, "substitute entities")) {
*((int *) result) = ctxt->replaceEntities;
} else if (!strcmp(name, "gather line info")) {
*((int *) result) = ctxt->record_info;
} else if (!strcmp(name, "user data")) {
*((void **)result) = ctxt->userData;
} else if (!strcmp(name, "is html")) {
*((int *) result) = ctxt->html;
} else if (!strcmp(name, "is standalone")) {
*((int *) result) = ctxt->standalone;
} else if (!strcmp(name, "document")) {
*((xmlDocPtr *) result) = ctxt->myDoc;
} else if (!strcmp(name, "is well formed")) {
*((int *) result) = ctxt->wellFormed;
} else if (!strcmp(name, "is valid")) {
*((int *) result) = ctxt->valid;
} else if (!strcmp(name, "SAX block")) {
*((xmlSAXHandlerPtr *) result) = ctxt->sax;
} else if (!strcmp(name, "SAX function internalSubset")) {
*((internalSubsetSAXFunc *) result) = ctxt->sax->internalSubset;
} else if (!strcmp(name, "SAX function isStandalone")) {
*((isStandaloneSAXFunc *) result) = ctxt->sax->isStandalone;
} else if (!strcmp(name, "SAX function hasInternalSubset")) {
*((hasInternalSubsetSAXFunc *) result) = ctxt->sax->hasInternalSubset;
} else if (!strcmp(name, "SAX function hasExternalSubset")) {
*((hasExternalSubsetSAXFunc *) result) = ctxt->sax->hasExternalSubset;
} else if (!strcmp(name, "SAX function resolveEntity")) {
*((resolveEntitySAXFunc *) result) = ctxt->sax->resolveEntity;
} else if (!strcmp(name, "SAX function getEntity")) {
*((getEntitySAXFunc *) result) = ctxt->sax->getEntity;
} else if (!strcmp(name, "SAX function entityDecl")) {
*((entityDeclSAXFunc *) result) = ctxt->sax->entityDecl;
} else if (!strcmp(name, "SAX function notationDecl")) {
*((notationDeclSAXFunc *) result) = ctxt->sax->notationDecl;
} else if (!strcmp(name, "SAX function attributeDecl")) {
*((attributeDeclSAXFunc *) result) = ctxt->sax->attributeDecl;
} else if (!strcmp(name, "SAX function elementDecl")) {
*((elementDeclSAXFunc *) result) = ctxt->sax->elementDecl;
} else if (!strcmp(name, "SAX function unparsedEntityDecl")) {
*((unparsedEntityDeclSAXFunc *) result) = ctxt->sax->unparsedEntityDecl;
} else if (!strcmp(name, "SAX function setDocumentLocator")) {
*((setDocumentLocatorSAXFunc *) result) = ctxt->sax->setDocumentLocator;
} else if (!strcmp(name, "SAX function startDocument")) {
*((startDocumentSAXFunc *) result) = ctxt->sax->startDocument;
} else if (!strcmp(name, "SAX function endDocument")) {
*((endDocumentSAXFunc *) result) = ctxt->sax->endDocument;
} else if (!strcmp(name, "SAX function startElement")) {
*((startElementSAXFunc *) result) = ctxt->sax->startElement;
} else if (!strcmp(name, "SAX function endElement")) {
*((endElementSAXFunc *) result) = ctxt->sax->endElement;
} else if (!strcmp(name, "SAX function reference")) {
*((referenceSAXFunc *) result) = ctxt->sax->reference;
} else if (!strcmp(name, "SAX function characters")) {
*((charactersSAXFunc *) result) = ctxt->sax->characters;
} else if (!strcmp(name, "SAX function ignorableWhitespace")) {
*((ignorableWhitespaceSAXFunc *) result) = ctxt->sax->ignorableWhitespace;
} else if (!strcmp(name, "SAX function processingInstruction")) {
*((processingInstructionSAXFunc *) result) = ctxt->sax->processingInstruction;
} else if (!strcmp(name, "SAX function comment")) {
*((commentSAXFunc *) result) = ctxt->sax->comment;
} else if (!strcmp(name, "SAX function warning")) {
*((warningSAXFunc *) result) = ctxt->sax->warning;
} else if (!strcmp(name, "SAX function error")) {
*((errorSAXFunc *) result) = ctxt->sax->error;
} else if (!strcmp(name, "SAX function fatalError")) {
*((fatalErrorSAXFunc *) result) = ctxt->sax->fatalError;
} else if (!strcmp(name, "SAX function getParameterEntity")) {
*((getParameterEntitySAXFunc *) result) = ctxt->sax->getParameterEntity;
} else if (!strcmp(name, "SAX function cdataBlock")) {
*((cdataBlockSAXFunc *) result) = ctxt->sax->cdataBlock;
} else if (!strcmp(name, "SAX function externalSubset")) {
*((externalSubsetSAXFunc *) result) = ctxt->sax->externalSubset;
} else {
return(-1);
}
return(0);
}
/*
* xmlSetFeature:
* @ctxt: an XML/HTML parser context
* @name: the feature name
* @value: pointer to the location of the new value
*
* Change the current value of one feature of this parser instance
*
* Returns -1 in case or error, 0 otherwise
*/
int
xmlSetFeature(xmlParserCtxtPtr ctxt, const char *name, void *value) {
if ((ctxt == NULL) || (name == NULL) || (value == NULL))
return(-1);
if (!strcmp(name, "validate")) {
ctxt->validate = *((int *) value);
} else if (!strcmp(name, "keep blanks")) {
ctxt->keepBlanks = *((int *) value);
} else if (!strcmp(name, "disable SAX")) {
ctxt->disableSAX = *((int *) value);
} else if (!strcmp(name, "fetch external entities")) {
int newvalid = *((int *) value);
if ((!ctxt->validate) && (newvalid != 0)) {
if (ctxt->vctxt.warning == NULL)
ctxt->vctxt.warning = xmlParserValidityWarning;
if (ctxt->vctxt.error == NULL)
ctxt->vctxt.error = xmlParserValidityError;
/* Allocate the Node stack */
ctxt->vctxt.nodeTab = (xmlNodePtr *)
xmlMalloc(4 * sizeof(xmlNodePtr));
ctxt->vctxt.nodeNr = 0;
ctxt->vctxt.nodeMax = 4;
ctxt->vctxt.node = NULL;
}
ctxt->validate = newvalid;
} else if (!strcmp(name, "substitute entities")) {
ctxt->replaceEntities = *((int *) value);
} else if (!strcmp(name, "gather line info")) {
ctxt->record_info = *((int *) value);
} else if (!strcmp(name, "user data")) {
ctxt->userData = *((void **)value);
} else if (!strcmp(name, "is html")) {
ctxt->html = *((int *) value);
} else if (!strcmp(name, "is standalone")) {
ctxt->standalone = *((int *) value);
} else if (!strcmp(name, "document")) {
ctxt->myDoc = *((xmlDocPtr *) value);
} else if (!strcmp(name, "is well formed")) {
ctxt->wellFormed = *((int *) value);
} else if (!strcmp(name, "is valid")) {
ctxt->valid = *((int *) value);
} else if (!strcmp(name, "SAX block")) {
ctxt->sax = *((xmlSAXHandlerPtr *) value);
} else if (!strcmp(name, "SAX function internalSubset")) {
ctxt->sax->internalSubset = *((internalSubsetSAXFunc *) value);
} else if (!strcmp(name, "SAX function isStandalone")) {
ctxt->sax->isStandalone = *((isStandaloneSAXFunc *) value);
} else if (!strcmp(name, "SAX function hasInternalSubset")) {
ctxt->sax->hasInternalSubset = *((hasInternalSubsetSAXFunc *) value);
} else if (!strcmp(name, "SAX function hasExternalSubset")) {
ctxt->sax->hasExternalSubset = *((hasExternalSubsetSAXFunc *) value);
} else if (!strcmp(name, "SAX function resolveEntity")) {
ctxt->sax->resolveEntity = *((resolveEntitySAXFunc *) value);
} else if (!strcmp(name, "SAX function getEntity")) {
ctxt->sax->getEntity = *((getEntitySAXFunc *) value);
} else if (!strcmp(name, "SAX function entityDecl")) {
ctxt->sax->entityDecl = *((entityDeclSAXFunc *) value);
} else if (!strcmp(name, "SAX function notationDecl")) {
ctxt->sax->notationDecl = *((notationDeclSAXFunc *) value);
} else if (!strcmp(name, "SAX function attributeDecl")) {
ctxt->sax->attributeDecl = *((attributeDeclSAXFunc *) value);
} else if (!strcmp(name, "SAX function elementDecl")) {
ctxt->sax->elementDecl = *((elementDeclSAXFunc *) value);
} else if (!strcmp(name, "SAX function unparsedEntityDecl")) {
ctxt->sax->unparsedEntityDecl = *((unparsedEntityDeclSAXFunc *) value);
} else if (!strcmp(name, "SAX function setDocumentLocator")) {
ctxt->sax->setDocumentLocator = *((setDocumentLocatorSAXFunc *) value);
} else if (!strcmp(name, "SAX function startDocument")) {
ctxt->sax->startDocument = *((startDocumentSAXFunc *) value);
} else if (!strcmp(name, "SAX function endDocument")) {
ctxt->sax->endDocument = *((endDocumentSAXFunc *) value);
} else if (!strcmp(name, "SAX function startElement")) {
ctxt->sax->startElement = *((startElementSAXFunc *) value);
} else if (!strcmp(name, "SAX function endElement")) {
ctxt->sax->endElement = *((endElementSAXFunc *) value);
} else if (!strcmp(name, "SAX function reference")) {
ctxt->sax->reference = *((referenceSAXFunc *) value);
} else if (!strcmp(name, "SAX function characters")) {
ctxt->sax->characters = *((charactersSAXFunc *) value);
} else if (!strcmp(name, "SAX function ignorableWhitespace")) {
ctxt->sax->ignorableWhitespace = *((ignorableWhitespaceSAXFunc *) value);
} else if (!strcmp(name, "SAX function processingInstruction")) {
ctxt->sax->processingInstruction = *((processingInstructionSAXFunc *) value);
} else if (!strcmp(name, "SAX function comment")) {
ctxt->sax->comment = *((commentSAXFunc *) value);
} else if (!strcmp(name, "SAX function warning")) {
ctxt->sax->warning = *((warningSAXFunc *) value);
} else if (!strcmp(name, "SAX function error")) {
ctxt->sax->error = *((errorSAXFunc *) value);
} else if (!strcmp(name, "SAX function fatalError")) {
ctxt->sax->fatalError = *((fatalErrorSAXFunc *) value);
} else if (!strcmp(name, "SAX function getParameterEntity")) {
ctxt->sax->getParameterEntity = *((getParameterEntitySAXFunc *) value);
} else if (!strcmp(name, "SAX function cdataBlock")) {
ctxt->sax->cdataBlock = *((cdataBlockSAXFunc *) value);
} else if (!strcmp(name, "SAX function externalSubset")) {
ctxt->sax->externalSubset = *((externalSubsetSAXFunc *) value);
} else {
return(-1);
}
return(0);
}
/************************************************************************
* *
* Input handling functions for progressive parsing *
@ -1958,6 +2246,10 @@ xmlParserHandlePEReference(xmlParserCtxtPtr ctxt) {
* ... The declaration of a parameter entity must precede
* any reference to it...
*/
if ((ctxt->validate) && (ctxt->vctxt.error != NULL)) {
ctxt->vctxt.error(ctxt->vctxt.userData,
"PEReference: %%%s; not found\n", name);
} else
if ((ctxt->sax != NULL) && (ctxt->sax->warning != NULL))
ctxt->sax->warning(ctxt->userData,
"PEReference: %%%s; not found\n", name);
@ -2155,6 +2447,9 @@ xmlStringDecodeEntities(xmlParserCtxtPtr ctxt, const xmlChar *str, int what,
int c,l;
int nbchars = 0;
if (str == NULL)
return(NULL);
if (ctxt->depth > 40) {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData,
@ -2381,6 +2676,7 @@ xmlSwitchEncoding(xmlParserCtxtPtr ctxt, xmlCharEncoding enc)
ctxt->charset = XML_CHAR_ENCODING_UTF8;
return(0);
case XML_CHAR_ENCODING_UTF8:
case XML_CHAR_ENCODING_ASCII:
/* default encoding, no conversion should be needed */
ctxt->charset = XML_CHAR_ENCODING_UTF8;
return(0);
@ -2552,6 +2848,7 @@ xmlSwitchToEncoding(xmlParserCtxtPtr ctxt, xmlCharEncodingHandlerPtr handler)
}
ctxt->input->base =
ctxt->input->cur = ctxt->input->buf->buffer->content;
}
return(0);
} else {
@ -3886,7 +4183,8 @@ xmlParseAttValue(xmlParserCtxtPtr ctxt) {
* This may look absurd but is needed to detect
* entities problems
*/
if (ent->etype != XML_INTERNAL_PREDEFINED_ENTITY) {
if ((ent->etype != XML_INTERNAL_PREDEFINED_ENTITY) &&
(ent->content != NULL)) {
xmlChar *rep;
rep = xmlStringDecodeEntities(ctxt, ent->content,
XML_SUBSTITUTE_REF, 0, 0, 0);
@ -5657,7 +5955,8 @@ xmlParseElementChildrenContentDecl(xmlParserCtxtPtr ctxt) {
ctxt->disableSAX = 1;
if ((op != NULL) && (op != ret))
xmlFreeElementContent(op);
if ((last != NULL) && (last != ret))
if ((last != NULL) && (last != ret) &&
(last != ret->c1) && (last != ret->c2))
xmlFreeElementContent(last);
if (ret != NULL)
xmlFreeElementContent(ret);
@ -5693,9 +5992,10 @@ xmlParseElementChildrenContentDecl(xmlParserCtxtPtr ctxt) {
ctxt->errNo = XML_ERR_SEPARATOR_REQUIRED;
ctxt->wellFormed = 0;
ctxt->disableSAX = 1;
if ((op != NULL) && (op != ret))
if ((op != NULL) && (op != ret) && (op != last))
xmlFreeElementContent(op);
if ((last != NULL) && (last != ret))
if ((last != NULL) && (last != ret) &&
(last != ret->c1) && (last != ret->c2))
xmlFreeElementContent(last);
if (ret != NULL)
xmlFreeElementContent(ret);
@ -5707,7 +6007,8 @@ xmlParseElementChildrenContentDecl(xmlParserCtxtPtr ctxt) {
if (op == NULL) {
if ((op != NULL) && (op != ret))
xmlFreeElementContent(op);
if ((last != NULL) && (last != ret))
if ((last != NULL) && (last != ret) &&
(last != ret->c1) && (last != ret->c2))
xmlFreeElementContent(last);
if (ret != NULL)
xmlFreeElementContent(ret);
@ -5731,7 +6032,8 @@ xmlParseElementChildrenContentDecl(xmlParserCtxtPtr ctxt) {
ctxt->errNo = XML_ERR_ELEMCONTENT_NOT_FINISHED;
if ((op != NULL) && (op != ret))
xmlFreeElementContent(op);
if ((last != NULL) && (last != ret))
if ((last != NULL) && (last != ret) &&
(last != ret->c1) && (last != ret->c2))
xmlFreeElementContent(last);
if (ret != NULL)
xmlFreeElementContent(ret);
@ -5757,7 +6059,8 @@ xmlParseElementChildrenContentDecl(xmlParserCtxtPtr ctxt) {
ctxt->disableSAX = 1;
if ((op != NULL) && (op != ret))
xmlFreeElementContent(op);
if ((last != NULL) && (last != ret))
if ((last != NULL) && (last != ret) &&
(last != ret->c1) && (last != ret->c2))
xmlFreeElementContent(last);
if (ret != NULL)
xmlFreeElementContent(ret);
@ -7999,6 +8302,13 @@ xmlParseElement(xmlParserCtxtPtr ctxt) {
#endif
xmlFree(oldname);
}
if ( ret != NULL && ctxt->record_info ) {
node_info.end_pos = ctxt->input->consumed +
(CUR_PTR - ctxt->input->base);
node_info.end_line = ctxt->input->line;
node_info.node = ret;
xmlParserAddNodeInfo(ctxt, &node_info);
}
return;
}
if (RAW == '>') {
@ -9919,7 +10229,6 @@ xmlSAXParseDTD(xmlSAXHandlerPtr sax, const xmlChar *ExternalID,
/*
* Set-up the SAX context
*/
if (ctxt == NULL) return(NULL);
if (sax != NULL) {
if (ctxt->sax != NULL)
xmlFree(ctxt->sax);
@ -10066,6 +10375,165 @@ xmlSAXParseBalancedChunk(xmlParserCtxtPtr ctx, xmlSAXHandlerPtr sax,
return(ret);
}
/**
* xmlParseCtxtExternalEntity:
* @ctx: the existing parsing context
* @URL: the URL for the entity to load
* @ID: the System ID for the entity to load
* @list: the return value for the set of parsed nodes
*
* Parse an external general entity within an existing parsing context
* An external general parsed entity is well-formed if it matches the
* production labeled extParsedEnt.
*
* [78] extParsedEnt ::= TextDecl? content
*
* Returns 0 if the entity is well formed, -1 in case of args problem and
* the parser error code otherwise
*/
int
xmlParseCtxtExternalEntity(xmlParserCtxtPtr ctx, const xmlChar *URL,
const xmlChar *ID, xmlNodePtr *list) {
xmlParserCtxtPtr ctxt;
xmlDocPtr newDoc;
xmlSAXHandlerPtr oldsax = NULL;
int ret = 0;
if (ctx->depth > 40) {
return(XML_ERR_ENTITY_LOOP);
}
if (list != NULL)
*list = NULL;
if ((URL == NULL) && (ID == NULL))
return(-1);
if (ctx->myDoc == NULL) /* @@ relax but check for dereferences */
return(-1);
ctxt = xmlCreateEntityParserCtxt(URL, ID, ctx->myDoc->URL);
if (ctxt == NULL) return(-1);
ctxt->userData = ctxt;
oldsax = ctxt->sax;
ctxt->sax = ctx->sax;
newDoc = xmlNewDoc(BAD_CAST "1.0");
if (newDoc == NULL) {
xmlFreeParserCtxt(ctxt);
return(-1);
}
if (ctx->myDoc != NULL) {
newDoc->intSubset = ctx->myDoc->intSubset;
newDoc->extSubset = ctx->myDoc->extSubset;
}
if (ctx->myDoc->URL != NULL) {
newDoc->URL = xmlStrdup(ctx->myDoc->URL);
}
newDoc->children = xmlNewDocNode(newDoc, NULL, BAD_CAST "pseudoroot", NULL);
if (newDoc->children == NULL) {
ctxt->sax = oldsax;
xmlFreeParserCtxt(ctxt);
newDoc->intSubset = NULL;
newDoc->extSubset = NULL;
xmlFreeDoc(newDoc);
return(-1);
}
nodePush(ctxt, newDoc->children);
if (ctx->myDoc == NULL) {
ctxt->myDoc = newDoc;
} else {
ctxt->myDoc = ctx->myDoc;
newDoc->children->doc = ctx->myDoc;
}
/*
* Parse a possible text declaration first
*/
GROW;
if ((RAW == '<') && (NXT(1) == '?') &&
(NXT(2) == 'x') && (NXT(3) == 'm') &&
(NXT(4) == 'l') && (IS_BLANK(NXT(5)))) {
xmlParseTextDecl(ctxt);
}
/*
* Doing validity checking on chunk doesn't make sense
*/
ctxt->instate = XML_PARSER_CONTENT;
ctxt->validate = ctx->validate;
ctxt->depth = ctx->depth + 1;
ctxt->replaceEntities = ctx->replaceEntities;
if (ctxt->validate) {
ctxt->vctxt.error = ctx->vctxt.error;
ctxt->vctxt.warning = ctx->vctxt.warning;
/* Allocate the Node stack */
ctxt->vctxt.nodeTab = (xmlNodePtr *) xmlMalloc(4 * sizeof(xmlNodePtr));
ctxt->vctxt.nodeNr = 0;
ctxt->vctxt.nodeMax = 4;
ctxt->vctxt.node = NULL;
} else {
ctxt->vctxt.error = NULL;
ctxt->vctxt.warning = NULL;
}
xmlParseContent(ctxt);
if ((RAW == '<') && (NXT(1) == '/')) {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData,
"chunk is not well balanced\n");
ctxt->wellFormed = 0;
ctxt->disableSAX = 1;
ctxt->errNo = XML_ERR_NOT_WELL_BALANCED;
} else if (RAW != 0) {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData,
"extra content at the end of well balanced chunk\n");
ctxt->wellFormed = 0;
ctxt->disableSAX = 1;
ctxt->errNo = XML_ERR_EXTRA_CONTENT;
}
if (ctxt->node != newDoc->children) {
if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL))
ctxt->sax->error(ctxt->userData,
"chunk is not well balanced\n");
ctxt->wellFormed = 0;
ctxt->disableSAX = 1;
ctxt->errNo = XML_ERR_NOT_WELL_BALANCED;
}
if (!ctxt->wellFormed) {
if (ctxt->errNo == 0)
ret = 1;
else
ret = ctxt->errNo;
} else {
if (list != NULL) {
xmlNodePtr cur;
/*
* Return the newly created nodeset after unlinking it from
* they pseudo parent.
*/
cur = newDoc->children->children;
*list = cur;
while (cur != NULL) {
cur->parent = NULL;
cur = cur->next;
}
newDoc->children->children = NULL;
}
ret = 0;
}
ctxt->sax = oldsax;
xmlFreeParserCtxt(ctxt);
newDoc->intSubset = NULL;
newDoc->extSubset = NULL;
xmlFreeDoc(newDoc);
return(ret);
}
/**
* xmlParseExternalEntity:
* @doc: the document the chunk pertains to
@ -10104,6 +10572,8 @@ xmlParseExternalEntity(xmlDocPtr doc, xmlSAXHandlerPtr sax, void *user_data,
*list = NULL;
if ((URL == NULL) && (ID == NULL))
return(-1);
if (doc == NULL) /* @@ relax but check for dereferences */
return(-1);
ctxt = xmlCreateEntityParserCtxt(URL, ID, doc->URL);
@ -10413,25 +10883,44 @@ xmlCreateEntityParserCtxt(const xmlChar *URL, const xmlChar *ID,
xmlParserCtxtPtr ctxt;
xmlParserInputPtr inputStream;
char *directory = NULL;
xmlChar *uri;
ctxt = xmlNewParserCtxt();
if (ctxt == NULL) {
return(NULL);
}
inputStream = xmlLoadExternalEntity((char *)URL, (char *)ID, ctxt);
if (inputStream == NULL) {
xmlFreeParserCtxt(ctxt);
return(NULL);
uri = xmlBuildURI(URL, base);
if (uri == NULL) {
inputStream = xmlLoadExternalEntity((char *)URL, (char *)ID, ctxt);
if (inputStream == NULL) {
xmlFreeParserCtxt(ctxt);
return(NULL);
}
inputPush(ctxt, inputStream);
if ((ctxt->directory == NULL) && (directory == NULL))
directory = xmlParserGetDirectory((char *)URL);
if ((ctxt->directory == NULL) && (directory != NULL))
ctxt->directory = directory;
} else {
inputStream = xmlLoadExternalEntity((char *)uri, (char *)ID, ctxt);
if (inputStream == NULL) {
xmlFreeParserCtxt(ctxt);
return(NULL);
}
inputPush(ctxt, inputStream);
if ((ctxt->directory == NULL) && (directory == NULL))
directory = xmlParserGetDirectory((char *)uri);
if ((ctxt->directory == NULL) && (directory != NULL))
ctxt->directory = directory;
xmlFree(uri);
}
inputPush(ctxt, inputStream);
if ((ctxt->directory == NULL) && (directory == NULL))
directory = xmlParserGetDirectory((char *)URL);
if ((ctxt->directory == NULL) && (directory != NULL))
ctxt->directory = directory;
return(ctxt);
}
@ -10763,10 +11252,14 @@ int xmlSAXUserParseMemory(xmlSAXHandlerPtr sax, void *user_data,
char *buffer, int size) {
int ret = 0;
xmlParserCtxtPtr ctxt;
xmlSAXHandlerPtr oldsax = NULL;
ctxt = xmlCreateMemoryParserCtxt(buffer, size);
if (ctxt == NULL) return -1;
ctxt->sax = sax;
if (sax != NULL) {
oldsax = ctxt->sax;
ctxt->sax = sax;
}
ctxt->userData = user_data;
xmlParseDocument(ctxt);
@ -10779,8 +11272,9 @@ int xmlSAXUserParseMemory(xmlSAXHandlerPtr sax, void *user_data,
else
ret = -1;
}
if (sax != NULL)
ctxt->sax = NULL;
if (sax != NULL) {
ctxt->sax = oldsax;
}
xmlFreeParserCtxt(ctxt);
return ret;

View File

@ -402,6 +402,10 @@ int xmlParseExternalEntity (xmlDocPtr doc,
const xmlChar *URL,
const xmlChar *ID,
xmlNodePtr *list);
int xmlParseCtxtExternalEntity(xmlParserCtxtPtr ctx,
const xmlChar *URL,
const xmlChar *ID,
xmlNodePtr *list);
/**
* SAX initialization routines
@ -420,6 +424,19 @@ void xmlSetupParserForBuffer (xmlParserCtxtPtr ctxt,
const char* filename);
xmlParserCtxtPtr xmlCreateDocParserCtxt (xmlChar *cur);
/**
* Reading/setting optional parsing features.
*/
int xmlGetFeaturesList (int *len,
const char **result);
int xmlGetFeature (xmlParserCtxtPtr ctxt,
const char *name,
void *result);
int xmlSetFeature (xmlParserCtxtPtr ctxt,
const char *name,
void *value);
/**
* Interfaces for the Push mode
*/

37
result/HTML/Down.html.sax Normal file
View File

@ -0,0 +1,37 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.characters(
, 1)
SAX.startElement(head)
SAX.characters(
, 3)
SAX.startElement(title)
SAX.characters(This service is temporary down, 30)
SAX.endElement(title)
SAX.characters(
, 1)
SAX.endElement(head)
SAX.characters(
, 2)
SAX.startElement(body, bgcolor='#FFFFFF')
SAX.characters(
, 1)
SAX.startElement(h1, align='center')
SAX.characters(Sorry, this service is tempora, 37)
SAX.endElement(h1)
SAX.characters(
We are doing our best to get , 48)
SAX.startElement(p)
SAX.characters(The W3C system administrators, 29)
SAX.endElement(p)
SAX.characters(
, 1)
SAX.endElement(body)
SAX.characters(
, 1)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 1)
SAX.endDocument()

View File

@ -0,0 +1,11 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.startElement(body)
SAX.startElement(hr)
SAX.endElement(hr)
SAX.ignorableWhitespace(
, 1)
SAX.endElement(body)
SAX.endElement(html)
SAX.endDocument()

View File

@ -0,0 +1,11 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.startElement(body)
SAX.startElement(p)
SAX.characters(toto
, 5)
SAX.endElement(p)
SAX.endElement(body)
SAX.endElement(html)
SAX.endDocument()

View File

@ -0,0 +1,20 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.startElement(body)
SAX.startElement(ul)
SAX.characters(
, 1)
SAX.startElement(li)
SAX.characters(item 1
, 7)
SAX.endElement(li)
SAX.startElement(li)
SAX.characters(item 2
, 7)
SAX.endElement(li)
SAX.error: Opening and ending tag mismatch: body and ul
SAX.endElement(ul)
SAX.endElement(body)
SAX.endElement(html)
SAX.endDocument()

24
result/HTML/doc2.htm Normal file
View File

@ -0,0 +1,24 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0016)http://intranet/ --><!-- BEGIN Naviscope Javascript --><html>
<head>
<title>Welcome to Copernic.com</title>
<script language="javascript">
NS_ActualOpen=window.open;
function NS_NullWindow(){this.window;}
function NS_NewOpen(url,nam,atr){return(new NS_NullWindow());}
window.open=NS_NewOpen;
</script>
<!-- END Naviscope Javascript -->!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;&gt;<!-- saved from url=(0027)http://www.agents-tech.com/ --><meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
<meta content="Copernic.com Inc. develops innovative agent technology solutions to efficiently access and manage the overwhelming quantity of information available on the Internet and intranets." name="DESCRIPTION">
<meta content="agent,technology,intranet,extranet,management,filtering,ranking,solution,service,intelligent,intelligence,client,server,architecture,developer,development,information,telecommunication,announcement,press,product,profile,contact,multi-agent,meta-search,metasearch,multi-thread,mobile,wireless,shopping,robot,PCS,Copernic,engine,toolkit,CDK,EDK" name="KEYWORDS">
<meta content="MSHTML 5.00.3103.1000" name="GENERATOR">
</head>
<body><frameset border="false" cols="172,*" frameBorder="0" frameSpacing="0">
<frame marginHeight="0" marginWidth="0" name="left" noResize scrolling="no" src="doc2_files/side.htm" target="rtop">
<frameset rows="43,*">
<frame marginHeight="0" marginWidth="0" name="rtop" noResize scrolling="no" src="doc2_files/top.htm" target="rbottom">
<frame name="rbottom" noResize src="doc2_files/contents.htm" target="_top">
</frameset>
<noframes><body bgcolor="#FFFFFF" text="#000000" link="#000080" vlink="#000080" alink="#000080" topmargin="0" leftmargin="0" marginheight="0" marginwidth="0"><p>This page uses frames, but your browser doesn't support them.</p></body></noframes>
</frameset></body>
</html>

3
result/HTML/doc2.htm.err Normal file
View File

@ -0,0 +1,3 @@
./test/HTML/doc2.htm:10: error: htmlParseStartTag: invalid element name
<!-- END Naviscope Javascript --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Tr
^

71
result/HTML/doc2.htm.sax Normal file
View File

@ -0,0 +1,71 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(HTML, -//W3C//DTD HTML 4.0 Transitional//EN, (null))
SAX.comment( saved from url=(0016)http://intranet/ )
SAX.comment( BEGIN Naviscope Javascript )
SAX.startElement(html)
SAX.startElement(head)
SAX.startElement(title)
SAX.characters(Welcome to Copernic.com, 23)
SAX.endElement(title)
SAX.characters(
, 1)
SAX.startElement(script, language='javascript')
SAX.characters(
NS_ActualOpen=windo, 194)
SAX.endElement(script)
SAX.characters(
, 1)
SAX.comment( END Naviscope Javascript )
SAX.error: htmlParseStartTag: invalid element name
SAX.characters(!DOCTYPE HTML PUBLIC "-//W3C//, 61)
SAX.comment( saved from url=(0027)http://www.agents-tech.com/ )
SAX.characters(
, 1)
SAX.startElement(meta, content='text/html; charset=iso-8859-1', http-equiv='Content-Type')
SAX.endElement(meta)
SAX.characters(
, 1)
SAX.startElement(meta, content='Copernic.com Inc. develops innovative agent technology solutions to efficiently access and manage the overwhelming quantity of information available on the Internet and intranets.', name='DESCRIPTION')
SAX.endElement(meta)
SAX.characters(
, 1)
SAX.startElement(meta, content='agent,technology,intranet,extranet,management,filtering,ranking,solution,service,intelligent,intelligence,client,server,architecture,developer,development,information,telecommunication,announcement,press,product,profile,contact,multi-agent,meta-search,metasearch,multi-thread,mobile,wireless,shopping,robot,PCS,Copernic,engine,toolkit,CDK,EDK', name='KEYWORDS')
SAX.endElement(meta)
SAX.characters(
, 1)
SAX.startElement(meta, content='MSHTML 5.00.3103.1000', name='GENERATOR')
SAX.endElement(meta)
SAX.endElement(head)
SAX.startElement(body)
SAX.startElement(frameset, border='false', cols='172,*', frameBorder='0', frameSpacing='0')
SAX.startElement(frame, marginHeight='0', marginWidth='0', name='left', noResize='(null)', scrolling='no', src='doc2_files/side.htm', target='rtop')
SAX.endElement(frame)
SAX.startElement(frameset, rows='43,*')
SAX.startElement(frame, marginHeight='0', marginWidth='0', name='rtop', noResize='(null)', scrolling='no', src='doc2_files/top.htm', target='rbottom')
SAX.endElement(frame)
SAX.startElement(frame, name='rbottom', noResize='(null)', src='doc2_files/contents.htm', target='_top')
SAX.endElement(frame)
SAX.endElement(frameset)
SAX.startElement(noframes)
SAX.characters(
, 4)
SAX.startElement(body, bgcolor='#FFFFFF', text='#000000', link='#000080', vlink='#000080', alink='#000080', topmargin='0', leftmargin='0', marginheight='0', marginwidth='0')
SAX.characters(
, 3)
SAX.startElement(p)
SAX.characters(This page uses frames, but you, 61)
SAX.endElement(p)
SAX.characters(
, 3)
SAX.endElement(body)
SAX.characters(
, 3)
SAX.endElement(noframes)
SAX.endElement(frameset)
SAX.endElement(body)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 1)
SAX.endDocument()

888
result/HTML/doc3.htm Normal file
View File

@ -0,0 +1,888 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0025)http://bp6.gamesquad.net/ --><!-- BEGIN Naviscope Javascript --><html>
<head>
<title>BP6.com #1 online resource for the BP6 Mobo....</title>
<script language="javascript">
NS_ActualOpen=window.open;
function NS_NullWindow(){this.window;}
function NS_NewOpen(url,nam,atr){return(new NS_NullWindow());}
window.open=NS_NewOpen;
</script>
<!-- END Naviscope Javascript -->!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 3.2//EN&quot;&gt;<!--last modified on Tuesday, February 22, 2000 11:47 PM --><meta content="text/html;CHARSET=iso-8859-1" http-equiv="Content-Type">
<meta content="Tim" name="Author">
<style type="text/css">A.nav {
COLOR: #003399; TEXT-DECORATION: none
}
A.nav:hover {
COLOR: #3366cc; TEXT-DECORATION: underline
}
</style>
<script language="JavaScript">
<!-- Idea by: Nic Wolfe (Nic@TimelapseProductions.com) --><!-- Web URL: http://fineline.xs.mw --><!-- This script and many more are available free online at --><!-- The JavaScript Source!! http://javascript.internet.com --><!-- Begin
function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbars=0, scrollbars=0, location=0, statusbars=0, menubars=0, resizable=0, width=145, height=250');");
}
// End -->
</script>
<meta content="MSHTML 5.00.3103.1000" name="GENERATOR">
</head>
<body aLink="red" bgColor="black" link="red" text="white" vLink="red">
<p>
<div align="center">
<table border="0" cellPadding="0" cellSpacing="0" width="80%"><tbody>
<tr>
<td vAlign="top" width="31"><a href="http://bp6.gamesquad.net/"><img align="bottom" border="0" height="74" src="doc3_files/logo.gif" width="252"></a></td>
<td align="left" bgColor="#000000">
<img height="15" src="doc3_files/spacer.gif" width="15">
<!-- START GAMESQUAD.NET IFRAME RICH MEDIA CODE --><!-- © 2000 GameSquad.net All Rights Reserved. --><iframe border="0" frameBorder="no" height="60" marginHeight="0" marginWidth="0" scrolling="no" src="doc3_files/adcycle.htm" width="468"><a href="http://ads.gamesquad.net/addclick.exe/adclick.cgi?REGION=game|tech|ent&amp;id=1" target="_top"><img src="http://ads.gamesquad.net/addclick.exe/adcycle.cgi?group=52&amp;media=1&amp;id=1" width="468" height="60" border="0" ALT="GSN ROS Ad"></a></iframe>
<!-- END GAMESQUAD.NET IFRAME RICH MEDIA CODE --><br>
<img height="15" src="doc3_files/spacer.gif" width="400">
</td>
</tr>
<tr><td bgColor="#003399" colSpan="2"><p align="right">
<img align="right" border="0" height="18" hspace="0" src="doc3_files/trcorner.gif" width="20">
<img align="left" border="0" height="18" hspace="0" src="doc3_files/tlcorner.gif" width="20">
<font face="Verdana" size="2">Monday, July 31st, 2000</font>
</p></td></tr>
<tr><td colSpan="2"><table bgColor="#003399" border="0" cellPadding="0" cellSpacing="4" width="100%"><tbody><tr><td bgColor="#666666" width="100%"><center>
<p>
<table bgColor="black" border="0" cellPadding="0" cellSpacing="1" width="100%"><tbody><tr><td background="doc3_files/hscan.gif" bgColor="#666666" width="100%">
<img height="1" src="doc3_files/spacer.gif" width="738">
<br>
<center><table border="0" cellPadding="2" cellSpacing="0" width="91%"><tbody><tr>
<td vAlign="top" width="15%"><p align="center">
<a href="http://bp6.gamesquad.net/specs.phtml"><img align="bottom" alt="Abit BP6 Motherboard specification and information." border="0" height="45" src="doc3_files/bp6icon.gif" width="70"></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/specs.phtml"><font color="white" face="Verdana" size="1">BP6 Specs</font></a>
</p></td>
<td vAlign="top" width="15%"><p align="center">
<a href="http://bp6.gamesquad.net/bxcool.phtml"><img align="bottom" alt="How to cool the BX Chipset on your BP6." border="0" height="45" src="doc3_files/bxcool.gif" width="70"></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/uc.phtml"><font color="white" face="Verdana" size="1">BX Cooling</font></a>
</p></td>
<td vAlign="top" width="15%"><p align="center">
<a href="http://bp6.gamesquad.net/contest.phtml"><img align="bottom" alt="The U;timate Gaming Contest - Coming Soon!" border="0" height="45" src="doc3_files/ugmcontest.gif" width="70"></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/contest.phtml"><font color="white" face="Verdana" size="1">UGM Contest</font></a>
</p></td>
<td vAlign="top" width="15%"><p align="center">
<a href="http://bp6.gamesquad.net/uc.phtml"><img align="bottom" alt="Cooling &amp; Heatsink review for the BP6." border="0" height="45" src="doc3_files/alpha.gif" width="70"></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/uc.phtml"><font color="white" face="Verdana" size="1">Heatsinks</font></a>
</p></td>
<td vAlign="top" width="15%"><p align="center">
<a href="http://bp6.gamesquad.net/101.phtml"><img align="bottom" alt="BP6 101 - Class is now in session. Welcome newbies!" border="0" height="45" src="doc3_files/bp6101.gif" width="70"></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/101.phtml"><font color="white" face="Verdana" size="1">BP6 101</font></a>
</p></td>
<td vAlign="top" width="15%"><p align="center">
<a href="http://bp6.gamesquad.net/win2k_install.phtml"><img align="bottom" alt="Install guide for installing Windows 2000 on the BP6 " border="0" height="45" src="doc3_files/win2kht.gif" width="70"></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/win2k_install.phtml"><font color="white" face="Verdana" size="1">Win2k Install</font></a>
</p></td>
<td vAlign="top" width="15%"><p align="center">
<a href="http://www.gentus.com/">
<img align="bottom" alt="Taking a first look at the Abit Linux release called " border="0" height="45" src="doc3_files/gentusbox.gif" width="70" Gentus>?.?&gt;</a>
<br>
<a href="http://www.gentus.com/"><font color="white" face="Verdana" size="1">Gentus</font></a>
</p></td>
</tr></tbody></table></center>
</tbody></table>
</center></tbody></table>
</tbody></table>
<table bgColor="#003399" border="0" cellSpacing="6" width="80%"><tbody><tr>
<td bgColor="black" vAlign="top" width="10%"><table border="0" cellPadding="3" cellSpacing="0" width="100%"><tbody><tr><td width="100%">
<img height="1" src="doc3_files/spacer.gif" width="111">
<br>
<b><font color="yellow" face="Verdana" size="2">REVIEWS</font></b>
<font face="Verdana" size="2">
<br>
<hr align="center">
</font>
<a href="http://bp6.gamesquad.net/bp6reviews.phtml"><font color="white" face="Verdana" size="1">BP6 Reviews</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/h2o.phtml"><font color="white" face="Verdana" size="1">BP6 Watercooling</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/bxcool.phtml"><font color="white" face="Verdana" size="1">BX Chipset Cooling</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/benchmark.phtml"><font color="white" face="Verdana" size="1">Benchmarks</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/bp6fsb.phtml"><font color="white" face="Verdana" size="1">BP6FSB Utility</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/powerleap.phtml"><font color="white" face="Verdana" size="1">PowerLeap NEO S370</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/seti.phtml"><font color="white" face="Verdana" size="1">SETI on the BP6</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/orbs.phtml"><font color="white" face="Verdana" size="1">Golden Orbs I</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/orbs/orbs2.phtml"><font color="white" face="Verdana" size="1">Golden Orbs II</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/Q6fix.phtml"><font color="white" face="Verdana" size="1">VTT Solution</font></a>
<font face="Verdana" size="1">
<br>
<br>
</font>
<b><font color="yellow" face="Verdana" size="2">NAVIGATE</font></b>
<font color="yellow" face="Verdana" size="2"><hr align="center"></font>
<a href="http://www.bp6.com/"><font color="white" face="Verdana" size="1">News</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/chat.phtml"><font color="white" face="Verdana" size="1">Online Text Chat</font></a>
<font face="Verdana" size="1"><br></font>
<a href="javascript:popUp('chat_popup.htm')"><font color="white" face="Verdana" size="1">Voice Chat</font></a>
<br>
<a href="http://216.247.220.192/Forum"><font color="white" face="Verdana" size="1">Messageboard</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/cooling"><font color="white" face="Verdana" size="1">Temp. Converter</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/uc.phtml"><font color="white" face="Verdana" size="1">Picture Gallery</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/bios.phtml"><font color="white" face="Verdana" size="1">Latest BIOS</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/files/"><font color="white" face="Verdana" size="1">Drivers &amp; Files</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/uc.phtml"><font color="white" face="Verdana" size="1">UGM of the week</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/contest.phtml"><font color="white" face="Verdana" size="1">BP6 Contest</font></a>
<font face="Verdana" size="1">
<br>
<br>
</font>
<b><font color="yellow" face="Verdana" size="2">OTHER STUFF</font></b>
<font color="yellow" face="Verdana" size="2"><hr align="center"></font>
<a href="http://bp6.gamesquad.net/whois.phtml"><font color="white" face="Verdana" size="1">Who is Tim?</font></a>
<font face="Verdana" size="1"><br></font>
<a href="mailto:tim@bp6.com"><font color="white" face="Verdana" size="1">Contact BP6.com</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/uc.phtml"><font color="white" face="Verdana" size="1">Affiliates Section</font></a>
<font face="Verdana" size="1"><br></font>
<a href="http://bp6.gamesquad.net/uc.phtml"><font color="white" face="Verdana" size="1">Sponsors Section <br>
</font></a>
<a href="http://bp6.gamesquad.net/links.phtml"><font color="white" face="Verdana" size="1">Links<br>
<br>
</font></a>
<b><font color="yellow" face="Verdana" size="2">PC SPECIALS</font></b>
<font color="yellow" face="Verdana" size="2"><hr align="center"></font>
<a href="http://bp6.gamesquad.net/specials.phtml"><font color="white" face="Verdana" size="1">Vendor
Specials<br>
<br>
</font></a>
<br>
<b><font color="yellow" face="Verdana" size="2">Pic of the day</font></b>
<hr>
<center><p align="center"><font face="Verdana, Arial, Helvetica" size="1"><a href="http://bp6.gamesquad.net/cgi-bin/schlabo/potd.pl"><img alt="No picture is available for today." border="0" src="doc3_files/potd_na_110x83.gif"></a></font></p></center>
<br>
<center></center>
<br>
<!--<A HREF="code:javascript:ID_FTPWebView.InvokeHelp()"><FONT SIZE="1" COLOR="white" FACE="Verdana">FTP Help</FONT></A>-->
</td></tr></tbody></table>
<td bgColor="white" vAlign="top" width="80%">
<img height="1" src="doc3_files/spacer.gif" width="490">
<br>
<center>
<p>
<table bgColor="white" border="0" cellPadding="10" cellSpacing="0" height="100%" width="100%"><tbody><tr><td bgColor="white" vAlign="top" width="100%">
<center><a href="http://www.encounter2001.com/" target="_blank"><img border="0" height="60" src="doc3_files/banner2.gif" width="468"></a></center>
<br>
<a name="news_top"></a>
<font color="#003366" face="verdana,arial" size="2"><b>Headlines</b></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem965012956,78924,">Chat
with ABIT - 8:09PM PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964766837,26344,">Fixed
wallpaper - 11:47PM PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964762841,25865,">Seti
update - 10:40PM PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964732235,45502,">Judge
gives Napster the Boot!! - 2:10PM PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964713289,83675,">Ram
Sinks.. more cooling for small places. - 8:54AM
PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964671589,7831,">is
it [H]ard? - 9:19PM PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964644047,60218,">WiLd
CaSe!! - 1:40PM PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964631110,84122,">What
the heck is a Peltier?!?! - 10:05AM PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964587833,74573,">HELLO
EVERYONE!!! - 10:03PM PDT</a></font>
<br>
<font face="arial" size="1"><a class="nav" href="http://bp6.gamesquad.net/index.phtml#newsitem964429577,13375,">BP6
Q3 server up and running.. - 2:06AM PDT</a></font>
<br>
<br>
<!-- NP v3.7.5 --><a name="newsitem965012956,78924,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Sunday,
July 30, 2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">Chat with
ABIT</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:Holodeck@bp6.com">Holodeck2</a> @ 8:09PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/965012956,78924,.html">
<img border="0" src="doc3_files/comments.gif">0 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">I&#x2019;m slacking a little. All game no
work makes Holodeck2 a happy boy :-)<br>
<br>Wallpaper update: I got
off my lazy ass and redid the 1280x1024 wall paper, now it has the 2
celerons.<br>
<br>
<b><a href="http://fullon3d.com/chat/abit/" target="3d">Fullon3d had a live chat with that Eric guy from Abit.
</a></b>Submitted by: MJS<br>
<br>Here&#x2019;s a little clip:<br>[Falcon]
BP6-2??<br>[EricBoeing] We already have a micro ATX dual flip-chip
board<br>[EricBoeing] but it's OEM only<br>[EricBoeing] the full ATX
version should be out Septemberish<br>
</font>
<br>
<br>
<a name="newsitem964766837,26344,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Thursday,
July 27, 2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">Fixed
wallpaper</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:Holodeck@bp6.com">Holodeck2</a> @ 11:47PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/964766837,26344,.html">
<img border="0" src="doc3_files/comments.gif">5 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">
<b>Get them now!!</b>
<br>This is a
fixed bp6 wallpaper. In all the popular flavors, err...
resolutions.<br>
<img height="180" src="doc3_files/3-800.jpg" width="240">
<br>It's still the Intels Inside one with a spelling
change; from &quot;Mothboard&quot; to &quot;Motherboard&quot;<br>
<br>Thanks to Matt for
pointing that out to me.<br>I would also like to thank Kevin for
hosting my last batch and Radu for the previous &quot;DUEL&quot;/&quot;DUAL&quot;
error.<br>And 1 more person, THANK YOU TIM for letting me borrow
your server space ;-)<br>
<br>If you need a weird resolution, feel
free to <a href="mailto:Holodeck2@home.com">e-mail</a> me requesting
for one.<br>If you have ideas or more errors to point out, <a href="mailto:Holodeck2@home.com">mailto:Holodeck2@home.com</a>
<br>
<br>
<a href="doc3_files/3-800.jpg" target="800">800x600 </a>
<br>
<a href="http://www.bp6.com/pics/holodeck2/wallpaper/3-1024.jpg" target="800">1024x768 </a>
<br>
<a href="http://www.bp6.com/pics/holodeck2/wallpaper/3-1152.jpg" target="800">1152x864 </a>
<br>
<a href="http://www.bp6.com/pics/holodeck2/wallpaper/3-1280x1024.jpg" target="800">1280x1024 </a>
<br>
<a href="http://www.bp6.com/pics/holodeck2/wallpaper/3-1600.jpg" target="800">1600x1200 </a>
<br>
<p>Enjoy :-)<br>
</p>
<p>
<a href="mailto:Holodeck2@home.com">Holodeck2,</a>
<br>[H]ard at
work on the Brand Spanking New Wallpaper.<br>
</p>
</font>
<br>
<br>
<a name="newsitem964762841,25865,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">Seti update</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:Holodeck@bp6.com">Holodeck2</a> @ 10:40PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/964762841,25865,.html">
<img border="0" src="doc3_files/comments.gif">5 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">
<img height="54" src="doc3_files/setiupdate.jpg" width="400">
<br>You like the
pic?<br>
<br>Bp6 User Group Update:<br>Completed 61531
units!!<br>
<b>#168 on Top 200 All Groups</b> (Going to pass CLRC in
a few days)<br>
<b>#74 on Top 200 Teams</b> (Gaining fast on
Starfleet)<br>
<br>We are flying though at the speed of light (may be
a little slower).<br>Good job everyone!!<br>
<br>Check this page at
least once a day for new stuff :-)<br>
</font>
<br>
<br>
<a name="newsitem964732235,45502,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">Judge gives Napster the
Boot!!</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:Holodeck@bp6.com">Holodeck2</a> @ 2:10PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/964732235,45502,.html">
<img border="0" src="doc3_files/comments.gif">0 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Good afternoon for everyone living in
EST. I was going to post today morning but I didn't. Here's my
story:<br>I woke up and thought about posting something but I
decided to wax my car before the sun came up (draw your own
conclusions), wax on, wax off, wax on,..., did that for about an
hour. Then I saw the sun rise (Aaahh I'm melting... not). I sat in
front of my comp and started to search for good news to post. Saw
that a stoopid judge temporally shuts down napster. Goes to room and
cry. and now I'm here :-)<br>
<br>
<a href="http://www.msnbc.com/news/437532.asp" target="Judge vs Napster">Judge shuts Napster down
<p><img height="143" src="doc3_files/669915.jpg" width="200"></p>
</a>
<br>Check out the Goofy guy in the suit<br>He's Sean
Fanning, founder of Napster.<br>
<br>Got news?? <a href="mailto:Holodeck2@home.com">mailto:Holodeck2@home.com</a>
<br>
</font>
<br>
<br>
<a name="newsitem964713289,83675,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">Ram Sinks.. more cooling for small
places.</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:tim@bp6.com">tim</a> @ 8:54AM PDT</small>  <a href="http://bp6.gamesquad.net/news/964713289,83675,.html">
<img border="0" src="doc3_files/comments.gif">0 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Need some cooling for your Videocard
memory to get a little extra overclockability and FPS? <a href="http://www.overclockershideout.com/RamSinks.html" target="_BLANK">Overclockers Hiedout Ram Sinks</a> They just notified
me of their new design.<br>
<img border="1" src="doc3_files/ramsink.jpg">
</font>
<br>
<br>
<a name="newsitem964671589,7831,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Wednesday, July 26,
2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">is it
[H]ard?</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:Holodeck@bp6.com">Holodeck2</a> @ 9:19PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/964671589,7831,.html">
<img border="0" src="doc3_files/comments.gif">0 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Big heatsinks are good, very good. The
bigger the better.<br>You can never can have a too big of heatsink
on a small chip (CPU, GPU, CHIPSET, etc)<br>
<br>
<img height="173" src="doc3_files/voodooside2.jpg" width="230">
<br>My overclocked
Voodoo3 2000 with a BIG mofo heatsink on top.<br>Peltier and
watercooling next up :-)<br>(if you pry off the heatsink you void
the warranty )<br>
<br>it was originally posted on <a href="http://www.hardocp.com/">[H]ardOCP </a>
<br>I&#x2019;m not only a
BP6er but also a [H]ardOCPer<br>
</font>
<br>
<br>
<a name="newsitem964644047,60218,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">WiLd CaSe!!</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:Holodeck@bp6.com">Holodeck2</a> @ 1:40PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/964644047,60218,.html">
<img border="0" src="doc3_files/comments.gif">8 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Now this person really knows how to
keep his case cool!!<br>Addin an 18&quot; Fan!! WOW!!<br>
<br>
<a href="http://www.envador.com/Photos/PVCII/" target="_blank"><img src="doc3_files/TN_OpenedUp1.jpg"></a>
<br>Click to go to his
site.<br>
</font>
<br>
<br>
<a name="newsitem964631110,84122,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">What the heck is a
Peltier?!?!</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:Holodeck@bp6.com">Holodeck2</a> @ 10:05AM
PDT</small>  <a href="http://bp6.gamesquad.net/news/964631110,84122,.html">
<img border="0" src="doc3_files/comments.gif">6 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">This is for all you people who wanted
to know what a peltier is.<br>
<br>The quest fo the Perfect
Peltier<br>
<a href="http://www.tweakmax.com/html/peltier/peltier-1.cfm" target="_blank"><img src="doc3_files/peltier.jpg"></a>
<br>Thanks to
<a href="http://www.tweakmax.com/" target="_blank">TweakMax.com</a>
<br>
<br>Note: Today morning when I woke up I saw my whole screen
cluttered with a bunch of IMs!! I live in the USA on EST. If you
live somewhere else please check the time in my area. for example:
If you live in Europe and IM me in the morning your time I would be
sleeping it would be like 4 in the morning here. Just to let you
know <img src="doc3_files/smile.gif">
<br>I'm not angry at anyone...
good thing I have a long fuse <img src="doc3_files/tongue.gif">
<br>
</font>
<br>
<br>
<a name="newsitem964587833,74573,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Tuesday,
July 25, 2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">HELLO
EVERYONE!!!</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:Holodeck@bp6.com">Holodeck2</a> @ 10:03PM
PDT</small>  <br>
<font color="black" face="Arial" size="2">Hello
everyone, Woohoo!! I'm on!!<br>Who is this Holodeck2 person
anyways?!?! Read on :-)<br>I&#x2019;m a regular on the bp6 messageboard,
trying to help people out with their problems.<br>I&#x2019;m the
self-proclaimed bp6 cooling expert, If you have a cooling idea, I&#x2019;ve
probably already done it and can offer some incite.<br>My computer
is always on so you can contact me whenever... problem is, I'm not
always in front of it. I'll try to update this page and keep
everyone happy :-)<br>Any Questions or comments, you can either
contact me or post it on the messageboard.<br>
<br>Ways to contact
me.<br>E-mail: <a href="mailto:Holodeck2@home.com">Holodeck2@home.com</a> (All E-mails
will be answered in 24 hours or less, I guarantee it.)<br>When you
write me an e-mail please put in the subject line &quot;BP6&quot; then the
rest of your subject so my e-mail program can sort it, thanks<br>
<a href="http://www.aol.com/aim">AIM: </a>Holodeck2 (instant response
if I&#x2019;m in front of my comp and not trying to frag someone)<br>
<a href="http://www.icq.com/download">ICQ: </a>82640218 (rarely
on)<br>
<br>P.S. If someone named &#x201C;Digital Vortex&#x201D; on either Quake 3
or 2 frags you, it&#x2019;s probably me. ;-)<br>
</font>
<br>
<br>
<a name="newsitem964429577,13375,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Monday,
July 24, 2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">BP6 Q3 server up and
running..</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:tim@bp6.com">tim</a> @ 2:06AM PDT</small>  <a href="http://bp6.gamesquad.net/news/964429577,13375,.html">
<img border="0" src="doc3_files/comments.gif">3 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Setup a Q3 server for anyone wanting
to practice in preparation for Quakecon.. Connect to bp6.dyndns.org
default port. (SERVER: BP6 system, 256 MB ram, celeron 600 on a T3
connection)... Will be moved to another BP6 server eventually. This
is only a temporary test of the system and net connection. <br>(BTW-
there are a few bot's running around in there..)</font>
<br>
<br>
<a name="newsitem964425184,95812,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">BIOS Savior to the
rescue....</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:tim@bp6.com">tim</a> @ 12:53AM PDT</small>  <a href="http://bp6.gamesquad.net/news/964425184,95812,.html">
<img border="0" src="doc3_files/comments.gif">2 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Do you sweat during the BIOS flashing
procedure on your BP6 mobo? If so then this little gadget maybe
worth a first look. It's called the &quot;<b>RD1 BIOS Savior</b>&quot; and it
plugs in between your BIOS ROM and the BIOS ROM socket on your mobo.
This device will backup your BIOS and and allow you to recover your
BIOS in the event that your flashing session goes wrong. In the
event of a bad flash, just flip a switch on the RDI and boot up your
system, and flash again. This is also good as a failsafe in case you
don't believe in Virus Protecting your computer. (Thanks to Fred for
link)<br>
<a href="http://www.ioss.com.tw/eg/rd1/RD1info0004.PDF" target="_NEW">Manufacturers Brochure</a> (PDF Format)<br>
<a href="http://192.216.185.10/mwave/doc/A06950.html" target="_BLANK&quot;">Another info page</a>
<br>
<a href="http://192.216.185.10/mwave/ProdMB-AC-MW.hmx?UID=&amp;CID=&amp;updepts=MB&amp;DNAME=%3Cb%3EMotherboards%3C%2Fb%3E&amp;Back=ProdMB-AC-MW.hmx?" target="_BLANK">Available for about $20</a>
<br>
<br>
<img src="doc3_files/rd1.jpg">
</font>
<br>
<br>
<a name="newsitem963875853,12731,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Monday,
July 17, 2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">How To
Overclock</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:killz@i82hq.com">DareDevil</a> @ 4:17PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/963875853,12731,.html">
<img border="0" src="doc3_files/comments.gif">3 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">For those of you who are new to
overclocking, this guide will explain to you how to overclock, and
what some of the terms are. Like 'FSB' (what the heck is that!?
:0))<br>
<br>
<a href="http://netkills.qgl.org/a_oc_comp.shtml" target="_blank">How To Overclock</a>
</font>
<br>
<br>
<a name="newsitem963875485,23353,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">The Cardcooler
XT</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:killz@i82hq.com">DareDevil</a> @ 4:11PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/963875485,23353,.html">
<img border="0" src="doc3_files/comments.gif">1 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Wow! I am impressed! Nevermind keeping
the CPU's cool... Keep your whole board cool!<br>
<br>
<i>Even if your
not overclocking your system (or planning on it), this unit will
provide system stability and longevity. What would happen one day of
your GeForce or CPU fan went dead? You can also think of this
cooling unit as a backup to essential cooling fans in your
system.</i>
<br>
<br>Check this out!<br>
<br>
<a href="http://www.brokenpixel.com/articles/coolerXT/cardcoolerXT_1.shtml" target="_blank">http://www.brokenpixel.com/articles/coolerXT/cardcoolerXT_1.shtml</a>
</font>
<br>
<br>
<a name="newsitem963859982,88982,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">'Nerd
Inside'</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:killz@i82hq.com">DareDevil</a> @ 11:53AM
PDT</small>  <a href="http://bp6.gamesquad.net/news/963859982,88982,.html">
<img border="0" src="doc3_files/comments.gif">1 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">We all need to have some fun
sometimes! Check out this little web site that sells 'nerd' clothing
;) (I like the bibs in the Junior Hackerz section) :-Þ<br>
<br>
<div align="center"><a href="http://www.nerdgear.com/" target="_blank"><img border="0" src="doc3_files/nerdinside.gif"></a></div>
</font>
<br>
<br>
<a name="newsitem963819796,9688,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">Dual PSU Wiring diagram... (preview to
Part 1 Watercooling Project)</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:tim@bp6.com">tim</a> @ 12:43AM PDT</small>  <a href="http://bp6.gamesquad.net/news/963819796,9688,.html">
<img border="0" src="doc3_files/comments.gif">11 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">When is comes to overclocking your
system, cooling plays a big role. Powering all of those fans in your
system can cause quite a strain on your PSU (Power Supply Unit).
Depending on the number of peripherals in your system, adding a more
powerfull PSU or adding a second PSU may be neccesary. For
watercooling and using peltiers, dedicating a second PSU to power
the Peltiers (TEC's) is a good idea. Here I have come up with 2
diagrams on how I wired dual 300 watt ATX power supply units for the
Blizzard BP6 watercooling project. Consider this part of Step 1.
More will follow this week. BTW.. hacking up your PSU's is very
dangerous and is not recommended unless you know what you are doing.
<br>
<br>View Diagram 1 <a href="http://bp6.gamesquad.net/images/wiring.jpg" target="_BLANK">here</a>.<br>View Diagram 2 <a href="http://bp6.gamesquad.net/images/psu2.gif" target="_BLANK">here</a>.<br>
<br>I used Tap-In Squeeze Connectors and
22 guage wire to connect the wires. You can get them at Radio Shack
Part# 64-3053 or <a href="http://www.radioshack.com/ProductCatalog/ProductDetail/Index/1,2098,,00.html?SKUString1=64&amp;SKUString2=3053" target="_blank">click here</a>.</font>
<br>
<br>
<a name="newsitem963766655,78511,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Sunday,
July 16, 2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">RAM Overclocking?
Hmmmmm.</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:killz@i82hq.com">DareDevil</a> @ 9:57AM
PDT</small>  <a href="http://bp6.gamesquad.net/news/963766655,78511,.html">
<img border="0" src="doc3_files/comments.gif">3 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">I know we're pretty big overclockers
here at BP6.Com so, this is a post of choice ;-) I've seen the
question in the message boards, 'why can't I overclock any higher?'
Well, it's not always the CPU that's holding you back... Many other
things need to be taken care of to overclock such as your PCI
devices (can they handle the higher bus speed), the actual CPU, and
your RAM. I'm not saying that that a high quality stick of silicon
will enable you to overclock your 366MHz to 1 GHZ (I wish!), but, it
will certainly help =)<br>
<br>Extreme Overclocking has tested
(overclocked) PC133 RAM to there full potential. Here's a quote I
found and the link:<br>
<br>
<i>Well, the guys at Extreme Overclocking
have been hard at work again with their latest review. This time
they have put seven 128MB PC133 memory modules through the torture
tests to determine their maximum overclocking potential. Which one's
came out on top? Read the review to find out....</i>
<br>
<br>
<a href="http://www.extremeoverclocking.com/reviews/memory/ram_roundup_1.html" target="_blank">Cooked RAM... Yummie</a>
<br>
<br>The
ÐÐ.</font>
<br>
<br>
<a name="newsitem963764236,76720,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">CPU
Guide</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:killz@i82hq.com">DareDevil</a> @ 9:17AM
PDT</small>  <a href="http://bp6.gamesquad.net/news/963764236,76720,.html">
<img border="0" src="doc3_files/comments.gif">0 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">A follow up on the 'Weekly CPU
Prices', this guide will help you determine which cpu is best for
you (and your board ;-)). Sent to me by Spanky, here's the
link:<br>
<br>
<li><a href="http://www6.tomshardware.com/howto/00q2/000412/index.html" target="_blank">http://www6.tomshardware.com/howto/00q2/000412/index.html</a></li>
</font>
<br>
<br>
<a name="newsitem963685749,28290,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Saturday,
July 15, 2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">Weekly CPU
Prices</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:killz@i82hq.com">DareDevil</a> @ 11:29AM
PDT</small>  <a href="http://bp6.gamesquad.net/news/963685749,28290,.html">
<img border="0" src="doc3_files/comments.gif">2 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Wow, found this very useful! Wanting
to buy a new CPU? Check out this detailed price list!<br>
<br>
<a href="http://www.sharkyextreme.com/hardware/weekly_cpu/" target="_blank">Click Here.</a>
<br>
<br>Thanks Sharky
Extreme!</font>
<br>
<br>
<a name="newsitem963679881,35277,"></a>
<b><u><font color="#003366" face="Verdana, Arial" size="2">Fast Wallpapers</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:killz@i82hq.com">DareDevil</a> @ 9:51AM
PDT</small>  <a href="http://bp6.gamesquad.net/news/963679881,35277,.html">
<img border="0" src="doc3_files/comments.gif">0 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">FAST-MHz has released some wallpapers!
<a href="http://64.29.18.111/wallpaper/index.html" target="_blank">Click here</a> to view them. They come in sizes
800x600 1024x768 and 1152x864. If you have your desktop set at a
larger size, just use the 'stretch' function in desktop properties
instead of 'center'. Works great.<br>
<br>In other news, we want to
finnish off all the sections at BP6.Com so, to start, we're going to
work on the <a href="http://bp6.gamesquad.net/uc.phtml" target="_blank">Picture Gallery</a>. To help us out, you can send in
all your cool, wierd, crazy pics that you may have to: <a href="mailto:thedaredevil@bp6.com">thedaredevil@bp6.com</a>. (The
topic being computers, duh! :0) And no... I don't want to recieve
any porno piccies in my mailbox! I have enough of those!) Kidding
guys.<br>
<br>Okay, that's all for now.<br>
<br>The
ÐÐ.</font>
<br>
<br>
<a name="newsitem963619505,3764,"></a>
<table bgColor="#003399" width="100%"><tbody><tr><td><font color="#ffffff" face="Verdana,arial" size="2"><b>Friday,
July 14, 2000</b></font></td></tr></tbody></table>
<br>
<!--<hr noshade width=100%>--><b><u><font color="#003366" face="Verdana, Arial" size="2">Hey
There!</font></u></b>
<br>
<font color="#0066cc" face="Arial" size="1">
<small>Posted by <a class="nav" href="mailto:killz@i82hq.com">DareDevil</a> @ 5:05PM
PDT</small>  <a href="http://bp6.gamesquad.net/news/963619505,3764,.html">
<img border="0" src="doc3_files/comments.gif">7 comments</a>
 | <a href="http://bp6.gamesquad.net/#news_top">top</a>
</font>
<br>
<font color="black" face="Arial" size="2">Hey guys, just wanted to introduce
myself, some of you may have already met me on the BP6.com board.
I'll be posting up news from time to time now so, if you'd like, you
may send me some news to be posted if you find any ( we don't want
to flood Tim ;-) ).<br>
<br>My e-mail address is <a href="mailto:killz@i82hq.com">killz@i82hq.com</a>
<br>
<br>Ciao for
now.<br>
<br>The ÐÐ.</font>
<br>
<br>
</font>
<center><iframe frameBorder="0" height="60" marginHeight="0" marginWidth="0" noResize scrolling="no" src="doc3_files/ad_iframe.htm" width="468"><a href="http://ads.adflight.com/go_static.asp?asid=7708" target="_top"><img width="468" height="60" border="0" alt="Advertisement" src="http://ads.adflight.com/ad_static.asp?pid=2097&amp;sid=1881&amp;asid=7708"></a></iframe></center>
</tbody></table>
</center>
<td bgColor="silver" vAlign="top" width="10%"><center>
<p>
<table bgColor="silver" border="0" cellPadding="0" cellSpacing="0" width="100%"><tbody><tr><td COLSTART="1"><center>
<!-- <FORM ACTION="/cgi-bin/subscribe.pl" METHOD="POST" ENCTYPE="application/x-www-form-urlencoded">
<IMG SRC="/images/spacer.gif" WIDTH="111" HEIGHT="1"><BR>
<P><B><FONT SIZE="2" COLOR="#000066" FACE="Verdana">Newsletter</FONT></B><FONT SIZE="1" FACE="Verdana"><BR>
<INPUT TYPE="TEXT" NAME="email" SIZE="10" VALUE="ur@email.com"><BR>
<INPUT TYPE="HIDDEN" NAME="subscribe" SIZE="-1" VALUE="subscribe"><INPUT TYPE="IMAGE" SRC="/images/subscribe.gif" WIDTH="80"
HEIGHT="27" ALIGN="BOTTOM" BORDER="0"></FONT>
</FORM> --><form action="http://bp6.gamesquad.net/cgi-bin/news/viewnews.cgi?emaillist" method="post">
<img height="1" src="doc3_files/spacer.gif" width="111">
<br>
<font size="1">Newsletter<br>
<input name="npemail" size="13" value="e-mail addr.">
<br>
<input name="npsubscribe" style="BACKGROUND-COLOR: #000000; COLOR: #ffffff; FONT-FAMILY: Verdana; FONT-SIZE: xx-small; FONT-WEIGHT: bold" type="submit" value="Subscribe">
<br>
<!-- <input type="submit" name="npunsubscribe" value="Unsubscribe" style="font-size: xx-small; font-family: Verdana; font-weight: bold; color: #ffffff; background-color: #000000;"> -->
</font>
</form>
<font size="1"><form action="http://bp6.gamesquad.net/cgi-bin/news/viewnews.cgi?search" method="post">Search news<br>
<input name="searchstring" size="13">
<br>
<input name="submit" style="BACKGROUND-COLOR: #000000; COLOR: #ffffff; FONT-FAMILY: Verdana; FONT-SIZE: xx-small; FONT-WEIGHT: bold" type="submit" value="Submit">
<br>
<a href="http://bp6.gamesquad.net/cgi-bin/news/viewnews.cgi?newsall">News
archive</a>
</form></font>
</center></td></tr></tbody></table>
<!-- <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%" BGCOLOR="silver">
<TR>
<TD WIDTH="100%">
<P ALIGN="CENTER"><A HREF="http://www.free56k.com" target="_blank"><IMG SRC="/images/free56k.gif" WIDTH="100" HEIGHT="49"
ALIGN="BOTTOM" BORDER="0"></A>
</TD>
</TR>
</TABLE>
--><table bgColor="silver" border="0" cellPadding="0" cellSpacing="0" width="100%"><tbody><tr><td align="middle" width="100%">
<!-- BEGIN GoTo.com Search Box --><script language="javascript" type="text/javascript"><!--
if ((parseInt(navigator.appVersion) >= 3)
&& (navigator.appName != "Netscape")) {
document.write("<IFRAME marginheight=0 frameborder=0 ");
document.write("marginwidth=0 scrolling=no width=100 height");
document.write("=90 ");
document.write("SRC=http://www.goto.com/d/ssn/dynconsole/?t");
document.write("ype=html&size=100x90&url=http://www.goto.co");
document.write("m/d/search/ssn/&target=_blank&Partner=SSN80");
document.write("42DF8478957377></IFRAME>");
} else if ((parseInt(navigator.appVersion) > 3)
&& (navigator.appName == "Netscape")) {
document.write("<SCRIPT language=javascript type=text/javas");
document.write("cript ");
document.write("SRC=http://www.goto.com/d/ssn/dynconsole/?t");
document.write("ype=js&size=100x90&url=http://www.goto.com/");
document.write("d/search/ssn/&target=_blank&Partner=SSN8042");
document.write("DF8478957377></SC");
document.write("RIPT>");
} else {
document.write("<A TARGET=_blank ");
document.write("HREF=http://www.goto.com/d/search/ssn/?from");
document.write("GIF=true>");
document.write("<IMG ismap ");
document.write("SRC=http://www.goto.com/d/ssn/dynconsole/?t");
document.write("ype=gif&size=100x90></A>");
}
// --></script>
<b><noscript></noscript></b>
<a href="http://www.goto.com/d/search/ssn/?fromGIF=true" target="_blank"><img align="bottom" border="0" height="90" isMap src="doc3_files/100x90.gif" width="100"></a>
<b><a href="http://www.goto.com/d/search/ssn/?fromGIF=true" target="_blank"></a></b>
<b></b>
<b><!-- END GoTo.com Search Box --></b>
<!-- Pricewatch Search Box --><form action="http://www.pricewatch.com/search/search.asp" method="get" target="_Blank"><center><p>
<b><font color="white" face="ARIAL, HELVETICA" size="1">PC Price
Search<br>
</font></b>
<input maxLength="30" name="criteria" size="10">
<br>
<input name="submit" style="BACKGROUND-COLOR: #000000; COLOR: #ffffff; FONT-FAMILY: Verdana; FONT-SIZE: xx-small; FONT-WEIGHT: bold" type="submit" value="Search">
</p></center></form>
<!-- Pricewatch Search Box --><a href="http://www.puicorp.com/bp6specials.htm" target="_BLANK"><img src="doc3_files/puibp6.gif"></a>
<br>
<br>
<br>
<br>
<a href="http://store.yahoo.com/dunamis-site/maxtor.html" target="_BLANK">
<img alt="BP6.com Special - Enter CODE: BP6-hd in the order (notes) to receive a discount" src="doc3_files/hd5.gif">
<font size="1">
<br>BP6.COM
Special<br>Code:BP6-hd</font>
</a>
</td></tr></tbody></table>
</center>
</tbody></table>
<table bgColor="silver" border="0" cellPadding="0" cellSpacing="0" height="100%" width="100%"><tbody><tr><td width="100%"> </td></tr></tbody></table>
<!-- </TABLE>--><center></center>
<tr><td COLSPAN="3" VALIGN="TOP" HEIGHT="70"> </td></tr>
<table border="0" width="780"><tbody>
<tr><td width="780"><p align="center">
<font color="#999999" face="verdana,arial" size="1">Copyright
©1999-2000 BP6.com, All rights reserved.<br>Got news? Send it to </font>
<a href="mailto:tim@bp6.com"><font color="white" face="Verdana" size="1">Tim</font></a>
</p></td></tr>
<!-- <TR> <TD WIDTH="780"> <P ALIGN="CENTER"><FONT SIZE="1" COLOR="#999999" FACE="Verdana,arial">Site design by Tim Brinkley</FONT> </TD> </TR> -->
</tbody></table>
</div>
<script> window.open=NS_ActualOpen; </script>
</body>
</html>

93
result/HTML/doc3.htm.err Normal file
View File

@ -0,0 +1,93 @@
./test/HTML/doc3.htm:10: error: htmlParseStartTag: invalid element name
<!-- END Naviscope Javascript --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//E
^
./test/HTML/doc3.htm:52: error: htmlParseEntityRef: expecting ';'
href="http://ads.gamesquad.net/addclick.exe/adclick.cgi?REGION=game|tech|ent&i
^
./test/HTML/doc3.htm:52: error: htmlParseEntityRef: expecting ';'
_top"><img src="http://ads.gamesquad.net/addclick.exe/adcycle.cgi?group=52&medi
^
./test/HTML/doc3.htm:52: error: htmlParseEntityRef: expecting ';'
><img src="http://ads.gamesquad.net/addclick.exe/adcycle.cgi?group=52&media=1&i
^
./test/HTML/doc3.htm:145: error: error parsing attribute name
width=70 Gentus?.?></A><BR><A
^
./test/HTML/doc3.htm:145: error: htmlParseStartTag: problem parsing attributes
width=70 Gentus?.?></A><BR><A
^
./test/HTML/doc3.htm:145: error: Couldn't find end of Start Tag img
width=70 Gentus?.?></A><BR><A
^
./test/HTML/doc3.htm:148: error: Unexpected end tag : p
</P></TD></TR></TBODY></TABLE></CENTER></TD></TR></TBODY></TABLE></CENTER></P
^
./test/HTML/doc3.htm:236: error: Unexpected end tag : font
Specials<BR><BR></FONT></A><BR></FONT></A><B><FONT color=yellow
^
./test/HTML/doc3.htm:236: error: Unexpected end tag : a
Specials<BR><BR></FONT></A><BR></FONT></A><B><FONT color=yellow
^
./test/HTML/doc3.htm:747: error: htmlParseEntityRef: expecting ';'
er=0 alt="Advertisement" src="http://ads.adflight.com/ad_static.asp?pid=2097&si
^
./test/HTML/doc3.htm:747: error: htmlParseEntityRef: expecting ';'
Advertisement" src="http://ads.adflight.com/ad_static.asp?pid=2097&sid=1881&asi
^
./test/HTML/doc3.htm:747: error: Unexpected end tag : li
light.com/ad_static.asp?pid=2097&sid=1881&asid=7708"></a></IFRAME></CENTER></LI
^
./test/HTML/doc3.htm:747: error: Unexpected end tag : font
om/ad_static.asp?pid=2097&sid=1881&asid=7708"></a></IFRAME></CENTER></LI></FONT
^
./test/HTML/doc3.htm:747: error: Unexpected end tag : p
=7708"></a></IFRAME></CENTER></LI></FONT></TD></TR></TBODY></TABLE></CENTER></P
^
./test/HTML/doc3.htm:772: error: Opening and ending tag mismatch: font and form
archive</A></FONT> </FORM></CENTER></TD></TR></TBODY></TABLE><!--
^
./test/HTML/doc3.htm:772: error: Unexpected end tag : form
archive</A></FONT> </FORM></CENTER></TD></TR></TBODY></TABLE><!--
^
./test/HTML/doc3.htm:815: error: Opening and ending tag mismatch: b and noscript
<B><NOSCRIPT></B><A
^
./test/HTML/doc3.htm:820: error: Unexpected end tag : a
</A></A></B><B></NOSCRIPT></B><B><!-- END GoTo.com Search Box --></
^
./test/HTML/doc3.htm:820: error: Unexpected end tag : noscript
</A></A></B><B></NOSCRIPT></B><B><!-- END GoTo.com Search Box --></
^
./test/HTML/doc3.htm:826: error: Opening and ending tag mismatch: form and center
</FORM><!-- Pricewatch Search Box --><A
^
./test/HTML/doc3.htm:833: error: Unexpected end tag : p
Special<BR>Code:BP6-hd</FONT></A> </P></CENTER></TD></TR></TBODY></
^
./test/HTML/doc3.htm:833: error: Opening and ending tag mismatch: center and table
Special<BR>Code:BP6-hd</FONT></A> </P></CENTER></TD></TR></TBODY></
^
./test/HTML/doc3.htm:839: error: Unexpected end tag : p
width="100%">&nbsp;</TD></TR></TBODY></TABLE></P></CENTER></TR></TBODY></TABLE>
^
./test/HTML/doc3.htm:839: error: Unexpected end tag : center
width="100%">&nbsp;</TD></TR></TBODY></TABLE></P></CENTER></TR></TBODY></TABLE>
^
./test/HTML/doc3.htm:839: error: Unexpected end tag : tr
width="100%">&nbsp;</TD></TR></TBODY></TABLE></P></CENTER></TR></TBODY></TABLE>
^
./test/HTML/doc3.htm:839: error: Unexpected end tag : tbody
width="100%">&nbsp;</TD></TR></TBODY></TABLE></P></CENTER></TR></TBODY></TABLE>
^
./test/HTML/doc3.htm:839: error: Unexpected end tag : table
width="100%">&nbsp;</TD></TR></TBODY></TABLE></P></CENTER></TR></TBODY></TABLE>
^
./test/HTML/doc3.htm:840: error: Unexpected end tag : td
<CENTER></CENTER></TD></TR><TR><TD COLSPAN="3" VALIGN="TOP"
^
./test/HTML/doc3.htm:840: error: Unexpected end tag : tr
<CENTER></CENTER></TD></TR><TR><TD COLSPAN="3" VALIGN="TOP"
^
./test/HTML/doc3.htm:841: error: Unexpected end tag : table
HEIGHT="70">&nbsp;</TD> </TR></TABLE>
^

2927
result/HTML/doc3.htm.sax Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body><p tst="a&amp;b" tst2="a&amp;b" tst3="a &amp; b">
a&amp;b
a&amp;b
a &amp; b
</p></body></html>

View File

@ -0,0 +1,12 @@
./test/HTML/entities.html:1: error: htmlParseEntityRef: expecting ';'
<p tst="a&amp;b" tst2="a&b" tst3="a & b">
^
./test/HTML/entities.html:1: error: htmlParseEntityRef: no name
<p tst="a&amp;b" tst2="a&b" tst3="a & b">
^
./test/HTML/entities.html:3: error: htmlParseEntityRef: expecting ';'
a&b
^
./test/HTML/entities.html:4: error: htmlParseEntityRef: no name
a & b
^

View File

0
result/HTML/fp40.htm.sax Normal file
View File

View File

@ -0,0 +1,38 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(HTML, -//W3C//DTD HTML 4.0 Transitional//EN, http://www.w3.org/TR/REC-html40/loose.dtd)
SAX.startElement(html)
SAX.characters(
, 1)
SAX.startElement(head)
SAX.characters(
, 3)
SAX.startElement(title)
SAX.endElement(title)
SAX.characters(
, 1)
SAX.endElement(head)
SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
, 1)
SAX.startElement(ul)
SAX.characters(
, 1)
SAX.startElement(li)
SAX.characters(First item
, 11)
SAX.endElement(li)
SAX.startElement(li)
SAX.characters(Second item, closes the first , 34)
SAX.endElement(li)
SAX.endElement(ul)
SAX.characters(
, 2)
SAX.endElement(body)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 1)
SAX.endDocument()

36
result/HTML/reg1.html.sax Normal file
View File

@ -0,0 +1,36 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.characters(
, 1)
SAX.startElement(head)
SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Regression test 1, 17)
SAX.endElement(title)
SAX.characters(
, 1)
SAX.endElement(head)
SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
, 1)
SAX.startElement(h1)
SAX.characters(Regression test 1, 17)
SAX.endElement(h1)
SAX.characters(
, 1)
SAX.startElement(p)
SAX.characters(
Ok file no problem
, 20)
SAX.endElement(p)
SAX.endElement(body)
SAX.characters(
, 1)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 1)
SAX.endDocument()

41
result/HTML/reg2.html.sax Normal file
View File

@ -0,0 +1,41 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.characters(
, 1)
SAX.startElement(head)
SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Regression test 2, 17)
SAX.endElement(title)
SAX.characters(
, 1)
SAX.endElement(head)
SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
, 1)
SAX.startElement(h1)
SAX.characters(Regression test 2, 17)
SAX.endElement(h1)
SAX.characters(
, 1)
SAX.startElement(p)
SAX.characters(
Autoclose of tag P
, 20)
SAX.endElement(p)
SAX.startElement(p)
SAX.characters(
Ok file no problem
, 20)
SAX.endElement(p)
SAX.endElement(body)
SAX.characters(
, 1)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 1)
SAX.endDocument()

45
result/HTML/reg3.html.sax Normal file
View File

@ -0,0 +1,45 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.characters(
, 1)
SAX.startElement(head)
SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Regression test 3, 17)
SAX.endElement(title)
SAX.characters(
, 1)
SAX.endElement(head)
SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
, 1)
SAX.startElement(h1)
SAX.characters(Regression test 3, 17)
SAX.endElement(h1)
SAX.characters(
, 1)
SAX.startElement(p)
SAX.characters(
Autoclose of tag P
, 20)
SAX.endElement(p)
SAX.startElement(hr)
SAX.endElement(hr)
SAX.characters(
, 1)
SAX.startElement(p)
SAX.characters(
Ok file no problem
, 20)
SAX.endElement(p)
SAX.endElement(body)
SAX.characters(
, 1)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 1)
SAX.endDocument()

43
result/HTML/reg4.html.sax Normal file
View File

@ -0,0 +1,43 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.characters(
, 1)
SAX.startElement(head)
SAX.characters(
, 1)
SAX.startElement(title)
SAX.characters(Regression test 4, 17)
SAX.endElement(title)
SAX.characters(
, 1)
SAX.endElement(head)
SAX.characters(
, 1)
SAX.startElement(body)
SAX.characters(
, 1)
SAX.startElement(h1)
SAX.characters(Regression test 4, 17)
SAX.endElement(h1)
SAX.characters(
, 1)
SAX.startElement(p)
SAX.characters(
Wrong close of tag P
, 22)
SAX.endElement(p)
SAX.startElement(hr)
SAX.endElement(hr)
SAX.characters(
, 1)
SAX.error: Unexpected end tag : p
SAX.characters(
, 1)
SAX.endElement(body)
SAX.characters(
, 1)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 1)
SAX.endDocument()

145
result/HTML/test2.html.sax Normal file
View File

@ -0,0 +1,145 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.internalSubset(HTML, -//W3C//DTD HTML 4.0 Transitional//EN, http://www.w3.org/TR/REC-html40/loose.dtd)
SAX.startElement(html)
SAX.startElement(head)
SAX.characters( , 1)
SAX.startElement(title)
SAX.characters(Linux Today, 11)
SAX.endElement(title)
SAX.endElement(head)
SAX.characters(
, 1)
SAX.startElement(body, bgcolor='White', link='Blue', text='Black', VLINK='Black', ALINK='Red')
SAX.characters(
, 2)
SAX.startElement(center)
SAX.characters(
, 1)
SAX.startElement(table, BORDER='0', WIDTH='100%', CELLSPACING='0', CELLPADDING='0')
SAX.characters(
, 9)
SAX.startElement(tr, BGCOLOR='#FFFFFF')
SAX.characters(
, 17)
SAX.startElement(td, HEIGHT='90')
SAX.characters(
, 1)
SAX.startElement(a, href='http://linuxtoday.com/cgi-bin/click.pl?adnum=49')
SAX.startElement(img, src='/pics/door_linux.gif', border='0', width='468', height='60', alt='Atipa Linux solutions. Your reliable cluster, server, and workstation solution. Win a Free Celeron Linux Workstation!')
SAX.endElement(img)
SAX.endElement(a)
SAX.characters(
, 18)
SAX.endElement(td)
SAX.characters(
, 5)
SAX.startElement(td)
SAX.startElement(img, SRC='/pics/lt.gif', VSPACE='5', alt='Linux Today Logo')
SAX.endElement(img)
SAX.startElement(br)
SAX.endElement(br)
SAX.startElement(font, size='-1')
SAX.startElement(a, href='http://linux.com')
SAX.characters(linux.com, 9)
SAX.endElement(a)
SAX.characters( partner, 8)
SAX.endElement(font)
SAX.startElement(p)
SAX.endElement(p)
SAX.endElement(td)
SAX.characters(
, 10)
SAX.endElement(tr)
SAX.characters(
, 1)
SAX.endElement(table)
SAX.characters(
, 1)
SAX.startElement(font, size='2', face='Helvetica')
SAX.characters(
[ , 3)
SAX.startElement(a, href='http://linuxtoday.com/')
SAX.characters(headlines, 9)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://features.linuxtoday.com/')
SAX.characters(features, 8)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://commercial.linuxtoday.com/')
SAX.characters(commercial, 10)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://security.linuxtoday.com/')
SAX.characters(security, 8)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://jobs.linuxtoday.com/')
SAX.characters(jobs, 4)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://linuxtoday.com/volt/')
SAX.characters(volt, 4)
SAX.endElement(a)
SAX.characters( |
, 4)
SAX.startElement(a, href='http://linuxtoday.com/contrib.pl')
SAX.characters(contribute/submit, 17)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://linuxtoday.com/advertise/')
SAX.characters(advertise, 9)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://linuxtoday.com/search.html')
SAX.characters(search, 6)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://linuxtoday.com/digests/')
SAX.characters(site digests, 12)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://linuxtoday.com/mail-lists')
SAX.characters(mailing lists, 13)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://linuxtoday.com/about/')
SAX.characters(about us, 8)
SAX.endElement(a)
SAX.characters( |
, 3)
SAX.startElement(a, href='http://linuxtoday.com/linkus.html')
SAX.characters(link us, 7)
SAX.endElement(a)
SAX.characters( ], 2)
SAX.endElement(font)
SAX.characters(
, 1)
SAX.endElement(center)
SAX.characters(
, 1)
SAX.startElement(p)
SAX.characters(
, 1)
SAX.endElement(p)
SAX.endElement(body)
SAX.characters(
, 1)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 1)
SAX.endDocument()

230
result/HTML/test3.html.sax Normal file
View File

@ -0,0 +1,230 @@
SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.characters(
, 2)
SAX.startElement(head)
SAX.characters(
, 2)
SAX.startElement(base, target='contents')
SAX.endElement(base)
SAX.characters(
, 2)
SAX.endElement(head)
SAX.characters(
, 2)
SAX.startElement(body)
SAX.startElement(a, name='ProblemDomain.Package')
SAX.startElement(h2)
SAX.characters(Component Package diagram Prob, 39)
SAX.endElement(h2)
SAX.characters(
, 2)
SAX.endElement(a)
SAX.startElement(p)
SAX.endElement(p)
SAX.startElement(hr)
SAX.endElement(hr)
SAX.error: Unexpected end tag : p
SAX.characters(
, 2)
SAX.startElement(dl)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(b)
SAX.characters(Stereotype , 11)
SAX.endElement(b)
SAX.characters(problem domain, 14)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(b)
SAX.characters(Alias , 6)
SAX.endElement(b)
SAX.characters(Problem Domain, 14)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(b)
SAX.characters(Note , 5)
SAX.endElement(b)
SAX.endElement(dt)
SAX.startElement(dd)
SAX.characters(The Problem Domain package is , 59)
SAX.startElement(dd)
SAX.characters(Interface, thats stores and ma, 58)
SAX.endElement(dd)
SAX.endElement(dd)
SAX.endElement(dl)
SAX.characters(
, 2)
SAX.startElement(p)
SAX.endElement(p)
SAX.startElement(hr)
SAX.endElement(hr)
SAX.error: Unexpected end tag : p
SAX.characters(
, 2)
SAX.startElement(dl)
SAX.characters(
, 4)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='HumanInterface.FamilyFrame.html#HumanInterface.FamilyFrame')
SAX.characters(HumanInterface.FamilyFrame, 26)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Birth.html#ProblemDomain.Birth')
SAX.characters(ProblemDomain.Birth, 19)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Death.html#ProblemDomain.Death')
SAX.characters(ProblemDomain.Death, 19)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Divorce.html#ProblemDomain.Divorce')
SAX.characters(ProblemDomain.Divorce, 21)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Family.html#ProblemDomain.Family')
SAX.characters(ProblemDomain.Family, 20)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Individual.html#ProblemDomain.Individual')
SAX.characters(ProblemDomain.Individual, 24)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.LifeEvent.html#ProblemDomain.LifeEvent')
SAX.characters(ProblemDomain.LifeEvent, 23)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Marriage.html#ProblemDomain.Marriage')
SAX.characters(ProblemDomain.Marriage, 22)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Note.html#ProblemDomain.Note')
SAX.characters(ProblemDomain.Note, 18)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.endElement(dl)
SAX.characters(
, 4)
SAX.startElement(h4)
SAX.startElement(b)
SAX.characters(Links, 5)
SAX.error: Opening and ending tag mismatch: h4 and b
SAX.endElement(b)
SAX.endElement(h4)
SAX.error: Unexpected end tag : b
SAX.characters(
, 2)
SAX.startElement(ul)
SAX.startElement(li)
SAX.startElement(b)
SAX.characters(Link to , 8)
SAX.endElement(b)
SAX.startElement(a, href='HumanInterface.Package.html#HumanInterface.Package')
SAX.characters(HumanInterface, 14)
SAX.endElement(a)
SAX.endElement(li)
SAX.endElement(ul)
SAX.characters(
, 2)
SAX.startElement(dir)
SAX.endElement(dir)
SAX.characters(
, 2)
SAX.startElement(ul)
SAX.startElement(li)
SAX.startElement(b)
SAX.characters(Link to , 8)
SAX.endElement(b)
SAX.startElement(a, href='DataManagement.FlatFile.Package.html#DataManagement.FlatFile.Package')
SAX.characters(DataManagement.FlatFile, 23)
SAX.endElement(a)
SAX.endElement(li)
SAX.endElement(ul)
SAX.characters(
, 2)
SAX.startElement(dir)
SAX.endElement(dir)
SAX.characters(
, 2)
SAX.startElement(ul)
SAX.startElement(li)
SAX.startElement(b)
SAX.characters(Link to , 8)
SAX.endElement(b)
SAX.startElement(a, href='DataManagement.Package.html#DataManagement.Package')
SAX.characters(DataManagement, 14)
SAX.endElement(a)
SAX.endElement(li)
SAX.endElement(ul)
SAX.characters(
, 2)
SAX.startElement(dir)
SAX.endElement(dir)
SAX.characters(
, 2)
SAX.endElement(body)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 2)
SAX.endDocument()

View File

@ -181,75 +181,75 @@ option value="http://www.hotbot.com/?SM=MC&DV=0&LG=any&RD=RG&DC=10&DE=2&_v=2&OP
./test/HTML/wired.html:97: error: htmlParseEntityRef: expecting ';'
lue="http://www.hotbot.com/?SM=MC&DV=0&LG=any&RD=RG&DC=10&DE=2&_v=2&OPs=MDRTP&M
^
./test/HTML/wired.html:159: error: Opening and ending tag mismatch: td and form
./test/HTML/wired.html:165: error: Opening and ending tag mismatch: td and form
</td>
^
./test/HTML/wired.html:164: error: Unexpected end tag : form
./test/HTML/wired.html:170: error: Unexpected end tag : form
</tr> </form>
^
./test/HTML/wired.html:238: error: Opening and ending tag mismatch: td and form
./test/HTML/wired.html:244: error: Opening and ending tag mismatch: td and form
</select></font></td></tr>
^
./test/HTML/wired.html:242: error: htmlParseEntityRef: expecting ';'
./test/HTML/wired.html:248: error: htmlParseEntityRef: expecting ';'
MG SRC="http://barnesandnoble.bfast.com/booklink/serve?sourceid=383471&is_searc
^
./test/HTML/wired.html:257: error: Unexpected end tag : form
./test/HTML/wired.html:265: error: Unexpected end tag : form
</tr> </form>
^
./test/HTML/wired.html:338: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:346: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:366: error: htmlParseEntityRef: no name
./test/HTML/wired.html:374: error: htmlParseEntityRef: no name
a, sans-serif"><b><a href="/news/commentarySection/0,1292,31926,00.html">Rants
^
./test/HTML/wired.html:366: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:374: error: Opening and ending tag mismatch: td and font
Readers on Apple's G4 ... AOL's passwords ... MS vs. Linux.</font><br><br> </t
^
./test/HTML/wired.html:366: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:374: error: Opening and ending tag mismatch: td and font
Readers on Apple's G4 ... AOL's passwords ... MS vs. Linux.</font><br><br> </t
^
./test/HTML/wired.html:394: error: Opening and ending tag mismatch: a and font
./test/HTML/wired.html:402: error: Opening and ending tag mismatch: a and font
w.vignette.com/" style="text-decoration:none"><font color="#000000">Vignette</a
^
./test/HTML/wired.html:398: error: htmlParseEntityRef: expecting ';'
./test/HTML/wired.html:406: error: htmlParseEntityRef: expecting ';'
ervlet/appservlet?from=/wired/sprint/&template=/security/security.html&SITE=
^
./test/HTML/wired.html:398: error: htmlParseEntityRef: expecting ';'
./test/HTML/wired.html:406: error: htmlParseEntityRef: expecting ';'
ervlet/appservlet?from=/wired/sprint/&template=/security/security.html&SITE=
^
./test/HTML/wired.html:398: error: htmlParseEntityRef: expecting ';'
./test/HTML/wired.html:406: error: htmlParseEntityRef: expecting ';'
wired.com&BANNER=Sprint" style="text-decoration:none"><font color="#000000">Spr
^
./test/HTML/wired.html:398: error: Opening and ending tag mismatch: a and font
./test/HTML/wired.html:406: error: Opening and ending tag mismatch: a and font
com&BANNER=Sprint" style="text-decoration:none"><font color="#000000">Sprint</a
^
./test/HTML/wired.html:398: error: End tag : expected '>'
./test/HTML/wired.html:406: error: End tag : expected '>'
=Sprint" style="text-decoration:none"><font color="#000000">Sprint</a></i></fon
^
./test/HTML/wired.html:404: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:412: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:404: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:412: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:404: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:412: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:404: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:412: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:404: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:412: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:404: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:412: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:404: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:412: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:404: error: Opening and ending tag mismatch: td and font
./test/HTML/wired.html:412: error: Opening and ending tag mismatch: td and font
</td>
^
./test/HTML/wired.html:422: error: htmlParseEntityRef: expecting ';'
./test/HTML/wired.html:430: error: htmlParseEntityRef: expecting ';'
href="http://www.lycos.com/news/flash/hitlerbunker.html?v=wn1015&lpv=1">Lycos</
^

View File

30
test/HTML/doc2.htm Normal file
View File

@ -0,0 +1,30 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0016)http://intranet/ -->
<!-- BEGIN Naviscope Javascript --><HTML><HEAD><TITLE>Welcome to Copernic.com</TITLE>
<SCRIPT language=javascript>
NS_ActualOpen=window.open;
function NS_NullWindow(){this.window;}
function NS_NewOpen(url,nam,atr){return(new NS_NullWindow());}
window.open=NS_NewOpen;
</SCRIPT>
<!-- END Naviscope Javascript --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><!-- saved from url=(0027)http://www.agents-tech.com/ -->
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META
content="Copernic.com Inc. develops innovative agent technology solutions to efficiently access and manage the overwhelming quantity of information available on the Internet and intranets."
name=DESCRIPTION>
<META
content=agent,technology,intranet,extranet,management,filtering,ranking,solution,service,intelligent,intelligence,client,server,architecture,developer,development,information,telecommunication,announcement,press,product,profile,contact,multi-agent,meta-search,metasearch,multi-thread,mobile,wireless,shopping,robot,PCS,Copernic,engine,toolkit,CDK,EDK
name=KEYWORDS>
<META content="MSHTML 5.00.3103.1000" name=GENERATOR></HEAD><FRAMESET
border=false cols=172,* frameBorder=0 frameSpacing=0><FRAME marginHeight=0
marginWidth=0 name=left noResize scrolling=no src="doc2_files/side.htm"
target="rtop"><FRAMESET rows=43,*><FRAME marginHeight=0 marginWidth=0 name=rtop
noResize scrolling=no src="doc2_files/top.htm" target="rbottom"><FRAME
name=rbottom noResize src="doc2_files/contents.htm"
target="_top"></FRAMESET><NOFRAMES>
<body bgcolor="#FFFFFF" text="#000000" link="#000080" vlink="#000080" alink="#000080"
topmargin="0" leftmargin="0" marginheight="0" marginwidth="0">
<p>This page uses frames, but your browser doesn't support them.</p>
</body>
</NOFRAMES></FRAMESET></HTML>

851
test/HTML/doc3.htm Normal file
View File

@ -0,0 +1,851 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0025)http://bp6.gamesquad.net/ -->
<!-- BEGIN Naviscope Javascript --><HTML><HEAD><TITLE>BP6.com #1 online resource for the BP6 Mobo....</TITLE>
<SCRIPT language=javascript>
NS_ActualOpen=window.open;
function NS_NullWindow(){this.window;}
function NS_NewOpen(url,nam,atr){return(new NS_NullWindow());}
window.open=NS_NewOpen;
</SCRIPT>
<!-- END Naviscope Javascript --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"><!--last modified on Tuesday, February 22, 2000 11:47 PM -->
<META content=text/html;CHARSET=iso-8859-1 http-equiv=Content-Type>
<META content=Tim name=Author>
<STYLE type=text/css>A.nav {
COLOR: #003399; TEXT-DECORATION: none
}
A.nav:hover {
COLOR: #3366cc; TEXT-DECORATION: underline
}
</STYLE>
<SCRIPT language=JavaScript>
<!-- Idea by: Nic Wolfe (Nic@TimelapseProductions.com) -->
<!-- Web URL: http://fineline.xs.mw -->
<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->
<!-- Begin
function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbars=0, scrollbars=0, location=0, statusbars=0, menubars=0, resizable=0, width=145, height=250');");
}
// End -->
</SCRIPT>
<META content="MSHTML 5.00.3103.1000" name=GENERATOR></HEAD>
<BODY aLink=red bgColor=black link=red text=white vLink=red>
<P>
<DIV align=center>
<TABLE border=0 cellPadding=0 cellSpacing=0 width="80%">
<TBODY>
<TR>
<TD vAlign=top width=31><A href="http://bp6.gamesquad.net/"><IMG
align=bottom border=0 height=74 src="doc3_files/logo.gif"
width=252></A></TD>
<TD align=left bgColor=#000000><IMG height=15 src="doc3_files/spacer.gif"
width=15><!-- START GAMESQUAD.NET IFRAME RICH MEDIA CODE --> <!-- © 2000 GameSquad.net All Rights Reserved. --><IFRAME border=0
frameBorder=no height=60 marginHeight=0 marginWidth=0 scrolling=no
src="doc3_files/adcycle.htm"
width=468>
<a href="http://ads.gamesquad.net/addclick.exe/adclick.cgi?REGION=game|tech|ent&id=1" target="_top"><img src="http://ads.gamesquad.net/addclick.exe/adcycle.cgi?group=52&media=1&id=1" width=468 height=60 border=0 ALT="GSN ROS Ad"></a>
</IFRAME><!-- END GAMESQUAD.NET IFRAME RICH MEDIA CODE --><BR><IMG
height=15 src="doc3_files/spacer.gif" width=400> </TD></TR>
<TR>
<TD bgColor=#003399 colSpan=2>
<P align=right><IMG align=right border=0 height=18 hspace=0
src="doc3_files/trcorner.gif" width=20><IMG align=left border=0 height=18
hspace=0 src="doc3_files/tlcorner.gif" width=20><FONT face=Verdana
size=2>Monday, July 31st, 2000</FONT> </P></TD></TR>
<TR>
<TD colSpan=2>
<TABLE bgColor=#003399 border=0 cellPadding=0 cellSpacing=4
width="100%"><TBODY>
<TR>
<TD bgColor=#666666 width="100%">
<CENTER>
<P>
<TABLE bgColor=black border=0 cellPadding=0 cellSpacing=1
width="100%">
<TBODY>
<TR>
<TD background=doc3_files/hscan.gif bgColor=#666666
width="100%"><IMG height=1 src="doc3_files/spacer.gif"
width=738><BR>
<CENTER>
<TABLE border=0 cellPadding=2 cellSpacing=0 width="91%">
<TBODY>
<TR>
<TD vAlign=top width="15%">
<P align=center><A
href="http://bp6.gamesquad.net/specs.phtml"><IMG
align=bottom
alt="Abit BP6 Motherboard specification and information."
border=0 height=45 src="doc3_files/bp6icon.gif"
width=70></A><FONT face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/specs.phtml"><FONT
color=white face=Verdana size=1>BP6 Specs</FONT></A>
</P></TD>
<TD vAlign=top width="15%">
<P align=center><A
href="http://bp6.gamesquad.net/bxcool.phtml"><IMG
align=bottom
alt="How to cool the BX Chipset on your BP6." border=0
height=45 src="doc3_files/bxcool.gif" width=70></A><FONT
face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/uc.phtml"><FONT
color=white face=Verdana size=1>BX Cooling</FONT></A>
</P></TD>
<TD vAlign=top width="15%">
<P align=center><A
href="http://bp6.gamesquad.net/contest.phtml"><IMG
align=bottom
alt="The U;timate Gaming Contest - Coming Soon!"
border=0 height=45 src="doc3_files/ugmcontest.gif"
width=70></A><FONT face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/contest.phtml"><FONT
color=white face=Verdana size=1>UGM Contest</FONT></A>
</P></TD>
<TD vAlign=top width="15%">
<P align=center><A
href="http://bp6.gamesquad.net/uc.phtml"><IMG
align=bottom
alt="Cooling &amp; Heatsink review for the BP6."
border=0 height=45 src="doc3_files/alpha.gif"
width=70></A><FONT face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/uc.phtml"><FONT
color=white face=Verdana size=1>Heatsinks</FONT></A>
</P></TD>
<TD vAlign=top width="15%">
<P align=center><A
href="http://bp6.gamesquad.net/101.phtml"><IMG
align=bottom
alt="BP6 101 - Class is now in session. Welcome newbies!"
border=0 height=45 src="doc3_files/bp6101.gif"
width=70></A><FONT face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/101.phtml"><FONT
color=white face=Verdana size=1>BP6 101</FONT></A>
</P></TD>
<TD vAlign=top width="15%">
<P align=center><A
href="http://bp6.gamesquad.net/win2k_install.phtml"><IMG
align=bottom
alt="Install guide for installing Windows 2000 on the BP6 "
border=0 height=45 src="doc3_files/win2kht.gif"
width=70></A><FONT face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/win2k_install.phtml"><FONT
color=white face=Verdana size=1>Win2k Install</FONT></A>
</P></TD>
<TD vAlign=top width="15%">
<P align=center><A href="http://www.gentus.com/"><IMG
align=bottom
alt="Taking a first look at the Abit Linux release called "
border=0 height=45 src="doc3_files/gentusbox.gif"
width=70 Gentus?.?></A><BR><A
href="http://www.gentus.com/"><FONT color=white
face=Verdana size=1>Gentus</FONT></A>
</P></TD></TR></TBODY></TABLE></CENTER></TD></TR></TBODY></TABLE></CENTER></P></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE bgColor=#003399 border=0 cellSpacing=6 width="80%">
<TBODY>
<TR>
<TD bgColor=black vAlign=top width="10%">
<TABLE border=0 cellPadding=3 cellSpacing=0 width="100%">
<TBODY>
<TR>
<TD width="100%"><IMG height=1 src="doc3_files/spacer.gif"
width=111><BR><B><FONT color=yellow face=Verdana
size=2>REVIEWS</FONT></B><FONT face=Verdana size=2><BR>
<HR align=center>
</FONT><A href="http://bp6.gamesquad.net/bp6reviews.phtml"><FONT
color=white face=Verdana size=1>BP6 Reviews</FONT></A><FONT
face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/h2o.phtml"><FONT color=white
face=Verdana size=1>BP6 Watercooling</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/bxcool.phtml"><FONT color=white
face=Verdana size=1>BX Chipset Cooling</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/benchmark.phtml"><FONT color=white
face=Verdana size=1>Benchmarks</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/bp6fsb.phtml"><FONT color=white
face=Verdana size=1>BP6FSB Utility</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/powerleap.phtml"><FONT color=white
face=Verdana size=1>PowerLeap NEO S370</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/seti.phtml"><FONT color=white
face=Verdana size=1>SETI on the BP6</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/orbs.phtml"><FONT color=white
face=Verdana size=1>Golden Orbs I</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/orbs/orbs2.phtml"><FONT color=white
face=Verdana size=1>Golden Orbs II</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/Q6fix.phtml"><FONT color=white
face=Verdana size=1>VTT Solution</FONT></A><FONT face=Verdana
size=1><BR><BR></FONT><B><FONT color=yellow face=Verdana
size=2>NAVIGATE</FONT></B><FONT color=yellow face=Verdana size=2>
<HR align=center>
</FONT><A href="http://www.bp6.com/"><FONT color=white face=Verdana
size=1>News</FONT></A><FONT face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/chat.phtml"><FONT color=white
face=Verdana size=1>Online Text Chat</FONT></A><FONT face=Verdana
size=1><BR></FONT><A href="javascript:popUp('chat_popup.htm')"><FONT
color=white face=Verdana size=1>Voice Chat</FONT></A><BR><A
href="http://216.247.220.192/Forum"><FONT color=white face=Verdana
size=1>Messageboard</FONT></A><FONT face=Verdana
size=1><BR></FONT><A href="http://bp6.gamesquad.net/cooling"><FONT
color=white face=Verdana size=1>Temp. Converter</FONT></A><FONT
face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/uc.phtml"><FONT color=white
face=Verdana size=1>Picture Gallery</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/bios.phtml"><FONT color=white
face=Verdana size=1>Latest BIOS</FONT></A><FONT face=Verdana
size=1><BR></FONT><A href="http://bp6.gamesquad.net/files/"><FONT
color=white face=Verdana size=1>Drivers &amp; Files</FONT></A><FONT
face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/uc.phtml"><FONT color=white
face=Verdana size=1>UGM of the week</FONT></A><FONT face=Verdana
size=1><BR></FONT><A
href="http://bp6.gamesquad.net/contest.phtml"><FONT color=white
face=Verdana size=1>BP6 Contest</FONT></A><FONT face=Verdana
size=1><BR><BR></FONT><B><FONT color=yellow face=Verdana
size=2>OTHER STUFF</FONT></B><FONT color=yellow face=Verdana size=2>
<HR align=center>
</FONT><A href="http://bp6.gamesquad.net/whois.phtml"><FONT
color=white face=Verdana size=1>Who is Tim?</FONT></A><FONT
face=Verdana size=1><BR></FONT><A href="mailto:tim@bp6.com"><FONT
color=white face=Verdana size=1>Contact BP6.com</FONT></A><FONT
face=Verdana size=1><BR></FONT><A
href="http://bp6.gamesquad.net/uc.phtml"><FONT color=white
face=Verdana size=1>Affiliates Section</FONT></A><FONT face=Verdana
size=1><BR></FONT><A href="http://bp6.gamesquad.net/uc.phtml"><FONT
color=white face=Verdana size=1>Sponsors Section <BR></FONT><A
href="http://bp6.gamesquad.net/links.phtml"><FONT color=white
face=Verdana size=1>Links<BR><BR></FONT></A><B><FONT color=yellow
face=Verdana size=2>PC SPECIALS</FONT></B><FONT color=yellow
face=Verdana size=2>
<HR align=center>
</FONT><A href="http://bp6.gamesquad.net/specials.phtml"><FONT
color=white face=Verdana size=1>Vendor
Specials<BR><BR></FONT></A><BR></FONT></A><B><FONT color=yellow
face=Verdana size=2>Pic of the day</FONT></B>
<HR>
<CENTER>
<P align=center><FONT face="Verdana, Arial, Helvetica" size=1><A
href="http://bp6.gamesquad.net/cgi-bin/schlabo/potd.pl"><IMG
alt="No picture is available for today." border=0
src="doc3_files/potd_na_110x83.gif"></A> </FONT></P></CENTER><BR>
<CENTER></CENTER><BR><!--<A HREF="code:javascript:ID_FTPWebView.InvokeHelp()"><FONT SIZE="1" COLOR="white" FACE="Verdana">FTP Help</FONT></A>--></TD></TR></TBODY></TABLE></TD>
<TD bgColor=white vAlign=top width="80%"><IMG height=1
src="doc3_files/spacer.gif" width=490><BR>
<CENTER>
<P>
<TABLE bgColor=white border=0 cellPadding=10 cellSpacing=0 height="100%"
width="100%">
<TBODY>
<TR>
<TD bgColor=white vAlign=top width="100%">
<CENTER><A href="http://www.encounter2001.com/" target=_blank><IMG
border=0 height=60 src="doc3_files/banner2.gif" width=468></A>
</CENTER><BR><A name=news_top></A><FONT color=#003366
face=verdana,arial size=2><B>Headlines</B></FONT><BR><FONT
face=arial size=1><A class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem965012956,78924,">Chat
with ABIT - 8:09PM PDT</A></FONT><BR><FONT face=arial size=1><A
class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964766837,26344,">Fixed
wallpaper - 11:47PM PDT</A></FONT><BR><FONT face=arial size=1><A
class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964762841,25865,">Seti
update - 10:40PM PDT</A></FONT><BR><FONT face=arial size=1><A
class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964732235,45502,">Judge
gives Napster the Boot!! - 2:10PM PDT</A></FONT><BR><FONT face=arial
size=1><A class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964713289,83675,">Ram
Sinks.. more cooling for small places. - 8:54AM
PDT</A></FONT><BR><FONT face=arial size=1><A class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964671589,7831,">is
it [H]ard? - 9:19PM PDT</A></FONT><BR><FONT face=arial size=1><A
class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964644047,60218,">WiLd
CaSe!! - 1:40PM PDT</A></FONT><BR><FONT face=arial size=1><A
class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964631110,84122,">What
the heck is a Peltier?!?! - 10:05AM PDT</A></FONT><BR><FONT
face=arial size=1><A class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964587833,74573,">HELLO
EVERYONE!!! - 10:03PM PDT</A></FONT><BR><FONT face=arial size=1><A
class=nav
href="http://bp6.gamesquad.net/index.phtml#newsitem964429577,13375,">BP6
Q3 server up and running.. - 2:06AM PDT</A></FONT><BR><BR><!-- NP v3.7.5 --><A
name=newsitem965012956,78924,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial size=2><B>Sunday,
July 30, 2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>Chat with
ABIT</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:Holodeck@bp6.com">Holodeck2</A> @ 8:09PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/965012956,78924,.html"><IMG
border=0 src="doc3_files/comments.gif">0 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>I&#8217;m slacking a little. All game no
work makes Holodeck2 a happy boy :-)<BR><BR>Wallpaper update: I got
off my lazy ass and redid the 1280x1024 wall paper, now it has the 2
celerons.<BR><BR><B><A href="http://fullon3d.com/chat/abit/"
target=3d>Fullon3d had a live chat with that Eric guy from Abit.
</A></B>Submitted by: MJS<BR><BR>Here&#8217;s a little clip:<BR>[Falcon]
BP6-2??<BR>[EricBoeing] We already have a micro ATX dual flip-chip
board<BR>[EricBoeing] but it's OEM only<BR>[EricBoeing] the full ATX
version should be out Septemberish<BR></FONT><BR><BR><A
name=newsitem964766837,26344,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial size=2><B>Thursday,
July 27, 2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>Fixed
wallpaper</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:Holodeck@bp6.com">Holodeck2</A> @ 11:47PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964766837,26344,.html"><IMG
border=0 src="doc3_files/comments.gif">5 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2><B>Get them now!!</B><BR>This is a
fixed bp6 wallpaper. In all the popular flavors, err...
resolutions.<BR><IMG height=180 src="doc3_files/3-800.jpg"
width=240><BR>It's still the Intels Inside one with a spelling
change; from "Mothboard" to "Motherboard"<BR><BR>Thanks to Matt for
pointing that out to me.<BR>I would also like to thank Kevin for
hosting my last batch and Radu for the previous "DUEL"/"DUAL"
error.<BR>And 1 more person, THANK YOU TIM for letting me borrow
your server space ;-)<BR><BR>If you need a weird resolution, feel
free to <A href="mailto:Holodeck2@home.com">e-mail</A> me requesting
for one.<BR>If you have ideas or more errors to point out, <A
href="mailto:Holodeck2@home.com">mailto:Holodeck2@home.com</A><BR><BR><A
href="doc3_files/3-800.jpg" target=800>800x600 </A><BR><A
href="http://www.bp6.com/pics/holodeck2/wallpaper/3-1024.jpg"
target=800>1024x768 </A><BR><A
href="http://www.bp6.com/pics/holodeck2/wallpaper/3-1152.jpg"
target=800>1152x864 </A><BR><A
href="http://www.bp6.com/pics/holodeck2/wallpaper/3-1280x1024.jpg"
target=800>1280x1024 </A><BR><A
href="http://www.bp6.com/pics/holodeck2/wallpaper/3-1600.jpg"
target=800>1600x1200 </A><BR>
<P>Enjoy :-)<BR>
<P><A href="mailto:Holodeck2@home.com">Holodeck2,</A><BR>[H]ard at
work on the Brand Spanking New Wallpaper.<BR></FONT><BR><BR><A
name=newsitem964762841,25865,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>Seti update</FONT></U></B><BR><FONT
color=#0066cc face=Arial size=1><SMALL>Posted by <A class=nav
href="mailto:Holodeck@bp6.com">Holodeck2</A> @ 10:40PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964762841,25865,.html"><IMG
border=0 src="doc3_files/comments.gif">5 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2><IMG height=54
src="doc3_files/setiupdate.jpg" width=400><BR>You like the
pic?<BR><BR>Bp6 User Group Update:<BR>Completed 61531
units!!<BR><B>#168 on Top 200 All Groups</B> (Going to pass CLRC in
a few days)<BR><B>#74 on Top 200 Teams</B> (Gaining fast on
Starfleet)<BR><BR>We are flying though at the speed of light (may be
a little slower).<BR>Good job everyone!!<BR><BR>Check this page at
least once a day for new stuff :-)<BR></FONT><BR><BR><A
name=newsitem964732235,45502,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>Judge gives Napster the
Boot!!</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:Holodeck@bp6.com">Holodeck2</A> @ 2:10PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964732235,45502,.html"><IMG
border=0 src="doc3_files/comments.gif">0 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Good afternoon for everyone living in
EST. I was going to post today morning but I didn't. Here's my
story:<BR>I woke up and thought about posting something but I
decided to wax my car before the sun came up (draw your own
conclusions), wax on, wax off, wax on,..., did that for about an
hour. Then I saw the sun rise (Aaahh I'm melting... not). I sat in
front of my comp and started to search for good news to post. Saw
that a stoopid judge temporally shuts down napster. Goes to room and
cry. and now I'm here :-)<BR><BR><A
href="http://www.msnbc.com/news/437532.asp"
target="Judge vs Napster">Judge shuts Napster down
<P><IMG height=143 src="doc3_files/669915.jpg"
width=200></A><BR>Check out the Goofy guy in the suit<BR>He's Sean
Fanning, founder of Napster.<BR><BR>Got news?? <A
href="mailto:Holodeck2@home.com">mailto:Holodeck2@home.com</A><BR></FONT><BR><BR><A
name=newsitem964713289,83675,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>Ram Sinks.. more cooling for small
places.</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:tim@bp6.com">tim</A> @ 8:54AM PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964713289,83675,.html"><IMG
border=0 src="doc3_files/comments.gif">0 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Need some cooling for your Videocard
memory to get a little extra overclockability and FPS? <A
href="http://www.overclockershideout.com/RamSinks.html"
target=_BLANK>Overclockers Hiedout Ram Sinks</A> They just notified
me of their new design.<BR><IMG border=1
src="doc3_files/ramsink.jpg"></FONT><BR><BR><A
name=newsitem964671589,7831,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial
size=2><B>Wednesday, July 26,
2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>is it
[H]ard?</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:Holodeck@bp6.com">Holodeck2</A> @ 9:19PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964671589,7831,.html"><IMG
border=0 src="doc3_files/comments.gif">0 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Big heatsinks are good, very good. The
bigger the better.<BR>You can never can have a too big of heatsink
on a small chip (CPU, GPU, CHIPSET, etc)<BR><BR><IMG height=173
src="doc3_files/voodooside2.jpg" width=230><BR>My overclocked
Voodoo3 2000 with a BIG mofo heatsink on top.<BR>Peltier and
watercooling next up :-)<BR>(if you pry off the heatsink you void
the warranty )<BR><BR>it was originally posted on <A
href="http://www.hardocp.com/">[H]ardOCP </A><BR>I&#8217;m not only a
BP6er but also a [H]ardOCPer<BR></FONT><BR><BR><A
name=newsitem964644047,60218,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>WiLd CaSe!!</FONT></U></B><BR><FONT
color=#0066cc face=Arial size=1><SMALL>Posted by <A class=nav
href="mailto:Holodeck@bp6.com">Holodeck2</A> @ 1:40PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964644047,60218,.html"><IMG
border=0 src="doc3_files/comments.gif">8 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Now this person really knows how to
keep his case cool!!<BR>Addin an 18" Fan!! WOW!!<BR><BR><A
href="http://www.envador.com/Photos/PVCII/" target=_blank><IMG
src="doc3_files/TN_OpenedUp1.jpg"></A><BR>Click to go to his
site.<BR></FONT><BR><BR><A
name=newsitem964631110,84122,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>What the heck is a
Peltier?!?!</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:Holodeck@bp6.com">Holodeck2</A> @ 10:05AM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964631110,84122,.html"><IMG
border=0 src="doc3_files/comments.gif">6 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>This is for all you people who wanted
to know what a peltier is.<BR><BR>The quest fo the Perfect
Peltier<BR><A
href="http://www.tweakmax.com/html/peltier/peltier-1.cfm"
target=_blank><IMG src="doc3_files/peltier.jpg"></A> <BR>Thanks to
<A href="http://www.tweakmax.com/" target=_blank>TweakMax.com</A>
<BR><BR>Note: Today morning when I woke up I saw my whole screen
cluttered with a bunch of IMs!! I live in the USA on EST. If you
live somewhere else please check the time in my area. for example:
If you live in Europe and IM me in the morning your time I would be
sleeping it would be like 4 in the morning here. Just to let you
know <IMG src="doc3_files/smile.gif"><BR>I'm not angry at anyone...
good thing I have a long fuse <IMG
src="doc3_files/tongue.gif"><BR></FONT><BR><BR><A
name=newsitem964587833,74573,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial size=2><B>Tuesday,
July 25, 2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>HELLO
EVERYONE!!!</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:Holodeck@bp6.com">Holodeck2</A> @ 10:03PM
PDT</SMALL>&nbsp; <BR><FONT color=black face=Arial size=2>Hello
everyone, Woohoo!! I'm on!!<BR>Who is this Holodeck2 person
anyways?!?! Read on :-)<BR>I&#8217;m a regular on the bp6 messageboard,
trying to help people out with their problems.<BR>I&#8217;m the
self-proclaimed bp6 cooling expert, If you have a cooling idea, I&#8217;ve
probably already done it and can offer some incite.<BR>My computer
is always on so you can contact me whenever... problem is, I'm not
always in front of it. I'll try to update this page and keep
everyone happy :-)<BR>Any Questions or comments, you can either
contact me or post it on the messageboard.<BR><BR>Ways to contact
me.<BR>E-mail: <A
href="mailto:Holodeck2@home.com">Holodeck2@home.com</A> (All E-mails
will be answered in 24 hours or less, I guarantee it.)<BR>When you
write me an e-mail please put in the subject line "BP6" then the
rest of your subject so my e-mail program can sort it, thanks<BR><A
href="http://www.aol.com/aim">AIM: </A>Holodeck2 (instant response
if I&#8217;m in front of my comp and not trying to frag someone)<BR><A
href="http://www.icq.com/download">ICQ: </A>82640218 (rarely
on)<BR><BR>P.S. If someone named &#8220;Digital Vortex&#8221; on either Quake 3
or 2 frags you, it&#8217;s probably me. ;-)<BR></FONT><BR><BR><A
name=newsitem964429577,13375,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial size=2><B>Monday,
July 24, 2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>BP6 Q3 server up and
running..</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:tim@bp6.com">tim</A> @ 2:06AM PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964429577,13375,.html"><IMG
border=0 src="doc3_files/comments.gif">3 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Setup a Q3 server for anyone wanting
to practice in preparation for Quakecon.. Connect to bp6.dyndns.org
default port. (SERVER: BP6 system, 256 MB ram, celeron 600 on a T3
connection)... Will be moved to another BP6 server eventually. This
is only a temporary test of the system and net connection. <BR>(BTW-
there are a few bot's running around in there..)</FONT><BR><BR><A
name=newsitem964425184,95812,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>BIOS Savior to the
rescue....</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:tim@bp6.com">tim</A> @ 12:53AM PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/964425184,95812,.html"><IMG
border=0 src="doc3_files/comments.gif">2 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Do you sweat during the BIOS flashing
procedure on your BP6 mobo? If so then this little gadget maybe
worth a first look. It's called the "<B>RD1 BIOS Savior</B>" and it
plugs in between your BIOS ROM and the BIOS ROM socket on your mobo.
This device will backup your BIOS and and allow you to recover your
BIOS in the event that your flashing session goes wrong. In the
event of a bad flash, just flip a switch on the RDI and boot up your
system, and flash again. This is also good as a failsafe in case you
don't believe in Virus Protecting your computer. (Thanks to Fred for
link)<BR><A href="http://www.ioss.com.tw/eg/rd1/RD1info0004.PDF"
target=_NEW>Manufacturers Brochure</A> (PDF Format)<BR><A
href="http://192.216.185.10/mwave/doc/A06950.html"
target='_BLANK"'>Another info page</A><BR><A
href="http://192.216.185.10/mwave/ProdMB-AC-MW.hmx?UID=&amp;CID=&amp;updepts=MB&amp;DNAME=%3Cb%3EMotherboards%3C%2Fb%3E&amp;Back=ProdMB-AC-MW.hmx?"
target=_BLANK>Available for about $20</A><BR><BR><IMG
src="doc3_files/rd1.jpg"></FONT><BR><BR><A
name=newsitem963875853,12731,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial size=2><B>Monday,
July 17, 2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>How To
Overclock</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:killz@i82hq.com">DareDevil</A> @ 4:17PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963875853,12731,.html"><IMG
border=0 src="doc3_files/comments.gif">3 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>For those of you who are new to
overclocking, this guide will explain to you how to overclock, and
what some of the terms are. Like 'FSB' (what the heck is that!?
:0))<BR><BR><A href="http://netkills.qgl.org/a_oc_comp.shtml"
target=_blank>How To Overclock</A> </FONT><BR><BR><A
name=newsitem963875485,23353,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>The Cardcooler
XT</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:killz@i82hq.com">DareDevil</A> @ 4:11PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963875485,23353,.html"><IMG
border=0 src="doc3_files/comments.gif">1 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Wow! I am impressed! Nevermind keeping
the CPU's cool... Keep your whole board cool!<BR><BR><I>Even if your
not overclocking your system (or planning on it), this unit will
provide system stability and longevity. What would happen one day of
your GeForce or CPU fan went dead? You can also think of this
cooling unit as a backup to essential cooling fans in your
system.</I><BR><BR>Check this out!<BR><BR><A
href="http://www.brokenpixel.com/articles/coolerXT/cardcoolerXT_1.shtml"
target=_blank>http://www.brokenpixel.com/articles/coolerXT/cardcoolerXT_1.shtml</A>
</FONT><BR><BR><A name=newsitem963859982,88982,></A><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>'Nerd
Inside'</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:killz@i82hq.com">DareDevil</A> @ 11:53AM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963859982,88982,.html"><IMG
border=0 src="doc3_files/comments.gif">1 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>We all need to have some fun
sometimes! Check out this little web site that sells 'nerd' clothing
;) (I like the bibs in the Junior Hackerz section) :-Þ<BR><BR>
<DIV align=center><A href="http://www.nerdgear.com/"
target=_blank><IMG border=0
src="doc3_files/nerdinside.gif"></A></DIV></FONT><BR><BR><A
name=newsitem963819796,9688,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>Dual PSU Wiring diagram... (preview to
Part 1 Watercooling Project)</FONT></U></B><BR><FONT color=#0066cc
face=Arial size=1><SMALL>Posted by <A class=nav
href="mailto:tim@bp6.com">tim</A> @ 12:43AM PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963819796,9688,.html"><IMG
border=0 src="doc3_files/comments.gif">11 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>When is comes to overclocking your
system, cooling plays a big role. Powering all of those fans in your
system can cause quite a strain on your PSU (Power Supply Unit).
Depending on the number of peripherals in your system, adding a more
powerfull PSU or adding a second PSU may be neccesary. For
watercooling and using peltiers, dedicating a second PSU to power
the Peltiers (TEC's) is a good idea. Here I have come up with 2
diagrams on how I wired dual 300 watt ATX power supply units for the
Blizzard BP6 watercooling project. Consider this part of Step 1.
More will follow this week. BTW.. hacking up your PSU's is very
dangerous and is not recommended unless you know what you are doing.
<BR><BR>View Diagram 1 <A
href="http://bp6.gamesquad.net/images/wiring.jpg"
target=_BLANK>here</A>.<BR>View Diagram 2 <A
href="http://bp6.gamesquad.net/images/psu2.gif"
target=_BLANK>here</A>.<BR><BR>I used Tap-In Squeeze Connectors and
22 guage wire to connect the wires. You can get them at Radio Shack
Part# 64-3053 or <A
href="http://www.radioshack.com/ProductCatalog/ProductDetail/Index/1,2098,,00.html?SKUString1=64&amp;SKUString2=3053"
target=_blank>click here</A>.</FONT><BR><BR><A
name=newsitem963766655,78511,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial size=2><B>Sunday,
July 16, 2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>RAM Overclocking?
Hmmmmm.</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:killz@i82hq.com">DareDevil</A> @ 9:57AM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963766655,78511,.html"><IMG
border=0 src="doc3_files/comments.gif">3 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>I know we're pretty big overclockers
here at BP6.Com so, this is a post of choice ;-) I've seen the
question in the message boards, 'why can't I overclock any higher?'
Well, it's not always the CPU that's holding you back... Many other
things need to be taken care of to overclock such as your PCI
devices (can they handle the higher bus speed), the actual CPU, and
your RAM. I'm not saying that that a high quality stick of silicon
will enable you to overclock your 366MHz to 1 GHZ (I wish!), but, it
will certainly help =)<BR><BR>Extreme Overclocking has tested
(overclocked) PC133 RAM to there full potential. Here's a quote I
found and the link:<BR><BR><I>Well, the guys at Extreme Overclocking
have been hard at work again with their latest review. This time
they have put seven 128MB PC133 memory modules through the torture
tests to determine their maximum overclocking potential. Which one's
came out on top? Read the review to find out....</I><BR><BR><A
href="http://www.extremeoverclocking.com/reviews/memory/ram_roundup_1.html"
target=_blank>Cooked RAM... Yummie</A><BR><BR>The
ÐÐ.</FONT><BR><BR><A name=newsitem963764236,76720,></A><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>CPU
Guide</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:killz@i82hq.com">DareDevil</A> @ 9:17AM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963764236,76720,.html"><IMG
border=0 src="doc3_files/comments.gif">0 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>A follow up on the 'Weekly CPU
Prices', this guide will help you determine which cpu is best for
you (and your board ;-)). Sent to me by Spanky, here's the
link:<BR><BR>
<LI><A
href="http://www6.tomshardware.com/howto/00q2/000412/index.html"
target=_blank>http://www6.tomshardware.com/howto/00q2/000412/index.html</A></FONT><BR><BR><A
name=newsitem963685749,28290,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial size=2><B>Saturday,
July 15, 2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>Weekly CPU
Prices</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:killz@i82hq.com">DareDevil</A> @ 11:29AM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963685749,28290,.html"><IMG
border=0 src="doc3_files/comments.gif">2 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Wow, found this very useful! Wanting
to buy a new CPU? Check out this detailed price list!<BR><BR><A
href="http://www.sharkyextreme.com/hardware/weekly_cpu/"
target=_blank>Click Here.</A> <BR><BR>Thanks Sharky
Extreme!</FONT><BR><BR><A
name=newsitem963679881,35277,></A><B><U><FONT color=#003366
face="Verdana, Arial" size=2>Fast Wallpapers</FONT></U></B><BR><FONT
color=#0066cc face=Arial size=1><SMALL>Posted by <A class=nav
href="mailto:killz@i82hq.com">DareDevil</A> @ 9:51AM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963679881,35277,.html"><IMG
border=0 src="doc3_files/comments.gif">0 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>FAST-MHz has released some wallpapers!
<A href="http://64.29.18.111/wallpaper/index.html"
target=_blank>Click here</A> to view them. They come in sizes
800x600 1024x768 and 1152x864. If you have your desktop set at a
larger size, just use the 'stretch' function in desktop properties
instead of 'center'. Works great.<BR><BR>In other news, we want to
finnish off all the sections at BP6.Com so, to start, we're going to
work on the <A href="http://bp6.gamesquad.net/uc.phtml"
target=_blank>Picture Gallery</A>. To help us out, you can send in
all your cool, wierd, crazy pics that you may have to: <A
href="mailto:thedaredevil@bp6.com">thedaredevil@bp6.com</A>. (The
topic being computers, duh! :0) And no... I don't want to recieve
any porno piccies in my mailbox! I have enough of those!) Kidding
guys.<BR><BR>Okay, that's all for now.<BR><BR>The
ÐÐ.</FONT><BR><BR><A name=newsitem963619505,3764,></A>
<TABLE bgColor=#003399 width="100%">
<TBODY>
<TR>
<TD><FONT color=#ffffff face=Verdana,arial size=2><B>Friday,
July 14, 2000</B></FONT></TD></TR></TBODY></TABLE><BR><!--<hr noshade width=100%>--><B><U><FONT
color=#003366 face="Verdana, Arial" size=2>Hey
There!</FONT></U></B><BR><FONT color=#0066cc face=Arial
size=1><SMALL>Posted by <A class=nav
href="mailto:killz@i82hq.com">DareDevil</A> @ 5:05PM
PDT</SMALL>&nbsp; <A
href="http://bp6.gamesquad.net/news/963619505,3764,.html"><IMG
border=0 src="doc3_files/comments.gif">7 comments</A>
&nbsp;|&nbsp;<A
href="http://bp6.gamesquad.net/#news_top">top</A></FONT> <BR><FONT
color=black face=Arial size=2>Hey guys, just wanted to introduce
myself, some of you may have already met me on the BP6.com board.
I'll be posting up news from time to time now so, if you'd like, you
may send me some news to be posted if you find any ( we don't want
to flood Tim ;-) ).<BR><BR>My e-mail address is <A
href="mailto:killz@i82hq.com">killz@i82hq.com</A><BR><BR>Ciao for
now.<BR><BR>The ÐÐ.</FONT><BR><BR>
<CENTER><IFRAME frameBorder=0 height=60 marginHeight=0 marginWidth=0
noResize scrolling=no src="doc3_files/ad_iframe.htm"
width=468><a href="http://ads.adflight.com/go_static.asp?asid=7708" target="_top"><img width=468 height=60 border=0 alt="Advertisement" src="http://ads.adflight.com/ad_static.asp?pid=2097&sid=1881&asid=7708"></a></IFRAME></CENTER></LI></FONT></TD></TR></TBODY></TABLE></CENTER></P></TD>
<TD bgColor=silver vAlign=top width="10%">
<CENTER>
<P>
<TABLE bgColor=silver border=0 cellPadding=0 cellSpacing=0 width="100%">
<TBODY>
<TR>
<TD COLSTART="1">
<CENTER><!-- <FORM ACTION="/cgi-bin/subscribe.pl" METHOD="POST" ENCTYPE="application/x-www-form-urlencoded">
<IMG SRC="/images/spacer.gif" WIDTH="111" HEIGHT="1"><BR>
<P><B><FONT SIZE="2" COLOR="#000066" FACE="Verdana">Newsletter</FONT></B><FONT SIZE="1" FACE="Verdana"><BR>
<INPUT TYPE="TEXT" NAME="email" SIZE="10" VALUE="ur@email.com"><BR>
<INPUT TYPE="HIDDEN" NAME="subscribe" SIZE="-1" VALUE="subscribe"><INPUT TYPE="IMAGE" SRC="/images/subscribe.gif" WIDTH="80"
HEIGHT="27" ALIGN="BOTTOM" BORDER="0"></FONT>
</FORM> -->
<FORM
action=http://bp6.gamesquad.net/cgi-bin/news/viewnews.cgi?emaillist
method=post><IMG height=1 src="doc3_files/spacer.gif"
width=111><BR><FONT size=1>Newsletter<BR><INPUT name=npemail size=13
value="e-mail addr."><BR><INPUT name=npsubscribe style="BACKGROUND-COLOR: #000000; COLOR: #ffffff; FONT-FAMILY: Verdana; FONT-SIZE: xx-small; FONT-WEIGHT: bold" type=submit value=Subscribe><BR><!-- <input type="submit" name="npunsubscribe" value="Unsubscribe" style="font-size: xx-small; font-family: Verdana; font-weight: bold; color: #ffffff; background-color: #000000;"> --></FONT></FORM><FONT
size=1>
<FORM
action=http://bp6.gamesquad.net/cgi-bin/news/viewnews.cgi?search
method=post>Search news<BR><INPUT name=searchstring size=13><BR><INPUT name=submit style="BACKGROUND-COLOR: #000000; COLOR: #ffffff; FONT-FAMILY: Verdana; FONT-SIZE: xx-small; FONT-WEIGHT: bold" type=submit value=Submit><BR><A
href="http://bp6.gamesquad.net/cgi-bin/news/viewnews.cgi?newsall">News
archive</A></FONT> </FORM></CENTER></TD></TR></TBODY></TABLE><!-- <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="100%" BGCOLOR="silver">
<TR>
<TD WIDTH="100%">
<P ALIGN="CENTER"><A HREF="http://www.free56k.com" target="_blank"><IMG SRC="/images/free56k.gif" WIDTH="100" HEIGHT="49"
ALIGN="BOTTOM" BORDER="0"></A>
</TD>
</TR>
</TABLE>
-->
<TABLE bgColor=silver border=0 cellPadding=0 cellSpacing=0 width="100%">
<TBODY>
<TR>
<TD align=middle width="100%"><!-- BEGIN GoTo.com Search Box -->
<SCRIPT language=javascript type=text/javascript>
<!--
if ((parseInt(navigator.appVersion) >= 3)
&& (navigator.appName != "Netscape")) {
document.write("<IFRAME marginheight=0 frameborder=0 ");
document.write("marginwidth=0 scrolling=no width=100 height");
document.write("=90 ");
document.write("SRC=http://www.goto.com/d/ssn/dynconsole/?t");
document.write("ype=html&size=100x90&url=http://www.goto.co");
document.write("m/d/search/ssn/&target=_blank&Partner=SSN80");
document.write("42DF8478957377></IFRAME>");
} else if ((parseInt(navigator.appVersion) > 3)
&& (navigator.appName == "Netscape")) {
document.write("<SCRIPT language=javascript type=text/javas");
document.write("cript ");
document.write("SRC=http://www.goto.com/d/ssn/dynconsole/?t");
document.write("ype=js&size=100x90&url=http://www.goto.com/");
document.write("d/search/ssn/&target=_blank&Partner=SSN8042");
document.write("DF8478957377></SC");
document.write("RIPT>");
} else {
document.write("<A TARGET=_blank ");
document.write("HREF=http://www.goto.com/d/search/ssn/?from");
document.write("GIF=true>");
document.write("<IMG ismap ");
document.write("SRC=http://www.goto.com/d/ssn/dynconsole/?t");
document.write("ype=gif&size=100x90></A>");
}
// -->
</SCRIPT>
<B><NOSCRIPT></B><A
href="http://www.goto.com/d/search/ssn/?fromGIF=true"
target=_blank><IMG align=bottom border=0 height=90 isMap
src="doc3_files/100x90.gif" width=100></A><B><A
href="http://www.goto.com/d/search/ssn/?fromGIF=true" target=_blank>
</A></A></B><B></NOSCRIPT></B><B><!-- END GoTo.com Search Box --></B><!-- Pricewatch Search Box -->
<FORM action=http://www.pricewatch.com/search/search.asp method=get
target=_Blank>
<CENTER>
<P><B><FONT color=white face="ARIAL, HELVETICA" size=1>PC Price
Search<BR></FONT></B><INPUT maxLength=30 name=criteria size=10><BR><INPUT name=submit style="BACKGROUND-COLOR: #000000; COLOR: #ffffff; FONT-FAMILY: Verdana; FONT-SIZE: xx-small; FONT-WEIGHT: bold" type=submit value=Search>
</FORM><!-- Pricewatch Search Box --><A
href="http://www.puicorp.com/bp6specials.htm" target=_BLANK><IMG
src="doc3_files/puibp6.gif"></A><BR><BR><BR><BR><A
href="http://store.yahoo.com/dunamis-site/maxtor.html"
target=_BLANK><IMG
alt="BP6.com Special - Enter CODE: BP6-hd in the order (notes) to receive a discount"
src="doc3_files/hd5.gif"><FONT size=1><BR>BP6.COM
Special<BR>Code:BP6-hd</FONT></A> </P></CENTER></TD></TR></TBODY></TABLE>
<TABLE bgColor=silver border=0 cellPadding=0 cellSpacing=0 height="100%"
width="100%">
<TBODY>
<TR>
<TD
width="100%">&nbsp;</TD></TR></TBODY></TABLE></P></CENTER></TR></TBODY></TABLE><!-- </TABLE>-->
<CENTER></CENTER></TD></TR><TR><TD COLSPAN="3" VALIGN="TOP"
HEIGHT="70">&nbsp;</TD> </TR></TABLE>
<TABLE border=0 width=780>
<TBODY>
<TR>
<TD width=780>
<P align=center><FONT color=#999999 face=verdana,arial size=1>Copyright
©1999-2000 BP6.com, All rights reserved.<BR>Got news? Send it to </FONT><A
href="mailto:tim@bp6.com"><FONT color=white face=Verdana
size=1>Tim</FONT></A> </P></TD></TR><!-- <TR> <TD WIDTH="780"> <P ALIGN="CENTER"><FONT SIZE="1" COLOR="#999999" FACE="Verdana,arial">Site design by Tim Brinkley</FONT> </TD> </TR> --></TBODY></TABLE></DIV>
<SCRIPT> window.open=NS_ActualOpen; </SCRIPT>
</BODY></HTML>

5
test/HTML/entities.html Normal file
View File

@ -0,0 +1,5 @@
<p tst="a&amp;b" tst2="a&b" tst3="a & b">
a&amp;b
a&b
a & b
</p>

View File

@ -403,12 +403,14 @@ endElementDebug(void *ctx, const xmlChar *name)
void
charactersDebug(void *ctx, const xmlChar *ch, int len)
{
char output[40];
int i;
fprintf(stdout, "SAX.characters(");
for (i = 0;(i < len) && (i < 30);i++)
fprintf(stdout, "%c", ch[i]);
fprintf(stdout, ", %d)\n", len);
for (i = 0;(i<len) && (i < 30);i++)
output[i] = ch[i];
output[i] = 0;
fprintf(stdout, "SAX.characters(%s, %d)\n", output, len);
}
/**
@ -437,8 +439,14 @@ referenceDebug(void *ctx, const xmlChar *name)
void
ignorableWhitespaceDebug(void *ctx, const xmlChar *ch, int len)
{
fprintf(stdout, "SAX.ignorableWhitespace(%.30s, %d)\n",
(char *) ch, len);
char output[40];
int i;
for (i = 0;(i<len) && (i < 30);i++)
output[i] = ch[i];
output[i] = 0;
fprintf(stdout, "SAX.ignorableWhitespace(%s, %d)\n", output, len);
}
/**
@ -571,21 +579,78 @@ void parseSAXFile(char *filename) {
/*
* Empty callbacks for checking
*/
doc = htmlSAXParseFile(filename, NULL, emptySAXHandler, NULL);
if (doc != NULL) {
fprintf(stdout, "htmlSAXParseFile returned non-NULL\n");
xmlFreeDoc(doc);
}
if (push) {
FILE *f;
if (!noout) {
/*
* Debug callback
*/
doc = htmlSAXParseFile(filename, NULL, debugSAXHandler, NULL);
f = fopen(filename, "r");
if (f != NULL) {
int res, size = 3;
char chars[4096];
htmlParserCtxtPtr ctxt;
/* if (repeat) */
size = 4096;
res = fread(chars, 1, 4, f);
if (res > 0) {
ctxt = htmlCreatePushParserCtxt(emptySAXHandler, NULL,
chars, res, filename, 0);
while ((res = fread(chars, 1, size, f)) > 0) {
htmlParseChunk(ctxt, chars, res, 0);
}
htmlParseChunk(ctxt, chars, 0, 1);
doc = ctxt->myDoc;
htmlFreeParserCtxt(ctxt);
}
if (doc != NULL) {
fprintf(stdout, "htmlSAXParseFile returned non-NULL\n");
xmlFreeDoc(doc);
}
fclose(f);
}
if (!noout) {
f = fopen(filename, "r");
if (f != NULL) {
int res, size = 3;
char chars[4096];
htmlParserCtxtPtr ctxt;
/* if (repeat) */
size = 4096;
res = fread(chars, 1, 4, f);
if (res > 0) {
ctxt = htmlCreatePushParserCtxt(debugSAXHandler, NULL,
chars, res, filename, 0);
while ((res = fread(chars, 1, size, f)) > 0) {
htmlParseChunk(ctxt, chars, res, 0);
}
htmlParseChunk(ctxt, chars, 0, 1);
doc = ctxt->myDoc;
htmlFreeParserCtxt(ctxt);
}
if (doc != NULL) {
fprintf(stdout, "htmlSAXParseFile returned non-NULL\n");
xmlFreeDoc(doc);
}
fclose(f);
}
}
} else {
doc = htmlSAXParseFile(filename, NULL, emptySAXHandler, NULL);
if (doc != NULL) {
fprintf(stdout, "htmlSAXParseFile returned non-NULL\n");
xmlFreeDoc(doc);
}
if (!noout) {
/*
* Debug callback
*/
doc = htmlSAXParseFile(filename, NULL, debugSAXHandler, NULL);
if (doc != NULL) {
fprintf(stdout, "htmlSAXParseFile returned non-NULL\n");
xmlFreeDoc(doc);
}
}
}
}
@ -601,11 +666,11 @@ void parseAndPrintFile(char *filename) {
f = fopen(filename, "r");
if (f != NULL) {
int res, size = 3;
char chars[1024];
char chars[4096];
htmlParserCtxtPtr ctxt;
if (repeat)
size = 1024;
/* if (repeat) */
size = 4096;
res = fread(chars, 1, 4, f);
if (res > 0) {
ctxt = htmlCreatePushParserCtxt(NULL, NULL,
@ -617,6 +682,7 @@ void parseAndPrintFile(char *filename) {
doc = ctxt->myDoc;
htmlFreeParserCtxt(ctxt);
}
fclose(f);
}
} else {
doc = htmlParseFile(filename, NULL);

View File

@ -402,12 +402,14 @@ endElementDebug(void *ctx, const xmlChar *name)
void
charactersDebug(void *ctx, const xmlChar *ch, int len)
{
char output[40];
int i;
fprintf(stdout, "SAX.characters(");
for (i = 0;(i < len) && (i < 30);i++)
fprintf(stdout, "%c", ch[i]);
fprintf(stdout, ", %d)\n", len);
for (i = 0;(i<len) && (i < 30);i++)
output[i] = ch[i];
output[i] = 0;
fprintf(stdout, "SAX.characters(%s, %d)\n", output, len);
}
/**
@ -436,8 +438,13 @@ referenceDebug(void *ctx, const xmlChar *name)
void
ignorableWhitespaceDebug(void *ctx, const xmlChar *ch, int len)
{
fprintf(stdout, "SAX.ignorableWhitespace(%.30s, %d)\n",
(char *) ch, len);
char output[40];
int i;
for (i = 0;(i<len) && (i < 30);i++)
output[i] = ch[i];
output[i] = 0;
fprintf(stdout, "SAX.ignorableWhitespace(%s, %d)\n", output, len);
}
/**

59
tree.c
View File

@ -793,7 +793,8 @@ xmlNodeListGetString(xmlDocPtr doc, xmlNodePtr list, int inLine) {
if (list == NULL) return(NULL);
while (node != NULL) {
if (node->type == XML_TEXT_NODE) {
if ((node->type == XML_TEXT_NODE) ||
(node->type == XML_CDATA_SECTION_NODE)) {
if (inLine) {
#ifndef XML_USE_BUFFER_CONTENT
ret = xmlStrcat(ret, node->content);
@ -1908,6 +1909,62 @@ xmlAddSibling(xmlNodePtr cur, xmlNodePtr elem) {
return(elem);
}
/**
* xmlAddChildList:
* @parent: the parent node
* @cur: the first node in the list
*
* Add a list of node at the end of the child list of the parent
*
* Returns the last child or NULL in case of error.
*/
xmlNodePtr
xmlAddChildList(xmlNodePtr parent, xmlNodePtr cur) {
xmlNodePtr prev;
if (parent == NULL) {
#ifdef DEBUG_TREE
fprintf(stderr, "xmlAddChild : parent == NULL\n");
#endif
return(NULL);
}
if (cur == NULL) {
#ifdef DEBUG_TREE
fprintf(stderr, "xmlAddChild : child == NULL\n");
#endif
return(NULL);
}
if ((cur->doc != NULL) && (parent->doc != NULL) &&
(cur->doc != parent->doc)) {
#ifdef DEBUG_TREE
fprintf(stderr, "Elements moved to a different document\n");
#endif
}
/*
* add the first element at the end of the children list.
*/
if (parent->children == NULL) {
parent->children = cur;
} else {
prev = parent->last;
prev->next = cur;
cur->prev = prev;
}
while (cur->next != NULL) {
cur->parent = parent;
cur->doc = parent->doc; /* the parent may not be linked to a doc ! */
cur = cur->next;
}
cur->parent = parent;
cur->doc = parent->doc; /* the parent may not be linked to a doc ! */
parent->last = cur;
return(cur);
}
/**
* xmlAddChild:
* @parent: the parent node

2
tree.h
View File

@ -508,6 +508,8 @@ void xmlNodeSetName (xmlNodePtr cur,
const xmlChar *name);
xmlNodePtr xmlAddChild (xmlNodePtr parent,
xmlNodePtr cur);
xmlNodePtr xmlAddChildList (xmlNodePtr parent,
xmlNodePtr cur);
xmlNodePtr xmlReplaceNode (xmlNodePtr old,
xmlNodePtr cur);
xmlNodePtr xmlAddSibling (xmlNodePtr cur,

22
valid.c
View File

@ -293,6 +293,16 @@ xmlCopyElementContent(xmlElementContentPtr cur) {
void
xmlFreeElementContent(xmlElementContentPtr cur) {
if (cur == NULL) return;
switch (cur->type) {
case XML_ELEMENT_CONTENT_PCDATA:
case XML_ELEMENT_CONTENT_ELEMENT:
case XML_ELEMENT_CONTENT_SEQ:
case XML_ELEMENT_CONTENT_OR:
break;
default:
fprintf(stderr, "xmlFreeElementContent : type %d\n", cur->type);
return;
}
if (cur->c1 != NULL) xmlFreeElementContent(cur->c1);
if (cur->c2 != NULL) xmlFreeElementContent(cur->c2);
if (cur->name != NULL) xmlFree((xmlChar *) cur->name);
@ -455,7 +465,7 @@ xmlCreateElementTable(void) {
ret->nb_elements = 0;
ret->table = (xmlElementPtr *)
xmlMalloc(ret->max_elements * sizeof(xmlElementPtr));
if (ret == NULL) {
if (ret->table == NULL) {
fprintf(stderr, "xmlCreateElementTable : xmlMalloc(%ld) failed\n",
ret->max_elements * (long)sizeof(xmlElement));
xmlFree(ret);
@ -877,7 +887,7 @@ xmlCreateAttributeTable(void) {
ret->nb_attributes = 0;
ret->table = (xmlAttributePtr *)
xmlMalloc(ret->max_attributes * sizeof(xmlAttributePtr));
if (ret == NULL) {
if (ret->table == NULL) {
fprintf(stderr, "xmlCreateAttributeTable : xmlMalloc(%ld) failed\n",
ret->max_attributes * (long)sizeof(xmlAttributePtr));
xmlFree(ret);
@ -1348,7 +1358,7 @@ xmlCreateNotationTable(void) {
ret->nb_notations = 0;
ret->table = (xmlNotationPtr *)
xmlMalloc(ret->max_notations * sizeof(xmlNotationPtr));
if (ret == NULL) {
if (ret->table == NULL) {
fprintf(stderr, "xmlCreateNotationTable : xmlMalloc(%ld) failed\n",
ret->max_notations * (long)sizeof(xmlNotation));
xmlFree(ret);
@ -1617,7 +1627,7 @@ xmlCreateIDTable(void) {
ret->nb_ids = 0;
ret->table = (xmlIDPtr *)
xmlMalloc(ret->max_ids * sizeof(xmlIDPtr));
if (ret == NULL) {
if (ret->table == NULL) {
fprintf(stderr, "xmlCreateIDTable : xmlMalloc(%ld) failed\n",
ret->max_ids * (long)sizeof(xmlID));
xmlFree(ret);
@ -1896,7 +1906,7 @@ xmlCreateRefTable(void) {
ret->nb_refs = 0;
ret->table = (xmlRefPtr *)
xmlMalloc(ret->max_refs * sizeof(xmlRefPtr));
if (ret == NULL) {
if (ret->table == NULL) {
fprintf(stderr, "xmlCreateRefTable : xmlMalloc(%ld) failed\n",
ret->max_refs * (long)sizeof(xmlRef));
xmlFree(ret);
@ -3544,7 +3554,7 @@ xmlValidateOneElement(xmlValidCtxtPtr ctxt, xmlDocPtr doc,
VERROR(ctxt->userData, "Text element has namespace !\n");
return(0);
}
if (elem->ns != NULL) {
if (elem->nsDef != NULL) {
VERROR(ctxt->userData,
"Text element carries namespace definitions !\n");
return(0);

View File

@ -31,6 +31,10 @@
#endif
#ifdef HAVE_SYS_MMAN_H
#include <sys/mman.h>
/* seems needed for Solaris */
#ifndef MAP_FAILED
#define MAP_FAILED ((void *) -1)
#endif
#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>