X-Win
X-Win32

(3.4.0)

Introduction

General overview of X-Win32.

How to contact StarNet Communications.

X-Win32 Operations

Operations of the pc X server.

X-Utility Operations

The configuration module for X-Win32's options/modes.


Introduction

X-Win32 has two major modules:

1. X-Win32 (the X11 Server module)

2. X-Utility (the X-Win32 configuration module)

X-Win32 is the pc X server module.

X-Util is configuration program for X-Win32.  It may be started from the X-Win32 pull-down menu or independently.

X-Win32 starts up the first time with:

- three demo (examples) sessions created

- the window mode set to use MS Windows as the window manager

- the Xhost table empty

- Debug selections turned off

- Backingstore turned off

These settings are contained in XWIN32.INI, located in your Windows directory.

There are two operating modes for X-Win32.

1. Multiple Window Mode

Uses the local MS Windows as the window manager.

2. Single Window Mode (SWM)

Uses a remote window manager such as twm, olwm, or motif.

There are four ways to start sessions:

        1. XDMCP (X Display Management Control Protocol)

        2. rsh

        3. rexec

        4. remote login (such as telnet - not supplied with X-Win32)

Check http://www.starnet.com for current upgrades and versions.

StarNet Communications

550 Lakeside Dr.  # 3

Sunnyvale, Ca.  94086

Tel:	1-408-739-0881

Fax:	1-408-739-0936

email:	sales@starnet.com

support@starnet.com

www:	http://www.starnet.com


Initial Startup

X-Win32 starts up the first time with:

- three demo (examples) sessions created

- none of the sessions set to Auto Startup

- the window mode set to use MS Windows as the window manager

- the Xhost table empty

- Debug selections turned off

These settings are contained in, XWIN32.INI, located in your Windows directory.

There are two operating modes for X-Win32.

Multiple Window Mode

This mode uses the local MS Windows as the window manager.  X clients will appear in MS Windows title bars and controls.  Normally X clients are started using rsh or rexec X-Win32 Sessions.

Single Window Mode (SWM)

This mode displays a large X window that will be managed by a remote window manager such as olwm (Open Look), mwm (Motif), or twm (Tab or Tom's).  This mode is normally used when running XDMCP.  This window may be configured to be larger or smaller than the existing MS Windows resolution.

It can be used when starting clients using rsh, rexec, or telnet, but the window manager and other X clients will have to be individually started.  They may be started by individual X-Win32 Sessions or by one X-Win32 Session which executes a script file in the users home directory on the remote host.

There are four methods used to start sessions:

        1. XDMCP (X Display Management Control Protocol)

        2. rsh

        3. rexec

        4. remote login (such as telnet - not supplied with X-Win32)

X-Win32 Sessions will be either XDMCP, rsh, or rexec.  These Sessions may be created or edited using X-Util.  These Sessions may be started by selecting the X-Win32 icon (or task bar item), Sessions, and the specific desired Session.  An X client may also be started by using the manual (interactive) rsh/rexec feature of the Messages Window.


Auto Start-up
Auto Startup

If a Session is set to Auto-Startup, it will be executed as soon as X-Win32 has finished loading.

XDMCP mode

Only one Session may have "Auto Startup" and XDMCP selected.  A Session which has an XDMCP selection of Query or Indirect enabled and "Auto Startup" selected will cause an XDMCP login window to automatically appear when X-Win32 is started. If "Broadcast" has been selected, then a "XDMCP Selector" screen will allow the user to select from available hosts running XDMCP.  XDMCP works with WinSock version 1.1 or later.  X-Win32 has not implemented XDMCP with previous versions of WinSock.

Non-XDMCP mode

All Sessions that have "Auto Startup" enabled, it will automatically be run when X-Win32 is started.  Multiple rsh/rexec sessions may be started this way.


Manually Starting Clients
Manually Starting Sessions (Clients)

Sessions may be started manually by:

1. selection of an existing X-Win32 Session.

2. using the Messages Window's  Rsh... or Rexec...


X-Win Operations
X-Win32 Operations

Options

Initial Startup

Auto Start-up

Starting Sessions with an Icon

Manually Starting Sessions

Cut & Paste

Transports

Dynamic I.P. addresses

Fonts

Colors (rgb)

Keyboard

Troubleshooting


X-Utility Operations

The X-Utility is a stand alone configuration program.  It allows the user to change the various settings for X-Win32.  Once the changes have been made, an api message is sent to X-Win32 notifying the options affected.  X-Win32 (if running) will take action on most changes immediately.

Edit Sessions

Options

Keyboard

Fonts

Colors


Cut & Paste

Text

Text can be cut and pasted to/from the MS Clipboard and X-Win32 windows.  An option has been provided to disable auto copying of text to the MS Clipboard.  If this option is enabled, the user will be required to manually paste the text to the MS Clipboard using a selection from the X-Win32 menu.

From MS Windows to X

The user will use the standard MS Windows command sequence to cut & paste to the MS clipboard.  The user may then place the contents of the clipboard into an X window using the middle (or simultaneous left/right) button.

From X to MS Windows

The user will use the standard sequence (normally holding the left button down and moving the mouse) to cut text from the X window which will be placed into the MS clipboard.  The data in the clipboard can be pasted using standard Microsoft paste procedures.

Graphics

Graphics can be cut and pasted only from X-Win32 windows to the MS Clipboard.

From Remote host to MS Windows Clipboard

Graphics can be copied from an X window into the MS Clipboard.  In the selected X window, hold the ALT key not assigned to X down and then the left mouse button to highlight the area to be copied.  Releasing the left mouse button causes that area to be copied to the MS Clipboard.

Sun Cut & Paste

Sun keyboards under OpenWindows do not have the keysyms "Cut", "Copy", and "Paste".  We can simulate the Sun operation by assigning F6 to Copy, F7 to Cut, and F8 to Paste.

The OpenWindows applications use:

"F16" for 'copy'

"F20" for 'cut'

"F18" for 'paste'

Create a text file on the Sun with the following lines:

keysym F6 = F16

keysym F7 = F20

keysym F8 = F18

Then run "xmodmap -e filename".

If you put that in your .xinitrc file you may want to have a conditional so that it doesn't run xmodmap when you are using the Sun console.  Something like:

if [ "$DISPLAY" != ":0" ]; then

xmodmap pckeys

fi

Where pckeys is the name of the file.  If you didn't want to have another file laying around, you could also do it this way:

if [ "$DISPLAY" != ":0" ]; then

xmodmap -e "keysym F6 = F16"

xmodmap -e "keysym F7 = F20"

xmodmap -e "keysym F8 = F18"

fi

Cut & Paste to Sun OpenWindows buffers

The following will enable cut & paste from the MS Clipboard into an OpenWindows client such as mailtool.

Additions to to .Xdefaults

~Ctrl~Meta<Btn3Up>:insert-selection(CLIPBOARD, PRIMARY, CUT_BUFFER0) \n\

~Ctrl~Meta<BtnUp>:select-end(CLIPBOARD, PRIMARY, CUT_BUFFER0) \n\


Transports

X-Win32 supports Winsock 1.1 compliant TCP/IP stacks.

The supported transports should already be configured to run under Microsoft Windows.  If you suspect that the transport is the problem, then check that transport.

WinSock

Implementations and revisions of WinSock vary.  The X server needs to know the IP address of the PC. The above "IP Address Error" may appear.  It may be necessary for the user to either have:

1.	the domain name server specified
(if the transport does host name resolution)

or

2.	put an entry into the local HOSTS table for the PC.
(The entry should have the PC's name and IP address.
This file will usually look like the /etc/hosts file)

Novell

The net.cfg file (normally in net/bin) configures LWP4DOS number of buffers and TCP connections.  The default for buffers is 8 of 1500 bytes each.  The default for tcp_sockets and udp_sockets is 8 each.

If hanging of the X server is encountered, change the Network Interface to Polling or Blocking.

Recommended changes to the Novell net.cfg file:

Original	New

--------	-------

Link Support	Link Support

        Buffers 8 1500	         Buffers 16 3000

        MemPool 4096	         MemPool 8096

        Max Stacks 8	         Max Stacks 16

PC/TCP

The PCTCP.INI file contains the operational parameters.  The "tcp-connections = xx" line controls the number of connections.  This number of connections should be set to at least 15.

PC-NFS

Use of the "-highwater" option will give increase NFS speed but decrease the amount of buffer space available to X-Win32.  Disable this option if getting a "Buffer Space Unavailable" message.

The following may need to be added to SYSTEM.INI under [386Enh].

InDOSPolling=on

UniqueDOSPSP=true

PSPIncrement=5

TimerCriticalSection=1000

TCPOpen

The following lines may need to be added to the file PROGMAN.INI in the WINDOWS subdirectory for the TCPOpen group to appear under MS Windows.

GroupX=C:\\TCPOPEN\\BIN\\TCP-KERN.GRP

IP Address Error

It the error "I don't know my IP Address" appears while trying to startup in any mode, then the IP Address and Name of the PC should be entered into the local HOSTS table, usually a text file named HOSTS in the tcp/ip mfg's directory.


Dynamic I.P. addresses

Some host setups will dynamically allocate the I.P. address of a node (your PC).  The X-Win32 user is faced with the problem of starting a client without knowing the I.P. address assigned to his PC.  X-Win32 has implemented two variables to allow loading of the assigned PC "name" or "ip address".  The variables are:

$DISPLAY

$MYIP

These variables may be used in place of "my_pcname:0.0" (davepc:0.0) or "my_ipaddr" (192.23.43.10).

example:

.../xterm -ls -display 192.1.1.1:0.0 &

or

.../xterm -ls -display dick.starnet.com:0.0 &

is replaced by:

.../xterm -ls -display $DISPLAY &

or

.../xterm -ls -display $MYIP:0.0 &


Fonts

X-Win32 comes with the standard and optional MISC and 75DPI fonts.  These fonts were compiled from the X11 distribution bdf fonts using the X-Utility Compile bdf Fonts selection under Fonts.  The font entries were placed into the corresponding FONTS.DIR using the X-Utility Make fonts.dir selection.  Users can use these programs to compile other bdf fonts.

Refer to the X-Utility Operations section for help on using these options.

COMPILE BDF FONTS

The Compile bdf fonts selection will compile a BDF file into a .FON or PCF file for use with X-Win32.  Use the "bdf to fon" selection for fast fonts.  Use "bdf to pcf" for large or dual byte fonts.

MAKE FONTS.DIR

The program will create a file FONTS.DIR from all the .FON AND .pcf files in the selected directory.  Duplicate entries will be reported and not added to the file.

Alias Fonts

Desired (non-existing) fonts may be aliased to existing fonts.  Use Alias Fonts selection under Fonts in the X-Utility.


Colors (rgb)

The rgb (red-green-blue) colors used by X-Win32 are controlled at runtime by rgb.bin.  Rgb.bin is created from rgb.txt by running the X-Utility Compile Colors selection.  Users may edit the rgb.txt file using the X-Utility Edit Color Database selection.

X-Win32 does a case insensitive search to match color names.

Refer to the X-Utility Operations for help on running these options.


Keyboard

The keyboard file in use is determined by the MS Windows country code.  The default keyboard is an internal us.kbd.  The user will be notified by a message window if it is being used.

The xwin32.ini entry "KBDfile=xxx.kbd"  controls specific keyboard driver selection.  Using the X-Utility, the user may:

1. specify a specific keyboard file to be used

2. modify the keysyms for a specific or custom keyboard file

3. create custom keyboard files

Refer to X-Utility Operations for help on using these options.

International users (non-US) may wish to turn on the "Right Alt to X" option under Keyboard using X-Util.  This key is "AltGr" on many keyboards.  Enabling it will allow Alt+keycode sequences to be transmitted.


Troubleshooting

No X Window(s)

Is xdm running?

Exits after XDMCP login window

Cannot open display

Cannot run OpenLook Window manager (olwm)

Cannot read text in xterm

Client not authorized to connect to server

Connection Closed

Connection Refused - Host Name not known

Connection Refused - My IP Address not known

Connection timed out

Hanging of X server

hostname: hostname: No such file or directory

hostname: hostname: cannot open

LD:SO libXt.so.4 not found

Permission Denied - rsh

Permission Denied - file

stty: Operation not supported on socket

Warning: Cannot convert string "...." to type FontStruct

Warning: Color name ... is not defined in server database

Will not start - screen blanks

X Toolkit Warning: Cannot allocate colormap entry for ...

xlock


No X Window(s)

The X-Win32 icon was selected, and the X-Win32 window came up, but no X windows automatically appeared.

XDMCP SELECTED

If one of the XDMCP modes was selected, you must make sure that xdm is running.  This can be done by using the rsh/rexec function with the following command:

ps -ax | grep xdm

Look in the X-Win32 window for the results.  If xdm is not running, check with you system administrator.  If xdm is running, determine next if it is the XDMCP version:

netstat -an | grep 177

If XDMCP is running, the following line will appear in the X-Win32 window:

udp	0	0	*.177

XDMCP NOT SELECTED

If XDMCP is not selected, then there must be a session with "Auto Startup" selected for a window to automatically appear.

AUTO START-UP SELECTED ON A SESSION(S)

If "Auto Startup" is not selected in any of the sessions then one will have to be manually selected.  This rsh/rexec session must be correct.  Check the X-Win32 window for errors.

AUTO START-UP NOT SELECTED ON ANY SESSION

This means that X-Win32 has started up in a passive mode.  It is waiting for either some manual action by the user or some remote action.  Normally this action will be local.

A session will have to be started by selecting one of the entered sessions.  If there are not any entered sessions, then one, or more, will have to be configured.  All entries under the Sessions list are started using either RSH or REXEC.

The user should make sure that the hosts can accept these commands.  RSH may require an entry in .rhosts in that users home directory.


Is xdm running?

If one of the XDMCP modes was selected, you must make sure that xdm is running on that host.  This can be done by using the rsh/rexec with the following command:

ps -ax | grep xdm

Look in the X-Win32 window for the results.  If xdm is not running, check with you system administrator.  If xdm is running, determine next if it is the XDMCP version:

netstat -an | grep 177

If XDMCP is running, the following line will appear in the X-Win32 window:

udp	0	0	*.177


Exits after XDMCP login window

After you log in to the XLOGIN window, xdm executes the script Xsession, which is usually in /usr/lib/X11/xdm.  (Sun's may be in /usr/openwin/lib/xdm)

Note:  If the login session is in failsafe mode (invoked by pressing the F1 key instead of Return after you type your password) Xsession simply runs an xterm.

If it is in normal mode, Xsession runs the file ".xsession" in your home directory.  In all cases, when Xsession exits, because the xterm it runs exits or because the .xsession script exits, xdm will kill all the windows on your display and log you out.

PROBLEM 1:

Setting up a .xsession file with everything running in the background causes .xsession to exit early.

For instance, if your .xsession file looks like this:

xrdb ~/.Xdefaults

twm &

sleep 4

xterm &

Then immediately after the xterm starts, .xsession will exit which will cause you to be logged out.  This will almost always happen before xterm even has time to create a window.

Solution:

To fix this problem, change the last line to:

exec xterm

Problem 2:

Having a .xsession file in which the last program to be executed fails and exits.This could be for several reasons:

1. Because the program is not in your search path when .xsession is run.  To solve this problem make sure your path is set up correctly in .xsession itself.  Don't depend on the program which calls .xsession to set it for you.

2. An X version incompatibility.  In version 4 of the X protocol, two things were added.  The first was XDMCP.  Thus, if you are using XDMCP to get your XLOGIN window, you have at least an X11 R4 version of xdm.  The second thing added was the MIT-MAGIC_COOKIE authorization.  Under this scheme, a client, upon connecting to the X server, sends some authorization information.  This is usually a 128-bit number that the server has chosen and given to xdm using XDMCP.  Xdm stores this number in a file called ".Xauthority" in your home directory.

3. If X-Win32 is not in the Virtual Root (Single Window Mode) and the last program is a window manager, then it will fail because XWin32 uses the Microsoft window manager, which will not allow an X window manager to run.

4. Virtual Root (Single Window Mode) is selected with the "Enable Screen :0.1" selected and olwm is running under Open  Windows 3.0.

5. If you are using, for example, xterm from X11 R3 in the last line of your .xsession file.  It will not know how to send this authorization information to the server.  As a result, the server will refuse the connection, xterm will exit, causing .xsession to exit and your session will be terminated.

Solution:

(1 thru 4)  To solve the first problems you can start the X server with XDMCP disabled, then log into your host system from a different terminal.  Set the environment variable "DISPLAY" to your PC, set your PATH variable to the default (to troubleshoot problems with the search path), then run your .xsession file by typing "./.xsession".  If this terminates and you get the shell prompt again, then something is wrong.  Any error messages should have appeared on your screen to help you troubleshoot the problem.

(5)  Use the "Xhost" option to add the IP address of your host to the table of hosts that can connect without authorization.


Cannot open display

Usually this error will occur if the display has not been properly defined.  If you have just started X-Win32 and are using rsh or rexec to start a client, the DISPLAY environment variable is not yet set.  This will have to be set.  It can be set by:

1.  Setting the "-display xxxx" option on the X-Win32 cmd line.

2.  Executing a script file on the host which sets that variable.

As an example, the form of a display statement in an xterm command is:

-d displayname:0.0  or  -display displayname:0.0

Specifies the display screen on which xterm displays its window.  If the display option is not specified, xterm uses the display screen specified by your DISPLAY environment variable.  The display option has the format hostname:number.  Using two colons (::) instead of one (:) indicates that DECnet is to be used for the transport.

.../xterm -ls -display 192.1.1.23:0.0  &

.../xterm -ls -display davepc:0.0  &

X-Win32 has implemented two variables which can be used in automatically defining the display.  They are $DISPLAY and $MYIP.  Their usage is:

.../xterm -ls -display $DISPLAY  &

.../xterm -ls -display $MYIP:0.0  &


Cannot Run Olwm

Cannot run OpenLook window manager (olwm)If you are running on a Sun using Open Windows 3.0 and olwm, then be sure that:

"Enable screen :0.1"

is not selected during Virtual Root (single window) mode operation.

If "Enable screen :0.1" is enabled, then olwm should be started using the form:

"olwm -single &".


Cannot Read Text

An xterm has come up, but the text is not readable.  The cursor changes as it is moved into and out of the xterm.

This is usually a color problem.  Either the colors selected for the xterm are not correct or not available.  It MS Windows is set to 16 colors and the xterm colors have been selected based on 256 colors, it is possible to have both foreground and background mapped to the same color.

This problem can also be caused by using "crystal fonts" on the ATI Ultra Pro.  The ATI Ultra Pro locks around 247 palette entries.  This is most noticeable when 256 colors is selected under the MS Windows video driver setup.


ClientNotAuth
Client Not Authorized (Connection rufused by server)

This happens because the client does not have authorization to connect to this X server (X-Win32).  Use of the Xhost table or the Host Access List will give access to that client.  Use the X-Utility to add needed clients (hosts).

REMEMBER that the Xhost table is an all or none type list.  If one host is in the list, then ALL hosts which wish to have access to X-Win will either have to:

1. be in the Xhosts table

or

2. pass the magic cookie


Connection Closed

I.P. Address or Hostname: connection closed.

You should contact your system administrator.  A connection was made and the host closed the connection.  This may occur if:

1. you are trying to connect using rexec and rexecd or in.rexec will not allow the connection to continue.

2. your host is running Sun OS and /etc/inetd.conf is not correct or is trying to run something that does not exist.

3. your host is running a tcp wrapper that closes the connection for security reasons.


HostNameNotKnown
Connection Refused: Host Name Not Known

The Winsock compliant TCP/IP stack is responsible for resolving host names to IP addresses.  It may do it by using a DNS or by a local HOSTS table.  It may be necessary to enter the host names and ip addresses into a local HOSTS table.  Check the docs on your TCP/IP software.  It may be necessary to enter the name and ip address of the local pc also.


MyIPAdrNotKnown
Connection Refused: My IP Address Not Known

The TCP/IP stack needs to tell the X server (X-Win32) the IP address of the PC.

This information may need to be added to the local HOSTS table.


SunLib
LD:SO lib Xt.so.4 not found

This is the result of the host (Sun SPARC) system being shipped or installed with some files being placed in a different directory.  Either the shared library cache is out of date, the shared library is missing, or the shared library is not in your LD_LIBRARY_PATH.  You should either set the LD_LIBRARY_PATH environment variable ot the appropriate value, run ldconfig to update the library cache, or install the missing library.  Try placing the following command into your home directory, into the .cshrc file:

setenv LD_LIBRARY_PATH /usr/lib:/usr/openwin/lib

The directory path and the location of this file should be verified on the host system prior to inserting the setenv line.


DeniedRsh
Permission Denied: Rsh

A user must have an account on the remote host.  A .rhosts file entry allows a user who has an account on that host to log in from a remote node without supplying a password.  The .rhosts file must be in the user's home directory.  The format of a .rhosts file entry is:

hostname [username]

The hostname is the name of the local node (PC) from which the user wants to log into the remote host.  The username is the user's login name on the PC.  If you do not specify a user name, the user must have the same login name on both the remote host and PC.

Each remote machine may have a file named /etc/hosts.equiv containing a list of trusted hostnames with which it shares usernames.  Users with the same username on both the local and remote machine may rsh from the machines listed in the remote machine's /etc/hosts file.


DeniedFile
Permission Denied: File

If a script file is being executed, it must have execution permission.  Use:

chmod  775  script_filename

to allow execution and r/w permissions.


xlock

X-Win32 requires that the IP address of the host running xlock to be in the Xhost table.

The ip address of that host entry has to have a plus (+) in front of it.

Use of the "-remote" option is also required.


Rsh... or Rexec...

The data entered for these two commands will be available only for the current running of X-Win32.  When X-Win32 is closed, this data will be lost.  If you wish to have this data available, use the X-Utility to create a saved session.

Rsh (remote shell) and rexec (remote exec) are both de-facto protocols created with BSD4.1 (TCP/IP code from Berkeley).  Both protocols function identically once the connection is established.  The difference in the two commands is the information required at startup to authenticate the user.

Rexec requires a "Login" and a "Password".

Rsh only requires a "Login".  The user is authenticated by having an entry in the ".rhosts" file in his home directory.  The entry contains the name of the local host (the pc) and optionally a user name.  This will give permission for that USER on the local HOST to RSH to the remote HOST.

.rhosts

--------------------------------------

pc01

pc02	dick

--------------------------------------

Users need to consider rsh/rexec operation with shells that may in use on the remote host such as the Bourne or c shell.


Xhost

The Xhost table is a list of systems (hosts) that are allowed to access the local server (X-Win32).  This table can be edited so that it contains the list of systems you want to allow access to your server on a regular basis.  Depending upon the tcp/ip stack in use, host names or I.P. address will be used.  Specifying a system name or an I.P. address with an optional plus sign (+) allows the host to modify the Host Access List.

Note:  Having no (ZERO) entries in the Xhost table will allow any host to have access to the X server.


Host Access

When an X client attempts to open an X display, the server checks to see if that client is authorized to connect before it allows the connection.  If the client is not authorized, it gives a message such as:

Xlib:   Connection to "server:0.0" refused by server

Xlib:   Server is not authorized to connect to host

Error:  Can't open display

Clients are granted access if:

XDMCP

1.	the client passes the correct MIT-MAGIC-COOKIE-1.

2.	the client resides on a host whose IP address is in the

Host Access List or the Xhost table.

Non-XDMCP

1.	there are no entries in the Xhost table.

2.	the client resides on a host whose IP address is in the

Xhost table.

A client can change the Host Access List (residing in local RAM memory) if its entry in the Xhost table is preceded by a plus sign (+).

X11R3 (old style clients)

The X11R3 release gave only one method of authorizing clients to connect. That method is giving access based on the IP address of the host on which the client runs, also known as "xhost".  The disadvantage of this method is that when you give access to a host, call it "host1", everyone who has an account on "host1" can access your display.  Once they have access, they can move or delete windows, or even worse.

X11R4-5-6

X11R4 introduced a new method of authorizing clients, called X authorization, or MIT-MAGIC-COOKIE-1.  When you log in using X11, revision 4, xdm creates a file named ".Xauthority" in your home directory.  In this file is a 16-byte key, or cookie, that is sent to the server as part of the connection setup information by X11R4 clients.  If your client is running on a host that is not in the "xhost" list, but the client sends the correct cookie, then it will still be allowed to connect.  Thus, when using an X11R4 xdm, your "xhost" access list will typically be empty but clients will still be able to connect.

X-Win32 obtains the "magic cookie" from xdm using XDMCP.  The cookie is generated by a random generator in xdm.  If X-Win32 is started this way, the initial "xhost" access list is empty, and access is restricted.  If it is not started with XDMCP, then access control is disabled (any client is allowed to connect).

If you use an X11R4 xdm to get your login window, and want to bring up older (R3) clients on your display, you need to add the hosts on which those clients run to your access list.  To do this, simply add the host using the xhost command before bringing up the window.  You can make a permanent list of hosts that are in the access list of X-Win by adding those hosts to the Xhost table using the X-Utility.  You may want to do this in two cases:

1.      You use X-Win32 in the non-XDMCP mode (any client can connect),

and want to limit the access list to "trusted" hosts.

2.      You use it in the XDMCP mode (only R4 clients with correct

cookie allowed) and want to allow R3 clients from specific

host(s) to connect to your server.

To make this permanent list, change the Xhost table.  On each line of this list put an IP address (such as "192.1.1.1").


Host Access List

X-Win maintains a Host Access List in local RAM of the systems (hosts) which will be granted access to X-Win32.  The xhost client can be used to give (or deny) systems access to the server interactively.  The xhost client must be run from a window running on the server that wishes to grant access.  It cannot be run from a remote window.

Specifying a host name with an optional leading plus sign (+) allows the host to access X-Win32.  Specifying a host name with a leading minus sign (-) prevents a previously allowed host from accessing the server.  Running xhost without any arguments prints the current hosts that are allowed access to your X-Win32.


rsh/rexec operation with shells

bourne shell

Special Files:

/etc/profile	Executed automatically at login

$home/.profile	Executed automatically at login

/etc/passwd	Source of home directories for ~name abbrev.

$ENV	Specifies the name of a file to read when a

new Korn shell is created.

When using X-Win32 rsh or rexec NONE of the above files get executed.

c shell

Special Files:

~/.cshrc	Executed at each instance of shell

~/.history	History list saved from previous login

~/.login	Executed by login shell after .cshrc at login

~/.logout	Executed by login shell at logout

/etc/passwd	Source of home directories for ~name abbrev.

When using X-Win32 rsh or rexec ONLY the .cshrc file gets executed.


Debugging

The debugging options should be used only at the direction of qualified support staff.  Use of these options will slow the operation of X-Win32.

Misc

Certain startup messages, fonts opened/aliased, beep on exit.

Requests

One line for each request processed by the server, logs the client id (a new client is assigned the first unused id starting at 1), the X request protocol number, the length of the request and the sequence number (starts at 0).  Also X errors are displayed.

Events

One line for each X event sent to the client.

Replies

Not currently used, but is intended to be used to display replies to X requests which generate one.

Window

Messages about failure to allocate certain window objects.

Access

Not currently used.

Network

Messages about TCP/IP stack operations and errors.  This includes the Winsock startup message which tells which Winsock is being used.

Xauth

The success or failure of the X authorization sent on client startup

Audit

Displays a message when a client connects, fails to connect, or disconnects.

Graphics

Messages about graphics failures to allocate objects and status of free graphics (GDI) resources.


DISPLAY
$DISPLAY

Where the string "$DISPLAY" (capitalization important!) appears in the command field of an rsh or rexec but not preceding another alphanumeric character, the variable "DISPLAY" will be substituted.

The variable "DISPLAY" contains the hostname of the PC on which the X server is running followed by ":0.0".  If the hostname of the PC cannot be determined, MYIP is substituted.

example:

/usr/bin/X11/xterm -ls -display dick.starnet.com:0.0 &

is replaced by:

/usr/bin/X11/xterm -ls -display $DISPLAY &


MYIP
$MYIP

Where the string "$MYIP" (capitalization important!) appears in the command field of an rsh or rexec but not preceding another alphanumeric character, the variable "MYIP" will be substituted.

The variable "MYIP" contains the IP address of the PC in dotted quad notation.

example:

/usr/bin/X11/xterm -ls -display 192.123.51.5:0.0 &

is replaced by:

/usr/bin/X11/xterm -ls -display $MYIP:0.0&


XU-Edit Sessions
Edit Sessions

The user will have a choice of creating a new session or editing a previously created session.

Controls

Session Name

This is the X-Win32 name of the session.  The "session name" will appear in the X-Win32 sessions list.  If the "session name" already exists, the user will be prompted before replacing the previous session.

Connect Mode

rsh

Remote shell - requires a login and and permission on the host.  Permission on the host can be granted by an entry in the .rhosts file in the login users directory or an entry in the /etc/hosts.equiv file.  That entry is the name of the pc with optionally the user name.  If a name server is not in use or is not functioning properly, use the ip address of the pc.

rexec

Remote exec- requires a login and password.

xdmcp

X Display Management Control Protocol

Auto-Startup

A session marked "auto-startup" will automatically be started when X-Win32 is initially started.  Multiple rsh/rexec sessions may be marked "auto-startup" at the same time.

Only one XDMCP session may be marked "auto-startup" at a time.  If an XDMCP session is marked "auto-startup" any other sessions marked "auto-startup" will be turned off.

Auto-Restart

Only XDMCP sessions can be marked Auto-Restart.  This will automatically restart this XDMCP session after closing it.

Host Name

"Host Name" is the IP address or name of the remote host.  Note that some TCP/IP stacks (or some early versions) do not support host name resolution, which means that the IP address must be used.  Some TCP/IP stacks have a "HOSTS" list into which the user must manually enter the host names and corresponding I.P. addresses.  This would allow the user to use host names entered into this list.  Forms of this entry may look as follows:

192.1.1.1

unix1

Login

"Login" is the users login name to the selected "Host Name".

dick

or

user1

If this field is left empty, the user will be forced to enter a login into a window when that session is selected.  If the type of session is rexec, then a password will also be required.

Command

"Command" is the script file or command to be executed on the remote host.  The command may be only one line which starts an xterm window on the X server.  The following example would bring up an xterm window.

/path/xterm -ls -n WindowName -display xpc:0.0 &

The following example will run the script file "Xwin" on the remote host passing the parameter "xpc:0.0" or "192.1.1.23:0.0".

Xwin xpc:0.0   or  Xwin 192.1.1.23:0.0

The command line in our example, 'Xwin xpc:0.0' contains not only the script name on the remote host ('Xwin' in this case) but an additional argument, the name of the 'display'.  In X parlance, from the user's perspective, every X server has a display name in this form:

hostname:displaynumber.screennumber

X client programs use this information to decide how best to connect to the X server and which screen should be used by default (on X displays with multiple monitors).

What this means is that the display name which has been given in the example command line is composed of the name of the PC running X-SERVER (in this case, a machine called 'xpc') followed by a ':0'.As is the case with the rest of the example, this is site-specific and you should substitute your X-SERVER machine name for 'xpc'.

XDMCP

query

X-Win32 sends a query to "Host Name".

broadcast

X-Win32 sends an xdmcp broadcast.

indirect

X-Win32 queries "Host Name" to get another "Host Name".

old-indirect

X-Win32 queries "Host Name" to get another "Host Name".

Use this selection if your host uses chooser.


XU-Options
X-Util Options

Window Mode

Xhost...

Mouse

Resources...

Clipboard

Network Polling

Access Control

BackingStore

Display


XU-Keyboard
Keyboard

Select Kybd

The default keyboard selection is determined by the keyboard setting in Microsoft Windows.  A specific keyboard file may be selected for use each subsequent time X-Win32 is used.

Edit Keysyms

The keysym's for a keyboard file may be modified and saved.  The user may use this function to create a custom keyboard file.  Keysym selections are made from a reference list of X keysyms.  The customized file may be saved as a specified name and then selected for use using Select Kybd.

Left Alt to X

When selected the left alt key is sent to X and not to MS Windows.

Right Alt to X

When selected the right alt key is sent to X and not to MS Windows.

This is the key that on many international keyboards is "AltGr".  This will need to be enabled to allow Alt+keycode sequences to be enabled.

Bell

The bell can be set to several different sounds.  Use "xset b xxx" to set the bell, where "xxx" is the bell value.

PC Speaker	0-49

Default Speaker	50-59

Asterisk	60-69

Question	70-79

Exclamation	80-89

Critical Stop	90-100


XU-Fonts
Fonts

Make fonts.dir

Newly added .pcf or .fon fonts will be added to fonts.dir in the selected directory.  Fonts.dir contains the font availability and search parameters for X.

Compile bdf fonts...

Selected .bdf fonts can be compiled into .fon or .pcf fonts.  Single byte fonts should be compiled into .fon fonts for better speed.

Font Alias...

Fonts that do not exist may be aliased to fonts that do exist.

Modify FontPath

Users may wish to modify the fontpath.  Font directory names may be added, deleted, or modified.


XU-Colors
Colors

Edit Color Database

The notepad editor is used to edit the RGB text database.

Compile Colors

The RGB database is compiled into X-Win32 format.

Support PseudoColor in TrueColor Mode

Some C clients will not operate properly if they cannot write to the color map.  Enabling this option will support a PseudoColor (writeable) visual when running in TrueColor.

This option is NOT supported under Window 3.1 or WFW.

TrueColor is used when the Microsoft color selection is greater than 256 colors  The X color map is not writeable in this mode.  PseudoColor is used by default when the Microsoft color selection is 256 colors.  The X color map is writeable in this mode.

This option is only valid in greater-than-256 color mode.

SYS colors not reserved

Normally, Microsoft Windows reserves the first and last ten

colors of the color map when running 256 colors.  This option causes Microsoft Windows to reserve only the first (black) and the last (white) colors.

This option is only valid in 256 color mode.


Start Session with Icon
Starting Sessions with an Icon

The user may wish to start a session or sessions by double-clicking on an icon.  This may be done by using Program Manager |File|Properties to create a new Program Item.  This Program Item will have a session name appended to the Command line.  A session name or names may be appended to the Command line to always start that session(s) when X-Win32 is started.  This would be the same as using the auto-startup feature in that session's script.

If multiple session names are used, they will be separated by semicolons.  Do not insert spaces.  See the example below.

If the first session is started using an icon with a session name, then all other auto-startups are ignored.

example:

Description:	X-Win32

Command Line:	C:\xwin32\xwin32.exe SunX;VaxX;UnixX

Working Directory:	C:\xwin32


XW-Options
X-Win32 Options

Selecting the X-Win32 icon (or on the task bar) will give a pull-down menu with the following options:

Reset

Resets X-Win32.

Close

Exit X-Win32.

Sessions

Select a Session for immediate execution.

Show Messages

Bring up the informational Messages Window.

Access to rexec and rsh interactive commands.

X-Util

Start the X-Win32 configuration module.

Page Setup...

Configure the local printer.

Copy X Selection

Copy the current X selection to clipboard, printer, or file.


Select Kybd

The user may select an X keyboard file from the list of available .kbd files.  This selection will be displayed in the highlighted Select X keyboard box.

If you wish X-Win32 to automatically select the .kbd file for you each time X-Win32 is run, then select AutoSel.

Controls

Keyboard File Box

This is the list of available .kbd files.  Selecting an entry will place that entry into the Select X keyboard box.

Select X keyboard

This is the selected X keyboard.  This will be the keyboard used the next time X-Win32 is started.

AutoSel

Lets X-Win32 automatically select the keyboard.

OK

Saves selection

Cancel

Clears selection and exits.


Edit Keysyms

The keysym's for a keyboard file may be modified and saved.  This function may be used to create a custom keyboard file.

Select a .xkb file from Menu bar "File...Open File".  Once selected, a representation of that keyboard will be drawn and a list of reference keysyms sets and keysyms will be shown.

Using the mouse to select a key on the keyboard will display the settings for that key.  The keysyms and key state for that key will be displayed.

Changing a keysym for a selected key will require two steps:

1. Select either Unshifted, Shifted, Mode Switch, or Shift Mode Switch.

2. Select a desired "Keysym Symbol Set".  Then, from "Keysyms for selected set", select a desired keysym.  The selected keysym will be placed into the selected keysym.

Controls

Menu Bar File

Open File

The name of the keyboard selected from the Select X Kybd box.

Save file

The selected keyboard (xxx.xkb) will be saved.

Save file as

The name for saving the modified .kbd file.  The .xkb extension will have to be used for it to appear in this list.

Open File

A list of the available X keyboards will be shown.  This list will include the standard .xkb files shipped with X-Win32 as well as any saved/modified by the user as long as the .xkb extension is used.

Delete File

The currently selected .xkb file will be deleted.

Menu Bar Options

Unshifted

The unshifted keysym.

Shifted

The keysym when also using the shift key.

Mode Switch

The keysym when also using the Alt key.

Shift Mode Switch

The keysym when also using the shift-Alt key.

Keycode   Shifted Unshifted Alt

A list of the keysym for the selected keyboard.  The entries are shown from left to right as shifted, unshifted, and optionally alt.  Selecting an entry will cause that data to be entered into the Shifted, Unshifted, and Alt boxes.  Using the Modify key will replace the selected entry with the data in the Shifted, Unshifted, and Alt boxes.

Modify

Causes the data in the Shifted, Unshifted, and Alt boxes to replace the data in the selected entry in the Keycode   Shifted Unshifted Alt box.

Cancel

Clears selection and exits.

Save

Saves the new keyboard layout as the specified "Save .xkb as" filename.


XU-Make fonts.dir
Make fonts.dir

Use Select Directory to select the desired font directory.  Select Directory will open a Browse window for locating the desired font directory.  Files in the selected directory will be shown in the Files list box.  Once selected, use Make FONTS.DIR to create (or overwrite) the FONTS.DIR file.

Controls

Select Directory

Uses Browse to locate/select the desired font directory

Make FONTS.DIR

Creates/updates the FONTS.DIR file from existing .pcf & .fon files in the current directory.


XU-Compile bdf fonts...
Compile bdf fonts...

The fonts (.bdf) will be compiled from a source directory into a destination directory.  These directories may be the same, but will need to be selected.  The font type should be selected prior to selecting the destination font directory.

Controls

Select Source Dir

Uses Browse to select the source directory.  This directory should contain .bdf (text format) font files.  Once this directory has been selected, the files to compile need to be selected.  A individual file or a block of files may be selected (highlighted).

Select Dest Dir

Uses Browse to select the destination directory.  This directory should/will contain .pcf or .fon X-font files.

Select Font Type

The two choices are .pcf (portable compiled fonts) and .fon (MS windows format).  The .pcf files are scalable and will handle large 2-byte fonts.  The .fon files are drawn using MS routines and are thus faster.

Compile

Compiles the selected source fonts into the selected Dest directory.

Make fonts.dir

This option is the same as the higher level Make FONTS.DIR.  The user has the option of updating/creating the fonts.dir file while using the compile option.  The user may wish to compile fonts from one directory and update the destination directory and then compile fonts from another directory into yet another directory and then update the fonts.dir in that directory, all without leaving the Compile Fonts window.


XU-Font Alias...
Font Alias...

The user should use Select Directory to locate the desired font directory.   Font Aliases is provided to modify entries.  A list of the fonts , if present, in the selected directory is in the FONTS.DIR list.

Controls

Select Directory

Uses Browse... to locate the desired font directory.

Next Alias

Advances to the next alias.

Previous Alias

Goes back to the previous alias.

Insert Before

Insert the modified entry before the current selection in the Font Aliases list.

Insert After

Insert the modified entry after the current selection in the Font Aliases list.

Delete Selected Alias

Delete the current selected alias entry from the Font Aliases list.

Font Aliases

This is the current FONTS.ALI file.  Use Next Alias and Previous Alias to move thru the file.

FONTS.DIR (Font / Font List)

This list is provided as a reference of the available fonts in the selected directory.

OK

The updated FONTS.ALI file will be written.


XU-Modify FontPath
Modify FontPath

The fontpath may be modified by adding-deleting-replacing the current entries.  Starting with version 3.4.1, the fontserver is supported.  The form of the fontserver entry is:

     tcp/hostname:Port#

Controls

Insert before

Inserts the Selected Entry before the selected line in the Font Paths list.

Append

Inserts the Selected Entry after the end of the Font Paths list.

Replace

Replaces the currently selected line in Font Paths with the Selected Entry data.

Delete

Deletes the currently selected line in Font Paths.

Browse...

A browse window for viewing directories.

OK

Writes the new font path and exits.

Font Paths

Shows the font path with modifications.  The Font Paths data is not saved until the OK button is selected.

Selected Entry

This is the workspace.  Selecting an entry will allow the user to modify that entry and write it back to the Font Paths list.


XU-Window Mode
Window Mode

The X display may use Microsoft Windows (NT) as the window manager or may use a remote window manager such as twm, motif, open look, or HP-Vue.  Selecting Single Window Mode will give the user an X display that will either be full screen or the size of the entered width and height.  If the size of the window are greater than the resolution selected for the PC, then scroll bars will be added.

Controls

Window Name (session)

The text entered here will appear on the banner of the Single X Window and under the X-Win32 icon.

Single Window Mode (Virtual Root)

Selecting the Single Window Mode will bring up a Virtual Root window the next time the server is started.  X windows being created for screen zero on the PC (":0.0") will be created inside the Virtual Root window.  The Virtual Root window will be the size of the screen (minus borders), if the width and height are not set

A remote window manager (such as twm, open look, motif, ...) may be run in the Virtual Root window.  It is still possible, while in single window mode, to have X windows managed by the Microsoft window manager by selecting Enable Screen :0.1.  These window screens would be defined as:

application -display xpc:0.1

WidthWidth

The size in pixels across (horizontal) the screen of the Single Window.

Height

The size in pixels down (vertical) the screen of the Single Window.

Enable screen :0.1

The 1st screen for xpc is ":0.0", the 2nd screen for xpc is ":0.1".  This will allow an X client to be controlled by MS Windows.  This X window will appear outside of the Single Window.  It will have standard MS Windows controls on it.

This option may cause a problem when running with the Open Look window manager.  If Open Look will not start or there is a "Perhaps there is already another window manager running?" message, then do NOT enable this option.


XU-Xhost...
Xhost...

The Xhost table is a list of systems (hosts/clients) that are allowed to access the local server (X-Win32).  Note: IF this list does not contain any entries AND XDMCP is not being used AND if Access Control is turned off, then ANY host will have ACCESS!  The Access Control option will allow the user control over which clients have access.

This table can be edited so that it contains the list of systems you want to allow access to your server on a regular basis.  Depending upon the tcp/ip stack in use, host names or I.P. address will be used.  Specifying a system name or an I.P. address with an optional plus sign (+) allows the host to modify the Host Access List.

If ANY XDMCP session has been selected and used, X11R4-5-6 cookie authentication comes into force for ALL of your sessions.  An empty Xhosts table is no longer promiscuous, and connections that were permitted before are no longer permitted.

Controls

Workspace

User workspace for entering X hosts.

Xhosts

List of X hosts.

Add

Adds Workspace to Xhosts.

Delete

Deletes selected line from Xhosts.

OK

Saves Xhosts and exits.


Xwin

Xwin is a script file which should reside in your home directory.  It can be used to simply start an xterm, or to start multiple clients.  The "Unix Usage" example show a simple script file which uses the display name passed from the rsh/rexec command line to set the display, start the twm window manager, and then start an xterm.

Unix Usage

Xwin xpc:0	(Session Command line)

----------------------------------------------------------

:

#!/bin/sh

if [ "$1" ]; then

DISPLAY=$1

export DISPLAY

fi

/usr/bin/X11/twm &

/usr/bin/X11/xterm -n "host name" -ls &

------------------------------------------------------------

VMS Usage

@Xwin	(Session Command line)

------------------------------------------------------------

$!Xwin

$!start the detached process

$!

$run -

/detached -

/input=xtest.com -

/output=xtest.log -

/error=xtest.err -

sys$system:loginout

------------------------------------------------------------

xtest.com

------------------------------------------------------------

$!xtest.com

$!This routine starts the various applications on the X Client

$!

$WAIT 00:00:10.00

$SET DISPLAY/CREATE/NODE=xpc/TRANSPORT=TCPIP/SERVER=0

$SPAWN/NOWAIT RUN SYS$SYSTEM:DECW$SESSION

$SPAWN/NOWAIT RUN SYS$SYSTEM:VUE$MASTER

$SPAWN/NOWAIT RUN SYS$SYSTEM:DEW$BOOKREADER

$CREATE/TERMINAL=DECTERM/DETACHED

$RUN SYS$SYSTEM:DECW$WINMGR

-------------------------------------------------------------

(where xpc is the name of the pc)


Warn-font
Warning: Cannot convert string "..." to type FontStruct

You cannot access the specified font, either because it does not exist or because X-Win32 does not have access to it.


Warn-color
Warning: Colors name ... is not defined in database

You have specified a color to an application that is not defined.  Either the color name was misspelt, or it was not properly installed.  Use the X-Utility to verify that entry in the Color Database.


Warn-color1
X Toolkit Warning:

Cannot allocate colormap entry for ...

Your color database is corrupted.  You need to recreate the color database.  Use the X-Utility to verify and recompile the color database.


Warn-restricted
hostname: hostname: No such file or directory

You are likely trying to use rsh, but are running the restricted shell instead of the remote shell.  You should change your path to get the right one.

The remote shell is normally /usr/bin/rsh.

The restricted shell is normally /usr/lib/rsh.


Warn-restricted


Warn-cannot open


Warn-cannot open
hostname: hostname: cannot open

You are likely trying to use rsh, but are running the restricted shell instead of the remote shell.  You should change your path to get the right one.

The remote shell is normally /usr/bin/rsh.

The restricted shell is normally /usr/lib/rsh.


stty: OpNotSup
stty: Operation Not Supported

If you are using rsh, the .cshrc file on the remote host probably has an interactive command in it, such as stty.


Connection timed out

You tried to connect to a host that is currently down or otherwise unreachable.


XWIN32.INI

XWIN32.INI is a text file in your \windows directory that controls the setup of X-Win32.  Most of the XWIN32.INI options are set using the X-Utility module.  X-Util will send an API msg to X-Win32 when an item is changed.  X-Win32 will act on  most changes as they occur.

The user can manually edit the XWIN32.INI file.  One option that will have to be manually entered is the display= option.  This is a seldom used option and does not have an entry in X-Util.

[settings]

directory=c:\xwin32\lib

fontpath=c:\xwin32\lib\fonts\misc,c:\xwin32\lib\fonts\75dpi

single=0

screen1enable=0

KBDfile=us.kbd

rootname=X-Win32

panning=1

SaveUnder=no

XMsg=1

Alt=0

height=768

width=1024

debug=57344

resources=30

display=0

[sessions]

rsh=1:Host:Login::Cmd

vax=1:vax:dick::Xwin dick:0

sparc=1:sparcipc:dick::Xwin dick:0

sparc - demo=1:sparcipc:demo::Xwin dick:0

xbiff=17:198.211.81.91:dick::xbiff -geo 150x80-0-0 -display $DISPLAY &

[xhosts]

+vax.starnet.com


Will not start - screen blanks

This can happen when running unders Windows 3.1 or WFW 3.11 and Win32s has not been installed.  Check to see if Win32s is installed.  Check the file \windows\system\win32s.ini.  If it does not exist or the version is 1.15 or less, then the current version of Win32 will need to be installed.

Win32s is available from Microsoft at ftp.microsoft.com in /Softlib/MSLFILES.  Check the INDEX file in /Softlib for the filename of the current version of Win32s.


Show Messages

The Messages window will show informational messages from X-Win32 and from a remote host.  Rsh and rexec commands can be created and executed immediately.  They can be used to verify the X connection and for informational purposes.

If any of the debugging selections are enabled, they will be shown here during the execution of X-Win32.

The current version of X-Win32 will be displayed each time X-Win32 is reset.

Rsh...

Rexec...

Debugging


Hanging of X server

The user may encounter cases where the X server hangs.  If running under Windows 3.1 or WFW 3.11, try turning off the Async Interface option using X-Util.

Hanging of the X server has only been observed using older versions of Novell's tcp/ip winsock implementation.  Report any other occurrances of hanging to support@starnet.com.


Resources...

The user will be able to select a level of GDI resources to be maintained for X-Win32 and other MS Windows applications.  The user may see the current amount of free resources by placing the cursor in the gray area of the X-Util window and pressing the left mouse button.  The GDI resources is the most critical of the two values.

Windows 3.1 and WFW 3.11 have a limited amount of GDI resources available to all applications.  X-Win32 uses GDI resources for pixmaps, regions, pens, and brushes.  X-Win32 will try to maintain the selected level of free resources.  Setting this value too high will cause X-Win32 to run slower.  The best setting should be 30%.

Controls

Slidebar

Select a range from 0% to 50%.

OK

Exit and save current setting.

Cancel

Exit without saving the current setting.


Clipboard

The clipboard has three options Auto Copy, Manual Copy, and MS Clipboard owns selection.  The desired X-Selection (primary, secondary, or  "x" clipboard) can also be set.

Auto Copy

Default mode, text highlighted will be automatically copied to the MS Windows clipboard and the selected X-Selection.

Manual Copy

Turning this selection on will disable auto copying of highlighted text to the MS Windows Clipboard.  The user will be required to use the Copy X Selection on the X-Win32 pop-up menu to manually copy highlighted text.  Highlighted text may still be copied/pasted from one X app to itself or another.

Some clients, such as mathematica will require that this entry be selected.

MS Clipboard owns selection

Highlighted text will be automatically copied to the MS Windows Clipboard.  MS Windows will then own the selection.  The highlighting of text will be turned off.

X-Selection

This defines which selection will be bound to the MS Clipboard.  The X selections can be primary, secondary, or (x) clipboard.  These selections are atoms, which is a generic term for an element of information in the X Window System.


Sessions

All of the saved sessions will have a name.  The sessions will be either rsh, rexec, or XDMCP.  Sessions may be set to auto-startup.  Multiple rsh/rexec sessions may be set to auto-startup.  If an XDMCP session has been set to auto-startup, it will be the only auto-startup session.  XDMCP sessions may also be set to Auto-Restart.

Multiple rsh/rexec sessions may be started.  If the user wishes to start an XDMCP session while any rsh/rexec sessions are running, X-Win32 will query the user about shutting down these sessions prior to starting the XDMCP session.

Reference X-Utility Operations for creating these sessions.


Copy X Selection

The X Selection can be copied to either the MS Clipboard, the configured Printer, or to a File.


Page Setup...

The user can do a page setup on the default printer.  If a default printer has not been selected, then use Print Manager to install and select a default printer.


Reset

X-Win32 will shutdown all X connections (clients) and reset.  X-Util settings will not be changed.


Close

X-Win32 will close all X connections (clients) and terminate.


XU-Mouse
Mouse

3-Button simulation

Pressing the left and right mouse buttons simultaneously will cause simulation of the middle mouse button.

Panning

The panning option will allow a selected window that is partially off-screen to be panned on-screen.  Moving the cursor to the edge of the screen in the selected X window activates the panning.

Dragging

Win95 and NT can be configured to either show the "entire window" or a "frame outline" when dragging a window.  If the "entire window" is selected, X-Win32 has the option of updating the screen continuously or not.  When dragging is turned "on" (checked), X-Win32 will continuously update the screen.  When dragging is turned "off" a trail will be left behind as the window is dragged.


XU-Access Control
Access Control

X-Win32 can notify the user when a connection is being attempted.  Access control must be turned on and the name or ip address of the node running the client must not be in the Xhost... table.

When Access Control is turned on, a pop-up window will show the user the host name and ip address of the client attempting to make a connection.

If "Accept" is chosen, the connection will be made.

If "Refuse" is chosen the connection will be refused and the message in the "Error message to be sent to client." field will be sent to that client.  That message may be edited to send added information.


XU-BackingStore
BackingStore

Off

Backingstore will not be enabled.

Always on

Backingstore will be on for all windows.  This option is very useful for those running over a slow connection (like a 28.8KBS modem).

When requested

Backinstore will be on for those X clients that request it.

Backingstore maintains the contents of a window off-screen.


XDMCP

This method will normally be the most convenient for many users.  It will set up the desired X environment.  The XDMCP files are setup and maintained by the System Administrator.  This mode will come closest to giving you the same desktop that is displayed on that host.

If XDMCP is to be used, X-Win32 normally must be run in Single Window Mode.  It is possible to run XDMCP not in Single Window Mode, but usually that requires an .xsession file in the users home directory that will not start a remote window manager.

Single Window Mode may be used when rsh or rexec, however the user will have to manually start the remote window manager.  This may involve just issuing a command from an existing xterm or the execution of a script file in the users home directory.

Use "broadcast" to test for XDMCP

The easiest way to run X-Win32 and have your environmnet setup is by using XDMCP.  XDMCP may not be running from any host or the desired host on your net.  Most Sun Sparc networks do not run XDMCP.

The easiest way to test for XDMCP is to select X-Win32...Sessions...XDMCP broadcast.  This will bring up a Selector Window if any hosts are running XDMCP within the limits of a broadcast.  If your desired host is listed in that window, you will should be able to use XDMCP.  Having run this test in Multiple Window Mode, you should select Cancel to stop it.  If you fill in the Login and Password in Multiple Window Mode, the XDMCP login window will disappear and nothing else will happen.  You may get a message in the Messages window stating "there may be another window manager already running".  It is possible to run XDMCP in Multiple Window Mode, but you will have to change the Xsessions (or local .xsession) file to not start a remote window manager.

Use X-Util to select Single Window Mode

Then use X-Util...Options...Window Mode to select Single Window Mode.  Then run the test again, this time selecting the desired host.  The XDMCP broadcast Session selection will be done from the top left controls on the Single Window.  Once selected, you will again see the Selector Window.  After selecting the desired host, an XDMCP login window should appear in the middle of the Single Window.  Once that is properly filled in, XDMCP should setup your X environment.

Use XDMCP query if your remote host is on a different subnet

If the desired host does not appear in the Selector Window, it may be because either it is not running XDMCP or is not on the same net.  You may want to use X-Util to create an XDMCP Query session.  If the host is not on your net, this mode should contact it.  If it is not running XDMCP, nothing will happen.  You will have to use one of the other modes to contact that host.


rsh - rexec

Rexec is "remote exec".  Rsh is "remote shell".  Either can be used to start X clients or to execute script files on the remote host.  If the X client or script file is not in the users home directory, the full path to it must be used.

Rsh or Rexec can be executed by:

1. Selecting a Session from the session portion of the X-Win32 menu.  These sessions are created and edited using X-Util.

2. Manually entering the command from the Messages Window option.  This session will be valid only for the current running of X-Win32.  Data in its fields will be lost when X-Win32 is shutdown.

Manual (interactive) Rexec and Rsh

 - From X-Win32, select Show Messages.  The Messages window displays messages from X-Win32 or a remote host.

 - From the Messages window's controls, select Rexec...  This will bring up a window requiring data for Host, Login, Password, and Command.

Fill in the Host, Login, and Password fields for your remote host. For the Command, start with something simple that will give output into the Messages window like "ls -al" or "who" or "ps".

If you do get output into the Messages window from those commands, then you have an X connection.  In most all cases that X connection will be good enough to open any X clients.  There may be cases when running SLIP/PPP that require the pc's tcp/ip stack's mtu setting to be modified.

X-Win32 provides two variables for getting and using the name or ip address of the pc from the local tcp/ip stack.  Those are:

        $DISPLAY        gets the name of the pc with a ":0" appended

        $MYIP           gets the ip address of the pc

In the Command field, try the following commands:

        echo $DISPLAY

and then

        echo $MYIP

They should give the name and ip address of your pc as far as the net is concerned.  If you do not agree with the data returned, check with your network administrator.

Once a good X connection is verified, an xterm should be opened to get things going.  The form of the xterm command is:

Sun:    /usr/openwin/bin/xterm -ls -display $MYIP:0 &

unix:   /usr/bin/X11/xterm -ls -display $MYIP:0 &

All of the above can be done by selecting Rsh...  Rsh does not require a password.  Rsh does require verification by having an entry in the users home directory in .rhosts or in the system-wide /etc/hosts.equiv.

Note: For Win95 and NT systems, an entry in .rhosts or /etc/hosts.equiv will need to have the Win95 or NT net login string (in lower case).

If in attempting Rexec... or Rsh... , a message like "Connection Closed" is returned, then rexec or rsh may not be enabled on that host.  Contact the system administrator for that host.

Once an xterm has been created, that same Host, Login, and Command data may be used in X-Util to create a saved Session which can be selected from the X-Win32 icon (or task bar).


remote login

A remote login, such as telnet, may be used to start an X session.

The form of the command to start an xterm would be:

        xterm -ls -display xxxxxxx:0 &

where "xxxxxxx" is the name or ip address of your pc.


Network Polling

X-Win32 can interface to the winsock tcp/ip stack in two different modes.  Those modes are Async and Polling.  The default mode is Async Winsock.

If hanging of the X-Win32 server is experienced, changing this mode  may help.  Polling mode should only be used under Windows 3.1 or WFW 3.11.

Async (this option turned off - default)

X-Win32 will wait for a message from the winsock before attempting to read from the network.  This is the default mode.

Polling

X-Win32 continusously polls the winsock.  This mode has been found to be the most stable under Novell's LanWorkplace.  This mode is not recommended if running NT or Win95.


Display

The current IP address window will show the locally configured IP addresses.  Normally there will be only one entry in this field and that will be for the ethernet card connected to the local network.  There may be multiple ethernet cards and dial-up's configured.  There will be an entry for each ethernet card and an for any dial-up configured.

Valid entries in the "Display setting for X" field are of the form:

     192.1.2.3:0

     $1:0

Where "192.1.2.3:0" is the actual IP address to be used.  The "$1:0" is an index into the "Current IP Addresses" list.  If the IP address is dynamically assigned, then use the index.  If one of the entries is selected, the index of that selection will be automatically used.

This field can also be used to set a designated ip address needed for programs like SLIrP.


Glossary

.bdf

.pcf

.snf

.spd

B

bootp

C

chmod

chown

D

display=

F

fontpath

fonts.ali

fonts.dir

S

Selection

Single Window Mode

X

XDMCP


.bdf

Bitmap distribution Format.  They are ascii files which can be edited with a normal text editor.


.pcf

Portable Compiled Font.  The pcf format is host byte order independent.  It is the default for MIT Release 5.


.snf

Server Natural Format.  Used by mot MIT servers in Releases 2 thru 4.  Fonts are stored in a binary file and are host byte order dependent.


.spd

Speedo-Bitstream.  These are commercial-quality outline fonts donated to the X Consortium by Bitstream Inc.


bootp

Bootp can be set up to tell the X server its ip address, subnet mask and  name server host.


chmod

chmod [option] mode files

Change the access mode of one or more files.  Only the owner of a file or a privileged user may change its mode.


chown

chown [options] newowner files

Change the ownership of one or more files to newowner.


display=

The X Window system allows more than 1 X server, also called a display, to run on one machine (IP address).  To distinguish between different X servers (displays) on the same IP address, different TCP ports are used starting with 6000.  Display 0 listens on TCP port 6000, display 1 listens on port 6001, diplay 2 listens on port 6002, and so on.

The "DISPLAY" parameter to an X client tells it to which port to connect.  The display number is the first number to the right of the colon(:).

X-Win32 can be configured to serave as any display number.  The display number is specified in the XWIN32.INI file as "display=n" where n is the dislay number, which defaults to 0.  X-Win32 can only be run once per PC serving as only one display at a time.


fontpath

The fontpath is a list of directories in which the server looks for fonts.


fonts.ali

A font subdirectory can contain a file called fonts.ali, which contains aliases for font names.


fonts.dir

The fonts.dir file maps the name of the requested font to the filename of the font as it is stored in the filesystem.


Selection

A selection can be thought of as an element of information that can be transferered.


Single Window Mode

The Single Window Mode (sometimes referred to as the Virtual Root) will allow the use of a remote window manager such as olwm, mwm, twm, HP-Vue, or ...

If the Width and Height were not entered, X-Win will create a window approximately the size of the screen.


XDMCP

X-Win uses the standard protocol specified by the X Consortium for use with X servers, the X Display Manager Control Protocol, or XDMCP.

XDMCP is used by X servers to control the xdm program on a host network.  The xdm program is an X client that manages the first and last points of connection, control, and coordination of the user session.  The X server sends a request to the xdm host, the host and the X server send a few XDMCP messages between themselves, and then the xdm program brings up a login window on the X server.

XDMCP is a part of rev. 4 (and later) of X Windows version 11.