diff options
author | suresh <suresh> | 1998-06-04 13:11:48 (GMT) |
---|---|---|
committer | suresh <suresh> | 1998-06-04 13:11:48 (GMT) |
commit | 33f21833b3238faf41d98dab026da9b7667f365d (patch) | |
tree | dc247484c37da64e190e669f3cdd6d9a7438c609 | |
parent | c160774b9eaf9816c4f5c2f52be4a9ba26d740b3 (diff) | |
download | tcl-33f21833b3238faf41d98dab026da9b7667f365d.zip tcl-33f21833b3238faf41d98dab026da9b7667f365d.tar.gz tcl-33f21833b3238faf41d98dab026da9b7667f365d.tar.bz2 |
Added function prototypes for 'TclAccess', 'TclStat', 'TclAccessInsertProc',
'TclAccessDeleteProc', 'TclStatInsertProc', 'TclStatDeleteProc',
'TclOpenFileChannelInsertProc', 'TclOpenFileChannelDeleteProc'. Also
included are appropriate data structures for declaring the respective
functions: 'TclAccessProc_', 'TclStatProc_', & 'TclOpenFileChannelProc_'.
-rw-r--r-- | generic/tclInt.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/generic/tclInt.h b/generic/tclInt.h index 437e2b5..83fd3d9 100644 --- a/generic/tclInt.h +++ b/generic/tclInt.h @@ -1183,6 +1183,20 @@ typedef struct TclFile_ *TclFile; /* *---------------------------------------------------------------- + * Data structures related to hooking 'TclStat(...)' and + * 'TclAccess(...)'. + *---------------------------------------------------------------- + */ + +typedef struct stat TclStat_; +typedef int (TclStatProc_) _ANSI_ARGS_((CONST char *path, TclStat_ *buf)); +typedef int (TclAccessProc_) _ANSI_ARGS_((CONST char *path, int mode)); +typedef Tcl_Channel (TclOpenFileChannelProc_) _ANSI_ARGS_((Tcl_Interp *interp, + char *fileName, char *modeString, + int permissions)); + +/* + *---------------------------------------------------------------- * Variables shared among Tcl modules but not used by the outside world. *---------------------------------------------------------------- */ @@ -1235,6 +1249,10 @@ extern char * tclEmptyStringRep; */ EXTERN void panic _ANSI_ARGS_(TCL_VARARGS(char *,format)); +EXTERN int TclAccess _ANSI_ARGS_((CONST char *path, + int mode)); +EXTERN int TclAccessDeleteProc _ANSI_ARGS_((TclAccessProc_ *proc)); +EXTERN int TclAccessInsertProc _ANSI_ARGS_((TclAccessProc_ *proc)); EXTERN void TclAllocateFreeObjects _ANSI_ARGS_((void)); EXTERN int TclChdir _ANSI_ARGS_((Tcl_Interp *interp, char *dirName)); @@ -1382,6 +1400,10 @@ EXTERN int TclObjInvoke _ANSI_ARGS_((Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], int flags)); EXTERN int TclObjInvokeGlobal _ANSI_ARGS_((Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], int flags)); +EXTERN int TclOpenFileChannelDeleteProc _ANSI_ARGS_(( + TclOpenFileChannelProc_ *proc)); +EXTERN int TclOpenFileChannelInsertProc _ANSI_ARGS_(( + TclOpenFileChannelProc_ *proc)); EXTERN char * TclpAlloc _ANSI_ARGS_((unsigned int size)); /* @@ -1422,6 +1444,9 @@ EXTERN int TclpListVolumes _ANSI_ARGS_((Tcl_Interp *interp)); EXTERN TclFile TclpMakeFile _ANSI_ARGS_((Tcl_Channel channel, int direction)); EXTERN TclFile TclpOpenFile _ANSI_ARGS_((char *fname, int mode)); +EXTERN Tcl_Channel TclpOpenFileChannel _ANSI_ARGS_((Tcl_Interp *interp, + char *fileName, char *modeString, + int permissions)); EXTERN char * TclpRealloc _ANSI_ARGS_((char *ptr, unsigned int size)); EXTERN int TclpRemoveDirectory _ANSI_ARGS_((char *path, @@ -1473,6 +1498,10 @@ EXTERN int TclSockGetPort _ANSI_ARGS_((Tcl_Interp *interp, char *string, char *proto, int *portPtr)); EXTERN int TclSockMinimumBuffers _ANSI_ARGS_((int sock, int size)); +EXTERN int TclStat _ANSI_ARGS_((CONST char *path, + TclStat_ *buf)); +EXTERN int TclStatDeleteProc _ANSI_ARGS_((TclStatProc_ *proc)); +EXTERN int TclStatInsertProc _ANSI_ARGS_((TclStatProc_ *proc)); EXTERN void TclTeardownNamespace _ANSI_ARGS_((Namespace *nsPtr)); EXTERN int TclTestChannelCmd _ANSI_ARGS_((ClientData clientData, Tcl_Interp *interp, int argc, char **argv)); |