Previous | Contents | Index |
Specifies that this proxy server is allowed to initialize even when it cannot open all transport sockets specified by the /TRANSPORT qualifier. These transport sockets are used to receive client requests. Note that if the proxy server detects that one of the sockets is in use by another task, the server fails to initialize with the server number in use, and the next server number is tried (as discussed in the description of the /SERVER qualifier).
/RGB=file-specification
Specifies the file describing the color name to RGB resolution in this proxy server. This qualifier cannot be specified if the NORGB option is specified for the /OPTION qualifier.
The default is /RGB=SYS$MANAGER:DECW$RGB.DAT.
/SERVER=server-number
Specifies the server number to assign to this proxy server. Specify an integer from 0 to 63.
The proxy server first attempts to initialize using the specified server number. If an active server is already using the specified number, the proxy server tries the next lower number. This process is repeated until an unused server number is found or until the proxy server tries the number 0 and fails. If the number 0 fails and the number specified was not 63, the server number wraps and attempts are tried starting with the number 63. The process continues until all numbers have been tried. If all numbers are in use, the proxy server fails to initialize and terminates.
For managed proxy servers, the search for a free server number always starts at 63; any number specified by this qualifier is ignored.
A standalone server started as a subprocess always prints out the server number used on SYS$ERROR. For standalone proxy servers that are detached processes, use the /FIXED_SERVER qualifier to force the server to use the specified server number or fail. Otherwise, there is no method to determine the server number actually used by the server.
/TAGCACHE=cache-size
Specifies the size of this proxy server's tag cache (in bytes). Specify the value 0 to disable tag caching.
The default is /TAGCACHE=1048576 (2*20).
/TRANSPORTS="transport-string"
Specifies the transports that this proxy server monitors for incoming client requests. If the /PARTIAL qualifier is not used, all transports specified by this qualifier must initialize successfully or the proxy server fails to initialize with the server number in use and the next server number is tried, as discussed in the description of the /SERVER qualifier.
The default is /TRANSPORTS="LOCAL,DECNET,TCPIP".
/ZLEVEL=compression-level
Specifies the Zlib compression level used for stream compression. Specify an integer from 1 (least compression) to 9 (most compression).
The default is /ZLEVEL=6.
2.7.1.3 Stopping LBX Proxy Servers
You can stop LBX proxy servers either automatically or manually.
Stopping Servers Automatically
To stop an LBX proxy server automatically, use the /ONEXIT=TERMINATE qualifier when you start the server. For standalone proxy servers, specify this qualifier either on the LBXPROXY command line or in the lbxproxy-qualifiers parameter of the SYS$MANAGER:DECW$LBXPROXY command procedure.
For managed servers, specify this qualifier in the parameters argument in the LBX service definition in the proxy manager's configuration file.
If not already terminated, all managed proxy servers automatically terminate when their proxy manager is terminated. |
To stop an LBX proxy server manually, use the DCL STOP command.
2.7.2 Proxy Manager
The proxy manager handles connection requests between client
applications, the proxy server, and X server in managed configurations.
The following sections describe how to configure and start the proxy
manager.
2.7.2.1 The Proxy Manager Configuration File
The proxy manager configuration file contains the information that the proxy manager needs to be able to locate proxy services. Each line in the configuration file can contain one of the following:
service-name MANAGED COMMAND command-file [parameters] |
where:
service-name | Specifies the name of the managed service. The service name is case-insensitive. If the file contains multiple entries with the same service name, only the first occurrence has any effect. For the LBX service, the service name must be LBX. Service names must use characters in the X Portable Character Set with the exception of the Space, Tab, and Newline characters. |
command-file | Specifies the name of the command procedure that the proxy manager should invoke to create a new instance of a proxy server for this service. For the LBX service, this argument is usually SYS$MANAGER:DECW$LBXPROXY_SUB.COM. |
parameters | Specifies any parameters to pass to the command procedure specified in the command-file argument. All characters following the space after the command-file argument are passed as parameters to the command procedure. For the LBX service, the command procedure expects one quoted parameter: one or more command qualifiers. |
service-name UNMANAGED address |
where:
service-name | Specifies the name of the unmanaged service. The service name is case-insensitive. If the file contains multiple entries with the same service name, the manager tries each entry in order until an active and available proxy server is found. Service names must use characters in the X Portable Character Set with the exception of the Space, Tab, and Newline characters. |
address | Specifies the address of the proxy server in Inter-Client Exchange (ICE) format. |
You can configure the proxy manager to start automatically when DECwindows Motif starts or manually at a later time.
Starting at DECwindows Motif Startup
To start the proxy manager at DECwindows Motif startup, either edit the existing SYS$MANAGER:DECW$PRIVATE_APPS_SETUP.COM file or copy the SYS$MANAGER:DECW$PRIVATE_APPS_SETUP.TEMPLATE file to SYS$MANAGER:DECW$PRIVATE_APPS_SETUP.COM and edit the newly created file. For more information, see the section in the Managing DECwindows Motif for OpenVMS Systems manual that describes how to customize the Session Manager environment.
The DECW$PRIVATE_APPS_SETUP.TEMPLATE file contains global symbols that are used to control the behavior of a DECwindows session and its applications. Table 2-3 describes the symbols present in this file that control the proxy manager.
Symbol | Description |
---|---|
DECW$PROXY_MANAGER_CONFIG | Specifies the name of the proxy manager's configuration file. The definition of this symbol causes the DECwindows startup process to start the proxy manager. The file name specified by this symbol overrides any configuration file specified in the DECW$PROXY_MANAGER_OPTIONS symbol. A default configuration file, SYS$MANAGER:DECW$LBXPROXY.DECW$PMCFG, is provided at installation time. This file has a single service entry for the LBX service. |
DECW$PROXY_MANAGER_LOG | Specifies the name of the file that the proxy manager should use to log events. If the proxy manager starts and this symbol is undefined, the default log file is SYS$MANAGER:DECW$PROXYMANAGER.LOG. |
DECW$PROXY_MANAGER_OPTIONS | Specifies any qualifiers that should be included on the XPROXYMANAGER command when the proxy manager is started. Note that the configuration file specified by the DECW$PROXY_MANAGER_CONFIG symbol always has precedence over any value specified by this symbol. |
DECW$PROXY_MANAGER_QUOTAS | Specifies any qualifiers to include on the RUN command line used to start the proxy manager. |
If you restart DECwindows Motif while a proxy manager process is running, the proxy manager does not restart automatically. To ensure that the proxy manager restarts (with any associated options) during DECwindows startup, stop the proxy manager process prior to restarting DECwindows, as described in Section 2.7.2.4. Also note that when restarting the proxy manager as part of DECwindows startup, the owner of the proxy manager process is the user who issues the DECwindows Motif startup command. If DECwindows is started as part of system startup, the owner is the SYSTEM account. If DECwindows is started from another account, verify that the owner of that account has been granted access to the X display server. |
To start the proxy manager manually, use the XPROXYMANAGER command:
XPROXYMANAGER [qualifiers] |
For example, to start a proxy manager using the configuration file SYS$MANAGER:DECW$LBXPROXY.DECW$PMCFG and the log file SYS$MANAGER:DECW$PM.LOG, use the following command:
$ XPROXYMANAGER/CONFIGURATION_FILE=SYS$MANAGER:DECW$LBXPROXY.DECW$PMCFG - _$ /LOG=SYS$MANAGER:DECW$PM.LOG |
Enter XPROXYMANAGER command qualifiers in the same manner as you would for any other DCL command. For proxy managers started at DECwindows startup, you can specify these qualifiers in the definition of the DECW$PROXY_MANAGER_OPTIONS symbol.
/CONFIGURATION_FILE=file-specification
Specifies the configuration file that the proxy manager should use to define the available proxy services.
The default is SYS$LOGIN:DECW$XPROXYMANAGER.DECW$PMCFG.
/LOG=file-specification
/NOLOG
Specifies the log file that the proxy manager should use to log errors. The proxy manager uses this file to record each request for a proxy server. The default is /NOLOG. If the /VERBOSE qualifier is specified, the default is /LOG. If /LOG is specified without a value, the output is sent to SYS$ERROR by default.
If an incomplete specification is entered, the following directory specification is used to complete the command:
SYS$SYSDEVICE:[]DECW$XPROXYMANAGER.LOG |
/PORT=integer
Specifies the port number that this server monitors for incoming requests. For the TCP/IP transport, this qualifier specifies an IP port number from the port number space shared by all users of TCP/IP. For the DECnet and Local transports, this qualifier specifies a number that is used to create a unique resource name from the name space of all users of the Inter-Client Exchange (ICE) protocol. Specify a value from 1 to 16383.
The default port number is 6500.
/TRANSPORT="transport-string"
Specifies the transports which this proxy manager monitors for incoming client requests.
The default is /TRANSPORT="LOCAL,DECNET,TCPIP".
/VERBOSE
/NOVERBOSE
Specifies whether the proxy manager should log each proxy request to the proxy manager log file, in addition to error messages.
If the /LOG qualifier is specified, the default is /VERBOSE. If the
/LOG qualifier is not specified, the default is /NOVERBOSE.
2.7.2.4 Stopping a Proxy Manager
To stop a proxy manager, you must use the DCL STOP command. The STOP/EXIT=USER_MODE option (new to OpenVMS Alpha Version 7.3-1) is recommended.
Stopping the proxy manager also stops all managed proxy servers
controlled by the proxy manager.
2.7.3 Authentication in an LBX Environment
When the proxy server connects to an X server, the proxy server undergoes authentication in the same manner as a client. How the proxy server obtains its authentication information depends on the type of proxy server.
A managed proxy server obtains its authentication information from the proxy manager. The proxy manager in turn receives the authentication information from the client. The client's default authentication information is contained in the client's X authority file. The client can control which X authority file is used by using the /XAUTHORITY qualifier to the SET DISPLAY command. The client can supply explicit authentication information on the SET DISPLAY command using the /LBXAUTHENTICATE and /LBXDATA qualifiers. The client also has the option of using the /NOLBXAUTHENTICATE qualifier to specify that the authentication information come from the proxy server's current X authority file. For more information about the SET DISPLAY command qualifiers for LBX, see Section 1.1.1.
A standalone proxy server obtains its authentication information from the information present in the current X authority file.
Clients connecting to an X server through an LBX proxy server must have a valid entry for the proxy server in the client X authority file. If the associated entry contains a generated, untrusted cookie, access to the X server is only granted for the initial proxy server connection. Subsequent client connections cannot use the same cookie to gain access to the X server. |
This chapter describes new features relating to system and application programming in the HP DECwindows Motif for HP OpenVMS Alpha Version 1.3 environment. The features described in this chapter include new extensions, libraries, and functions available with the standard X11R6.6 implementation as well as those that are specific to the DECwindows Motif environment.
For information on how to program X Window System applications, see the
X Window System and X Window System Toolkit
(Scheifler and Gettys) series of manuals published by
Butterworth-Heinemann.
3.1 Multithreading Support
HP DECwindows Motif for HP OpenVMS Alpha Version 1.3 adds support for multithreaded client applications. Client applications that use the Compaq POSIX Threads Library or Compaq Ada tasks are now fully supported in the HP DECwindows Motif for HP OpenVMS Alpha Version 1.3 environment.
Additionally, each of the following libraries are now fully thread-safe, supporting simultaneous calls from multiple threads:
Client applications linked against previous versions of DECwindows Motif are binary compatible with HP DECwindows Motif for HP OpenVMS Alpha Version 1.3, with the exception of those applications that use any changed or retired Xlib entry points documented in this manual as well as the hp DECwindows Motif for hp OpenVMS Alpha Release Notes.
An existing client application requires recompilation against the X11R6.6-compatible X Window libraries if the application:
HP discourages the use of XSelectAsyncEvent and XSelectAsyncInput since they are non-standard functions. The equivalent functionality can be obtained by using threaded Xlib functions. |
DECwindows Motif has always supported calls from user mode Asynchronous
System Trap (AST) handlers as well as from normal user mode. With
HP DECwindows Motif for HP OpenVMS Alpha Version 1.3, any application that enables support for multiple
threads can no longer make calls to most X Window libraries from AST
handlers, even when concurrent calls are restricted. The only supported
exception is XtNoticeSignal, which can be called from AST handlers.
3.1.2 Levels of Thread Safety and Concurrency
New and existing DECwindows Motif shared images can be grouped according to the following levels of thread safety:
Table 3-1 shows the current thread safety level for each of the DECwindows Motif shared images. Note that all images in the Translated Image Environment are thread-unsafe.
Image | Level of Thread Safety |
---|---|
DECW$AILSHR.EXE | unsafe |
DECW$AILSHRR5.EXE | unsafe |
DECW$BKRSHR.EXE | aware |
DECW$BKRSHR12.EXE | aware |
DECW$D2DXLIBSHR.EXE | aware |
DECW$DWTLIBSHR.EXE | aware |
DECW$DXMLIBSHR.EXE | aware |
DECW$DXMLIBSHR12.EXE | aware |
DECW$ICELIB.EXE | safe |
DECW$LCNLIBSHR.EXE | safe |
DECW$MAILSHR.EXE | unsafe |
DECW$MAILSHR12.EXE | unsafe |
DECW$MRMLIBSHR12.EXE | aware |
DECW$PRINTWGTSHR.EXE | aware |
DECW$SMSHR.EXE | safe |
DECW$TERMINALSHR.EXE | aware |
DECW$TERMINALSHR12.EXE | aware |
DECW$XEXTLIBSHR.EXE | safe |
DECW$XLIBSHR.EXE | safe |
DECW$XMLIBSHR.EXE | aware |
DECW$XMLIBSHR12.EXE | aware |
DECW$XMULIBSHR.EXE | aware |
DECW$XMULIBSHRR5.EXE | aware |
DECW$XTLIBSHRR5.EXE | safe |
DECW$XTRAPLIBSHR.EXE | aware |
DECW$XTRAPLIBSHRR5.EXE | aware |
DECW$XTSHR.EXE | aware |
In addition to thread safety, HP DECwindows Motif for HP OpenVMS Alpha Version 1.3 libraries offer varying levels of concurrency when called from multiple threads:
Previous | Next | Contents | Index |