Digi International Inc. Release Notes 93000349 A RealPort for DG/UX (r) System Release R4.20 for Intel Release 1.0 09/24/1999 Software P/N 40002056 A Software Manual P/N 92000368 A Release Notes P/N 93000349 A Copyright (c) 1988-1999, Digi International Inc. All rights reserved. DG/UX is a registered trademark of Data General Corporation. 1. Enhancements and Bug Fixes. Release 1.0: - This is the first production release of the RealPort driver for DG/UX (r) System Release R4.20 for Intel. - The scripts realport_install and realport_uninstall have been added to simplify the install and uninstall processes. - Errors when changing run levels have been fixed. - The devlinktable can optionally be used to generate short device names. This requires a patch to DG/UX R4.20 MU04 to fix a problem with chk.devlink. Without the patch the driver generates short device names in the rc script by default. - A man page for stty-ncxa has been added. - The command name ditty is now a synonym for stty-ncxa. - The ncxd daemon now accepts IP addresses in dotted decimal notation, even if the address cannot be found through DNS, yp, or in /etc/hosts. - A copy of the manual in PDF format has been added; it is /usr/opt/realport/doc/manual.pdf. This is a pre-release copy of the DG/UX RealPort manual. Release 1.0 beta 1: - This is the first beta release of the RealPort driver for DG/UX (r) System Release R4.20 for Intel. - This driver is a port of the RealPort driver for AIX 4.x, Release 3.1.0. It has essentially the same features as the AIX driver, though configuration and installation are completely different. 2. Known Limitations. - Unlike built in com ports, the RealPorts retain stty parameters, like baud rate and window size, when closed and reopened. - Normally, cu is able to connect to a modem without a carrier signal if the Devices file has a ",M" at the end of the line field for the modem port. This does not work with RealPorts; you must first use "stty-ncxa forcedcd ttyNN" on the port in order for cu to connect to a modem without carrier present. 3. Comments. - PortServer ports used exclusively for RealPort use should be configured as type "dev=prn" see the PortServer documentation for more information on this. 4. Basic Installation. - More detailed instructions are given in the Driver Installation and Configuration section in the notes below. - Install and configure the PortServers. See the documentation that came with the PortServer hardware. - Specify hostnames for the PortServers using sysadm Networking-->TCP/IP-->Databases-->Hosts-->Add. - You will have either a tar distribution, 40002056_A.tar, or a dd distribution, 40002056_A.dd, or the RealPort CD. The installation is slightly different depending on the type of distribution you have. - If you have a tar distribution, extract the files on your DG/UX system using the command tar xf 40002056_A.tar Install this distribution using sysadm Software-->Package-->Install. For the release medium, given the full path of the directory where the distribution was extracted, /.../realport_DGUX_1.0. - If you have a dd distribution, copy the file 40002056_A.dd to a 1.44M floppy. Insert the floppy in the drive on your DG/UX system and mount it using the commands mkdir /tmp/floppy mount /dev/pdsk/0 /tmp/floppy Install this distribution using sysadm Software-->Package-->Install. For the release medium use /tmp/floppy. - If you have the RealPort CD, follow the installation instructions that came with the CD. The rest of the installation is the same for any distribution type. - Edit /etc/realport.conf so it contains one "server" line for each PortServer, giving the PortServer server id number, its hostname or Internet address, and the number of ports it has. See the comments in /etc/realport.conf or below for more information. - Run /usr/sbin/realport_install with the system name as an argument; for example, "realport_install aviion". This will rebuild the kernel with RealPort driver installed. - Reboot (sysadm System-->Kernel-->Reboot). - The RealPorts are now available as /dev/ttyNN, where NN begins counting after the last built in serial port. - You can use sysadm to configure ports; choose Device-->Ports-->Terminal to configure terminal ports, Networking-->UUCP-->Devices-->Add to configure ports for cu, Device-->Printer-->Devices to configure printer ports, or Device-->Ports-->Port Monitor and Device-->Ports-->Port Service to configure modem ports. - More information on configuring the ports can be found in these release notes, in the manual /usr/opt/realport/doc/manual.pdf, or in the DG/UX user documentation on the documentation CD that came with your system. See "Setting Up and Managing Terminals on the DG/UX System", "Installing and Managing Printers on the DG/UX System", and "Managing Modems and UUCP on the DG/UX System". 5. Getting Technical Support. - Read these release notes, the relevant DG/UX documentation, or the DG/UX RealPort manual in /usr/opt/realport/doc/manual.pdf. The RealPort manual has a trouble shooting section which might be helpful. - Call Digi Technical Support at (612) 912-3456. SUMMARY ======= The Digi DG/UX RealPort (ncxa) driver makes the ports on a Digi PortServer appear as though they are local DG/UX tty devices directly attached to the computer. When the DG/UX system boots, one ncxd daemon is spawned for each PortServer. Each daemon makes a single TCP/IP connection to its associated PortServer and sends all asynchronous serial data on this single connection. The daemon accesses the RealPort driver through a special network device. These devices are found in the "/dev/async/net" directory. These are privileged, exclusive access devices used only by the daemon. PortServer ports can be accessed any time they are configured for RealPort operations and are not otherwise in use. DG/UX assigns short device names in the form "/dev/ttyNN", where NN is a number that begins counting after the last built in serial port number and counts up from there. Optional short names of the form "/dev/tty-SERVER-PORT" can also be generated. Transparent print devices have long names in "/dev/async/prn" and optional short names of the form "/dev/tty-SERVER-PORTp". See the section on Device Names below for more details. The ports will not operate unless carrier (DCD) is present. The stty-ncxa command may be used to change this with the "forcedcd" option. The tty and transparent print ports may be open at the same time. Data sent to the tty port goes out the port without modification, while data sent to the transparent print port is bracketed with printer-on and printer-off sequences before output. The stty-ncxa command can set the on-off sequences and adjust the print speed. The tty port receives all input data; reads from the print device always fail. PORTSERVER SETUP ================ The Digi PortServers are full featured terminal and communication servers whose configuration is detailed in the PortServer Manual. We note here the minimum needed for RealPort operation. First you must login as root on the PortServer. You can connect a 9600 baud 8N1 terminal to port 1, or (if you obtained an IP address through RARP or BOOTP) you can telnet to the box. The factory default root password is "dbps". If you have forgotten the root password or the IP address follow the instructions for running hardware diagnostics in the PortServer II Configuration and Administration guide, then choose "Configure boot" from the menu. Basic IP parameters must be set up before the PortServer will operate on the network. If you have not done this with RARP or BOOTP, you must do it from the command line. Substitute your own IP address, net mask and (optionally) gateway address into the following PortServer command: set config ip=192.168.0.1 submask=255.255.255.0 gateway=192.168.0.254 The RealPort driver works best if you configure associated PortServer devices as printers. It works VERY POORLY if the devices are configured as terminals, for example. The following command sets up ports 1-16 as device type prn (printer). set port range=1-16 dev=prn If 8-pin RJ-45 plugs are used in the PortServer, the altpin option should be selected to make DCD available on one of the inner pins. The following command sets altpin on 16 ports. set flow range=1-16 altpin=on You can check the current configuration with: set config set flow range=1-16 set port range=1-16 If you want to refer to the PortServers by a hostname rather than an Internet address in dotted decimal format, use "sysadm" to add hostnames for your PortServers by choosing Networking-->TCP/IP -->Databases-->Hosts-->Add. DRIVER INSTALLATION AND CONFIGURATION ===================================== You will have either a tar distribution, 40002056_A.tar, or a dd distribution, 40002056_A.dd, or the RealPort CD. The installation is slightly different depending on the type of distribution you have. If you have a tar distribution, 40002056_A.tar: Copy the distribution file, which will be named 40002056_A.tar, to your system. Extract the files with the command "tar xf 40002056_A.tar". This will create a distribution directory named "realport_DGUX_1.0". Install this distribution using "sysadm", Software-->Package-->Install. When asked for the release medium, give the full pathname of the distribution directory. If you have a dd distribution, 40002056_A.dd: Copy the file 40002056_A.dd to a 1.44M floppy disk. Insert the floppy in the drive on your DG/UX system and mount it using the commands mkdir /tmp/floppy mount /dev/pdsk/0 /tmp/floppy Install this distribution using sysadm, Software-->Package-->Install. For the release medium use /tmp/floppy. If you have the RealPort CD: Follow the installation instruction that came with the CD. The rest of the installation is the same for any distribution type. Edit the file "/etc/realport.conf" and add one server command line for each PortServer you have. The format of the server command is server SERVER SERVER_ADDR [PORT_CNT] [-p TCP_PORT] [-s SPEED] The SERVER is an id number specifying the server (corresponding to the server id in the long device name, see the Device Names section below); normally these numbers start at 0 for the first PortServer and count up. The SERVER_ADDR is the IP address or hostname for the PortServer. The PORT_CNT is the number of ports on the server; if this is omitted it is assumed to be 64 by default, the maximum number of ports possible on a PortServer with extension modules. The TCP_PORT is the TCP port the server is listening on; by default this is 771. The SPEED is a string of 1 to 5 numbers separated by non-digits specifying the fast rate and delay, slow rate and delay, and header size. The "realport.conf" file can also be used to generate short names for the RealPort devices in the form "tty-SERVER-PORT". The command for this is server_port_names [off|on [BASE]] The command "server_port_names on" causes server-port style short names to be generated for the "server" command lines following in the "realport.conf" file, up to the next "server_port_names" command. The "server_port_names on" command can optionally be followed by a BASE number to indicate the number for the first port; successive ports are numbered consecutively. Normally BASE is 0 or 1; it is 0 by default. The "realport.conf" file is read by the RealPort startup and shutdown script "/usr/sbin/init.d/rc.realport" and this script is invoked whenever the run level of the system is changed, for example at boot and shutdown. On startup, the server command links the short server-port style device names (if selected), configures ldterm and ttcompat to be autopushed when a port on the server is opened, and starts the ncxd daemon on the net device for the corresponding PortServer. On shutdown, the server command deconfigures the autopush modules and kills all ncxd daemons. To finish installing the RealPort driver you must run "/usr/sbin/realport_install" to modify the system device file and rebuild the kernel. The "realport_install" command syntax is realport_install [-f CONFIG_FILE] [-b] SYSTEM_NAME The CONFIG_FILE is "/etc/realport.conf" by default, though you can specify a different one on the command line with the -f option. The -b flag can be used to suppress building the kernel but still modify the system device file. The SYSTEM_NAME is the name of the kernel where you want to install the RealPort driver; normally this will be "aviion". The SYSTEM_NAME must refer to an existing kernel; use "sysadm" System-->Kernel-->Config and Build to create a new kernel. The system device file with the RealPort devices added and the system parameters file are retained during the kernel build; the old kernel is saved; and the new kernel is linked to /dgux. If you want more control over the process of rebuilding the kernel, use the -b flag to "realport_install" so it does not build the kernel and then use "sysadm" or "admkernel" to build the kernel according to your needs. The "realport_install" script reads /etc/realport.conf and for each "server" line it adds a device configuration line to the system file, "/var/Build/system.device.SYSTEM_NAME", of the form ncxa(SERVER,PORT_CNT,net) The SERVER and PORT_CNT are the same values used in the "server" commands; however, they are written in hexadecimal here. Finally, you are ready to reboot and start using the RealPorts. To reboot use "sysadm" with choices System-->Kernel-->Reboot. If you later want to add more PortServers, edit the /etc/realport.conf file to reflect the changes, run "realport_install", and reboot. You can now configure RealPorts for logins, printers, and modems the same way you configure the built in serial ports. More details are given below in the sections "Configuring a RealPort for a Terminal", "Configuring a RealPort for a Printer", and "Configuring a RealPort for a Modem". STTY-NCXA PROGRAM ================= The "stty-ncxa" program is a Digi specific version of stty that allows you to access Digi extensions to DG/UX RealPorts. This program is installed as "/usr/bin/stty-ncxa" and as "/usr/bin/ditty". The two names "stty-ncxa" and "ditty" are synonymous. To get documentation on "stty-ncxa" run the command "man stty-ncxa" or equivalently "man ditty". LOOPBACK TEST ============= This test can be used to quickly verify RealPort functionality. - If the port is enabled for logins, disable logins on the port. - Connect the transmit and receive lines on the port; these are pins 2 and 3 of a DB-25 connector or the middle two pins of an RJ-45 connector. You can also use a Digi loopback plug in the port. - Run these commands at a root prompt. This example assumes you are running the test on port /dev/tty17. stty-ncxa forcedcd /dev/tty17 cat < /dev/tty17 & stty-ncxa -echo /dev/tty17 date > /dev/tty17 - The current date and time, the output from the date command, should appear on the screen. - Reset "-forcedcd" on the port with this command. stty-ncxa -forcedcd /dev/tty17 CONFIGURING A REALPORT FOR A TERMINAL ===================================== The following procedure will configure a RealPort device for a terminal. For more information on configuring a serial device for a terminal see "Setting Up and Managing Terminals on the DG/UX System" on the user documentation CD that came with your system. The PortServer and RealPort should be properly installed, configured, and functioning before connecting a terminal. - Connect a proper cable between the port and terminal. The RealPort manual describes cabling. - Set the port to dev=prn on the PortServer by entering a command like this at a PortServer root prompt: set dev port=prn ra=12 This example sets dev=prn for port 12 of a PortServer. If you are using 8-pin RJ-45 cabling from the PortServer to the terminal, set the port to altpin=on by entering a command like this at a PortServer root prompt: set port altpin=on ra=12 This example sets altpin=on for port 12 of a PortServer. - If you want a loss of carrier to terminate the login session, you should use a modem TTY definition entry in the /etc/ttydefs file. These entries begin with the letter M followed by the baud rate. For best results with RealPorts this file should be modified from the standard DG/UX distribution. As root edit /etc/ttydefs and change lines that begin with an M by adding "clocal" just before the second colon in the line and adding "-clocal" just before the third colon. These should be separated by spaces like the other options. For example, here is the M9600 line after editing. M9600: 9600 echo echoe echok kill ^u erase ^? intr ^c hupcl cs8 opost onlcr icrnl cread clocal : 9600 echo echoe echok iexten kill ^u erase ^? intr ^c hupcl icanon cs8 opost icrnl onlcr cread ixon ixoff isig tab3 -clocal ::M9600 - To enable the terminal port in DG/UX, as root run sysadm and select Device-->Port-->Terminal-->Add. Enter the requested information. Choose a modem TTY definition label, like M9600, if you want a loss of carrier to terminate the login session. - You should now be able to login over the terminal. CONFIGURING A REALPORT FOR A PRINTER ==================================== The following procedure will configure a RealPort device for a printer. For more information on configuring a serial device for a printer see "Installing and Managing Printers on the DG/UX System" on the user documentation CD that came with your system. The PortServer and RealPort should be properly installed, configured, and functioning before proceeding. - Connect a proper cable between the port and printer. The RealPort manual describes cabling. - Set the port to dev=prn on the PortServer by entering a command like this at a PortServer root prompt: set dev port=prn ra=12 This example sets dev=prn for port 12 of a PortServer. If you are using 8-pin RJ-45 cabling from the PortServer to the terminal, set the port to altpin=on by entering a command like this at a PortServer root prompt: set port altpin=on ra=12 This example sets altpin=on for port 12 of a PortServer. - From a root prompt run sysadm and choose Device-->Printer-->Devices-->Add. Enter the requested information when prompted. For connection type choose "Local /dev/tty, /dev/lp, or /dev/parallel". Normally you can answer yes to "Quick Add using default values?"; if the default values are not appropriate you can later choose Modify to change the defaults, including stty settings. For device enter /dev/ttyNN corresponding to the serial port connected to your printer. - When you have completed the Add process, the printer should be ready for use. To print a file, use the command lp -d [printer_name] [file_to_print] CONFIGURING A REALPORT FOR A MODEM ================================== This procedure will configure a RealPort device for a Dial-in/Dial-out modem connection. Configuring a device for a modem requires familiarity with both the operating system and the modem being used. While the following procedure is sufficient for most cases, it may be necessary to take additional steps to properly configure your modem or to set up the operating system for a specific application. For more information on configuring a serial device for a modem see "Managing Modems and UUCP on the DG/UX System" and "Setting Up and Managing Terminals on the DG/UX System" on the user documentation CD that came with your system. The PortServer and RealPort should be properly installed, configured and functioning before proceeding. The instructions here assume, as an example, that you are configuring a dial-in and dial-out modem on port 16 of the first PortServer, which corresponds to device /dev/tty17. - Connect a proper cable between the port and modem. The RealPort manual describes cabling. - Set the port to dev=prn on the PortServer by entering a command like this at a PortServer root prompt: set dev port=prn ra=16 This example sets dev=prn for port 16 of a PortServer. If you are using 8-pin RJ-45 cabling from the PortServer to the terminal, set the port to altpin=on by entering a command like this at a PortServer root prompt: set port altpin=on ra=16 This example sets altpin=on for port 12 of a PortServer. - Power the modem on. - You must be logged in as root to perform the following steps. - Run sysadm and choose Networking-->UUCP-->Devices-->Add. When prompted enter the TTY number; for /dev/tty17 this would be 17. When prompted for the "Local modem type?" enter direct. - Edit the file /etc/uucp/Devices. At the end of the file you should find the Direct line for the device you just added. Modify this line by adding a ",M" at the end of the second field, which will be the device name. In our example the line will look like this after editing: Direct tty17,M - 9600 direct - Change the ownership of the device to uucp with the chown command: chown uucp /dev/tty17 - You should now be able to connect to the modem and enter modem commands. Here is an example showing both what you type, and the computer's response. # stty-ncxa forcedcd /dev/tty17 # cu -l tty17 Connected at OK If you do not get the "Connected" message, check the UUCP device configuration above. If you do not see "at" or "OK", check the modem: power it down and back up, try modem commands "ate1", "atq0", and "atq2", or see your modem manual for other suggestions. - Set the modem to answer after the first ring with this command: ats0=1 - Train the modem to the port speed with this command: at&w - Enter any other desired at commands. - Disconnect from the modem by entering a tilde-period: ~. Disconnected # - Restore the -forcedcd setting with the stty-ncxa command: # stty-ncxa -forcedcd /dev/tty17 - Edit the file /etc/ttydefs. On each line that begins with an "M" add "clocal" just before the second colon in the line and add "-clocal" just before the third colon. These should be separated by spaces like the other options. For example, here is the M9600 line after editing. M9600: 9600 echo echoe echok kill ^u erase ^? intr ^c hupcl cs8 opost onlcr icrnl cread clocal : 9600 echo echoe echok iexten kill ^u erase ^? intr ^c hupcl icanon cs8 opost icrnl onlcr cread ixon ixoff isig tab3 -clocal ::M9600 - To configure dial-in logins on the modem port, you must have a port monitor running. You can use an existing port monitor or add a new one. This example assumes that you will add a new one. Run sysadm and choose Device-->Port-->Port Monitor-->Add. Use the defaults (just press enter) for all the prompts except "Port monitor tag" where you will enter a name for the port monitor. In our example we will use "modem" for the name. When this is completed the port monitor should be added to the system. - Now we must add the port service for this port. In sysadm go to Device-->Port-->Port Service-->Add. You will be prompted for several responses; in most cases you can accept the default by pressing enter, except for the following. For the "Controlling port monitor" enter the name of the port monitor, "modem". For the "Port service tag" enter the device name, "tty17". For the "Path name of terminal device" enter the full path of the device, "/dev/tty17". For the "TTY Definition Label" enter a modem definition label, one that starts with an "M" followed by the baud rate; for example, "M9600". For the "Bidirectional?" enter "yes" if you want to use the modem for dial-out or to connect to the modem with cu to send modem commands. When this is completed the port service for this port should be added to the system. You can change any port service settings later with sysadm by choosing Modify in the Port Service menu. - If you want hardware flow control on the port, this can be configured in the /etc/ttydefs file for dial-in, or with stty-ncxa for dial-in and dial-out. For example, stty-ncxa rtspace ctspace /dev/tty17 - The port is now configured for dial-in and (if you answered yes to "Bidirectional?" in the port service configuration) for dial-out use. To dial-out you will need to first run stty-ncxa to set "forcedcd" to connect to the modem: stty-ncxa forcedcd /dev/tty17 When you are done with dial-out, you must reset "-forcedcd": stty-ncxa -forcedcd /dev/tty17 If you forget to reset -forcedcd, logins will not be terminated when the modem drops carrier. UNINSTALL ========= The script "/usr/sbin/realport_uninstall" will remove the installed RealPort files, clean out RealPort configuration information from other DG/UX files, and rebuild the kernel without the RealPort driver. The "realport_uninstall" command syntax is realport_uninstall [-r ROOT_PATH] [-u USR_PATH] [-b] SYSTEM_NAME By default the ROOT_PATH is empty and the USR_PATH is "/usr", though these can be changed by using the "-r" and "-u" options. The "-b" flag can be used to suppress rebuilding the kernel but still remove and clean all other files, including the system device and parameter files. The SYSTEM_NAME should refer to the kernel that has the RealPort driver linked in. Use "realport_uninstall" carefully. It removes everything in "/opt/realport" and "/usr/opt/realport" and all other files installed with the RealPort driver, including all the standard RealPort configuration files that might contain modifications you have made. It also removes RealPort related lines from the system device and parameter files and from the device link table, "/etc/devlinktab". You must reboot after running "realport_uninstall" to remove the RealPort driver from memory. DEVICE NAMES ============ RealPorts use four different sorts of devices: network devices that connect to the PortServers over the Ethernet, monitor devices that can be used to monitor the Ethernet connections to the PortServers, tty devices that represent each serial port on the PortServers and that act like normal Unix serial ports, and transparent print tty devices that are used to print to printers attached to terminals on each PortServer serial port. Normally, you will only use the tty and transparent print devices. The full names of the RealPort devices are of the forms /dev/async/net/ncxa(SERVER,,net) -- network device /dev/async/net/ncxa(SERVER,,mon) -- monitor device /dev/async/line/ncxa(SERVER,PORT,tty) -- tty device /dev/async/prn/ncxa(SERVER,PORT,prn) -- transparent print tty device SERVER is a number that identifies the PortServer hardware; normally server ids are sequential, starting at 0, one for each PortServer. The range of SERVER is from 0 to 499. PORT identifies the serial port on a particular PortServer; it ranges from 0 to 63, since a PortServer II 16 with three PORTS/16em expansion modules, the maximum possible, has 64 serial ports. The SERVER and PORT numbers are written in hexadecimal (base 16), not in decimal; so for example the tty device for serial port 30 on port server 10 would be "/dev/async/line/ncxa(A,1E,tty)". Also, the serial port tty and transparent print device names use port ids that begin at 0, while the serial port numbers printed on the back of the PortServer and expansion module hardware always begin at 1. So, assuming that PortServer 10 from the previous example is a PortServer II 16 with one PORTS/16em expansion module, the serial port corresponding to "ncxa(A,1E,tty)" would be port number 15 on the expansion module. Fortunately, you will rarely have to use these full device names. DG/UX and the realport software create short names for these devices. DG/UX expects serial ports to be named "/dev/ttyNN" where the "NN" are sequential numbers starting from 0. So the first built in serial port is "/dev/tty00", the next "/dev/tty01", and so on. The RealPort tty devices are given names in this form, beginning from the first available number after the built in serial ports. (If you have other serial port devices they might appear in sequence before or after the RealPort serial ports.) For example, if you have two PortServer II 16 servers, the first with one PORTS/16em expansion module and the second without any expansion modules, and just the two built in serial ports, your RealPort short devices names would range from "/dev/tty02" (serial port 1 on the first PortServer) to "/dev/tty49" (serial port 16 on the second PortServer). Serial port 16 on the expansion module would be "/dev/tty33", for example. There are no DG/UX style short names for the transparent print devices. These short names work with the DG/UX systems administration utility "sysadm". An optional naming scheme that is even more straightforward and that gives short names to both tty and transparent print devices is also supported by the RealPort driver. Use of these short names is controlled by the "server_port_names" command in the "/etc/realport.conf" config file, described above in the Configuration section. If the optional server-port device names are used, the tty devices have names of the form "/dev/tty-SERVER-PORT" and the corresponding transparent print device has the same name with a "p" appended. So, for example, "ncxa(A,1E,prn)" would have the short name "/dev/tty-10-30p". The PORT numbers begin a 0 by default, but optionally they can begin at 1; this conveniently matches the port numbers in the device name with the port numbers printed on the back of the PortServer. Unfortunately, these server-port style names will not work with "sysadm", but they can be used with most other Unix software that accepts device names. CXMA DEFAULT FLAGS ================== When a port is opened it is set to certain default stty settings. The Digi RealPorts support extended stty-like settings, the "cxma" settings, and it is possible to configure the RealPort driver to change the default "cxma" flags. To do this, rebuild the kernel with "sysadm" System-->Kernel-->Config and Build and when editing the "system.params..." file set the value of the variable "ncxa_config_cxma_flags". ncxa_config_cxma_flags -- The initial cxma flags for a port. Possible values, which should be ORed together, are listed below. The RTSPACE, DTRPACE, CTSPACE, and DCDPACE flags also control the RTSXOFF, DTRXOFF, CTSXON, and CDXON flags in the initial termiox x_hflag. CXMA flags: CXMA_IXON 0x0001 Handle IXON in the FEP CXMA_FAST 0x0002 Fast baud rates RTSPACE 0x0004 RTS input flow control CTSPACE 0x0008 CTS output flow control DSRPACE 0x0010 DSR output flow control DCDPACE 0x0020 DCD output flow control DTRPACE 0x0040 DTR input flow control CXMA_COOK 0x0080 Cooked processing done in FEP CXMA_FORCEDCD 0x0100 Force carrier CXMA_AIXON 0x0400 Aux flow control in fep The default value for "ncxa_config_cxma_flags" is 0, all flags off. To change this to make CXMA_FAST and CXMA_FORCEDCE the default, for example, add these lines to the "system.params..." file #---------------------------------------------------------------- # NCXA #---------------------------------------------------------------- ncxa_config_cxma_flags 0x0102 ERROR LOGGING ============= The file "/etc/log/init.log" records messages from the "rc.realport" start up script. Normally, each server line in "/etc/realport.conf" will generate messages here about linking short names, establishing autopush modules, and starting the "ncxd" daemon. If there are errors in this process, those error messages will be recorded here as well as displayed on the console. Error messages from the "ncxd" daemon will be sent through "syslog" as "daemon" messages at the "info" level. To record these messages add a line like this to your "/etc/syslog.conf" file daemon.info /var/adm/daemon_info_messages Note that the two fields must be separated by at least one TAB. Then inform "syslogd" that the "syslog.conf" file has changed by sending it the hang-up signal with the command kill -HUP `cat /etc/syslog.pid` Then informational messages from daemons will be recorded in the file "/var/adm/daemon_info_messages". Once done, this will remain through reboots. The RealPort driver itself does not log any debugging information by default, but this can be changed. When debugging is turned on, debugging messages are logged to the "syslog" daemon at the DEBUG level. To record these messages add a line like this to your "/etc/syslog.conf" file kern.debug /var/adm/kernel_debug_messages Then inform "syslogd" by sending the HUP signal and the messages will appear in "/var/adm/kernel_debug_messages", as described above. Then debugging messages from the kernel will be recorded in the file "/var/adm/kernel_debug_messages". Once done, this will remain through reboots. Next you must tell the RealPort driver to generate debugging messages and specify what types of messages you want. This is controlled by five debugging variables in the RealPort driver: ncxa_debug -- Turns debugging on (=1) or off (=0). ncxa_log_level -- Log level for debug messages. The possible values are listed in sys/syslog.h; they range from 0 (emergency message) to 7 (debug message). ncxa_dev_debug -- Flags for debugging various device driver operations. ncxa_net_debug -- Flags for debugging various network operations. ncxa_tty_debug -- Flags for debugging various tty port operations. These flags, which should be ORed together, are listed below. They specify which functions or operations should log debugging messages. Debug flags: NCXA_DEBUG_OPEN 0x00000001 NCXA_DEBUG_CLOSE 0x00000002 NCXA_DEBUG_UWPUT 0x00000004 NCXA_DEBUG_URPUT 0x00000008 NCXA_DEBUG_UWSRV 0x00000010 NCXA_DEBUG_URSRV 0x00000020 NCXA_DEBUG_LWPUT 0x00000040 NCXA_DEBUG_LRPUT 0x00000080 NCXA_DEBUG_LWSRV 0x00000100 NCXA_DEBUG_LRSRV 0x00000200 NCXA_DEBUG_INIT 0x00001000 NCXA_DEBUG_CONFIG 0x00002000 NCXA_DEBUG_DECONFIG 0x00004000 NCXA_DEBUG_NAME_TO_DEV 0x00008000 NCXA_DEBUG_DEV_TO_NAME 0x00010000 NCXA_DEBUG_TIMEOUTS 0x00020000 NCXA_DEBUG_READ 0x00100000 NCXA_DEBUG_WRITE 0x00200000 NCXA_DEBUG_SEND 0x00400000 NCXA_DEBUG_RECV 0x00800000 NCXA_DEBUG_IOCTL 0x01000000 NCXA_DEBUG_MODEM 0x02000000 NCXA_DEBUG_CONTROL 0x04000000 NCXA_DEBUG_MONITOR 0x08000000 Note that "ncxa_debug" must be set to 1 AND some flags in "ncxa_dev_debug", "ncxa_tty_debug", or "ncxa_net_debug" must be set in order for debugging messages to be generated. If "ncxa_debug" is 0, no debugging messages will be generated, regardless of the values of the other debug variables. The default values are to set "ncxa_log_level" to 7 (LOG_DEBUG) and all the other debugging flags to 0 (no debugging messages are generated). You can set the values of these variables either through the "crash" utility, or by editing the system parameters file when rebuilding the kernel. If debugging is turned on using the "crash" utility it will revert to its previous state if the machine is rebooted; if debugging is turned on by editing the system parameters file you must reboot to have the changes take effect, but then debugging will remain through reboots. Here is an example of turning on debugging for tty open, close, and ioctl messages using "crash". # crash /dev/mem /dgux Expr rdb_breakpoint_table: Unknown Symbol Found DG/UX Kernel Debugger --------------------- [Entering crash] [JP0|{invalid}|k0:0]> memread ncxa_debug ncxa_debug : 00000000 [JP0|{invalid}|k0:0]> memwrite ncxa_debug ncxa_debug : 00000000 > 1 [JP0|{invalid}|k0:0]> memread ncxa_debug ncxa_debug : 00000001 [JP0|{invalid}|k0:0]> memread ncxa_tty_debug ncxa_tty_debug : 00000000 [JP0|{invalid}|k0:0]> memwrite ncxa_tty_debug ncxa_tty_debug : 00000000 > 01000003 [JP0|{invalid}|k0:0]> memread ncxa_tty_debug ncxa_tty_debug : 01000003 [JP0|{invalid}|k0:0]> quit These setting will stay in effect until you reboot. The same debugging options can be be set with "sysadm" in System-->Kernel-->Config and Build when editing the "system.params..." file by adding these lines. #---------------------------------------------------------------- # NCXA #---------------------------------------------------------------- ncxa_debug 1 ncxa_tty_debug 0x01000003 You must then reboot for the settings to take effect, and they will then remain in effect through reboots. Once debugging has been turned on in this manner, debugging messages will be logged to the "/var/adm/kernel_debugging_messages" file. Turning on many debugging messages can slow down the system; we suggest just turning on a few relevant messages at a time.