--- 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 -#include #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 + +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 + #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 + +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 #include @@ -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 [] []"; 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 "); - 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; }