4.4BSD/usr/src/sys/vax/if/ACC/doc/acpconfig.8c

.TH ACPCONFIG 8C "29 July 1989"
.nh
.UC 8C
.ds ]W "4.3 BSD
.SH NAME
acpconfig \- configure ACC's ACP network interface
.SH SYNOPSIS
.B /etc/acpconfig
.I interface
[
.I address
]
[
.I options
]
.SH DESCRIPTION
The
.I acpconfig
program is used to administer an ACC ACP 625, 5100, 5250, 6100, or 6250
network interface front-end processor.
There are numerous options allowing interface configuration,
maintenance of an address translation table,
console debugging/logging control, and status inquiries.
The options are discussed below.

When bringing up an ACP device, the configuration
parameters can be set for
external or internal transmit clock and baud rate,
internal or external loopback, and DTE or DCE mode.
The configuration parameters are described further in the user manual
that accompanies your ACP interface.
For the ACP 5250 and ACP 6250, you may select DDN standard mode,
DDN basic mode, or PDN (Public Data Network) X.25 service.

When the system is brought up,
.I acpconfig
is normally called from /etc/rc.local to
configure the ACP front end and to define its internet address;
it can also be used later to redefine the interface's
internet address or configuration.
.I acpconfig
is also used as part of an installation verification procedure
when the ACP front end and the network interface driver are installed.
Once a parameter is specified, it applies to subsequent commands unless
explicitly changed.
When PDN service is employed,
.I acpconfig
is used to add to, delete from, and read the contents of
an internet-to-X.25 address translation table used by the driver.

The
.I interface
parameter is a string of the form \*(lqname unit\*(rq (e.g., \*(lqdda0\*(rq) 
which corresponds to the interface as it is defined in your system 
configuration file. 
Note that 
.I acpconfig 
is always invoked with the 
.I interface 
parameter.
The interface parameter name is
\*(lqddn\*(rq for ACP 625,
\*(lqdda\*(rq for ACP 5250/6250, and
\*(lqacp\*(rq for ACP 5100/6100.

The
.I address
is either a host name present in the host name database ( see hosts(5) )
or an internet address expressed in internet standard
dot notation (e.g., 1.0.0.3). See INET(3N).

For each of the following options,
white space (ASCII SPACE or TAB characters) is
.I optional
between the \*(lqminus letter\*(rq flag and the following parameter.
For example, \*(lq-b 0\*(rq and \*(lq-b0\*(rq are equivalent.

All acpconfig options are restricted to the super-user except the
-l option, which requires read access to /dev/kmem.

As stated in the DDN X.25 specification, DDN X.25 provides two types
of service: DDN basic X.25 service and DDN standard X.25 service.
DDN standard X.25 service provides only local DTE to local DCE support
of the X.25 connection.
A reliable transport protocol (i.e., TCP) provides DDN standard X.25
service.
DDN basic X.25 service provides end-to-end call management with significance
as described in CCITT Recommendation X.25.

The
.B -s service
flag is used only for the ACP 5250 and ACP 6250 devices
to select DDN standard mode, DDN basic mode, or PDN X.25 service.
The default for both devices is DDN standard mode.

The use of PDN X.25 service requires that an
address translation table be communicated to the driver, to enable
it to convert between the internet address and the X.25
address of all sources and destinations.
(A conversion algorithm is used for DDN service.)  
The address table must include entries for the local ACP front end and
for all destinations, to establish connections.
Creation and management of the address translation table is accomplished
by the use of the -A, -a, -D, -d, and -r options.

The
.B -b baud_rate
and
.B -u mode
options apply to all interface types (ddn, dda, and acp).
All other options
are specific to the dda (ACP 5250/6250) interface.
.PP
.TP 15
.B -A filename
Add the contents of the named file to the driver's address translation table,
used in PDN mode.
The filename may be any absolute or relative
pathname.  The named file must contain lines which consist of an internet
address followed by white space followed by an X.25 address.
.sp .5v
The internet address may either be in standard \*(lqdot\*(rq notation
(of the form a.b.c.d; see INET(3N)) or the
name of a host from the system host name database.
For example, either \*(lq14.2.3.1\*(rq or
\*(lqhost-name\*(rq is acceptable.  
The network portion of each internet address must be non-zero.
.sp .5v
The X.25 address must be a
string of from twelve to fourteen ASCII decimal digits.
Thus, an acceptable X.25 address might be \*(lq30003010007600\*(rq.
The requirement for a minimum length of 12 may be
changed by suitable alteration of the #define'd value PDNX25AMIN 
in the acpconfig.c source file, followed by recompilation.
.sp .5v
Blank lines, lines beginning with the character \*(lq#\*(rq, and any characters
following white space after the X.25 address field are all ignored.
.sp .5v
Due to the necessity of reading each entry in the file and passing it to the
driver for installation in its translation table, execution of the -A
option may take a noticeable amount of time.  A message is displayed indicating
that a delay will be observed.
.sp .5v
An error message is displayed if insufficient space is available in the
table to add all entries requested.  All entries from the file
which fit are entered.
See the installation section of the User's Guide for a discussion on changing the size of the table.
.sp
.TP 15
.B -a ipaddr x25addr
Add a single entry to the driver's address translation table,
used in PDN mode.  The
.I ipaddr
field must be an internet address
of the format prescribed above for the \*(lq-A\*(rq option (e.g., \*(lq14.2.3.1\*(rq or
\*(lqhost-name\*(rq).  The
.I x25addr
field must be an X.25 address of the format
prescribed above for the \*(lq-A\*(rq option (e.g., \*(lq30002130006578\*(rq).
An error message is displayed if the specified
internet address is already in the table, or if insufficient space is
available in the table to add the requested entry.
A single
.I acpconfig
command may include more than one -a option.
.sp 
.TP 15
.B -b baud_rate
Select baud rate (which sets internal clocking) or external clocking.
The baud rate is set to control the speed of the internally
generated communications circuit clock physically located on the
ACP front-end hardware, the transmitter clock.
(A modem's timing signal is an example of an externally
generated clock source not physically on the ACP front end.)
The -b flag is specified with a nonzero value for baud rate if
internal clocking is desired.
Specifying -b external or -b 0 implies external clocking.
The tables below list valid baud rates used for internal clocking. 
.nf
.sp .5v
ACP 5100/6100, ACP 5250/6250  Baud Rate Parameters*
.ta 1iR 2iR 3iR 4iR
.sp .5v
	1.33M	100K	19.2K	1200
	1.00M	64K	9600
	500K	56K	4800
	250K	30K	2400
.sp .5v
ACP 625 Baud Rate Parameters*
.sp .5v
	316000	57600	9600	1760
	153600	38400	4800	1200
	115200	28800	2400
	76800	19200	2150
.sp .5v
.fi
* These are nominal baud rates.
In some cases, the
actual baud rate differs from the nominal baud rate by a few percent.
Consult your user's manual for further information and descriptions of 
baud rates.
The unit of measure is bps unless otherwise specified:
M = megabits/second, and K = kilobits/second.
The unit of measure does not need to be supplied with the -b
flag, it is optional.
To set the acp0 baud rate to 1.33 megabits/second, enter a command of
the following form:  \*(lq/etc/acpconfig acp0 -b 1.33M -u dte\*(rq.
External clocking is the default for ACP 5100/6100 and ACP 5250/6250.
To bring up the link with external clocking (the -b flag may be omitted),
use a command of the following form: \*(lq/etc/acpconfig dda0 -u dte\*(rq.
.sp .5v
Note that for the ACP 625 device (ddn interface), the clocking
is not settable by software.
Only the baud rate can be set by software.
For the ACP 625, the specification of external or
internal clocking is a hardware configuration option.
The ACP 625 is factory configured to transmit a clock signal
on specified RS-449/422 or RS-232 pins that can be used
if an external clock is not provided.
Refer to the ACP 625 User's Manual (ACC P/N 1500015) for more details.
.sp
.TP 15
.B -c
Control printing of driver error, log, and debug messages.
All error messages are initially enabled; all debug messages are initially
disabled, and the logging of call aborts is enabled.
This command allows the user to
disable (and re-enable) specific messages.
This may be used if unusual situations cause the driver to flood the console
with error messages or if extended debugging is required.
The message number
.I
msgnum
is listed in the
.I
dda (4)
man page for each message produced by the driver.
This command will display the new status of the message (i.e., whether it is
now enabled or disabled).
.sp
.TP 15
.B -D
Delete all address translation table entries.
.sp
.TP 15
.B -d ipaddr
Delete a single entry from the driver's address translation table.
The
.I ipaddr
field must be an internet address
of the format prescribed above for the \*(lq-A\*(rq option (e.g., \*(lq14.2.3.1\*(rq or
\*(lqhost-name\*(rq).  An error message is displayed if the specified
internet address is not in the table.
A single
.I acpconfig
command may include more than one -d option.
.sp
.TP 15
.B -e size
Set front-end buffer size.
This allows the user to tune buffer sizes for the number of virtual circuits
enabled.  This option causes a reset of the front-end.  The available sizes
are powers of two between 256 and 16384.  Specifying too large a value may
cause the front-end to fail.
.sp
.TP 15
.B -f facility status
Control the initiation of flow control parameter negotiation.
The -f flag is specified with a
.I facility
value of "packet" or "window"
and with a
.I status
of "on" or "off".
The default is no flow control parameter negotiation initiation.
To turn on packet and window size negotiation initiation
for unit 0, issue the
.I acpconfig
commands as follows:
.ti +.5i
/etc/acpconfig dda0 -f packet on -f window on
.br
To turn off initiation:
.ti +.5i
/etc/acpconfig dda0 -f packet off -f window off

Note that these options affect only calls made after the
parameter is changed.
If a circuit is already open, flow control parameters
can't be altered until the circuit is cleared.

When the driver initiates a call, it will request negotiation of
packet size or window size if the corresponding facility has been enabled.
For incoming calls, the driver will recognize requests to negotiate, and
will reduce the requested values to the maximum value permitted if necessary.
The maximum value for negotiation may be specified with the -v option to
.I acpconfig.
For versions of the firmware prior to v2.0, negotiation may not be enabled;
the driver will respond to negotiation attempts by setting the packet size
to 128 bytes and the packet window to 2.
.sp
.TP 15
.B -h mode
Print statistics on logical circuit usage. The
.I mode
may be one of 0, 0r, 1 or 1r.
If
.I mode
is 0 then a histogram is printed showing the percent of time
that n logical channels were used.  For example,

.KS
.nf
START: Tue Nov 10 15:56:26 1987 
END: Tue Nov 10 16:04:37 1987 
total time: 490.31 seconds
time up: 490.250000 seconds (99.99%)
  0   13.79
  1   74.67
  2    2.18
  3    9.36
.fi
.KE

This shows statistics recorded from 15:56:26 to 16:04:37.  The
total time data was recorded was 490.31 seconds.   The link was up for
490.25 seconds.  The column shows the number of logical channels and the
percent of time that that many channels were open.  
In the above example there were two logical channels open 2.18 
percent of the total time.

When
.I mode
is 1, the histogram data is printed and the histogram is reset.
If the 
.I r
modifier is attached to either mode then the data is printed in raw form.
The raw data can be piped into a user-supplied program to print out required
statistics.
Raw mode prints a single line, consisting of a set of floating point numbers
each separated by a single space.
The first field contains the number of seconds the link was up (cumulative
since the last reset).
The second and third fields contain timestamps, interpreted as seconds since
Jan 1, 1970; the second field reports when the statistics were last cleared,
and the third field reports the current time.
The fourth field contains the current idle timer value, in seconds.
The remaining fields report the number of seconds
.I n
circuits were open, where
.I n
is the field offset (i.e., the fifth field reports the number of seconds no
circuits were open)
Thus, for 64 circuits, 69 fields will be returned.
.sp
.TP 15
.B -l[n]
Display the status of each active logical channel.
To display for unit 0 use:
.ti +.5i
/etc/acpconfig dda0 -l
.br
or
.ti +.5i
/etc/acpconfig dda0 -ln
.br
For each active logical channel the following information is
given:
.nf
.in +.5i
Interface unit number 
Logical channel number
Output queue length
Number of dropped outgoing packets
Timer value
Client owning channel
Logical channel state
Source/Destination host name
Host name of the interface (or address, if -ln is used)
.in -.5i
.fi
.sp
.TP 15
.B -m message
Send an arbitrary supervisory message to the ACP 5250/6250.
.I message
is a sequence of arguments each of which represents one byte.
Arguments beginning with \*(lq0\*(rq (zero) are interpreted
as octal, others are interpreted as hexadecimal; decimal
is not supported.  The message is terminated by an argument
which begins with a dash or by the end of
.I acpconfig's
argument list.
This option is used primarily to change parameters in the ACP 5250/6250 for
which a less cumbersome method has not yet been provided.
For instance, the command \*(lqacpconfig dda0 -m 60 0 0 3 90 0 1\(rq
changes the \*(lqdefault packet size\*(rq parameter to 256;
the command \*(lqacpconfig dda0 -m 60 0 0 2 7f f\(rq
changes the \*(lqmaximum address length\*(rq parameter to 15.
This option should be used with caution;
correct use of this option requires knowledge
of ACP 5250/6250 supervisory message formats and parameters.
These messages are detailed in chapter 9, and summarized in appendix A,
of the ACP 5250/6250 Hardware Installation and User Guides.
.sp
.TP 15
.B -n circuits
Limit the number of virtual circuits which may be used at any
one time to
.I circuits.
This option requires version 2.1 or later of the firmware.
The default value is 64 circuits.
Version 2.1 supports up to 64 simultaneous circuits;
version 2.2 supports up to 126 simultaneous circuits.
The -n option should not be used once the
link has been enabled.  A reset with the -z 
option of
.I acpconfig
is necessary before changing the number of
virtual circuits.
After the reset completes, the number of circuits
may be changed with the -n option and then the
link must be enabled with the -u option of
.I acpconfig.
.sp
.TP 15
.B -N network
Configure unit to work with a nonstandard X.25 network.  Current acceptable
values for
.I network
are:
.nf
.ta .5i 2.0i
	-n standard	standard network (default)
	-n transpac	the French Transpac network
	-n net15	networks with 15 digit address fields
.fi
.sp
.TP 15
.B -o option
Select 1984 X.25 options.  Currently the only
supported 1984 X.25 option is extended clear and extended clear
confirmation packet handling.  This may be required for operation on
Telenet.
To enable this option for unit 0 enter:
.ti +.5i
/etc/acpconfig dda0 -o extended
.br
To disable this option for unit 0 enter:
.ti +.5i
/etc/acpconfig dda0 -o none
.sp
.TP 15
.B -q type
Query the driver or Front End Processor for status.  If
.I type
is 0, a Statistics Response message is solicited from the
ACP 5250/6250.  The results are written to the standard
output in tabular form.  With the exception of uptime,
statistics are cleared when read.
The Statistics Response is supported only in versions 2.1 and
greater of the ACP 5250/6250 product.

If
.I type
is 1, a driver status query is performed.  This shows
the driver's concept of the link state, driver flags, and
the status of flow control parameter negotiation initiation.
.sp
.TP 15
.B -r count
Read address translation table entries;
the internet address and corresponding X.25 address obtained from the
first
.I count
entries in the driver's address translation table will
be displayed.  If
.I count
is zero, or greater than the maximum size of the table,
all entries are returned, along with
an indication of the maximum possible size of the table.
Internet addresses contained in the address table are displayed
in normal a.b.c.d format.
The order in which entries are displayed is dependent
on the table maintenance algorithm in the driver.
Currently, the table is sorted on internet address
as stored internally (d.c.b.a).
.sp
.TP 15
.B -s X.25_service
Specify DDN X.25 standard, DDN X.25 basic, or PDN X.25 service.
The -s flag is specified with one of the following arguments:
.DS
.ta .5i 2i
	-s 0	DDN standard X.25 service
	-s standard	DDN standard X.25 service

	-s 1	DDN basic X.25 service
	-s basic	DDN basic X.25 service

	-s 2	PDN X.25 service
	-s pdn	PDN X.25 service
.DE
.sp
.TP 15
.B -t seconds
Set the idle circuit timeout.  This value is the amount of time a circuit
may be idle before it is closed by the driver.  The default value is 600
seconds (ten minutes).  Reducing the idle circuit timeout will free idle
circuits sooner and can be used to tune performance.  Setting the timeout
too low will cause circuits to close too soon and increase overhead by
repeatedly clearing and reestablishing calls.
.sp
.TP 15
.B -u mode
Bring up the interface (enable link level) in the specified configuration,
or bring down the interface (disable link level).
A
.I mode
For normal operation, the interface is configured for no loopback;
external and internal loopback configurations are used only for
installation verification.
.nf
.ta .5i 1i
	-u down	bring down the interface
	-u dte	bring up the interface for normal DTE operation without loopback
	-u dce	bring up the interface for normal DCE operation without loopback
	-u ext	bring up the interface in external loopback
	-u int	bring up the interface in internal loopback

.fi
The DTE/DCE mode sets the DTE/DCE address used by the
link-level protocol to reference the interface.
When DTE mode is specified (-u dte), the address is 03.
When DCE mode is specified (-u dte), the address is 01.
With the exception of the address, no other changes are made by
specifying DTE or DCE.
.sp 1v
Note that when external loopback is specified with
\*(lq-u ext\*(rq, you
should specify a baud rate if you are using the loopback connector
supplied with the device,
or should specify external clocking if the
link is being looped back by the modem.
To set external loopback, use a command of the following 
form:  \*(lq/etc/acpconfig dda0 1.0.0.1 -b 9600 -u ext\*(rq.

Use of \*(lq-u down\*(rq disables link level on the front end.
Success is indicated by a \*(lqlink disabled\*(rq message on the console
terminal.
Two disable commands followed by one enable command
is not recommended.
If two disables have been sent (link level disable is aborted)
then a delay (long enough for any outstanding frames to time out;
5 seconds should be sufficient) is 
required before issuing a link enable command.
In the following sequence, note that the line is disabled 
each time the parameters are changed:
.nf
.in +.5i
/etc/acpconfig dda0 -u int
/etc/acpconfig dda0 -u down
/etc/acpconfig dda0 -b 1.33 -u dte
/etc/acpconfig dda0 -u down
/etc/acpconfig dda0 -u int
.in -.5i
.fi

If you try to bring up the interface without first setting the
internet address, an error message is generated
and no further processing occurs.

When PDN X.25 service has been specified (by -s 2/pdn), a -u option
to bring up the
interface (-u dte/dce/int/ext) will not succeed unless an address translation
table entry already exists for the ACP front end interface's internet address.
If the address translation table entry does not exist, an error
message will be displayed.  An address table entry for the device
must be added (via a -a or -A option) before the interface can be brought up.
.sp
.TP 15
.B -v key value
Set a driver internal variable symbolized by
.I key
to
.I value.
Possible key values are
.I log, debug, dbgunit, packet,
and
.I window.
.nf
.ta .5i 2i
	-v packet DDD		Set X.25 packet size to DDD decimal
	-v window DDD		Set X.25 window size to DDD decimal

.fi
The
.I packet
and
.I window
variables control the maximum negotiable
packet and window size supported by the
interface.
These variables can only be set if the
ACP 5250 or ACP 6250 contains firmware
release 2.1 or above.  The link must
first be brought down (use the -u down
flag of
.I acpconfig
), the variables changed,
and the link brought back up.
.sp
.TP 15
.B -z
Reset the front end.
To reset the dda0 device give 
a command of the following form:  \*(lq/etc/acpconfig dda0 -z\*(rq.
A message will appear on the system console telling you
a device reset is in progress.
There is a pause during the reset because the powerup diagnostics
are run for a short period of time.
.sp
.SH EXAMPLE
To specify internet address 1.0.0.1, external clock,
normal DTE operation, and DDN standard X.25 service
use a command of the following 
form: \*(lq/etc/acpconfig dda0 1.0.0.1 -u dte\*(rq.
.SH DIAGNOSTICS
Diagnostic messages appear on your terminal to indicate
that the interface's configuration has been established as specified,
or an error occurred during
.I acpconfig
program execution.
.PP
.BR "usage: acpconfig interface [address] [options]"
.br
The program was invoked with incorrect arguments.
.PP
.BR "acpconfig:  invalid number of arguments".
.br
The
.I acpconfig
program must be invoked with a minimum of 2 arguments,
the first of which is the interface name.
.PP
.BR "acpconfig:  reset in progress"
.br
This command appears in response to an
.I acpconfig
command to reset
a specified device.
.PP
.BR "acpconfig:  command in progress".
.br
The
.I acpconfig
command is in progress, expect a small delay.
Two passes are made with a delay of about 30 seconds
between attempts.  This message indicates that the second attempt
is in progress.
.PP
.BR "acpconfig:  device not operational"
.br
The front end device is not operational.
Repeat the command.
In response to the
.I acpconfig
command to initialize the front-end device,
a check is made to verify that powerup diagnostics have completed.
If the diagnostics have not successfully completed, then there is a
30 second delay followed by a second attempt to initialize the front end.
This message indicates that the device was still not operational at the
time of the second initialization attempt.
.PP
.BR "acpconfig:  no internet address assigned to interface".
.br
The interface must be assigned an internet address before any of the
configuration parameters will be accepted.
You may assign an interface address in the following manner: \*(lqacpconfig 
dda0 1.0.0.1\*(rq.
.PP
.BR "acpconfig:  -b %s invalid".
.br
The baud rate argument for the -b flag must be one of the values listed
above.
.PP
.BR "acpconfig:  '-b 0' invalid for specified interface".
.br
The '-b 0'  and -b external commands (for specifying external
clocking) do not apply to 
the specified interface (i.e., ddn?).
The '-b 0' and -b external flags are only valid for ACC ACP devices
that support software selection of internal or external clocking.
The ACP 625 device does not.
In the case of the ACP 625 ddn interface, the clocking is selected
via strapping options, not software control.
The use of '-b 0' or -b external is valid for the ACP 5100/6100 'acp'
interfaces or the ACP 5250/6250 'dda' interfaces because they support
software selection of internal or external clocking.
For more detail consult the user's manuals.
.PP
.BR "acpconfig:  ioctl (SIOCGIFFLAGS) returns no such interface"
.br
The specified interface does not exist.
This message indicates that one of many possible errors exists:  the
ACP board itself is not installed in the QBUS or UNIBUS, the ACP
board is in a UNIBUS slot which does not have NPR unwrapped, the driver
is not installed, the ACP board is installed with a CSR address which
does not match the one in the system configuration file, or the
name of the interface was misspelled.
.PP
.BR "acpconfig:  ioctl (SIOCACPCONFIG) returns permission denied".
.br
You must have sufficient (root) privilege for this operation.
.PP
.BR "acpconfig:  socket: <error explanation>".
.br
This message indicates that a socket could not be created for the reason given.
.PP
.BR "acpconfig: invalid internet address '%s'".
.br
This message indicates that the value for the internet address
is invalid.
The internet address must be given in \*(lqdot notation\*(rq or be a valid
host name.
.PP
.BR "acpconfig:  invalid mode '%s'".
.br
The mode argument for the -u flag must be down, dte, dce, int, or ext.
.PP
.BR "acpconfig: '%s' flag invalid for specified interface".
.br
The flag identified does not apply to the specified interface (i.e., acp?).
The -s, -A, -a, -d, and -r flags are only valid for ACC ACP devices which
support DDN/PDN X.25 service.
.PP
.BR "acpconfig:  invalid X.25 service".
.br
The X.25 service argument for the -s flag must be a value 0 - 3
or the strings: standard, basic, pdn, or class_b_c.
.PP
.BR "acpconfig: processing file '%s'; please wait...".
.br
Acpconfig is beginning to read address pairs from
the named file, as requested by the -A flag; some delay will be observed while
all addresses are passed to the driver for installation in its address
translation table.
.PP
.BR "acpconfig: cannot open file '%s'".
.br
When attempting to read address translation table entries from a file using
the -A flag, the specified file cannot be opened.
.PP
.BR "acpconfig: bad X.25 address length: '%s'".
.br
An X.25 address supplied with either the -A or -a flag has an invalid length,
either greater than 14 or less than the minimum value PDNX25AMIN,
#define'd in the acpconfig.c source code with the default value of 12.
If necessary, the value of PDNX25AMIN may be changed and
.I acpconfig
recompiled.
.PP
.BR "acpconfig: invalid X.25 address '%s'".
.br
An X.25 address supplied with either the -A or -a flag includes characters
that are not decimal digits, which is invalid.
.PP
.BR "acpconfig: end of address table (%d entries max)".
.br
A request for display of address translation table entries specified more
entries than the table holds; the maximum table size is noted; all current
entries have already been displayed.
.PP
.BR "acpconfig: address table entry %d: %d.%d.%d.%d ==> %s".
.br
This information is displayed for each address translation table entry
requested via the -r flag.
%d.%d.%d.%d is an internet address whose corresponding X.25 address is %s.
.PP
.BR "acpconfig: ioctl (SIOCACPCONFIG) returns: Operation already in progress".
.br
.BR "acpconfig: must shut down interface to change modes between DDN and PDN".
.br
An attempt was made, while the interface was up, to change between DDN and
PDN service via the -s flag.  This is allowed only after bringing the interface 
down via -u down.
.PP
.BR "acpconfig: -u flag must be last".
.br
The -u flag must follow all others in any
.I acpconfig
command, so
all requested options can be set before the interface is brought up (or down).
.PP
.BR "acpconfig: ioctl (SIOCACPCONFIG) returns: Can't assign requested address".
.br
.BR "acpconfig: no local X.25 address translation in table; cannot start up PDN mode".
.br
These two messages indicate that
an attempt was made to start up the interface for PDN service (via
-s 2 then -u), but no address translation table entry exists for this host's
internet address.  Use -A or -a to add such a table entry then try again.
.PP
.BR "acpconfig: ioctl (SIOCACPCONFIG) returns: Address already in use".
.br
An attempt was made to add an entry to the address translation table, but
an entry was already present in the table for the identical internet
address; no action was taken.  Note that if the table is already full
the following message will appear instead.
.PP
.BR "acpconfig: ioctl (SIOCACPCONFIG) returns: Not enough core".
.br
An attempt was made to add an entry to the address translation table, but
no space remained in the table.  The maximum size of the table may be determined
by using the -r 0 flag; increasing the table size may be accomplished only
by rebuilding the kernel (See ACP 5250/6250 Hardware Installation and User Guide installation
chapter for information on changing the table size).  
An alternative is to delete unused entries via the -d flag.
.PP
.BR "acpconfig: ioctl (SIOCACPCONFIG) returns: Bad address".
.br
An attempt was made to delete an internet address from the address translation
table; that internet address was not found in the table; no action was taken.
.PP
.BR "acpconfig: -m message too long"
.br
The bytes following the -m option exceeded
.I acpconfig\c
\'s internal buffering.  An alternative is to break the
long parameter command into two or more commands.
.PP
.BR "acpconfig: -v what?".
.br
An unknown key value or no key value was issued with the
.I acpconfig
-v command.
.PP
.BR "acpconfig: -v: bad packet size".
.br
The packet size argument for the -v flag must be one of the values listed
above.
.PP
.BR "acpconfig: ioctl (SIOCACPCONFIG) returns:
.BR "Can't change parameters with link up".
.BR "Bring the link down and try again".
.br
The value of the target parameter cannot be changed until the link is
brought down via -u down.
.PP
.BR "acpconfig: Operation not supported by this version of the firmware".
.br
Changing packet size, window size,
or SVC limit requires firmware revision 2.1 or greater.
Initiating flow control parameter negotiation, querying the FE for
status, or changing packet options with -o also requires
rev 2.1 or greater.
.PP
.BR "acpconfig:  Bad lseek fd=%d,bas=%x,off=%d ".
.br
The -l option of
.I acpconfig
could not seek into the kernel for
driver structure contents.
.PP
.BR "acpconfig: nlist--symbol not defined".
.br
The nlist program used by the -l option of
.I acpconfig
returned an invalid address.
.PP
.BR "acpconfig:  No namelist"
.br
The nlist program used by the -l option of
.I acpconfig
returned an error indicating that the UNIX kernel's namelist is invalid.
.PP
.BR "acpconfig:  cannot open /dev/kmem".
.br
The process issuing the -l command of
.I acpconfig
must be able to read /dev/kmem.
.PP
.BR "acpconfig: -o what?".
.br
A keyword was not specfified in the command text.
.PP
.BR "acpconfig: -o %s invalid".
.br
The option argument for the -o flag must be one of values listed
above.
.PP
.BR "acpconfig: -f what?".
.br
A keyword was not specfified in the command text.
.PP
.BR "acpconfig: -f %s invalid".
.br
The facility or status argument for the -f flag must be one of values listed
above.
.PP
.SH "SEE ALSO"
rc(8), intro(4N), netstat(1), ioctl(2), socket(2), inet(3N), hosts(5),
ACC ACP devices:  acp(4), dda(4), ddn(4)
.SH "NOTES"
The -u flag is positional, it should be the last flag on the command line.
.PP
The most common user error is forgetting to disable the link (-u down) before
re-enabling it with new configuration parameters.
.PP
The
.BR "-v log, -v debug, "
and
.BR "-v dbgunit"
commands have been obsoleted.  Their functionality has been moved into the
standard message facility.  Use the
.BR "-c"
command to enable or disable the appropriate messagess.