Safe Tk(n) Tk (8.0) Safe Tk(n)
_________________________________________________________________
NAME
loadTk - Load Tk into a safe interpreter.
SYNOPSIS
::safe::loadTk slave ?-use windowId? ?-display displayName?
_________________________________________________________________
Safe Tk is based on Safe Tcl, which provides a mechanism
that allows restricted and mediated access to auto-loading
and packages for safe interpreters. Safe Tk adds the
ability to configure the interpreter for safe Tk operations
and load Tk into safe interpreters.
DESCRIPTION
The ::safe::loadTk command initializes the required data
structures in the named safe interpreter and then loads Tk
into it. The command returns the name of the safe
interpreter. If -use is specified, the window identified by
the specified system dependent identifier windowId is used
to contain the ``.'' window of the safe interpreter; it can
be any valid id, eventually referencing a window belonging
to another application. As a convenience, if the window you
plan to use is a Tk Window of the application you can use
the window name (eg: .x.y) instead of its window Id ([winfo
id .x.y]). When -use is not specified, a new toplevel
window is created for the ``.'' window of the safe
interpreter. On X11 if you want the embedded window to use
another display than the default one, specify it with
-display. See the SECURITY ISSUES section below for
implementation details.
SECURITY ISSUES
Please read the safe manual page for Tcl to learn about the
basic security considerations for Safe Tcl.
::safe::loadTk adds the value of tk_library taken from the
master interpreter to the virtual access path of the safe
interpreter so that auto-loading will work in the safe
interpreter.
Tk initialization is now safe with respect to not trusting
the slave's state for startup. ::safe::loadTk registers the
slave's name so when the Tk initialization (Tk_SafeInit) is
called and in turn calls the master's ::safe::InitTk it will
return the desired argv equivalent (-use windowId, correct
-display, etc...).
When -use is not used, the new toplevel created is specially
Page 1 (printed 2/26/99)
Safe Tk(n) Tk (8.0) Safe Tk(n)
decorated so the user is always aware that the user
interface presented comes from a potentially unsafe code and
can easily delete the corresponding interpreter.
On X11, conflicting -use and -display are likely to generate
a fatal X error.
SEE ALSO
safe(n), interp(n), library(n), load(n), package(n),
source(n), unknown(n)
KEYWORDS
alias, auto-loading, auto_mkindex, load, master interpreter,
safe interpreter, slave interpreter, source
Page 2 (printed 2/26/99)