summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Andree <mandree@FreeBSD.org>2011-05-22 21:34:32 +0000
committerMatthias Andree <mandree@FreeBSD.org>2011-05-22 21:34:32 +0000
commit3f4cabb66c86fae519ccb253bb2fc63543be0c93 (patch)
treeede3f285cf8fdd7ce24684fb5a89fdfb15b97283
parent- update to httpd-2.2.19 (diff)
Kill deprecated ports: devel/tcl-neo and www/neowebscript.
These have been broken and deprecated for weeks, the maintainer has not responded, and there was no discussion in the PR or on ports@. PR: ports/155759
Notes
Notes: svn path=/head/; revision=274473
-rw-r--r--MOVED2
-rw-r--r--devel/Makefile1
-rw-r--r--devel/tcl-neo/Makefile58
-rw-r--r--devel/tcl-neo/distinfo3
-rw-r--r--devel/tcl-neo/files/Makefile.bsd30
-rw-r--r--devel/tcl-neo/files/patch-config4
-rw-r--r--devel/tcl-neo/files/patch-cute381
-rw-r--r--devel/tcl-neo/files/patch-db10
-rw-r--r--devel/tcl-neo/files/patch-md527
-rw-r--r--devel/tcl-neo/files/patch-warnings938
-rw-r--r--devel/tcl-neo/pkg-descr22
-rw-r--r--devel/tcl-neo/pkg-plist63
-rw-r--r--www/Makefile1
-rw-r--r--www/neowebscript/Makefile58
-rw-r--r--www/neowebscript/distinfo2
-rw-r--r--www/neowebscript/files/Makefile.bsd18
-rw-r--r--www/neowebscript/files/Makefile.lib33
-rw-r--r--www/neowebscript/files/neowebscript.conf.in45
-rw-r--r--www/neowebscript/files/patch-access249
-rw-r--r--www/neowebscript/files/patch-common19
-rw-r--r--www/neowebscript/files/patch-db29
-rw-r--r--www/neowebscript/files/patch-docs9
-rw-r--r--www/neowebscript/files/patch-gd12
-rw-r--r--www/neowebscript/files/patch-init62
-rw-r--r--www/neowebscript/files/patch-neoscript433
-rw-r--r--www/neowebscript/files/patch-warnings21
-rw-r--r--www/neowebscript/files/pkg-message.in9
-rw-r--r--www/neowebscript/pkg-descr16
-rw-r--r--www/neowebscript/pkg-plist853
29 files changed, 2 insertions, 3406 deletions
diff --git a/MOVED b/MOVED
index fcfcdfe86345..b53052f46f96 100644
--- a/MOVED
+++ b/MOVED
@@ -2183,3 +2183,5 @@ devel/libchipcard-kde||2011-05-14|obsolete
sysutils/libgksuui|sysutils/libgksu|2011-05-14|Removed: It is a part of sysutils/libgksu now
barnyard-sguil|barnyard2-sguil|2011-05-15|barnyard2 has build in sguil support
multimedia/rebot3||2011-05-16|Removed
+devel/tcl-neo||2011-05-22|Removed: deprecated and no maintainer interest.
+www/neowebscript||2011-05-22|Removed: deprecated and no maintainer interest.
diff --git a/devel/Makefile b/devel/Makefile
index 5ba6c1577105..511dc948d732 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -3406,7 +3406,6 @@
SUBDIR += talloc
SUBDIR += tbb
SUBDIR += tcl-memchan
- SUBDIR += tcl-neo
SUBDIR += tcl-trf
SUBDIR += tclcheck
SUBDIR += tclcl
diff --git a/devel/tcl-neo/Makefile b/devel/tcl-neo/Makefile
deleted file mode 100644
index d36774a663e6..000000000000
--- a/devel/tcl-neo/Makefile
+++ /dev/null
@@ -1,58 +0,0 @@
-# New ports collection makefile for: NeoTcl
-# Date created: Auf 17, 2001
-# Whom: Mikhail Teterin <mi@aldan.algebra.com>
-#
-# $FreeBSD$
-#
-
-PORTNAME= neotcl
-PORTVERSION= 8.2.2
-PORTREVISION= 4
-CATEGORIES= devel tcl
-MASTER_SITES= SF/nws/nws/3.3
-DISTNAME= neowebscript-3.3
-
-MAINTAINER= mi@aldan.algebra.com
-COMMENT= The NeoTCL part of NeoWebScript -- an Apache TCL mod
-
-#LIB_DEPENDS= db2:${PORTSDIR}/databases/db2
-BUILD_DEPENDS= ${LOCALBASE}/include/tclExtend.h:${PORTSDIR}/lang/tclX
-RUN_DEPENDS:= ${BUILD_DEPENDS}
-MAKE_JOBS_SAFE= yes
-
-IGNORE= db2 is deprecated and no longer provided
-BROKEN:= ${IGNORE}
-DEPRECATED= db2 was deprecated and port has been broken since 2011-04-12
-EXPIRATION_DATE= 2011-05-21
-
-# Not yet -- openldap used db3, neo used db2 :(
-# ldap.2:${PORTSDIR}/net/openldap20-client
-
-USE_LDCONFIG= yes
-
-SUBDIR= neowebscript-3.3/neotcl8.3.0-lite/neo${PORTVERSION}
-WRKSRC= ${WRKDIR}/${SUBDIR}/generic
-
-EXTRACT_AFTER_ARGS?= | ${TAR} --exclude Makefile -xpf - ${SUBDIR}/generic ${SUBDIR}/neolibs
-
-MAKEFILE= ${FILESDIR}/Makefile.bsd
-USE_TCL= 84+
-MAKE_ENV+= NEO_LIBRARY=${NEO_LIBRARY} TCL_VER=${TCL_VER}
-
-DDIR= ${PREFIX}/lib/tcl${TCLV}/Trf
-
-post-build:
- cd ${WRKSRC}/../neolibs && ${ECHO_CMD} 'auto_mkindex . */*.tcl' | tclsh${TCL_VER}
-
-NEO_LIBRARY= ${PREFIX}/lib/neo8.2
-
-.include <bsd.port.pre.mk>
-
-post-install:
- ${MKDIR} ${NEO_LIBRARY}
- ${CP} -Rp ${WRKSRC}/../neolibs/[a-z]* ${NEO_LIBRARY}
- ${SED} -e 's,@NEO_SHARED_LIB_FILE@,libneo82.so,' \
- -e 's,@NEO_VERSION@,8.2,' < ${WRKSRC}/pkgIndex.tcl.in > \
- ${NEO_LIBRARY}/pkgIndex.tcl
-
-.include <bsd.port.post.mk>
diff --git a/devel/tcl-neo/distinfo b/devel/tcl-neo/distinfo
deleted file mode 100644
index 2d85ab9dae75..000000000000
--- a/devel/tcl-neo/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-MD5 (neowebscript-3.3.tar.gz) = 82c440c9997589b2422596be385b91ed
-SHA256 (neowebscript-3.3.tar.gz) = 79c797a52040fbd9cd01d9212b4543a97c6239becd0272adbbe1b51983c43148
-SIZE (neowebscript-3.3.tar.gz) = 4428748
diff --git a/devel/tcl-neo/files/Makefile.bsd b/devel/tcl-neo/files/Makefile.bsd
deleted file mode 100644
index 7cd0f0511aed..000000000000
--- a/devel/tcl-neo/files/Makefile.bsd
+++ /dev/null
@@ -1,30 +0,0 @@
-PREFIX?= /usr/local
-
-NEO_LIBRARY?= ${PREFIX}/lib/neo8.2
-TCL_VER?= 8.4
-TCL_DVER= ${TCL_VER:S/.//}
-CFLAGS+= -I${PREFIX}/include/tcl${TCL_VER} -I${PREFIX}/include
-CFLAGS+= -DNEO_LIBRARY=\"${NEO_LIBRARY}\"
-CFLAGS+= -DHAVE_TERMIOS_H -DHAVE_STDLIB_H -DHAVE_SYS_TIME_H -DHAVE_UNISTD_H
-CFLAGS+= -DNEO_DB # -DDB_185_COMPAT -- seems broken :-(
-CFLAGS+= -DNEOSOFT_TCL_ENCRYPTION -DCUTE
-CFLAGS+= -Wall -Wno-parentheses -Werror
-# OpenLDAP requires db3, while the NEO_DB stuff works only with db2.
-# Disable NEO_LDAP until the NEW_DB is upgraded
-# CFLAGS+= -DNEO_LDAP
-
-SRCS= neoXcrypt.c neoPkgInit.c neoXwww.c neoXgeneral.c \
- neoXcute.c neoXcomma.c neoXkdebug.c neoCbuf.c \
- neoXlist.c neoXdb.c # neoXldap.c
-INCS= neo.h neoCbuf.h neoXcute.h
-
-WARNS= 3
-
-SHLIB_NAME= libneo82.so.1
-
-LDADD+= -lcrypt -L${PREFIX}/lib -lmd -ldb2 # -ldap -llber
-
-LIBDIR= ${PREFIX}/lib
-INCSDIR= ${PREFIX}/include
-
-.include <bsd.lib.mk>
diff --git a/devel/tcl-neo/files/patch-config b/devel/tcl-neo/files/patch-config
deleted file mode 100644
index 2f38094fa129..000000000000
--- a/devel/tcl-neo/files/patch-config
+++ /dev/null
@@ -1,4 +0,0 @@
---- neo.h Thu Apr 20 09:16:00 2000
-+++ neo.h Thu Aug 16 20:53:17 2001
-@@ -21 +20,0 @@
--#include "neoXconfig.h"
diff --git a/devel/tcl-neo/files/patch-cute b/devel/tcl-neo/files/patch-cute
deleted file mode 100644
index 3b08c4650d34..000000000000
--- a/devel/tcl-neo/files/patch-cute
+++ /dev/null
@@ -1,381 +0,0 @@
---- neoXcute.c 2000-04-20 09:16:00.000000000 -0400
-+++ neoXcute.c 2010-01-18 01:13:14.000000000 -0500
-@@ -45,5 +45,7 @@
- #endif
-
-+#include <errno.h>
- #include <signal.h>
-+#include <string.h>
- #include <unistd.h>
- #include <fcntl.h>
-@@ -55,8 +57,4 @@
- #include "neoXcute.h"
-
--extern char *strerror();
--
--extern int errno;
--
- static char cute_expectbuf[2048];
-
-@@ -86,9 +84,15 @@
- int cute_bufindex = 0;
-
--void
--ppanic(s, fileName, lineNumber)
--char *s;
--char *fileName;
--int lineNumber;
-+static Tcl_CmdProc Cute_Cmd, Cute_BreakLineCmd,
-+ Cute_CaptureCmd, Cute_CloseLineCmd,
-+ Cute_ConnectCmd, Cute_DisconnectCmd,
-+ Cute_ExpectCmd, Cute_FlushLineCmd,
-+ Cute_GetLineCmd, Cute_HangupCmd,
-+ Cute_OpenLineCmd, Cute_ParityCmd,
-+ Cute_SendCmd, Cute_SlowSendCmd,
-+ Cute_SelectSpeedCmd;
-+
-+static void
-+ppanic(const char *s, const char *fileName, int lineNumber)
- {
- fflush (stdout);
-@@ -97,9 +101,9 @@
- perror (s);
- fflush (stderr);
-- panic ();
-+ abort ();
- }
-
- /* dump a buffer of a specified length, printing preamble and exit text */
--void
-+static void
- cute_dumpbuf(char *preamble, char *buf, int len, char *exitText)
- {
-@@ -122,6 +126,6 @@
- * way we can timeout input, get stuff without a newline, etc, etc. */
-
--void
--cute_term_setup()
-+static void
-+cute_term_setup(void)
- {
- if (ioctl (0, TCGETA, &cute_orig_term_settings) < 0) {
-@@ -157,6 +161,6 @@
- /* Put the user's terminal in a mode where we read as many characters as
- * are there but it returns in a tenth of a second. */
--void
--cute_timeout_single_char_mode()
-+static void
-+cute_timeout_single_char_mode(void)
- {
- if (cute_noControllingTerminal) panic("no controlling terminal");
-@@ -168,6 +172,6 @@
- }
-
--void
--cute_orig_line_mode()
-+static void
-+cute_orig_line_mode(void)
- {
- if (ioctl (cute_linefd, TCSETA, &cute_orig_line_settings) < 0) {
-@@ -176,6 +180,6 @@
- }
-
--void
--cute_async_line_mode()
-+static void
-+cute_async_line_mode(void)
- {
- cute_async_line_settings.c_cc[VTIME] = 0;
-@@ -187,6 +191,6 @@
-
- /* Restore the user's terminal to its original settings */
--void
--cute_orig_term_mode()
-+static void
-+cute_orig_term_mode(void)
- {
- if (cute_noControllingTerminal) return;
-@@ -198,6 +202,6 @@
- /* Put the user's terminal in a mode where we can read one character at a time.
- */
--void
--cute_single_char_mode()
-+static void
-+cute_single_char_mode(void)
- {
- if (cute_noControllingTerminal) panic ("no controlling terminal");
-@@ -212,6 +216,6 @@
- * interval. */
-
--int
--cute_getachar() /* return a char or -1 after timeout */
-+static int
-+cute_getachar(void) /* return a char or -1 after timeout */
- {
- char c;
-@@ -226,6 +230,6 @@
-
- /* goodbye - clean up and dump out */
--void
--cute_comm_goodbye()
-+static void
-+cute_comm_goodbye(void)
- {
- cute_orig_term_mode();
-@@ -241,5 +245,5 @@
-
- /* Cute_Nap - nap for the specified number of milliseconds */
--void
-+static void
- Cute_Nap (int ms)
- {
-@@ -269,10 +273,10 @@
- *----------------------------------------------------------------------
- */
--int
-+static int
- Cute_OpenLineCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- if (argc != 2) {
-@@ -338,8 +342,8 @@
- int
- Cute_CloseLineCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- if (argc != 1) {
-@@ -365,8 +369,8 @@
- int
- Cute_ParityCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int cflag;
-@@ -432,11 +436,11 @@
- int
- Cute_SelectSpeedCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int bps_bits;
-- static unsigned bits_per_second = 0;
-+ static int bits_per_second = 0;
-
- if (argc == 1) {
-@@ -472,5 +476,5 @@
- #endif
-
-- if (!TclX_StrToUnsigned (argv[1], 0, &bits_per_second)) {
-+ if (Tcl_GetInt(interp, argv[1], &bits_per_second) != TCL_OK) {
- Tcl_AppendResult (interp, argv[0],
- ": unrecognizable baud rate ", argv[1],
-@@ -591,8 +595,6 @@
- }
-
--int
--cute_isline_up(interp, cmd)
--Tcl_Interp *interp;
--char *cmd;
-+static int
-+cute_isline_up(Tcl_Interp *interp, const char *cmd)
- {
- if (cute_line_up) return TCL_OK;
-@@ -614,8 +616,8 @@
- int
- Cute_SendCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int nocr = 0;
-@@ -648,6 +650,6 @@
- }
-
--void
--cute_disconnect()
-+static void
-+cute_disconnect(void)
- {
- cute_interactive_connect = 0;
-@@ -660,10 +662,8 @@
- */
-
--void
--cute_capture(buf, len)
--char *buf;
--int len;
-+static void
-+cute_capture(char *buf, int len)
- {
-- static previous_was_cr = 0;
-+ static int previous_was_cr = 0;
- char c;
- static char cr = '\r';
-@@ -706,8 +706,8 @@
- int
- Cute_CaptureCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- if (argc != 2) {
-@@ -721,5 +721,5 @@
- }
-
-- if (Tcl_GetOpenFile (interp, argv[1], 1, 1, &cute_captureFileP) != TCL_OK) {
-+ if (Tcl_GetOpenFile (interp, argv[1], 1, 1, (ClientData *)&cute_captureFileP) != TCL_OK) {
- cute_captureFileP = NULL;
- return TCL_ERROR;
-@@ -741,8 +741,8 @@
- int
- Cute_ConnectCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int c;
-@@ -840,8 +840,8 @@
- int
- Cute_DisconnectCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- cute_disconnect ();
-@@ -861,8 +861,8 @@
- int
- Cute_HangupCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- cute_comm_goodbye ();
-@@ -882,8 +882,8 @@
- int
- Cute_SlowSendCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int j, len;
-@@ -944,8 +944,8 @@
- int
- Cute_GetLineCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int newlineIndex;
-@@ -962,5 +962,5 @@
-
- if (argc == 3) {
-- if (!TclX_StrToInt (argv[2], 10, &timeout_seconds)) {
-+ if (Tcl_GetInt(interp, argv[2], &timeout_seconds) != TCL_OK) {
- Tcl_AppendResult(interp, "bad timeout arg: ", argv[0],
- " varName ", argv[2], (char *)NULL);
-@@ -1068,8 +1068,8 @@
- int
- Cute_ExpectCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int timeout_seconds;
-@@ -1101,5 +1101,5 @@
- }
-
-- if (!TclX_StrToInt (argv[1], 10, &timeout_seconds)) {
-+ if (Tcl_GetInt(interp, argv[1], &timeout_seconds) != TCL_OK) {
- Tcl_AppendResult (interp, "bad timeout value: ", argv[0],
- ": ", argv[1], (char *)NULL);
-@@ -1218,8 +1218,8 @@
- int
- Cute_FlushLineCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int flusharg;
-@@ -1243,5 +1243,5 @@
- if (cute_isline_up(interp, argv[0]) == TCL_ERROR) return TCL_ERROR;
-
-- if (ioctl(cute_linefd, TCFLSH, (struct termio *) flusharg) < 0) {
-+ if (ioctl(cute_linefd, TCFLSH, flusharg) < 0) {
- perror("flushing remote line");
- }
-@@ -1260,8 +1260,8 @@
- int
- Cute_BreakLineCmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- if (cute_isline_up(interp, argv[0]) == TCL_ERROR) return TCL_ERROR;
-@@ -1274,6 +1274,6 @@
-
- struct cuteCommandStruct {
-- const char *name;
-- int (*function)();
-+ const char *name;
-+ Tcl_CmdProc *function;
- };
-
-@@ -1298,8 +1298,8 @@
- int
- Cute_Cmd(clientData, interp, argc, argv)
-- char *clientData;
-+ void *clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- struct cuteCommandStruct *cmdptr = cuteCommands;
diff --git a/devel/tcl-neo/files/patch-db b/devel/tcl-neo/files/patch-db
deleted file mode 100644
index 60211d97b8e6..000000000000
--- a/devel/tcl-neo/files/patch-db
+++ /dev/null
@@ -1,10 +0,0 @@
---- neoXdb.c Thu Apr 20 09:16:00 2000
-+++ neoXdb.c Thu Aug 16 21:03:06 2001
-@@ -31,5 +31,5 @@
- #ifdef DB_185_COMPAT
--#include <db_185.h>
-+#include <db2/db_185.h>
- #else
--#include <db.h>
-+#include <db2/db.h>
- #endif
diff --git a/devel/tcl-neo/files/patch-md5 b/devel/tcl-neo/files/patch-md5
deleted file mode 100644
index 439ae5d48267..000000000000
--- a/devel/tcl-neo/files/patch-md5
+++ /dev/null
@@ -1,27 +0,0 @@
-Everybody and their cat try to ship their own implementation of md5
-functions. Force FreeBSD's -lmd here. Also, when creating the resulting
-string-object, use our advanced knowledge, that all md5 digests are 32
-characters long.
---- neoXgeneral.c Thu Apr 20 09:16:01 2000
-+++ neoXgeneral.c Thu Aug 16 20:46:02 2001
-@@ -10,1 +10,2 @@
--#include "util_md5.h"
-+#include <sys/types.h>
-+#include <md5.h>
-@@ -94,11 +95,13 @@
- {
- char *digest;
-+ int length;
-
- if (objc != 2) {
-- Tcl_SetResult(interp, "usage: md5 string", TCL_STATIC);
-+ Tcl_WrongNumArgs(interp, 1, objv, "<string>");
- return TCL_ERROR;
- }
-- digest = md5(Tcl_GetStringFromObj(objv[1], (int*)NULL));
-- Tcl_SetObjResult(interp, Tcl_NewStringObj(digest, -1));
-+ digest = Tcl_GetStringFromObj(objv[1], &length);
-+ digest = MD5Data(digest, length, NULL);
-+ Tcl_SetObjResult(interp, Tcl_NewStringObj(digest, 32));
- return TCL_OK;
- }
diff --git a/devel/tcl-neo/files/patch-warnings b/devel/tcl-neo/files/patch-warnings
deleted file mode 100644
index 4e627a278f97..000000000000
--- a/devel/tcl-neo/files/patch-warnings
+++ /dev/null
@@ -1,938 +0,0 @@
---- neo.h 2010-01-17 19:33:14.000000000 -0500
-+++ neo.h 2010-01-17 20:20:51.000000000 -0500
-@@ -18,5 +18,4 @@
-
- #include <tcl.h>
--#include <tclExtend.h>
- #include "neoCbuf.h"
-
-@@ -42,8 +42,9 @@
- Tcl_Interp *interp, int objc1, Tcl_Obj *CONST objv[]));
-
--extern int
--Tcl_LassignArrayCmd _ANSI_ARGS_((ClientData, Tcl_Interp*, int, char**));
-+Tcl_CmdProc Tcl_LassignArrayCmd, Tcl_LassignFieldsCmd;
-
--extern int
--Tcl_LassignFieldsCmd _ANSI_ARGS_((ClientData, Tcl_Interp*, int, char**));
-+extern void
-+NeoSoft_DecryptFile(Tcl_Interp *, const char *fname, char *buffer, off_t fileOffset);
-
-+Tcl_PackageInitProc NeoSoft_InitEncrypt, Neo_XwwwInit, Neo_dbInit, Cute_InitComm,
-+ Neo_initGeneral, TclX_InitKDebug, Neo_initList, Neo_Init;
---- neoCbuf.h 2000-04-20 09:16:00.000000000 -0400
-+++ neoCbuf.h 2010-01-17 23:42:38.000000000 -0500
-@@ -23,5 +23,5 @@
- */
- int Neo_SetCursor(Tcl_Interp *interp, Neo_CursorPool *pool,
-- void *res, char *handle);
-+ void *res, const char *handle);
-
- /* Neo_GetCursor:
---- neoXcrypt.c 2000-04-20 09:16:00.000000000 -0400
-+++ neoXcrypt.c 2010-01-17 20:12:47.000000000 -0500
-@@ -17,5 +17,11 @@
- #endif
-
--char *fileEncryptionKey = "NeoSoft Tcl";
-+#include <string.h>
-+
-+const char *fileEncryptionKey = "NeoSoft Tcl";
-+
-+static void neo_encrypt(char *string, const char *key, size_t offset, int mode);
-+static Tcl_CmdProc NeoSoft_CryptCmd;
-+static Tcl_CmdProc NeoSoft_EncryptCmd;
-
- /* encrypt/decrypt string in place using key, mode = 1 to encrypt and
-@@ -26,5 +32,5 @@
- char *string;
- const char *key;
--long offset;
-+size_t offset;
- int mode;
- {
-@@ -56,10 +62,10 @@
- NeoSoft_DecryptFile(interp, fileName, dataBuffer, fileOffset)
- Tcl_Interp *interp;
--char *fileName;
-+const char *fileName;
- char *dataBuffer;
--long fileOffset;
-+off_t fileOffset;
- {
-- char *baseFileName, *workFileName;
-- char *encryptedFileVarValue;
-+ const char *baseFileName, *workFileName;
-+ const char *encryptedFileVarValue;
-
- baseFileName = workFileName = fileName;
-@@ -85,5 +91,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- char *resultBuffer;
-@@ -100,5 +106,5 @@
- strcpy (resultBuffer, argv[1]);
-
-- mode = (STREQU (argv[0], "neo_encrypt"));
-+ mode = clientData == (ClientData)1 ? 1 : 0;
-
- for (keyIndex = 2; keyIndex < argc; keyIndex++) {
-@@ -115,5 +121,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- char *resultBuffer;
-@@ -144,5 +150,5 @@
-
- Tcl_CreateCommand (interp, "neo_decrypt", NeoSoft_EncryptCmd,
-- (ClientData)NULL, (void (*)())NULL);
-+ (ClientData)1, (void (*)())NULL);
-
- Tcl_CreateCommand (interp, "neo_crypt", NeoSoft_CryptCmd,
---- neoXcomma.c 2000-04-20 09:16:00.000000000 -0400
-+++ neoXcomma.c 2010-01-17 22:32:06.000000000 -0500
-@@ -21,10 +21,7 @@
-
-
--void
--Neo_ListObjAppendString (interp, targetList, string, length)
-- Tcl_Interp *interp;
-- Tcl_Obj *targetList;
-- char *string;
-- int length;
-+static void
-+Neo_ListObjAppendString (Tcl_Interp *interp, Tcl_Obj *targetList,
-+ const char *string, int length)
- {
- Tcl_Obj *elementObj;
-@@ -71,6 +68,8 @@
- int Neo_quotePairsWithinStrings = 1;
-
-- if (objc != 2)
-- return TclX_WrongArgs (interp, objv[0], "string");
-+ if (objc != 2) {
-+ Tcl_WrongNumArgs (interp, 1, objv, "string");
-+ return TCL_ERROR;
-+ }
-
- /* get access to a textual representation of the object */
-@@ -230,6 +229,8 @@
- int stringLength;
-
-- if (objc != 2)
-- return TclX_WrongArgs (interp, objv[0], "list");
-+ if (objc != 2) {
-+ Tcl_WrongNumArgs (interp, 1, objv, "list");
-+ return TCL_ERROR;
-+ }
-
- resultPtr = Tcl_GetObjResult (interp);
-@@ -299,9 +300,9 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int listArgc, listIdx, idx, remaining;
-- char **listArgv;
-- char *varValue;
-+ const char **listArgv;
-+ const char *varValue;
-
- if (argc < 4) {
-@@ -353,10 +354,10 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
-- int listArgc, listIdx, idx;
-- char **listArgv;
-- char *varValue;
-- char *fieldPositionText;
-+ int listArgc, listIdx, idx;
-+ const char **listArgv;
-+ const char *varValue;
-+ const char *fieldPositionText;
-
- if (argc < 5) {
---- neoXwww.c 2000-04-20 09:16:01.000000000 -0400
-+++ neoXwww.c 2010-01-17 21:00:14.000000000 -0500
-@@ -27,4 +27,10 @@
- #define NEO_MAXDEPTH 4
-
-+static int Neo_wwwIncr (Tcl_Interp *, const char *array,
-+ const char *element, int value);
-+static Tcl_CmdProc Neo_LoadWebStatsCmd, Neo_LoadNeoWebStatsCmd,
-+ Neo_UnescapeStringCmd, Neo_EscapeStringCmd,
-+ Neo_EscapeSgmlCharsCmd, Neo_EscapeShellCommandCmd,
-+ Neo_LoadWebAgentLogCmd;
-
- /*
-@@ -40,13 +46,13 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_wwwIncr (interp, arrayName, elementName, incrValue)
- Tcl_Interp *interp;
-- char *arrayName;
-- char *elementName;
-+ const char *arrayName;
-+ const char *elementName;
- int incrValue;
- {
- int currentValue;
-- char *currentValueString;
-+ const char *currentValueString;
- char newValueText[16];
-
-@@ -88,16 +94,16 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_LoadNeoWebStatsCmd (clientData, interp, argc, argv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int largc;
-- char **largv;
-+ const char **largv;
- char hourNumberString[32];
- long dateSeconds, firstDate;
-- char *virtualHost;
-+ const char *virtualHost;
- char *endptr;
- long startSeekOffset = 0, endSeekOffset = 0;
-@@ -105,5 +111,5 @@
- char *urlPtr;
- char *urlPiece;
--char *remoteName, *remoteLogname, *command, *status, *bytesSent, *user;
-+ const char *remoteName, *remoteLogname, *command, *status, *bytesSent, *user;
- int depth;
- long accessCount = 0, errorCount = 0;
-@@ -116,7 +122,7 @@
- Tcl_DString *dsElement = &dsElementData;
- Tcl_DString *dsInput = &dsInputData;
-- char *date;
-- char *commandVerb, *url, *httpType;
-- char *hourlyArrayName;
-+ const char *date;
-+ const char *commandVerb, *url, *httpType;
-+ const char *hourlyArrayName;
- Tcl_Channel chanHandle;
-
-@@ -227,12 +233,12 @@
- */
-
-- for (urlPtr = virtualHost; *urlPtr != '\0'; urlPtr++) {
-- if (isupper((int)(*urlPtr))) {
-- *urlPtr = (char)tolower((int)(*urlPtr));
-+ for (urlPtr = (char *)virtualHost; *urlPtr != '\0'; urlPtr++) {
-+ if (*urlPtr > 'A' && *urlPtr < 'Z') {
-+ *urlPtr += 'a' - 'A';
- }
- }
-
- /* parse out the command in detail */
-- commandVerb = strtok (command, " ");
-+ commandVerb = strtok ((char *)command, " ");
- if (commandVerb == (char *)NULL) continue;
- #ifdef BIG_DEBUG
-@@ -252,14 +258,10 @@
- #endif
-
-- /* Convert URL to lowercase.
-- *
-- * Also if we see a '?', the remainder of the URL is parameters
-+ /* If we see a '?', the remainder of the URL is parameters
- * to a CGI, so we terminate the string at the '?' (deleting the
- * question mark) and stop scanning.
- */
-- for (urlPtr = url; *urlPtr != '\0'; urlPtr++) {
-- if ((*urlPtr >= 'A') && (*urlPtr <= 'Z')) {
-- *urlPtr = *urlPtr - 'A' + 'a';
-- } else if (*urlPtr == '?') {
-+ for (urlPtr = (char *)url; *urlPtr != '\0'; urlPtr++) {
-+ if (*urlPtr == '?') {
- *urlPtr = '\0';
- break;
-@@ -267,5 +269,5 @@
- }
-
-- urlPiece = strtok (url, "/");
-+ urlPiece = strtok ((char *)url, "/");
- /* strip all "../" leading entries */
- while (urlPiece != (char *)NULL && (STREQU (urlPiece, "..") || (STREQU (urlPiece, ".")))) {
-@@ -392,10 +394,10 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_LoadWebStatsCmd (clientData, interp, argc, argv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- FILE *fp;
-@@ -415,6 +417,6 @@
- char *date, *firstDate;
- char *commandVerb, *url, *httpType;
-- char *hourlyArrayName;
-- char *fileName;
-+ const char *hourlyArrayName;
-+ const char *fileName;
- char savechar;
-
-@@ -433,5 +435,6 @@
-
- if ((fp = fopen (fileName, "r")) == NULL) {
-- interp->result = Tcl_PosixError (interp);
-+ Tcl_AppendResult(interp, fileName, ": ",
-+ Tcl_PosixError(interp), NULL);
- return TCL_ERROR;
- }
-@@ -635,5 +638,6 @@
-
- if (ferror (fp)) {
-- interp->result = Tcl_PosixError (interp);
-+ Tcl_AppendResult(interp, fileName, ": ",
-+ Tcl_PosixError(interp), NULL);
- return TCL_ERROR;
- }
-@@ -660,5 +664,5 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_XhexToDigit(char c) {
-
-@@ -690,12 +694,13 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_UnescapeStringCmd (clientData, interp, argc, argv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
-- char *origString, *newString, *origStringP, *newStringP;
-+ const char *origString, *origStringP;
-+ char *newString, *newStringP;
- int digit1, digit2;
-
-@@ -765,5 +770,5 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_DigitToHex(int c) {
-
-@@ -787,12 +792,13 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_EscapeStringCmd (clientData, interp, argc, argv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
-- char *origString, *newString, *origStringP, *newStringP;
-+ const char *origString, *origStringP;
-+ char *newString, *newStringP;
- int origLength;
-
-@@ -821,5 +827,6 @@
- char c = *origStringP;
-
-- if (isalnum (c)) {
-+ if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z') ||
-+ (c >= 'a' && c <= 'z') || c == '_') {
- *newStringP++ = c;
- } else {
-@@ -848,12 +855,13 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_EscapeSgmlCharsCmd (clientData, interp, argc, argv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
-- char *origString, *newString, *origStringP, *newStringP;
-+ const char *origString, *origStringP;
-+ char *newString, *newStringP;
- int origLength;
-
-@@ -941,12 +949,13 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_EscapeShellCommandCmd (clientData, interp, argc, argv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
-- char *origString, *newString, *origStringP, *newStringP, *checkP;
-+ const char *origString, *origStringP, *checkP;
-+ char *newString, *newStringP;
-
- if (argc != 2) {
-@@ -997,16 +1006,16 @@
- *-----------------------------------------------------------------------------
- */
--int
-+static int
- Neo_LoadWebAgentLogCmd (clientData, interp, argc, argv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- FILE *fp;
- char buf[BUFSIZE];
- long accessCount = 0;
-- char *refererArrayName;
-- char *fileName;
-+ const char *refererArrayName;
-+ const char *fileName;
-
- if (argc != 3) {
-@@ -1024,5 +1033,6 @@
-
- if ((fp = fopen (fileName, "r")) == NULL) {
-- interp->result = Tcl_PosixError (interp);
-+ Tcl_AppendResult(interp, fileName, ": ",
-+ Tcl_PosixError(interp), NULL);
- return TCL_ERROR;
- }
-@@ -1036,5 +1046,6 @@
-
- if (ferror (fp)) {
-- interp->result = Tcl_PosixError (interp);
-+ Tcl_AppendResult(interp, fileName, ": ",
-+ Tcl_PosixError(interp), NULL);
- return TCL_ERROR;
- }
---- neoXkdebug.c 2000-04-20 09:16:01.000000000 -0400
-+++ neoXkdebug.c 2010-01-17 22:43:45.000000000 -0500
-@@ -46,4 +46,6 @@
- */
-
-+#include <string.h>
-+
- #include "neo.h"
- #define MAXINT (int)((~0u) >> 1)
-@@ -63,13 +65,6 @@
- typedef struct traceInfo_t *traceInfo_pt;
-
--static void
--TraceRoutine _ANSI_ARGS_((ClientData clientData,
-- Tcl_Interp *interp,
-- int level,
-- char *command,
-- int (*cmdProc)(),
-- ClientData cmdClientData,
-- int argc,
-- char *argv[]));
-+static Tcl_CmdTraceProc TraceRoutine;
-+static Tcl_CmdProc TclX_TraceConCmd, TclX_TraceProcCmd;
-
- static void
-@@ -92,15 +87,14 @@
- int level;
- char *command;
-- int (*cmdProc)();
-+ Tcl_CmdProc *cmdProc;
- ClientData cmdClientData;
- int argc;
-- char *argv[];
-+ const char *argv[];
- {
- traceInfo_pt traceInfoPtr = (traceInfo_pt) clientData;
-- int idx, cmdLen, printLen;
- int result;
- char depthText[12];
-- char *stepCommand;
-- char *stepArgs[4];
-+ char *stepCommand, *stepArg3;
-+ const char *stepArgs[4];
-
- static int inTraceRoutine = 0;
-@@ -129,9 +123,9 @@
- stepArgs[1] = depthText;
- stepArgs[2] = command;
-- stepArgs[3] = Tcl_Merge (argc, argv);
-+ stepArgs[3] = stepArg3 = Tcl_Merge (argc, argv);
-
- stepCommand = Tcl_Merge (4, stepArgs);
-
-- ckfree (stepArgs[3]);
-+ ckfree (stepArg3);
-
- result = Tcl_Eval (interp, stepCommand);
-@@ -164,8 +158,7 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- traceInfo_pt infoPtr = (traceInfo_pt) clientData;
-- int idx;
-
- if (argc < 2)
-@@ -221,8 +214,7 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- traceInfo_pt infoPtr = (traceInfo_pt) clientData;
-- int idx;
- char *commandToBeTraced;
- int result;
---- neoCbuf.c 2000-04-20 09:16:00.000000000 -0400
-+++ neoCbuf.c 2010-01-17 23:41:39.000000000 -0500
-@@ -54,5 +54,6 @@
- */
- int
--Neo_SetCursor(Tcl_Interp *interp, Neo_CursorPool *pool, void *res, char *handle)
-+Neo_SetCursor(Tcl_Interp *interp, Neo_CursorPool *pool, void *res,
-+ const char *handle)
- {
- int resid, i;
---- neoXgeneral.c 2000-04-20 09:16:01.000000000 -0400
-+++ neoXgeneral.c 2010-01-17 21:38:37.000000000 -0500
-@@ -11,2 +11,8 @@
-+#include <string.h>
-+
-+static Tcl_ObjCmdProc Neo_MD5ObjCmd, Neo_Incr0ObjCmd,
-+ Neo_SetdefaultObjCmd, Neo_Intersect3ObjCmd,
-+ Neo_ObjectObjCmd, Neo_QuoteSqlObjCmd;
-+static Tcl_Obj *Neo_nextUniqueElement (Tcl_Obj **listObjPtrPtr, int *indexPtr, int nElements);
-
- /*
-@@ -40,6 +46,8 @@
- int increment;
-
-- if ((objc != 2) && (objc != 3))
-- return TclX_WrongArgs (interp, objv [0], " varName ?increment?\"");
-+ if ((objc != 2) && (objc != 3)) {
-+ Tcl_WrongNumArgs (interp, 1, objv, "varName ?increment?\"");
-+ return TCL_ERROR;
-+ }
-
- /* Get the increment amount. If it wasn't explicitly specified, set it
-@@ -91,5 +99,5 @@
- Tcl_Interp *interp;
- int objc;
-- Tcl_Obj **objv;
-+ Tcl_Obj *CONST objv[];
- {
- char *digest;
-@@ -132,7 +142,8 @@
- Tcl_Obj *objectPtr;
-
-- if (objc != 3)
-- return TclX_WrongArgs (interp, objv [0],
-- " varName value");
-+ if (objc != 3) {
-+ Tcl_WrongNumArgs (interp, 1, objv, "varName value");
-+ return TCL_ERROR;
-+ }
-
- /* If the variable already exists, we are done. */
-@@ -244,7 +255,8 @@
- Tcl_Obj *lastListElement;
-
-- if (objc != 3)
-- return TclX_WrongArgs (interp, objv [0],
-- " list1 list2");
-+ if (objc != 3) {
-+ Tcl_WrongNumArgs (interp, 1, objv, "list1 list2");
-+ return TCL_ERROR;
-+ }
-
- /*
-@@ -369,40 +381,47 @@
- Tcl_Obj *CONST objv[];
- {
-- Tcl_Obj *objectPtr;
-- char *subString;
- Tcl_Obj *resultPtr = Tcl_GetObjResult (interp);
-+ const char *subcommands[] = {
-+ "type", "types", "convert", NULL
-+ };
-+ enum { OCMD_TYPE, OCMD_TYPES, OCMD_CONVERT } subcommand;
-
- if (objc < 2 || objc > 4) {
-- err:
-- return TclX_WrongArgs (interp, objv [0], "subcommand [arg]");
-+ Tcl_WrongNumArgs(interp, 1, objv, "subcommand ?arg(s)?");
-+ return TCL_ERROR;
- }
-
-- subString = Tcl_GetStringFromObj (objv [1], NULL);
--
-- if (STREQU (subString, "types")) {
-- if (objc != 2) goto err;
-+ if (Tcl_GetIndexFromObj(interp, objv[1], subcommands,
-+ "subcommand", 0, (int *)&subcommand) != TCL_OK)
-+ return TCL_ERROR;
-
-+ switch (subcommand) {
-+ case OCMD_TYPES:
-+ if (objc != 2) {
-+ Tcl_WrongNumArgs(interp, 2, objv, NULL);
-+ return TCL_ERROR;
-+ }
- return (Tcl_AppendAllObjTypes (interp, resultPtr));
-- }
--
-- if (STREQU (subString, "type")) {
-- Tcl_Obj *objp = objv[2];
--
-- if (objc != 3) goto err;
-+ case OCMD_TYPE:
-+ if (objc != 3) {
-+ Tcl_WrongNumArgs(interp, 2, objv, NULL);
-+ return TCL_ERROR;
-+ }
-
-- if (objp->typePtr == NULL) {
-+ if (objv[2]->typePtr == NULL) {
- return TCL_OK;
- }
-
-- Tcl_SetStringObj (resultPtr, objp->typePtr->name, -1);
-+ Tcl_SetStringObj (resultPtr, objv[2]->typePtr->name, -1);
- return TCL_OK;
-- }
--
-- if (STREQU (subString, "convert")) {
-+ case OCMD_CONVERT:
-+ {
- char *typeName;
-- Tcl_Obj *objp = objv[2];
- Tcl_ObjType *typeObjType;
-
-- if (objc != 4) goto err;
-+ if (objc != 4) {
-+ Tcl_WrongNumArgs(interp, 2, objv, "object type");
-+ return TCL_ERROR;
-+ }
-
- typeName = Tcl_GetStringFromObj (objv [3], NULL);
-@@ -415,5 +434,5 @@
- }
-
-- if (Tcl_ConvertToType (interp, objp, typeObjType) == TCL_ERROR) {
-+ if (Tcl_ConvertToType (interp, objv[2], typeObjType) == TCL_ERROR) {
- Tcl_AddObjErrorInfo (interp, "while converting type", 1);
- return TCL_ERROR;
-@@ -421,5 +440,7 @@
- return TCL_OK;
- }
-+ }
-
-+ /* Unreachable, really: */
- Tcl_SetStringObj (resultPtr, "bad # arg", -1);
- return TCL_ERROR;
-@@ -459,9 +480,10 @@
- int thisStringLength;
- int newStringLength;
-- int needsQuoting = 0;
- Tcl_Obj *newStringObj;
-
-- if (objc != 2)
-- return TclX_WrongArgs (interp, objv [0], "value");
-+ if (objc != 2) {
-+ Tcl_WrongNumArgs (interp, 1, objv, "value");
-+ return TCL_ERROR;
-+ }
-
- thisString = Tcl_GetStringFromObj (objv[1], &thisStringLength);
---- neoXdb.c 2000-04-20 09:16:00.000000000 -0400
-+++ neoXdb.c 2010-01-17 23:39:30.000000000 -0500
-@@ -17,4 +17,5 @@
-
- #include "neo.h"
-+#include <tclExtend.h>
- #include <sys/stat.h>
-
-@@ -77,4 +77,6 @@
- } t_desc;
-
-+static Tcl_CmdProc DbProc;
-+
- /*
- * DbProc(cd, interp, argc, argv)
-@@ -86,36 +88,30 @@
-
- static int
--DbProc (cd, interp, argc, argv)
-- t_cldat *cd;
-+DbProc (_cd, interp, argc, argv)
-+ ClientData _cd;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
-- int i, j, k, id, length, length2, errno;
-+ int i, id, length, length2, errno;
- int mode = 0644, result = 0;
-- u_int32_t flags = NULL, locker;
-+ u_int32_t flags = 0;
- u_int dbflags;
-- ino_t *ino;
-- int cur_pid;
-- struct stat lock_stat;
- t_desc *td = NULL;
-- char *p, *mark;
-- char buf[64], buf2[64], lockdir[LOCK_DIR_SIZE];
-+ const char *p;
-+ char buf[64], *mark;
- Tcl_DString dbPathBuf;
- Tcl_HashEntry *hash;
- DB *d;
-- DBT key, content, lock_dbt;
-+ DBT key, content;
- DBC *cursorp;
- DBTYPE dbtype;
- DB_INFO dbi;
-- DB_LOCKTAB *lockr;
-- DB_LOCK lock;
- db_lockmode_t lock_type;
- Tcl_Obj *objScript;
-+ t_cldat *cd = _cd;
-
- static char *badDbSeqArgs = "db seq <sess> <flag> [<key>] [<var>]";
- static char *badDbCmdArgs = "db {open|close|del|cursor|get|put|seq|forall|searchall|sync}";
-- int varNameIndex;
-- int keyIndex;
-
- /* DB 2.0 requires DBT structs to be zeroed out */
-@@ -142,5 +138,5 @@
- cd->dbenv = (DB_ENV *)ckalloc(sizeof(DB_ENV));
- memset(cd->dbenv, 0, sizeof(DB_ENV));
-- if (errno = db_appinit(argv[1], NULL, cd->dbenv, DB_CREATE | DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_MPOOL | DB_INIT_TXN)) {
-+ if ((errno = db_appinit(argv[1], NULL, cd->dbenv, DB_CREATE | DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_MPOOL | DB_INIT_TXN))) {
- Tcl_AppendResult(interp,
- "Unable to initialize environment: ",
-@@ -163,5 +159,5 @@
-
- if (cd->dbenv) {
-- if (errno = db_appexit(cd->dbenv)) {
-+ if ((errno = db_appexit(cd->dbenv))) {
- Tcl_AppendResult(interp,
- "Unable to close the environment: ",
-@@ -351,5 +347,5 @@
-
- } else if (STREQU (argv[1], "commit")) {
-- if (errno = txn_commit(cd->tid)) {
-+ if ((errno = txn_commit(cd->tid))) {
- Tcl_AppendResult(interp,
- "Unable to commit transaction: ",
-@@ -360,5 +356,5 @@
-
- } else if (STREQU (argv[1], "abort")) {
-- if (errno = txn_abort(cd->tid)) {
-+ if ((errno = txn_abort(cd->tid))) {
- Tcl_AppendResult(interp,
- "Unable to abort transaction: ",
-@@ -377,5 +373,5 @@
-
- /* Begin the transaction */
-- if (errno = txn_begin(cd->dbenv->tx_info, NULL, &(cd->tid))) {
-+ if ((errno = txn_begin(cd->dbenv->tx_info, NULL, &(cd->tid)))) {
- Tcl_AppendResult(interp,
- "Unable to begin transaction: ",
-@@ -386,5 +382,5 @@
-
- if (Tcl_Eval(interp, argv[2]) != TCL_OK) {
-- if (errno = txn_abort(cd->tid)) {
-+ if ((errno = txn_abort(cd->tid))) {
- Tcl_AppendResult(interp,
- "Unable to abort transaction: ",
-@@ -394,5 +390,5 @@
- }
- } else {
-- if (errno = txn_commit(cd->tid)) {
-+ if ((errno = txn_commit(cd->tid))) {
- Tcl_AppendResult(interp,
- "Unable to commit transaction: ",
-@@ -472,5 +468,5 @@
-
- length = strlen(argv[2]);
-- *mark = NULL;
-+ *mark = '\0';
-
- if (!(td = TclX_HandleXlate (interp, cd->handles, argv[2])))
-@@ -606,5 +602,5 @@
- }
-
-- key.data = argv[3];
-+ key.data = (char *)argv[3];
- key.size = strlen (key.data) + 1;
-
-@@ -653,5 +649,5 @@
- if (STREQU (*argv, "close")) {
- CHKNARG (2, 2, "db close <sess>");
-- td->db->close (td->db, NULL);
-+ td->db->close (td->db, 0);
-
- /*
-@@ -705,5 +701,5 @@
- }
-
-- key.data = argv[2];
-+ key.data = (char *)argv[2];
- key.size = strlen (key.data) + 1;
-
-@@ -769,8 +765,8 @@
- }
-
-- key.data = argv[2];
-+ key.data = (char *)argv[2];
- key.size = strlen (key.data) + 1;
-
-- content.data = argv[3];
-+ content.data = (char *)argv[3];
- content.size = strlen (content.data) + 1;
-
-@@ -822,5 +818,5 @@
- }
-
-- key.data = argv[2];
-+ key.data = (char *)argv[2];
- key.size = strlen (key.data) + 1;
-
-@@ -1092,5 +1088,5 @@
- */
-
--void
-+int
- Neo_dbInit (interp)
- Tcl_Interp *interp;
-@@ -1103,4 +1099,5 @@
-
- Tcl_CreateCommand (interp, "db", DbProc, (ClientData)cd, 0);
-+ return TCL_OK;
- }
-
-@@ -1108,8 +1105,9 @@
- #else
-
--void
-+int
- Neo_dbInit (interp)
- Tcl_Interp *interp;
- {
-+ return TCL_OK;
- }
-
---- neoXlist.c 2000-04-20 09:16:01.000000000 -0400
-+++ neoXlist.c 2010-01-17 23:21:51.000000000 -0500
-@@ -6,4 +6,5 @@
-
- static Tcl_ObjType *listType;
-+static Tcl_ObjCmdProc NeoX_LremoveObjCmd;
-
-
-@@ -30,5 +31,6 @@
-
- if( objc < 3 ) {
-- return TclX_WrongArgs(interp, objv[0], "?mode? ?-all? list pattern");
-+ Tcl_WrongNumArgs(interp, 1, objv, "?mode? ?-all? list pattern");
-+ return TCL_ERROR;
- }
-
-@@ -61,14 +63,16 @@
- break;
- } else {
-- TclX_AppendObjResult( interp, "bad switch \"", modeStr,
-+ Tcl_AppendResult(interp, "bad switch \"", modeStr,
- "\": must be -exact, -glob, -regexp or -all",
- (char *)NULL);
- return TCL_ERROR;
- }
--
-+
- }
-
-- if( list >= objc - 1 )
-- return TclX_WrongArgs(interp, objv[0], "?mode? ?-all? list pattern");
-+ if( list >= objc - 1 ) {
-+ Tcl_WrongNumArgs(interp, 1, objv, "?mode? ?-all? list pattern");
-+ return TCL_ERROR;
-+ }
-
- if( Tcl_ListObjGetElements(interp, objv[list],
-@@ -90,5 +94,5 @@
- listObjv[i]) != TCL_OK)
- goto errorExit;
--
-+
- continue;
- }
-@@ -160,13 +164,14 @@
- }
- return TCL_OK;
--
-+
- errorExit:
-- if(matchedListPtr != NULL)
-+ if(matchedListPtr != NULL) {
- Tcl_DecrRefCount(matchedListPtr);
-+ }
- return TCL_ERROR;
-
- binData:
-- TclX_AppendObjResult(interp, "Binary data is not supported in this mode.",
-- (char *) NULL);
-+ Tcl_SetResult(interp, "Binary data is not supported in this mode.",
-+ TCL_STATIC);
- return TCL_ERROR;
- }
-@@ -181,5 +186,5 @@
- *-----------------------------------------------------------------------------
- */
--void
-+int
- Neo_initList(interp)
- Tcl_Interp *interp;
-@@ -189,6 +194,8 @@
- Tcl_CreateObjCommand(interp,
- "lremove",
-- NeoX_LremoveObjCmd,
-+ NeoX_LremoveObjCmd,
- (ClientData) NULL,
- (Tcl_CmdDeleteProc*) NULL);
-+
-+ return TCL_OK;
- }
diff --git a/devel/tcl-neo/pkg-descr b/devel/tcl-neo/pkg-descr
deleted file mode 100644
index 144aa1e0a1f2..000000000000
--- a/devel/tcl-neo/pkg-descr
+++ /dev/null
@@ -1,22 +0,0 @@
-Part of the NewWebScript an Apache module that allows webpage
-developers to embed Tcl code into their HTML, creating webpages
-with active content.
-
-This part is a general purpose part of NWS adding many convenience
-commands and procedures, including operating with serial devices,
-Berkeley DB2, and some client/server databases (Oracle, Postgres --
-if you have those installed).
-
-SYNOPSIS: package require Neo
-
-Unfortunately, the authors only distribute a GIANT source tarball
-including the entire Apache, db-2, TCL, itcl, gd, TclX, etc. This
-port will download the whole beast, but will only extract the neotcl
-part of it.
-
-The port is built without the LDAP support. Our port of OpenLDAP2
-uses DB3, and linking both DB2 and DB3 into the same executable is
-too ugly. Some day, Neo will be updated to use DB3, and we will all
-rejoice.
-
-WWW: http://sourceforge.net/projects/nws/
diff --git a/devel/tcl-neo/pkg-plist b/devel/tcl-neo/pkg-plist
deleted file mode 100644
index 61b5a43d5055..000000000000
--- a/devel/tcl-neo/pkg-plist
+++ /dev/null
@@ -1,63 +0,0 @@
-include/neo.h
-include/neoCbuf.h
-include/neoXcute.h
-lib/libneo82.so.1
-lib/libneo82.so
-lib/neo8.2/pkgIndex.tcl
-lib/neo8.2/tclIndex
-lib/neo8.2/debugger/README.DEBUG
-lib/neo8.2/debugger/ndebug.tcl
-lib/neo8.2/irc/README
-lib/neo8.2/irc/ircbot.tcl
-lib/neo8.2/neo_tklib/README
-lib/neo8.2/neo_tklib/boxwindow.tcl
-lib/neo8.2/neo_tklib/filereq.tcl
-lib/neo8.2/neo_tklib/fonts.tcl
-lib/neo8.2/neo_tklib/kfilereq.tcl
-lib/neo8.2/neo_tklib/listbox-class.tcl
-lib/neo8.2/neo_tklib/menus.tcl
-lib/neo8.2/neo_tklib/modal.tcl
-lib/neo8.2/neo_tklib/modal2.tcl
-lib/neo8.2/neo_tklib/neocanvas.tcl
-lib/neo8.2/neo_tklib/neoinit.tcl
-lib/neo8.2/neo_tklib/neologo.tcl
-lib/neo8.2/neo_tklib/neowindow.tcl
-lib/neo8.2/neo_tklib/notepad.tcl
-lib/neo8.2/neo_tklib/textclass.tcl
-lib/neo8.2/neo_tklib/thermometer.tcl
-lib/neo8.2/neo_tklib/tkpassword.tcl
-lib/neo8.2/neodb/README
-lib/neo8.2/neodb/tsv-class.tcl
-lib/neo8.2/neolib/README
-lib/neo8.2/neolib/arrayutil.tcl
-lib/neo8.2/neolib/catchers.tcl
-lib/neo8.2/neolib/eventloop.tcl
-lib/neo8.2/neolib/getargs.tcl
-lib/neo8.2/neolib/libmanager.tcl
-lib/neo8.2/neolib/misc.tcl
-lib/neo8.2/neolib/prompts.tcl
-lib/neo8.2/neolib/rfc822.tcl
-lib/neo8.2/neolib/rfc931.tcl
-lib/neo8.2/neolib/spawn.tcl
-lib/neo8.2/neolib/stanza.tcl
-lib/neo8.2/neolib/timedate.tcl
-lib/neo8.2/neolib/xkeylget.tcl
-lib/neo8.2/oracle/basic.tcl
-lib/neo8.2/postgres95/basic.tcl
-lib/neo8.2/rcmp/README
-lib/neo8.2/rcmp/neo-shared-object.tcl
-lib/neo8.2/rcmp/neodpClient.tcl
-lib/neo8.2/rcmp/neodpServer.tcl
-lib/neo8.2/rcmp/rcmpc.tcl
-lib/neo8.2/www/http-helpers.tcl
-lib/neo8.2/www/iwebforms.tcl
-@dirrm lib/neo8.2/debugger
-@dirrm lib/neo8.2/irc
-@dirrm lib/neo8.2/neo_tklib
-@dirrm lib/neo8.2/neodb
-@dirrm lib/neo8.2/neolib
-@dirrm lib/neo8.2/oracle
-@dirrm lib/neo8.2/postgres95
-@dirrm lib/neo8.2/rcmp
-@dirrm lib/neo8.2/www
-@dirrm lib/neo8.2
diff --git a/www/Makefile b/www/Makefile
index f7e5668f0498..b72c2e34273c 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -600,7 +600,6 @@
SUBDIR += nanoblogger-extra
SUBDIR += nd
SUBDIR += neon29
- SUBDIR += neowebscript
SUBDIR += netoffice
SUBDIR += netrik
SUBDIR += netstiff
diff --git a/www/neowebscript/Makefile b/www/neowebscript/Makefile
deleted file mode 100644
index a51b5f2b2f8e..000000000000
--- a/www/neowebscript/Makefile
+++ /dev/null
@@ -1,58 +0,0 @@
-# New ports collection makefile for: neowebscript
-# Date created: October 28, 2001
-# Whom: Mikhail Teterin <mi@aldan.algebra.com>
-#
-# $FreeBSD$
-#
-
-PORTNAME= neowebscript
-PORTVERSION= 3.3
-PORTREVISION= 4
-CATEGORIES= www tcl
-MASTER_SITES= SF/nws/nws/${PORTVERSION}
-
-MAINTAINER= mi@aldan.algebra.com
-COMMENT= Embeds a TCL8 interpreter in the Apache server
-
-LIB_DEPENDS= neo82:${PORTSDIR}/devel/tcl-neo
-
-DEPRECATED= depends on deprecated devel/tcl-neo
-EXPIRATION_DATE= 2011-05-21
-
-USE_APACHE= 1.3
-USE_TCL= 84+
-MAKEFILE= ${FILESDIR}/Makefile.bsd
-WRKSRC= ${WRKDIR}/${DISTNAME}/modules
-MAKE_ENV+= FILESDIR="${FILESDIR}" \
- INSTALL_DATA="${INSTALL_DATA}" \
- TCL_VERSION=${TCL_VER}
-REINPLACE_ARGS= -i ""
-SUB_FILES+= pkg-message neowebscript.conf
-SUB_LIST+= APACHEMODDIR=${APACHEMODDIR} APACHEETCDIR=${PREFIX}/${APACHEETCDIR}
-
-SUBDIRS= modules neowebscript htdocs # tools
-
-# Only extract what we care for -- the tarball also includes antiquated
-# versions of Apache, TCL, TclX, ITCL, gd...
-EXTRACT_AFTER_ARGS:=| ${TAR} -xf - ${SUBDIRS:%=${PORTNAME}-${PORTVERSION}/%}
-
-post-patch:
- # Replacing writeGIF with writePNG
- ${REINPLACE_CMD} 's/writeGIF/writePNG/g' \
- `${FIND} ${WRKSRC}/.. -type f | \
- ${XARGS} ${GREP} -F -l --mmap writeGIF`
-
-pre-install:
- # Removing *.orig files and empty directories:
- ${FIND} ${WRKSRC}/../neowebscript ${WRKSRC}/../htdocs \
- \( -type f -name \*.orig -o -type d -empty \) -delete
-
-post-install:
- @${CP} ${WRKDIR}/neowebscript.conf ${LOCALBASE}/${APACHEETCDIR}/neowebscript.conf.dist
-.if !defined(NOPORTDOCS)
- @${MKDIR} ${DOCSDIR}/
- @${CP} -Rp ${WRKSRC}/../htdocs/* ${DOCSDIR}/
-.endif
- @${CAT} ${PKGMESSAGE}
-
-.include <bsd.port.mk>
diff --git a/www/neowebscript/distinfo b/www/neowebscript/distinfo
deleted file mode 100644
index 03f6644606af..000000000000
--- a/www/neowebscript/distinfo
+++ /dev/null
@@ -1,2 +0,0 @@
-SHA256 (neowebscript-3.3.tar.gz) = 79c797a52040fbd9cd01d9212b4543a97c6239becd0272adbbe1b51983c43148
-SIZE (neowebscript-3.3.tar.gz) = 4428748
diff --git a/www/neowebscript/files/Makefile.bsd b/www/neowebscript/files/Makefile.bsd
deleted file mode 100644
index 6ab4574d374b..000000000000
--- a/www/neowebscript/files/Makefile.bsd
+++ /dev/null
@@ -1,18 +0,0 @@
-MODULES=neoscript neo_userdir log_neo auth_tcl # neo_include
-
-.SUFFIXES:
-.SUFFIXES: .so .c
-
-.c.so:
- ${MAKE} -f ${FILESDIR}/Makefile.lib SRCS=${.ALLSRC}
-
-all: ${MODULES:%=mod_%.so}
-
-SYSCONFDIR!= ${PREFIX}/sbin/apxs -q SYSCONFDIR
-
-install:
- ${INSTALL_DATA} ${MODULES:%=mod_%.so} ${PREFIX}/libexec/apache/
-#.for m in ${MODULES}
-# ${PREFIX}/sbin/apxs -e -A -n $m ${PREFIX}/libexec/apache/mod_$m.so
-#.endfor
- cp -Rp ${.CURDIR}/../neowebscript ${PREFIX}/share/
diff --git a/www/neowebscript/files/Makefile.lib b/www/neowebscript/files/Makefile.lib
deleted file mode 100644
index 1f5d1b606b5a..000000000000
--- a/www/neowebscript/files/Makefile.lib
+++ /dev/null
@@ -1,33 +0,0 @@
-TCL_VERSION?=8.4
-TCL_NDVER?=${TCL_VERSION:S/.//} # same, but without the dot
-
-PREFIX?= /usr/local
-
-INCLUDES= -I${PREFIX}/include/apache \
- -I${PREFIX}/include/tcl${TCL_VERSION} \
- -I${PREFIX}/include
-
-CC!= ${PREFIX}/sbin/apxs -q CC
-CFLAGS!= ${PREFIX}/sbin/apxs -q CFLAGS CFLAGS_SHLIB
-CFLAGS+= ${INCLUDES} -DGDTCL
-CFLAGS+= -DDEFAULT_XFERLOG=\"/var/log/httpd-access.log\" -Werror
-
-# Ridiculous!
-#CFLAGS+= -Dneo_log_module=log_neo_module \
-# -Dtcl_auth_module=auth_tcl_module
-
-SHLIB_NAME= ${SRCS:R}.so
-
-LDADD= -L${PREFIX}/lib -ltcl${TCL_NDVER} -lm
-WARNS= 2
-
-USE_DB!= grep -l db.h ${.CURDIR}/${SRCS}
-.if !empty(USE_DB)
-LDADD+= -ldb2
-.endif
-
-#LDFLAGS= ${LDADD}
-
-NO_MAN= True # don't bother with the man-page here, let the port handle it
-
-.include <bsd.lib.mk>
diff --git a/www/neowebscript/files/neowebscript.conf.in b/www/neowebscript/files/neowebscript.conf.in
deleted file mode 100644
index a48ad09ef52c..000000000000
--- a/www/neowebscript/files/neowebscript.conf.in
+++ /dev/null
@@ -1,45 +0,0 @@
-####
-#### NeoWebScript-specific Apache configuration lines
-#### (uncomment to activate)
-####
-
-LoadModule neoscript_module %%APACHEMODDIR%%/mod_neoscript.so
-#LoadModule neo_userdir_module %%APACHEMODDIR%%/mod_neo_userdir.so
-#LoadModule neo_log_module %%APACHEMODDIR%%/mod_log_neo.so
-#LoadModule tcl_auth_module %%APACHEMODDIR%%/mod_auth_tcl.so
-
-## Enable the NeoWebScript handler
-AddType text/html .nhtml .nws
-AddHandler neo-server-parsed .nhtml .nws
-
-## Enable the NeoWebScript subst handler
-#AddType text/html .shtml
-#AddHandler neo-server-subst .shtml
-DirectoryIndex index.nhtml
-
-## Enable these two lines if you want GD Image Generation support turned on.
-AddType image/png .gd
-AddHandler neo-generate-image .gd
-
-## Comment this lines out to disable nws-common in VirtualHosts
-Alias /nws/ %%DOCSDIR%%/
-Alias /neowebscript/ %%DOCSDIR%%/
-Alias /nws-common/ %%DOCSDIR%%/nws-common/
-
-#### End of NeoWebScript configuration ####
-###########################################
-
-<Directory %%DOCSDIR%%>
- Options Includes
-</Directory>
-
-# Uncomment and modify this to change the default locations.
-# This is where the user-specific and system-wide database files
-# will be created. You'll need to create this directories
-# manually and set the apropriate permissions:
-
-#NeoWebDirConf parallelUserBase /var/db/neowebscript/users
-#NeoWebDirConf parallelSystemBase /var/db/neowebscript/system
-
-# To turn debugging on uncomment:
-#NeoWebDirConf debugging 1
diff --git a/www/neowebscript/files/patch-access b/www/neowebscript/files/patch-access
deleted file mode 100644
index 1b47a21c3b20..000000000000
--- a/www/neowebscript/files/patch-access
+++ /dev/null
@@ -1,249 +0,0 @@
---- mod_auth_tcl.c Fri Nov 19 19:35:28 1999
-+++ mod_auth_tcl.c 2010-01-18 23:47:06.000000000 -0500
-@@ -5,5 +5,5 @@
- * You may freely redistribute most NeoSoft extensions to the Apache webserver
- * for any purpose except commercial resale and/or use in secure servers,
-- * which requires, in either case, written permission from NeoSoft, Inc. Any
-+ * which requires, in either case, written permission from NeoSoft, Inc. Any
- * redistribution of this software must retain this copyright, unmodified
- * from the original.
-@@ -12,5 +12,5 @@
- * commerce, require a license for use and may not be redistributed
- * without explicit written permission, obtained in advance of any
-- * such distribution from NeoSoft, Inc. These files are clearly marked
-+ * such distribution from NeoSoft, Inc. These files are clearly marked
- * with a different copyright.
- *
-@@ -21,7 +21,7 @@
- * said copyrights.
- *
-- * Some of the software in this file may be derived from code
-+ * Some of the software in this file may be derived from code
- * Copyright (c) 1995 The Apache Group. All rights reserved.
-- *
-+ *
- * Redistribution and use of Apache code in source and binary forms is
- * permitted under most conditions. Please consult the source code to
-@@ -46,8 +46,9 @@
- /*
- * auth_tcl: authentication via Tcl procs in main interpreter
-- *
-+ *
- * Rob McCool
- * Randy Kunkee
-- *
-+ * Mark Abrams (Video Collage, Inc.)
-+ *
- */
-
-@@ -58,10 +59,10 @@
- * in your server, since this module depends on Tcl_Interp *interp to be
- * exported by it.
-- *
-+ *
- * Based on authentication module originally written by Rob McCool and
- * adapted to Shambhala by rst.
- *
- * Alterations from there to present form by Randy Kunkee of NeoSoft.
-- *
-+ *
- */
-
-@@ -79,4 +80,5 @@
- char *tcl_basic_auth_command;
- char *tcl_basic_access_command;
-+ char *tcl_access_command;
- } tcl_auth_config_rec;
-
-@@ -87,4 +89,5 @@
- sec->tcl_basic_auth_command = NULL;
- sec->tcl_basic_access_command = NULL;
-+ sec->tcl_access_command = NULL;
- return sec;
- }
-@@ -105,4 +108,6 @@
- { "TclAuthAccess", tcl_set_string_slot,
- (void*)XtOffsetOf(tcl_auth_config_rec,tcl_basic_access_command), OR_AUTHCFG, RAW_ARGS, NULL },
-+{ "TclAccess", tcl_set_string_slot,
-+ (void*)XtOffsetOf(tcl_auth_config_rec,tcl_access_command), OR_AUTHCFG, RAW_ARGS, NULL },
- { NULL }
- };
-@@ -121,10 +126,12 @@
- */
-
--/* Determine user ID, and call Tcl with configured basic auth command.
-+/* A u t h e t i c a t i o n
-+ *
-+ * Determine user ID, and call Tcl with configured basic auth command.
- * Tcl command must return either a string containing the password, or`
- * an empty string, indicating the user was not found.
- */
-
--int authenticate_basic_user_via_tcl (request_rec *r)
-+static int authenticate_basic_user_via_tcl (request_rec *r)
- {
- tcl_auth_config_rec *sec =
-@@ -134,9 +141,9 @@
- char errstr[MAX_STRING_LEN];
- int res;
--
-+
- if ((res = get_basic_auth_pw (r, &sent_pw))) return res;
--
-- if(!sec->tcl_basic_auth_command)
-- return DECLINED;
-+
-+ if(!sec->tcl_basic_auth_command)
-+ return DECLINED;
-
- /*
-@@ -148,5 +155,5 @@
- */
- if (Tcl_VarEval(interp, sec->tcl_basic_auth_command, " ", c->user, " ", sent_pw, (char*)0)) {
-- sprintf(errstr,"Tcl auth_command error: %s\n%s",interp->result, Tcl_GetVar(interp, "errorInfo", TCL_GLOBAL_ONLY));
-+ sprintf(errstr,"Tcl auth_command error: %s\n%s",interp->result, Tcl_GetVar(interp, "errorInfo", TCL_GLOBAL_ONLY));
- log_reason (errstr, r->uri, r);
- note_basic_auth_failure (r);
-@@ -160,8 +167,14 @@
- return OK;
- }
--
--/* Checking ID */
--
--int check_user_access_via_tcl (request_rec *r) {
-+
-+/* A u t h o r i z a t i o n
-+ *
-+ * after authenticating who a user is Apache enters the authorizarion phase.
-+ * In this phase we determine if this user should be granted access to the
-+ * requested location. Naming this routine check_user_authorization_via_tcl
-+ * might makes things a bit less confusing
-+ */
-+
-+static int check_user_access_via_tcl (request_rec *r) {
- tcl_auth_config_rec *sec =
- (tcl_auth_config_rec *)ap_get_module_config (r->per_dir_config, &tcl_auth_module);
-@@ -175,9 +188,10 @@
- require_line *reqs;
-
-- /* BUG FIX: tadc, 11-Nov-1995. If there is no "requires" directive,
-+ /* BUG FIX: tadc, 11-Nov-1995. If there is no "requires" directive,
- * then any user will do.
- */
- if (!reqs_arr)
-- return (OK);
-+ return (OK);
-+
- if (! sec->tcl_basic_access_command)
- return AUTH_REQUIRED;
-@@ -186,10 +200,10 @@
-
- for(x=0; x < reqs_arr->nelts; x++) {
--
-+
- if (! (reqs[x].method_mask & (1 << m))) continue;
--
-+
- method_restricted = 1;
-
-- t = reqs[x].requirement;
-+ t = reqs[x].requirement;
- code = Tcl_VarEval(interp, sec->tcl_basic_access_command, " ", user, " ", t, (char*)NULL);
- if (code == TCL_ERROR)
-@@ -206,5 +220,5 @@
- }
- }
--
-+
- if (!method_restricted)
- return OK;
-@@ -214,4 +228,63 @@
- }
-
-+/*
-+ * Defined in both mod_neo_include.c and mod_neoscript.c
-+ */
-+void propagate_vars_to_nws(Tcl_Interp *interp, request_rec *r);
-+
-+/* A c c e s s
-+ *
-+ * Access control doesnt care about user identity, so the user doesnt
-+ * need to enter anything. This routine gets called for attempts to
-+ * access any file within a directory with a defined access procedure
-+ * (through .htaccess or elsewhere). To define an access procedure the
-+ * .htacess file should contain a line that looks like this:
-+ * TclAccess my_access_procedure
-+ * my_access_procedure is a tcl procedure which is defined within
-+ * neowebscript (for instance, in neowebscript's init.tcl). This
-+ * routine will be passed the name of the file whose access is being
-+ * attempted. Note that the access procedure can use the webenv array,
-+ * so the file whose access is being attempted is also available as
-+ * $webenv(DOCUMENT_URI).
-+ * The access procedure must return one of the following:
-+ * OK return allows access
-+ * FORBIDDEN return denies access
-+ * DECLINED return passes decision on to any other handlers
-+ * which may exist
-+ */
-+
-+static int ck_direct_access_via_tcl (request_rec *r) {
-+ tcl_auth_config_rec *sec =
-+ (tcl_auth_config_rec *)ap_get_module_config(r->per_dir_config,
-+ &tcl_auth_module);
-+ char errstr[MAX_STRING_LEN];
-+ int code;
-+
-+ if (!sec->tcl_access_command)
-+ return DECLINED;
-+
-+ propagate_vars_to_nws(interp, r) ;
-+
-+ code = Tcl_VarEval(interp, sec->tcl_access_command, " ",
-+ r->filename, (char*)NULL);
-+ if (code == TCL_ERROR) {
-+ sprintf(errstr,"Tcl ck_direct_access call error: %s\n%s",
-+ interp->result,
-+ Tcl_GetVar(interp, "errorInfo", TCL_GLOBAL_ONLY));
-+ log_reason (errstr, r->uri, r);
-+ return DECLINED ;
-+ }
-+
-+ if (strcmp(interp->result,"OK") == 0)
-+ return OK ;
-+ if (strcmp(interp->result,"DECLINED") == 0)
-+ return DECLINED ;
-+ if (strcmp(interp->result,"FORBIDDEN") == 0)
-+ return FORBIDDEN ;
-+
-+ /* there is an access routine but we dont understand it's return, so */
-+ return DECLINED ;
-+}
-+
- module tcl_auth_module = {
- STANDARD_MODULE_STUFF,
-@@ -224,7 +297,7 @@
- NULL, /* handlers */
- NULL, /* filename translation */
-- authenticate_basic_user_via_tcl, /* check_user_id */
-- check_user_access_via_tcl, /* check auth */
-- NULL, /* check access */
-+ authenticate_basic_user_via_tcl, /* authentication - who is it? */
-+ check_user_access_via_tcl, /* authorization - do we let him/her in? */
-+ ck_direct_access_via_tcl, /* access (for instance by host id) */
- NULL, /* type_checker */
- NULL, /* fixups */
---- ../htdocs/neowebscript/sysopinfo/management.nhtml Mon Nov 22 02:33:45 1999
-+++ ../htdocs/neowebscript/sysopinfo/management.nhtml Wed Jan 9 16:48:55 2002
-@@ -30,2 +30,12 @@
- <p>
-+<li>TclAccess <i>script</i>
-+<p>
-+This directive can be used to allow or forbid access without user's
-+input -- based, for example, on credentials like IP address, referrer,
-+a cookie, etc. The script is appended the name of the requested
-+file before being evaluated and is expected to return OK, FORBIDDEN,
-+or DECLINED. The latter means this script "did not care" and the
-+other access control mechanisms should be consulted.
-+
-+<p>
- <li>TclAuthBasic <i>procname arg1 arg2 ... </i>
diff --git a/www/neowebscript/files/patch-common b/www/neowebscript/files/patch-common
deleted file mode 100644
index 2dd036c4c2bd..000000000000
--- a/www/neowebscript/files/patch-common
+++ /dev/null
@@ -1,19 +0,0 @@
---- ../neowebscript/common.tcl Fri Nov 19 19:36:10 1999
-+++ ../neowebscript/common.tcl Mon Sep 3 13:32:49 2001
-@@ -31,7 +31,7 @@
-
- if {[catch {mkdir -path $parallelDir$plusSubDir} result] == 1} {
- if {[lrange $errorCode 0 1] != "POSIX EEXIST"} {
-- error "$errorCode"
-+ error "can not create $parallelDir $plusSubDir: $errorCode"
- }
- }
- }
-@@ -512 +512,7 @@
- }
-+
-+proc emit_full_header {title} {
-+ html <HTML><HEAD><TITLE>
-+ html $title
-+ html </TITLE><HEAD>
-+}
diff --git a/www/neowebscript/files/patch-db b/www/neowebscript/files/patch-db
deleted file mode 100644
index 02edd6c63025..000000000000
--- a/www/neowebscript/files/patch-db
+++ /dev/null
@@ -1,29 +0,0 @@
---- ../neowebscript/db.tcl Fri Nov 19 19:36:10 1999
-+++ ../neowebscript/db.tcl Mon Sep 3 14:02:50 2001
-@@ -6,6 +6,8 @@
- # for the trusted interp
- #
-
-+package require Neo
-+
- proc dbtransaction {code args} {
- global errorCode parallelDir webenv
-
-@@ -115,7 +117,7 @@
- if {[catch {db open $dbFileName hash cl 0664} db] == 1} {
- create_user_dir db
- if {[catch {db open $dbFileName hash cl 0664} db] == 1} {
-- return -code error "$dbFileName: $errorCode" $errorInfo
-+ return -code error "$dbFileName: $errorCode $errorInfo"
- }
- }
-
-@@ -271,7 +273,7 @@
- if {[catch {db open $dbFileName hash cl 0664} db] == 1} {
- create_user_dir db
- if {[catch {db open $dbFileName hash cl 0664} db] == 1} {
-- return -code error "$dbFileName: $errorCode" $errorInfo
-+ return -code error "$dbFileName: $errorCode $errorInfo"
- }
- }
-
diff --git a/www/neowebscript/files/patch-docs b/www/neowebscript/files/patch-docs
deleted file mode 100644
index d08c049f7897..000000000000
--- a/www/neowebscript/files/patch-docs
+++ /dev/null
@@ -1,9 +0,0 @@
---- ../htdocs/index.nhtml Tue Jul 25 00:12:50 2000
-+++ ../htdocs/index.nhtml Mon Sep 3 13:04:23 2001
-@@ -36,4 +36,4 @@
-
--if {[file exists manual]} {
-- html "Local Apache <a href=manual/>Documentation</a><p>"
-+if {[file isdirectory $webenv(DOCUMENT_ROOT)/manual]} {
-+ html "Local Apache <a href=/manual/>Documentation</a><p>"
- }
diff --git a/www/neowebscript/files/patch-gd b/www/neowebscript/files/patch-gd
deleted file mode 100644
index 46f27353594d..000000000000
--- a/www/neowebscript/files/patch-gd
+++ /dev/null
@@ -1,12 +0,0 @@
---- ../neowebscript/image.tcl Fri Nov 19 19:36:10 1999
-+++ ../neowebscript/image.tcl Mon Sep 3 14:22:03 2001
-@@ -8,4 +8,6 @@
- #
-
-+package require Gdtclft
-+
- proc send_image_request {safeInterp} {
- global webenv imageInfo
-@@ -25,1 +27,1 @@
-- load {} Gd $safeInterp
-+ load {} Gdtclft $safeInterp
diff --git a/www/neowebscript/files/patch-init b/www/neowebscript/files/patch-init
deleted file mode 100644
index 6858adf950a3..000000000000
--- a/www/neowebscript/files/patch-init
+++ /dev/null
@@ -1,62 +0,0 @@
---- ../neowebscript/init.tcl Wed Nov 24 19:47:41 1999
-+++ ../neowebscript/init.tcl Sun Oct 28 03:07:00 2001
-@@ -18,5 +18,10 @@
- #
-
--set debugging 1
-+package require Tclx
-+if {[info exists NeoWebDirConf(debugging)]} {
-+ set debugging $NeoWebDirConf(debugging)
-+} else {
-+ set debugging 0
-+}
- catch {rename copyfile ""}
- catch {rename unsupported0 copyfile}
-@@ -25,9 +30,17 @@
- set binPath [file join $server(SERVER_ROOT) bin]
- set libPath [file join $server(SERVER_ROOT) lib]
--set nwsPath [file join $server(SERVER_ROOT) neowebscript]
--set logPath [file join $server(SERVER_ROOT) logs]
-+set nwsPath [file dirname [info script]]
-+set logPath /var/log
-
--set parallelUserBase [file join $server(SERVER_ROOT) neowebscript neoscript-data users]
--set parallelSystemBase [file join $server(SERVER_ROOT) neowebscript neoscript-data system]
-+if {[info exists NeoWebDirConf(parallelUserBase)]} {
-+ set parallelUserBase $NeoWebDirConf(parallelUserBase)
-+} else {
-+ set parallelUserBase /var/db/neowebscript/users
-+}
-+if {[info exists NeoWebDirConf(parallelSystemBase)]} {
-+ set parallelSystemBase $NeoWebDirConf(parallelSystemBase)
-+} else {
-+ set parallelSystemBase /var/db/neowebscript/system
-+}
-
- set nwsLocalPath [file join $nwsPath nwslocal]
-@@ -299,5 +312,5 @@
- set bytesPerLogEntry 131
-
-- set fp [open [file join $logPath access_log]]
-+ set fp [open [file join $logPath httpd-access.log]]
- set size [fstat $fp size]
- set offset [expr $size - $hitsInInterval * $bytesPerLogEntry]
-@@ -313,5 +326,10 @@
- if {$result < 0} {return 0}
-
-- set ET [expr [clock seconds] - [lindex $line 0]]
-+ if {![regexp {\[([[:digit:]]{1,2})/(...)/([[:digit:]]{4}):([[:digit:]]{2}:[[:digit:]]{2}:[[:digit:]]{2})} \
-+ [lindex $line 3] j day month year time]} {
-+ return "unable to parse the log entry"
-+ }
-+
-+ set ET [expr [clock seconds] - [clock scan "$time $month $day $year"]]
- return [expr ($hitsInInterval * 3600) / $ET]
- }
-@@ -404,4 +422,6 @@
- $safeInterp alias remote_hostname remote_hostname
- $safeInterp alias gm_timestr_822 gm_timestr_822
-+
-+ $safeInterp alias emit_full_header emit_full_header
-
- if [interp issafe $safeInterp] {
diff --git a/www/neowebscript/files/patch-neoscript b/www/neowebscript/files/patch-neoscript
deleted file mode 100644
index fdb2e29f4773..000000000000
--- a/www/neowebscript/files/patch-neoscript
+++ /dev/null
@@ -1,433 +0,0 @@
---- mod_neoscript.c 2000-07-21 19:49:29.000000000 -0400
-+++ mod_neoscript.c 2010-01-21 23:48:47.000000000 -0500
-@@ -66,10 +66,14 @@
- #include "util_md5.h"
-
--#include <db.h>
-+#include <db2/db.h>
- #include <assert.h>
- #include <stdio.h>
-
- #include "tcl.h"
--#include "tclExtend.h"
-+#ifdef STATIC_TCLX
-+# include "tclExtend.h"
-+#endif
-+#include <generic/tclInt.h>
-+#include <generic/tclIntDecls.h>
-
- extern char ap_server_root[];
-@@ -79,4 +83,11 @@
- void Tcl_InitExtensions(Tcl_Interp *interp);
-
-+static Tcl_CmdProc Neo_IncludeCmd, Neo_IncludeCmd, Neo_IncludeCmd,
-+ Neo_IncludeCmd, Neo_FlushBufferCmd, Neo_AbortPageCmd,
-+ Neo_HttpdCmd, Tcl_HtmlCmd,
-+ Neo_RequestInfoCmd, Tcl_ExtendSafeSlaveCmd,
-+ Tcl_SetHeaderCmd, NWS_MD5Cmd, Tcl_gm_timestr_822Cmd;
-+static Tcl_ObjCmdProc Neo_UnescapeUrlCmd, Neo_SimplifyPathnameCmd;
-+
- char softwareStartTimeString[32];
-
-@@ -128,5 +139,6 @@
- static int NeoWebCacheEnabled;
-
--int load_sub_req (Tcl_Interp *interp, request_rec *r)
-+static int
-+load_sub_req (Tcl_Interp *interp, request_rec *r)
- {
- int errstatus;
-@@ -201,5 +213,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- request_rec *rr=NULL;
-@@ -401,5 +413,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- if (argc != 1) {
-@@ -428,5 +440,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- if (argc != 1) {
-@@ -463,5 +475,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- if (argc != 2 || strncmp("child_terminate", argv[1], strlen(argv[1]))) {
-@@ -488,18 +500,19 @@
- */
- int
--Neo_UnescapeUrlCmd (clientData, interp, argc, argv)
-+Neo_UnescapeUrlCmd (clientData, interp, argc, objv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ Tcl_Obj * const objv[];
- {
-+ char *string;
- if (argc != 2) {
-- Tcl_AppendResult(interp, "wrong # args: should be \"", argv[0],
-- " url\"", (char *) NULL);
-+ Tcl_WrongNumArgs(interp, 1, objv, "url");
- return TCL_ERROR;
- }
-
-- if (ap_unescape_url(argv[1]) == OK) {
-- interp->result = argv[1];
-+ string = Tcl_GetString(objv[1]);
-+ if (ap_unescape_url(string) == OK) {
-+ Tcl_SetResult(interp, string, TCL_VOLATILE);
- }
- return TCL_OK;
-@@ -524,8 +537,8 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- char intbuf[20];
-- char *varName;
-+ const char *varName;
- int depth;
- request_rec *r = Tcl_request_rec;
-@@ -633,5 +646,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- int i, forceHeaders = 1;
-@@ -663,5 +676,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- char *digest;
-@@ -681,5 +694,5 @@
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ const char *argv[];
- {
- char *ascii_time;
-@@ -702,5 +715,5 @@
- Tcl_Interp *interp; /* Current interpreter. */
- int argc; /* Number of arguments. */
-- char **argv; /* Argument strings. */
-+ const char *argv[]; /* Argument strings. */
- {
- Tcl_Interp *slaveInterp;
-@@ -741,18 +754,19 @@
- */
- int
--Neo_SimplifyPathnameCmd (clientData, interp, argc, argv)
-+Neo_SimplifyPathnameCmd (clientData, interp, argc, objv)
- ClientData clientData;
- Tcl_Interp *interp;
- int argc;
-- char **argv;
-+ Tcl_Obj * const objv[];
- {
-+ char *pathname;
-+
- if (argc != 2) {
-- Tcl_AppendResult(interp, "wrong # args: should be \"", argv[0],
-- " pathname\"", (char *) NULL);
-+ Tcl_WrongNumArgs(interp, 1, objv, "pathname");
- return TCL_ERROR;
- }
-
-- ap_getparents(argv[1]);
-- interp->result = argv[1];
-+ ap_getparents(pathname);
-+ Tcl_SetResult(interp, pathname, TCL_VOLATILE);
- return TCL_OK;
- }
-@@ -781,5 +795,5 @@
- Tcl_Interp *interp; /* Current interpreter. */
- int argc; /* Number of arguments. */
-- char **argv; /* Argument strings. */
-+ const char *argv[]; /* Argument strings. */
- {
- int i = 1, tagstart, newline = 0;
-@@ -826,5 +840,6 @@
- /* ----------------------- Initialization function ------------------------- */
-
--void init_nws(server_rec *s, pool *p)
-+static void
-+init_nws(server_rec *s, pool *p)
- {
- time_t date;
-@@ -846,10 +861,14 @@
-
- time(&date);
-- sprintf(softwareStartTimeString, "%ld", date);
-+ sprintf(softwareStartTimeString, "%ld", (long)date);
-
- /* Initialize core Tcl components and extensions */
-
- /* Setup a library Path */
-+#if TCL_MAJOR_VERSION == 8 && TCL_MINOR_VERSION < 5
- TclpInitLibraryPath(".");
-+#else
-+ TclSetLibraryPath(Tcl_NewStringObj(".", 2));
-+#endif
-
- /* Tcl */
-@@ -861,4 +880,5 @@
- }
-
-+#ifdef STATIC_TCLX
- /* Extended Tcl */
- if (Tclx_Init(interp) == TCL_ERROR) {
-@@ -870,4 +890,5 @@
- Tcl_StaticPackage(interp, "Tclx", Tclx_Init, Tclx_SafeInit);
- /* Tclx does its own call to Tcl_StaticPackage */
-+#endif
-
- #ifdef POSTGRESQL
-@@ -904,6 +925,6 @@
- #endif
-
--#ifdef GDTCL
-- /* GIF generation*/
-+#ifdef STATIC_GDTCL
-+ /* Image generation */
- if (Gd_Init(interp) == TCL_ERROR) {
- fprintf(stderr,
-@@ -915,4 +936,5 @@
- #endif
-
-+#ifdef STATIC_NEO
- /* NeoSoft Extensions */
- if (Neo_Init(interp) == TCL_ERROR) {
-@@ -923,4 +945,5 @@
- }
- Tcl_StaticPackage(interp, "Neo", Neo_Init, NULL);
-+#endif
-
- /*
-@@ -948,8 +971,8 @@
-
- if (Tcl_VarEval(interp, "source ",
-- ap_server_root_relative(p, "neowebscript/init.tcl"), (char *)NULL)
-+ ap_server_root_relative(p, "share/neowebscript/init.tcl"), (char *)NULL)
- == TCL_ERROR)
- {
-- char *errorInfo;
-+ const char *errorInfo;
-
- errorInfo = Tcl_GetVar (interp, "errorInfo", TCL_GLOBAL_ONLY);
-@@ -998,9 +1021,9 @@
- (ClientData) 0, (Tcl_CmdDeleteProc *) NULL);
-
-- Tcl_CreateCommand(interp, "www_simplify_pathname",
-+ Tcl_CreateObjCommand(interp, "www_simplify_pathname",
- Neo_SimplifyPathnameCmd,
- (ClientData) NULL, (void (*)()) NULL);
-
-- Tcl_CreateCommand(interp, "www_unescape_url",
-+ Tcl_CreateObjCommand(interp, "www_unescape_url",
- Neo_UnescapeUrlCmd,
- (ClientData) NULL, (void (*)()) NULL);
-@@ -1179,7 +1202,10 @@
- */
-
--int find_string2(FILE *in, char *str1, char *str2, request_rec *r, int *result, int printing)
-+static int
-+find_string2(FILE *in, const char *str1, const char *str2,
-+ request_rec *r, int *result, int printing)
- { int x, l1 = strlen(str1), l2 = strlen(str2), p, p1, p2, m1, m2;
-- char c, *str, outbuf[OUTBUFSIZE];
-+ char c, outbuf[OUTBUFSIZE];
-+ const char *str;
- int outind = 0;
-
-@@ -1592,9 +1618,9 @@
- Tcl_SetVar2(interp, "webenv", "QUERY_STRING",
- r->args ? r->args : "", TCL_GLOBAL_ONLY);
-- sprintf (timeTextBuf, "%ld", r->finfo.st_mtime);
-+ sprintf (timeTextBuf, "%ld", (long)r->finfo.st_mtime);
- Tcl_SetVar2(interp, "webenv", "NEO_LAST_MODIFIED",
- timeTextBuf, TCL_GLOBAL_ONLY);
-
-- sprintf (timeTextBuf, "%ld", r->finfo.st_uid);
-+ sprintf (timeTextBuf, "%ld", (long)r->finfo.st_uid);
- Tcl_SetVar2(interp, "webenv", "NEO_DOCUMENT_UID",
- timeTextBuf, TCL_GLOBAL_ONLY);
-@@ -1608,87 +1634,4 @@
- /* --------------------------- Action handlers ---------------------------- */
-
--/* ensure that path is relative, and does not contain ".." elements
-- * ensentially ensure that it does not match the regex:
-- * (^/|(^|/)\.\.(/|$))
-- * XXX: this needs os abstraction... consider c:..\foo in win32
-- */
--static int is_only_below(const char *path)
--{
--#if WIN32
-- if (path[1] == ':')
-- return 0;
--#endif
-- if (path[0] == '/') {
-- return 0;
-- }
-- if (path[0] == '.' && path[1] == '.'
-- && (path[2] == '\0' || path[2] == '/')) {
-- return 0;
-- }
-- while (*path) {
-- if (*path == '/' && path[1] == '.' && path[2] == '.'
-- && (path[3] == '\0' || path[3] == '/')) {
-- return 0;
-- }
-- ++path;
-- }
-- return 1;
--}
--
--int run_pickfile_req( request_rec *r )
--{
-- int errstatus;
-- FILE *f;
-- char buf[IOBUFSIZE];
-- int nLines;
-- int whichLine;
--
-- if (r->method_number != M_GET) return DECLINED;
-- if (r->finfo.st_mode == 0 || (r->path_info && *r->path_info)) {
-- ap_log_rerror(APLOG_MARK, APLOG_ERR, r,
-- "access to %s failed for %s, reason %s", r->filename,
-- ap_get_remote_host(r->connection, r->per_dir_config,
-- REMOTE_NAME),
-- "File does not exist");
-- return HTTP_NOT_FOUND;
-- }
--
-- ap_set_last_modified(r);
-- if ((errstatus = ap_set_content_length (r, r->finfo.st_size))
-- || ((errstatus = ap_meets_conditions (r)) != OK))
-- return errstatus;
--
-- f = fopen (r->filename, "r");
--
-- if (f == NULL) {
-- ap_log_rerror(APLOG_MARK, APLOG_ERR, r,
-- "access to %s failed for %s, reason %s", r->filename,
-- ap_get_remote_host(r->connection, r->per_dir_config,
-- REMOTE_NAME),
-- "file permissions deny server access");
-- return HTTP_FORBIDDEN;
-- }
--
-- if ((fgets(buf, IOBUFSIZE, f) != NULL) || (errno == EINTR)) {
-- nLines = atoi(buf);
-- if (nLines <= 0) {
-- fclose (f);
-- return OK;
-- }
--
-- ap_soft_timeout("send-pick", r);
--
-- srand((int)(getpid() * 17 + time((long *) 0)));
-- for (whichLine = rand() % nLines; whichLine-- >= 0; ) {
-- if ((fgets(buf,IOBUFSIZE,f)) == NULL) {
-- if (errno != EINTR) break;
-- }
-- }
-- ap_rprintf (r, "%s", buf);
-- }
-- fclose(f);
-- return OK;
--}
--
- Tcl_Interp *get_slave_interp (request_rec *r, char *handler_name, char *name) {
- extern Tcl_Interp *interp;
-@@ -1743,5 +1686,5 @@
- strcpy (script, "setup_safe_interpreter");
- if (Tcl_GlobalEval(interp, script) != TCL_OK) {
-- char *errorInfo;
-+ const char *errorInfo;
-
- errorInfo = Tcl_GetVar(interp, "errorInfo", TCL_GLOBAL_ONLY);
-@@ -1911,5 +1854,4 @@
- char directive[MAX_STRING_LEN], error[MAX_STRING_LEN];
- char timefmt[MAX_STRING_LEN];
-- int noexec = ap_allow_options(r) & OPT_INCNOEXEC;
- int ret, sizefmt, seqtype=0;
- int init_environment, if_nesting, printing, conditional_status;
-@@ -2040,8 +1982,8 @@
- request_rec *Tcl_saved_request_rec;
- Tcl_Channel fchan;
-- char *fchan_name;
-+ const char *fchan_name;
- Tcl_DString userCommand;
-- char *commandString;
-- int fno;
-+ const char *commandString;
-+ intptr_t fno;
-
- Tcl_saved_request_rec = Tcl_request_rec;
-@@ -2090,5 +2032,5 @@
-
- status = db->get(db, NULL, &key, &data, 0);
-- db->close(db, NULL);
-+ db->close(db, 0);
- if (status)
- return HTTP_NOT_FOUND;
-@@ -2113,5 +2055,5 @@
- return;
-
-- if (db_open(NeoWebCacheName, DB_HASH, NULL, 0644, NULL, NULL, &db))
-+ if (db_open(NeoWebCacheName, DB_HASH, 0, 0644, NULL, NULL, &db))
- return;
-
-@@ -2131,5 +2073,5 @@
- perror("db->put"); */
- }
-- db->close(db, NULL);
-+ db->close(db, 0);
- return;
- }
-@@ -2156,5 +2098,10 @@
- struct request_rec *frr = NULL;
-
-- if (!(ap_allow_options(r) & OPT_INCLUDES)) return DECLINED;
-+ if (!(ap_allow_options(r) & OPT_INCLUDES)) {
-+ ap_log_rerror(APLOG_MARK, APLOG_ERR, r, "Apache configuration "
-+ "does not allow SSI parsing for ``%s'' (mode %d)",
-+ r->filename, mode);
-+ return DECLINED;
-+ }
-
- r->allowed |= (1 << M_GET);
-@@ -2162,7 +2109,7 @@
- ap_log_rerror(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, r,
- "File does not exist: %s",
-- (r->path_info
-+ r->path_info
- ? ap_pstrcat(r->pool, r->filename, r->path_info, NULL)
-- : r->filename, r));
-+ : r->filename);
- return HTTP_NOT_FOUND;
- }
-@@ -2294,5 +2241,5 @@
- if (Tcl_GlobalEval(interp, script) == TCL_ERROR)
- {
-- char *errorInfo;
-+ const char *errorInfo;
-
- /* An error occured setting up for the upload. We have
diff --git a/www/neowebscript/files/patch-warnings b/www/neowebscript/files/patch-warnings
deleted file mode 100644
index 070f94bfa9e3..000000000000
--- a/www/neowebscript/files/patch-warnings
+++ /dev/null
@@ -1,21 +0,0 @@
---- mod_neo_userdir.c 1999-11-19 19:35:28.000000000 -0500
-+++ mod_neo_userdir.c 2010-01-17 15:02:59.000000000 -0500
-@@ -60,7 +60,8 @@
- */
-
--#include "httpd.h"
--#include "http_config.h"
--#include "ap_compat.h"
-+#include <httpd.h>
-+#include <http_config.h>
-+#include <http_log.h>
-+#include <ap_compat.h>
-
- #include "tcl.h"
-@@ -306,5 +306,5 @@
- extern Tcl_Interp *interp;
- int code;
-- char *where;
-+ const char *where;
- code = Tcl_VarEval(interp, userdir+1, " ", pw->pw_name, " ",
- pw->pw_dir, " {", pw->pw_gecos, "} {", dname+1,
diff --git a/www/neowebscript/files/pkg-message.in b/www/neowebscript/files/pkg-message.in
deleted file mode 100644
index d31cacccfa7d..000000000000
--- a/www/neowebscript/files/pkg-message.in
+++ /dev/null
@@ -1,9 +0,0 @@
--
- Please, adjust the %%APACHEETCDIR%%/neowebscript.conf
- (%%APACHEETCDIR%%/neowebscript.conf.dist is insalled
- for your convenience) to your liking and add
-
- include etc/apache/neowebscript.conf
-
- to the Apache's config file.
--
diff --git a/www/neowebscript/pkg-descr b/www/neowebscript/pkg-descr
deleted file mode 100644
index 8a206a983d3d..000000000000
--- a/www/neowebscript/pkg-descr
+++ /dev/null
@@ -1,16 +0,0 @@
-NeoWebScript[tm] is a module for the Apache webserver that allows you to
-embed the Tcl/Tk programming language in your webpages as a scripting
-tool. It was invented by Karl Lehenbauer, NeoSoft's Chief Technical
-Officer, and documented, enhanced and extended by NeoSoft's programmers
-and technical writers.
-
-It offers a fast, secure, easy to learn way to do powerful, server-based
-interactive programming directly in the HTML code in web pages. With
-NeoWebScript[tm], counters, email forms, graffiti walls, guest books and
-visitor tracking are all easy, even for a beginning programmer.
-
-NWS uses plenty of its own extensions to TCL and those provided by
-eXtended TCL, gd, and others. All other TCL extensions can also be
-loaded on the fly.
-
-WWW: http://www.sourceforge.net/projects/nws/
diff --git a/www/neowebscript/pkg-plist b/www/neowebscript/pkg-plist
deleted file mode 100644
index 82968c25c360..000000000000
--- a/www/neowebscript/pkg-plist
+++ /dev/null
@@ -1,853 +0,0 @@
-%%APACHEETCDIR%%/neowebscript.conf.dist
-%%APACHEMODDIR%%/mod_neoscript.so
-%%APACHEMODDIR%%/mod_neo_userdir.so
-%%APACHEMODDIR%%/mod_log_neo.so
-%%APACHEMODDIR%%/mod_auth_tcl.so
-%%DATADIR%%/LICENSE
-%%DATADIR%%/README
-%%DATADIR%%/client.tcl
-%%DATADIR%%/common.tcl
-%%DATADIR%%/db.tcl
-%%DATADIR%%/devel.tcl
-%%DATADIR%%/image.tcl
-%%DATADIR%%/init.tcl
-%%DATADIR%%/neoform1.tcl
-%%DATADIR%%/neoscript-tcl/db.tcl
-%%DATADIR%%/neoscript-tcl/debug.tcl
-%%DATADIR%%/neoscript-tcl/display.tcl
-%%DATADIR%%/neoscript-tcl/dump_vars.tcl
-%%DATADIR%%/neoscript-tcl/incr0.tcl
-%%DATADIR%%/neoscript-tcl/logo.tcl
-%%DATADIR%%/neoscript-tcl/manage.tcl
-%%DATADIR%%/neoscript-tcl/named-counters.tcl
-%%DATADIR%%/neoscript-tcl/neotrack.tcl
-%%DATADIR%%/neoscript-tcl/nfile.tcl
-%%DATADIR%%/neoscript-tcl/tclIndex
-%%DATADIR%%/neoscript-tcl/vtag.tcl
-%%DATADIR%%/neoscript-tcl/wrap.tcl
-%%DATADIR%%/nwslocal/local.tcl
-%%DATADIR%%/postgres.tcl
-%%DATADIR%%/unknown.tcl
-@dirrm %%DATADIR%%/neoscript-tcl
-@dirrm %%DATADIR%%/nwslocal
-@dirrm %%DATADIR%%
-%%PORTDOCS%%%%DOCSDIR%%/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/.htaccess
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/allcommands.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/blank.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/gd-commands.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/gd/sample2.gd
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/gd/sample3.gd
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/neo-forms-1.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/notes.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws-byfunction.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws-commands.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/abort_page.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/access_data_file.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/backlink.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/cmdtrace.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/comma_join.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/comma_split.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/counterfonts.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/data_file_exists.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dbdelkey.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dbdump.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dbexists.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dbfetch.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dbfiles.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dbimport.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dbkeys.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dbstore.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/delete_data_file.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/delete_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/directory_listing.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/display_graphic_num.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dump_environment.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/dump_vars.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/emit_standard_magellan_search_link.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/emit_standard_yahoo_link.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/escape_attribute.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/escape_sgml_chars.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/estimate_hits_per_hour.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/file.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/filecp.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/filemv.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/filerm.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/flush_page.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/get_avg_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/get_init_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/get_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/get_real_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/glob.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/gm_timestr_822.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/html.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/image_create.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/image_expire.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/image_open.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/import_keyvalue_pairs.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/import_switch_args.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/include_file.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/include_virtual.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/incr0.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/incr_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/incr_page_counter.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/is_num.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/list_data_files.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/load_cookies.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/load_file.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/load_mime_response.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/load_response.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/load_virtual.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/log_message.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/lremove.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/make_cookie.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/make_nc_registry.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/manage_passwords.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/md5.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/neo_clock_to_rfc850_gmt.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/neo_make_cookie.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/neotrack.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/neotrack_report.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/nfile.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/open.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/open_mime_file.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/open_outbound_mail.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/open_post_news.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/parray.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/projectrm.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/quote_string.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/random_pick_html.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/read_file.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/register_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/remote_hostname.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/rename_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/reset_nc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/save_mime_file.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/set_header.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/source.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/unquote_string.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/nws/wrap.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/after.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/append.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/array.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/binary.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/break.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/case.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/catch.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/clock.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/close.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/concat.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/continue.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/eof.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/error.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/eval.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/exit.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/expr.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/expr.nws
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/fblocked.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/fconfigure.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/fcopy.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/fileevent.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/flush.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/for.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/foreach.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/format.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/format.nws
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/gets.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/global.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/history.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/if.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/incr.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/info.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/interp.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/interp.nws
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/join.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/lappend.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/lindex.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/linsert.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/list.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/llength.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/lrange.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/lreplace.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/lsearch.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/lsort.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/namespace.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/package.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/package.nws
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/pid.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/proc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/puts.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/read.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/regexp.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/regsub.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/rename.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/return.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/scan.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/seek.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/set.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/split.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/string.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/subst.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/switch.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/tell.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/time.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/trace.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/unset.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/update.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/uplevel.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/upvar.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/variable.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/vwait.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safe/while.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safetcl-commands.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safetclx-commands.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/bsearch.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/ccollate.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/cconcat.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/cequal.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/cindex.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/clength.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/crange.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/csubstr.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/ctoken.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/ctype.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/flock.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/fstat.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/ftruncate.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/funlock.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/id.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/infox.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/intersect.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/intersect3.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/keyldel.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/keylget.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/keylkeys.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/keylset.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lassign.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lcontain.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lempty.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lgets.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lmatch.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/loop.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lrmdups.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lvarcat.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lvarpop.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/lvarpush.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/max.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/min.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/profile.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/random.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/replicate.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/scancontext
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/scancontext.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/scanfile.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/scanmatch.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/select.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/translit.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/try_eval.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/commands/safex/union.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/compare.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/credits.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/back.gif
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/backlink.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/backlink2.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/basiccounter.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/basket/basketcfg.txt
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/basket/basketedit.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/basket/basketorder.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/basket/basketpage.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/basket/basketview.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/basket/default.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/basket/nph-sourcetext.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/clock.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/counter.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/discuss1.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/discuss2.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/emailform.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/emailscript.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/environment.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/gcounter.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/gd_home.gd
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/gd_home.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/gd_home.txt
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/gdarc.gd
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/gdarc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/gdarc.txt
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/graffitiedit.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/graffitiwall.html.txt
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/graffitiwall.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/guestbook.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/guestedit.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/hidehtml.txt
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/hits_per_hour.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/lottery.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/maketable.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/nph-sourcetext.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/prices.txt
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/randompick.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/demos/seeastext.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/developers.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/disclaimer.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/examples.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/examples.nws
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/faq.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/feedback.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/license.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/questions.nws
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/release.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/release.nws
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/resources.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/supervisor/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/sysopinfo/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/sysopinfo/installation.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/sysopinfo/management.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/sysopinfo/sysopfaq.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/sysopinfo/sysoptrouble.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/sysopinfo/theory.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/abort.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/cookietest1.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/datatest1.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/dir.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/environment.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/formpost.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/htmlcommand.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/include_embedded_virtual.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/include_loadfile
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/include_loadvirtual
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/includefile
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/includefile.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/includevirtual.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/load_webenv.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/loadfile.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/loadvirtual.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/log.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/lookup.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/lottery.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/mailtest.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/mime-post-action-old.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/mime-post-action.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/mime-post.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/newncreg.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/newstest.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/nph-roulette2.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/nph-roulette3.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/pagecounter.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/pgauthprep.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/pickfile.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/picklist.txt
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/post-action.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/post.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/postgres.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/postgres/.htaccess
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/postgres/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/private/.htaccess
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/private/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/privileged/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/quoteunquote.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/randompick.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/randomtest.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/roulette.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/roulette2.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/true-headers.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/virtualinclude
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/tests/virtualinclude_embedded.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/index.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/library.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/newuserfaq.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/tut_include.nws
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/tutorial1.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/tutorial2.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/tutorial2a.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/tutorial2f.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/tutorial3.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/tutorials.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/tutorialsc.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/usertrouble.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/neowebscript/userinfo/variables.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/docs/footer.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/docs/header.nhtml
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/docs/include.nws
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set0/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set1/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set10/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set11/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set12/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set13/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set14/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set15/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set16/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set17/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set18/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set19/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set2/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set20/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set21/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set22/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set23/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set24/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set25/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set26/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set27/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set28/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set29/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set3/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set30/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set31/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set32/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set33/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set34/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set35/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set36/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set37/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set38/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set4/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set5/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set6/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set7/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set8/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/0.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/1.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/3.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/4.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/5.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/6.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/7.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/8.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/counters/set9/9.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/single_pixel/dot_blue.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/single_pixel/dot_clear.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/single_pixel/dot_dark_gray.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/single_pixel/dot_green.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/single_pixel/dot_peri.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/single_pixel/dot_purple.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/images/single_pixel/dot_red.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/apache/apache62x500.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/neosoft/neosoft171x29.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/neosoft/neosoft282x45.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/neosoft/neosoft337x57.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/nws/neowebscript.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/nws/nws167x42.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/nws/nws267x92.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/nws/pb-nws2.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tclpowered/tclpowered111x175.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tclpowered/tclpowered127x200.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tclpowered/tclpowered47x75.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tclpowered/tclpowered63x100.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tclpowered/tclpowered95x150.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tcltk/tcltk120x181.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tcltk/tcltk354x520.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tcltk/tcltk43x64.gif
-%%PORTDOCS%%%%DOCSDIR%%/nws-common/logos/tcltk/tcltk68x100.gif
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/logos/tcltk
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/logos/tclpowered
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/logos/nws
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/logos/neosoft
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/logos/apache
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/logos
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/single_pixel
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set9
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set8
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set7
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set6
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set5
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set4
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set38
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set37
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set36
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set35
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set34
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set33
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set32
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set31
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set30
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set3
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set29
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set28
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set27
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set26
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set25
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set24
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set23
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set22
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set21
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set20
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set2
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set19
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set18
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set17
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set16
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set15
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set14
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set13
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set12
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set11
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set10
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set1
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters/set0
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images/counters
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/images
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common/docs
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/nws-common
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/userinfo
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/tests/privileged
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/tests/private
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/tests/postgres
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/tests
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/sysopinfo
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/supervisor
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/demos/basket
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/demos
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/commands/safex
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/commands/safe
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/commands/nws
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/commands/gd
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript/commands
-%%PORTDOCS%%@dirrm %%DOCSDIR%%/neowebscript
-%%PORTDOCS%%@dirrm %%DOCSDIR%%