From 10f6c5df5fbd3e8a2be8a0640035680235b3f8a3 Mon Sep 17 00:00:00 2001 From: "Thomas E. Dickey" Date: Wed, 16 Dec 1998 22:06:07 -0500 Subject: snapshot of project "lynx", label v2-8-2dev_10 --- WWW/Library/Implementation/HTMLDTD.c | 27 ++++++++++++++------------- WWW/Library/Implementation/HTMLDTD.h | 9 +++++---- WWW/Library/Implementation/HTString.c | 2 +- WWW/Library/Implementation/HTString.h | 3 +++ WWW/Library/Implementation/HTTCP.c | 12 ++++++++++++ WWW/Library/Implementation/HTTP.c | 3 ++- WWW/Library/Implementation/HTTelnet.c | 6 +++--- WWW/Library/Implementation/HTUtils.h | 6 ++++++ WWW/Library/Implementation/SGML.h | 2 ++ WWW/Library/Implementation/tcp.h | 1 + WWW/Library/djgpp/makefile | 1 + WWW/Library/unix/makefile.in | 4 ++++ 12 files changed, 54 insertions(+), 22 deletions(-) (limited to 'WWW') diff --git a/WWW/Library/Implementation/HTMLDTD.c b/WWW/Library/Implementation/HTMLDTD.c index 4b4cc542..be390b3d 100644 --- a/WWW/Library/Implementation/HTMLDTD.c +++ b/WWW/Library/Implementation/HTMLDTD.c @@ -941,6 +941,7 @@ static attr table_attr[] = { /* TABLE attributes */ { "NOWRAP" }, { "RULES" }, { "STYLE" }, + { "SUMMARY" }, { "TITLE" }, { "UNITS" }, { "WIDTH" }, @@ -1085,7 +1086,7 @@ static attr ulist_attr[] = { /* UL attributes */ /* self contain icont'n contn'd icont'd canclos omit */ /* { "A" , a_attr, HTML_A_ATTRIBUTES, SGML_MIXED }, */ -#define T_A 0x0008, 0x0B007,0x0FF17,0x37787,0x77BA7,0x8604F,0x00004 +#define T_A 0x0008, 0x0B007,0x0FF17,0x37787,0x77BA7,0x8604F,0x00014 /* { "ABBREV" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ #define T_ABBREV 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000 /* { "ACRONYM" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ @@ -1101,7 +1102,7 @@ static attr ulist_attr[] = { /* UL attributes */ /* { "AUTHOR" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ #define T_AUTHOR 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00003,0x00000 /* { "B" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_B 0x0001, 0x8B04F,0xAFFFF,0xA778F,0xF7FBF,0x00001,0x00004 +#define T_B 0x0001, 0x8B04F,0xAFFFF,0xA778F,0xF7FBF,0x00001,0x00014 /* { "BANNER" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ #define T_BANNER 0x0200, 0x0FB8F,0x0FFFF,0x30000,0x30000,0x8031F,0x00000 /* { "BASE" , base_attr, HTML_BASE_ATTRIBUTES, SGML_EMPTY }, */ @@ -1113,9 +1114,9 @@ static attr ulist_attr[] = { /* UL attributes */ /* { "BGSOUND" , bgsound_attr, HTML_BGSOUND_ATTRIBUTES, SGML_EMPTY }, */ #define T_BGSOUND 0x1000, 0x00000,0x00000,0x777AF,0x77FAF,0x8730F,0x00001 /* { "BIG" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_BIG 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00004 +#define T_BIG 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014 /* { "BLINK" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_BLINK 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00001,0x00004 +#define T_BLINK 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00001,0x00014 /* { "BLOCKQUOTE", bq_attr, HTML_BQ_ATTRIBUTES, SGML_MIXED }, */ #define T_BLOCKQUOTE 0x0200, 0xAFBCF,0xAFFFF,0xB6680,0xB6FAF,0x8031F,0x00000 /* { "BODY" , body_attr, HTML_BODY_ATTRIBUTES, SGML_MIXED }, */ @@ -1132,7 +1133,7 @@ static attr ulist_attr[] = { /* UL attributes */ /* { "CENTER" , div_attr, HTML_DIV_ATTRIBUTES, SGML_MIXED }, */ #define T_CENTER 0x0200, 0x8FBCF,0x8FFFF,0xB6680,0xB6FA7,0x8071F,0x00000 /* { "CITE" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_CITE 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00000 +#define T_CITE 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00010 /* { "CODE" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ #define T_CODE 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00000 /* { "COL" , col_attr, HTML_COL_ATTRIBUTES, SGML_EMPTY }, */ @@ -1160,7 +1161,7 @@ static attr ulist_attr[] = { /* UL attributes */ /* { "DT" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY }, */ #define T_DT 0x0400, 0x0B04F,0x0B1FF,0x00800,0x17FFF,0x8071F,0x00001 /* { "EM" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_EM 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00000 +#define T_EM 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00010 /* { "EMBED" , embed_attr, HTML_EMBED_ATTRIBUTES, SGML_EMPTY }, */ #define T_EMBED 0x2000, 0x8F107,0x8FFF7,0xB6FBF,0xB7FBF,0x1FF7F,0x00001 /* { "FIELDSET", fieldset_attr,HTML_FIELDSET_ATTRIBUTES, SGML_MIXED }, */ @@ -1170,7 +1171,7 @@ static attr ulist_attr[] = { /* UL attributes */ /* { "FN" , fn_attr, HTML_FN_ATTRIBUTES, SGML_MIXED }, */ #define T_FN 0x0200, 0x8FBCF,0x8FFFF,0xB6680,0xB7EBF,0x8114F,0x00000 /* { "FONT" , font_attr, HTML_FONT_ATTRIBUTES, SGML_EMPTY }, */ -#define T_FONT 0x0001, 0x8B04F,0x8FFFF,0xB778F,0xF7FBF,0x00001,0x00004 +#define T_FONT 0x0001, 0x8B04F,0x8FFFF,0xB778F,0xF7FBF,0x00001,0x00014 /* { "FORM" , form_attr, HTML_FORM_ATTRIBUTES, SGML_EMPTY }, */ #define T_FORM 0x0080, 0x0FF6F,0x0FF7F,0x36E07,0x33F07,0x88DFF,0x00000 /* { "FRAME" , frame_attr, HTML_FRAME_ATTRIBUTES, SGML_EMPTY }, */ @@ -1197,7 +1198,7 @@ static attr ulist_attr[] = { /* UL attributes */ #define T_HTML 0x10000,0x7FB8F,0x7FFFF,0x00000,0x00000,0x1FFFF,0x00003 #define T_HY 0x1000, 0x00000,0x00000,0x3779F,0x77FBF,0x8101F,0x00001 /* { "I" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_I 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00004 +#define T_I 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014 #define T_IFRAME 0x2000, 0x8FBCF,0x8FFFF,0xB679F,0xB6FBF,0xD335F,0x00000 /* { "IMG" , img_attr, HTML_IMG_ATTRIBUTES, SGML_EMPTY }, */ #define T_IMG 0x1000, 0x00000,0x00000,0x3779F,0x37FBF,0x80000,0x00001 @@ -1259,14 +1260,14 @@ static attr ulist_attr[] = { /* UL attributes */ /* { "S" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ #define T_S 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000 /* { "SAMP" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_SAMP 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00000 +#define T_SAMP 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00002,0x00010 /* { "SCRIPT" , script_attr, HTML_SCRIPT_ATTRIBUTES, SGML_LITTERAL }, */ #define T_SCRIPT 0x2000, 0x00000,0x00000,0x77F9F,0x77FFF,0x87F5F,0x00000 /* { "SELECT" , select_attr, HTML_SELECT_ATTRIBUTES, SGML_MIXED }, */ #define T_SELECT 0x0040, 0x08000,0x08000,0x03FAF,0x13FBF,0x80F5F,0x00008 #define T_SHY 0x1000, 0x00000,0x00000,0x3779F,0x77FBF,0x8101F,0x00001 /* { "SMALL" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_SMALL 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00004 +#define T_SMALL 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014 /* { "SPAN" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ #define T_SPAN 0x0002, 0x0B04F,0x0FFFF,0x2778F,0x77FBF,0x80003,0x00000 /* { "SPOT" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_EMPTY }, */ @@ -1274,7 +1275,7 @@ static attr ulist_attr[] = { /* UL attributes */ /* { "STRIKE" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ #define T_STRIKE 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000 /* { "STRONG" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_STRONG 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00000 +#define T_STRONG 0x0002, 0x8B04F,0x8FFFF,0xA778F,0xF7FAF,0x00003,0x00010 /* { "STYLE" , style_attr, HTML_STYLE_ATTRIBUTES, SGML_LITTERAL }, */ #define T_STYLE 0x40000,0x00000,0x00000,0x7638F,0x76FAF,0x8001F,0x00000 /* { "SUB" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ @@ -1304,9 +1305,9 @@ static attr ulist_attr[] = { /* UL attributes */ /* { "TR" , tr_attr, HTML_TR_ATTRIBUTES, SGML_EMPTY }, */ #define T_TR 0x0020, 0x00400,0x8FFFF,0x00820,0xB7FB7,0x8C75F,0x00001 /* { "TT" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_TT 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00000 +#define T_TT 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00010 /* { "U" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ -#define T_U 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00004 +#define T_U 0x0001, 0x8B04F,0x8FFFF,0xA778F,0xF7FBF,0x00001,0x00014 /* { "UL" , ulist_attr, HTML_UL_ATTRIBUTES, SGML_MIXED }, */ #define T_UL 0x0800, 0x0C480,0x8FFFF,0x36680,0xB7FFF,0x8075F,0x00000 /* { "VAR" , gen_attr, HTML_GEN_ATTRIBUTES, SGML_MIXED }, */ diff --git a/WWW/Library/Implementation/HTMLDTD.h b/WWW/Library/Implementation/HTMLDTD.h index a112b7e5..f9e157ac 100644 --- a/WWW/Library/Implementation/HTMLDTD.h +++ b/WWW/Library/Implementation/HTMLDTD.h @@ -871,10 +871,11 @@ Attribute numbers #define HTML_TABLE_NOWRAP 14 #define HTML_TABLE_RULES 15 #define HTML_TABLE_STYLE 16 -#define HTML_TABLE_TITLE 17 -#define HTML_TABLE_UNITS 18 -#define HTML_TABLE_WIDTH 19 -#define HTML_TABLE_ATTRIBUTES 20 +#define HTML_TABLE_SUMMARY 17 +#define HTML_TABLE_TITLE 18 +#define HTML_TABLE_UNITS 19 +#define HTML_TABLE_WIDTH 20 +#define HTML_TABLE_ATTRIBUTES 21 #define HTML_TD_ALIGN 0 #define HTML_TD_AXES 1 diff --git a/WWW/Library/Implementation/HTString.c b/WWW/Library/Implementation/HTString.c index e2451c83..36d0ec64 100644 --- a/WWW/Library/Implementation/HTString.c +++ b/WWW/Library/Implementation/HTString.c @@ -695,7 +695,7 @@ PRIVATE CONST char *HTAfterCommandArg ARGS2( * quote it properly). We're given the index of the newest parameter we're * processing. Zero indicates none, so a value of '1' indicates that we copy * from the beginning of the command string up to the first parameter, - * substitute the quoted parameter and return the resul. + * substitute the quoted parameter and return the result. * * Parameters are substituted at "%s" tokens, like printf. Other printf-style * tokens are not substituted; they are passed through without change. diff --git a/WWW/Library/Implementation/HTString.h b/WWW/Library/Implementation/HTString.h index 26c1fec2..5c093599 100644 --- a/WWW/Library/Implementation/HTString.h +++ b/WWW/Library/Implementation/HTString.h @@ -79,4 +79,7 @@ extern int HTCountCommandArgs PARAMS((CONST char * command)); extern void HTAddParam PARAMS((char ** result, CONST char * command, int number, CONST char * parameter)); extern void HTEndParam PARAMS((char ** result, CONST char * command, int number)); +/* Force an option, with leading blanks, to be appended without quoting them */ +#define HTOptParam(result, command, number, parameter) HTSACat(result, parameter) + #endif /* HTSTRING_H */ diff --git a/WWW/Library/Implementation/HTTCP.c b/WWW/Library/Implementation/HTTCP.c index 8ae0e0c3..42821b4e 100644 --- a/WWW/Library/Implementation/HTTCP.c +++ b/WWW/Library/Implementation/HTTCP.c @@ -1102,6 +1102,18 @@ PUBLIC int HTDoRead ARGS3( int nb; #endif /* UCX, BSN */ +#ifdef UNIX + if (fildes == 0) { + /* + * 0 can be a valid socket fd, but if it's a tty something must + * have gone wrong. - kw + */ + if (isatty(fildes)) { + CTRACE(tfp, "HTDoRead - refusing to read fd 0 which is a tty!\n"); + return -1; + } + } else +#endif if (fildes <= 0) return -1; diff --git a/WWW/Library/Implementation/HTTP.c b/WWW/Library/Implementation/HTTP.c index f6e87fb7..dd93e142 100644 --- a/WWW/Library/Implementation/HTTP.c +++ b/WWW/Library/Implementation/HTTP.c @@ -16,7 +16,7 @@ #define HTTPS_PORT 443 #define SNEWS_PORT 563 -#define INIT_LINE_SIZE 1024 /* Start with line buffer this big */ +#define INIT_LINE_SIZE 1536 /* Start with line buffer this big */ #define LINE_EXTEND_THRESH 256 /* Minimum read size */ #define VERSION_LENGTH 20 /* for returned protocol version */ @@ -440,6 +440,7 @@ try_again: FREE(command); FREE(hostname); FREE(docname); + FREE(abspath); FREE(host2); FREE(path2); status = HT_NOT_LOADED; diff --git a/WWW/Library/Implementation/HTTelnet.c b/WWW/Library/Implementation/HTTelnet.c index dd8a7b35..2b9039ab 100644 --- a/WWW/Library/Implementation/HTTelnet.c +++ b/WWW/Library/Implementation/HTTelnet.c @@ -50,7 +50,7 @@ PRIVATE int remote_session ARGS2(char *, acc_method, char *, host) char * cp; char * hostname; char * port; - char * command; + char * command = NULL; enum _login_protocol { telnet, rlogin, tn3270 } login_protocol = strcmp(acc_method, "rlogin") == 0 ? rlogin : strcmp(acc_method, "tn3270") == 0 ? tn3270 : telnet; @@ -140,7 +140,7 @@ PRIVATE int remote_session ARGS2(char *, acc_method, char *, host) #define FMT_TELNET "%s%s%s %s %s" HTAddParam(&command, FMT_TELNET, 1, TELNET_COMMAND); - HTAddParam(&command, FMT_TELNET, 2, user ? " -l " : ""); + HTOptParam(&command, FMT_TELNET, 2, user ? " -l " : ""); HTAddParam(&command, FMT_TELNET, 3, user); HTAddParam(&command, FMT_TELNET, 4, hostname); HTAddParam(&command, FMT_TELNET, 5, port); @@ -163,7 +163,7 @@ PRIVATE int remote_session ARGS2(char *, acc_method, char *, host) HTAddParam(&command, FMT_RLOGIN, 1, RLOGIN_COMMAND); HTAddParam(&command, FMT_RLOGIN, 2, hostname); - HTAddParam(&command, FMT_RLOGIN, 3, user ? " -l " : ""); + HTOptParam(&command, FMT_RLOGIN, 3, user ? " -l " : ""); HTAddParam(&command, FMT_RLOGIN, 4, user); HTEndParam(&command, FMT_RLOGIN, 4); diff --git a/WWW/Library/Implementation/HTUtils.h b/WWW/Library/Implementation/HTUtils.h index 2706b0e5..63843de3 100644 --- a/WWW/Library/Implementation/HTUtils.h +++ b/WWW/Library/Implementation/HTUtils.h @@ -19,6 +19,10 @@ #else +#ifdef DJGPP +#include /* pseudo-autoconf values for DJGPP libc/headers */ +#endif /* DJGPP */ + #include #define DONT_TRACK_INTERNAL_LINKS 1 @@ -34,6 +38,7 @@ #if defined(__STDC__) || defined(VMS) #define ANSI_VARARGS 1 +#undef HAVE_STDARG_H #define HAVE_STDARG_H 1 #endif @@ -75,6 +80,7 @@ #endif #ifndef NO_UNISTD_H +#undef HAVE_UNISTD_H #define HAVE_UNISTD_H 1 #endif diff --git a/WWW/Library/Implementation/SGML.h b/WWW/Library/Implementation/SGML.h index f4643ad2..860151d5 100644 --- a/WWW/Library/Implementation/SGML.h +++ b/WWW/Library/Implementation/SGML.h @@ -90,6 +90,8 @@ typedef int TagFlags; (if found invalid) */ #define Tgf_strict 0x00008 /* Ignore contained invalid elements, don't pass them on */ +#define Tgf_nreie 0x00010 /* Not Really Empty If Empty, + used by color style code */ /* A tag structure describes an SGML element. ** ----------------------------------------- diff --git a/WWW/Library/Implementation/tcp.h b/WWW/Library/Implementation/tcp.h index 54cb8b89..b4525416 100644 --- a/WWW/Library/Implementation/tcp.h +++ b/WWW/Library/Implementation/tcp.h @@ -59,6 +59,7 @@ typedef struct sockaddr_in SockA; /* See netinet/in.h */ #include #if defined(__DJGPP__) || defined(__BORLANDC__) +#undef HAVE_DIRENT_H #define HAVE_DIRENT_H #undef HAVE_SYS_FILIO_H #endif /* DJGPP or __BORLANDC__ */ diff --git a/WWW/Library/djgpp/makefile b/WWW/Library/djgpp/makefile index 71408d21..b89f9295 100644 --- a/WWW/Library/djgpp/makefile +++ b/WWW/Library/djgpp/makefile @@ -11,6 +11,7 @@ CFLAGS = -O3 -DUSE_ZLIB -DDOSPATH -DNOUSERS -DDEBUG -DDISP_PARTIAL \ -I../Implementation \ -I../../../djgpp/tcplib/include \ -I../../../djgpp/tcplib/include/tcp \ +-I../../../curses \ -I../../../src \ -I../../.. LFLAGS = diff --git a/WWW/Library/unix/makefile.in b/WWW/Library/unix/makefile.in index abe5d105..9d9b64bd 100644 --- a/WWW/Library/unix/makefile.in +++ b/WWW/Library/unix/makefile.in @@ -34,6 +34,7 @@ CPPOPTS = $(DEFS) $(CPPFLAGS) $(LYFLAGS) \ -I$(top_srcdir)/WWW/Library/Implementation LY_CFLAGS = @CFLAGS@ CFLAGS = $(CPPOPTS) $(LY_CFLAGS) +LINT = @LINT@ # Directory for installed binary: BINDIR = @bindir@ @@ -57,6 +58,9 @@ RANLIB = @RANLIB@ all : $(LOB)/libwww.a +lint: + $(LINT) $(LINTOPTS) $(CPPOPTS) $(srcdir)/../Implementation/*.c > ../../../lint.libwww + .SUFFIXES: .i .h .html .c.o: -- cgit 1.4.1-2-gfad0