Starting a ToolTalk Session
The ToolTalk message server ttsession
automatically starts when you open communication with the ToolTalk server.
This background process must be running before any messages can be sent or
received. Each message server defines a session.
Note – A session can have more than one session identifier.
To manually start a session, enter the following command on the command
line:
ttsession [-a level][-d display][-spStvh][-{-E|X}][-c command]
See Table 2–1 for a description
of the ttsession command line options.
Table 2–1 ttsession Command Line Options
Argument
|
Description
|
-a level
|
Sets the server authentication level.
The level must
be unix, gss, or des.
|
-d display
|
Directs ttsession to start an X session
for the given display.
Normally, ttsession
uses the $DISPLAY environment
variable.
|
-h
|
Prints help on how
to invoke ttsession and exits.
|
-p
|
Starts a new ttsession and prints out its session id.
|
-S
|
Directs ttsession not to fork a background instance
to manage its session.
|
-o allow_unaut_types_ load=<yes|no>
|
By default calls to tt_session_types_load(3)
in the ToolTalk API will fail with TT_ERR_ACCESS. The system-wide default
may be changed using ttsession_file(4). The behavior for
a particular ttsession may be changed using this option,
if and only if, the ttsession_file(4) has not “locked”
per-session changes to this option.
|
-s
|
Enables silent operation;
warning messages are not printed.
|
-N
|
Maximize the number
of clients allowed to connect to this session by attempting to raise the limit
of open file descriptors. The precise number of file descriptors allowed
is system dependent. On Solaris 2.6 and compatible versions ttsession always maximizes the number of clients so there is no need to specify
this option.
|
-t
|
Turns on trace mode.
If trace mode is turned on while ttsession is running,
messages appear on the console.
Use this mode to see how messages are
dispatched and delivered. Trace mode displays the state of a message when
it is first seen by ttsession. It also displays any attempt
to send the message to a given process with the success of that attempt.
To toggle the trace mode on or off, use the USR1 signal.
|
-v
|
Prints the version
number and exits.
|
-E
|
Reads in the types
from the Classing Engine database. This option is disabled. (The ToolTalk
service now uses the XDR format databases.)
|
-X
|
Reads in the types
from the XDR format database in $TTHOME/.tt/types.xdr
and /etc/tt/types.xdr. This option is the default.
|
-c command
|
Starts a process tree session and runs the given command.
The
special environment variable TT_SESSION
will be set to the name of this session. Any process that was started with
this environment variable will default to be in this session.
This option must be the last option on the command
line; any characters placed after the -c option on the command
line are taken as the command to be executed.
If command is omitted, the value of $SHELL is used instead.
|
Note – If neither the -c, -d, or -p options are specified, ttsession starts an X
session for the display specified in the $DISPLAY
environment variable.
ttsession responds to two signals.
Background and Batch Sessions
Run your application as its own session if it runs as a background job,
in a batch session, or in a session bound to a character terminal. To run
your application in its own session, use the -c parameter with the ttsession command, as follows:
ttsession -c [ command-to-non-in-batch ]
This command will fork off a shell from which you can run your application.
Note – The -c parameter must be the last option on the
command line; any characters placed after the -c parameter
on the command line are taken as the command to be executed.
X Window System
To establish a session under the X Window
System, execute ttsession either without arguments (which
takes the display from the $DISPLAY
environment variable) or specify the display with the -d parameter
as follows:
ttsession -d :0
When ttsession is invoked, it immediately forks and
the parent copy exits; the process managing the session executes in the background.
The session is registered as a property, named by TT_SESSION
on the root window of screen 0; the host and port
number is given for communication with the process managing the session.
Locating ttsession
To display the sessid of the session for the Xdisplay:
xprop -root | grep TT_SESSION