diff options
Diffstat (limited to 'www/neowebscript/files')
-rw-r--r-- | www/neowebscript/files/Makefile.bsd | 18 | ||||
-rw-r--r-- | www/neowebscript/files/Makefile.lib | 33 | ||||
-rw-r--r-- | www/neowebscript/files/neowebscript.conf.in | 45 | ||||
-rw-r--r-- | www/neowebscript/files/patch-access | 249 | ||||
-rw-r--r-- | www/neowebscript/files/patch-common | 19 | ||||
-rw-r--r-- | www/neowebscript/files/patch-db | 29 | ||||
-rw-r--r-- | www/neowebscript/files/patch-docs | 9 | ||||
-rw-r--r-- | www/neowebscript/files/patch-gd | 12 | ||||
-rw-r--r-- | www/neowebscript/files/patch-init | 62 | ||||
-rw-r--r-- | www/neowebscript/files/patch-neoscript | 433 | ||||
-rw-r--r-- | www/neowebscript/files/patch-warnings | 21 | ||||
-rw-r--r-- | www/neowebscript/files/pkg-message.in | 9 |
12 files changed, 0 insertions, 939 deletions
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. -- |