Netra j - Release 2.0 Product Notes

Advanced Configuration Options

You can configure GO-Joe to provide a variety of functions. This flexibility can be complex and should only be done by advanced users or systems administrators.

Token Parameter

The GO-Joe applet accepts an optional token parameter in its HTML file. If the token parameter is present, the applet transmits it to the go-login program, along with the user name and password. The go-login program creates an environment variable, $GG_TOKEN, which is available for other startup scripts to process.

The following three controls are supported by the token parameter:


Note -

The X session terminates when the key client terminates. Normally the window manager is the key client and provides a menu item or button to exit the session. If you specify nowm, one of the clients started in the case specified by the Startup Control needs to become the key client. Therefore, if nowm is specified, a startup control is required.


The Solaris session startup files (OpenWindows or CDE) are initiated when the GlobalHost loadable ddx module is installed.

When starting an OpenWindows session, the token parameter is used in $OPENWINHOME/lib/gotoken-init or in $HOME/.gotoken-init. If $HOME/.gotoken-init exists, it is used before $OPENWINHOME/lib/gotoken-init. System administrators and system integrators can create system-wide token processing routines by modifying $OPENWINHOME/lib/gotoken-init, while still enabling users to override these settings in the $HOME/.gotoken-init file. In addition, if the $GG_TOKEN variable is not set, the session startup is the same as a standard OpenWindows session.

The CDE startup mechanism is somewhat different from the OpenWindows mechanism. Unlike OpenWindows, which uses a single openwin-int file, CDE stores its session initialization as a directory filled with several files. Because of this, the CDE token is used to specify a session to be started. Sessions are stored in /usr/dt/config/dtgotokens, in subdirectories that match the name of the startup control. When the session is started with the CDE token, the session directory is copied into the user's home directory, and CDE starts this session for the user.

Structure of gotoken-init

The gotoken-init is based on the standard openwin-init file, with the addition of the following section:


	if [ "$OW_WINDOW_MANAGER" = ':' ]; then
	   toolwait=
	else
	   toolwait=toolwait
	if
	unset OW_WINDOW_MANAGER
	case "$GG_TOKEN" in
    xterm)
		$toolwait $OPENWINHOME/bin/xterm
	;;
    *)
        	echo >&2 "$OPENWINHOME/lib/gotoken-init: error:
\'$GG_TOKEN\': case not found."]
	echo >&2 "    Using defaults."
	. $OPENWINHOME/lib/openwin-init
	;;
esac

This section parses the $GG_TOKEN (with any session or window manager controls removed) and starts the appropriate client or clients. In the example, only one startup control, xterm, is defined. Any other token returns an error and use the default OpenWindows startup.

If nowm is specified, the $toolwait variable sets the $OW_WINDOW_MANAGER variable (in conformance with the standard OpenWindows method of specifying an alternate window manager) to the colon. This results in no window manager being executed when the shell interprets the colon as a null command.

By modifying the $toolwait variable, we know that if there is a window manager running, the $toolwait program is invoked to start xterm (which runs in the background). When no window manager is running, the last client started by gotoken-init must not run in the background, or the GlobalInit program thinks that the session is over and shuts down the X server. Conditionally running the toolwait program solves this problem.

Structure of dtgotokens Directory

The dtgotokens directory contains subdirectory names that match the possible values for the startup control in $GG_TOKEN. Each subdirectory contains the files necessary to start a CDE session with the X applications that are appropriate. The example directory, xterm, starts a single xterm window.

To create additional tokens, first run a CDE session and start the appropriate clients and applications. Second, exit the CDE session. The session is saved in ~/.dt/ sessions. Copy the session files into the dtgotokens directory using a command similar to the following:


# cp -R ~/.dt/sessions /usr/dt/config/dtgotokens/sampletoken

The -R argument is used to copy recursively (including subdirectories). You do not have to create the sampletoken directory before executing this command.