Go to main content

man pages section 8: System Administration Commands

Exit Print View

Updated: Thursday, June 13, 2019
 
 

autopush(8)

Name

autopush - configures lists of automatically pushed STREAMS modules

Synopsis

autopush -f filename
autopush -g -M major -m minor
autopush -r -M major -m minor

Description

The autopush command configures the list of modules to be automatically pushed onto the stream when a device is opened. It can also be used to remove a previous setting or get information on a setting.

Options

The following options are supported:

–f filename

Sets up the autopush configuration for each driver according to the information stored in filename. An autopush file consists of lines of four or more fields, separated by spaces as shown below:

major minor last-minor module1 module2  . . . module8

The first field is a string that specifies the major device name, as listed in the /kernel/drv directory. The next two fields are integers that specify the minor device number and last-minor device number. The fields following represent the names of modules. If minor is −1, then all minor devices of a major driver specified by major are configured, and the value for last-minor is ignored. If last-minor is 0, then only a single minor device is configured. To configure a range of minor devices for a particular major, minor must be less than last-minor.

The remaining fields list the names of modules to be automatically pushed onto the stream when opened, along with the position of an optional anchor. The maximum number of modules that can be pushed is eight. The modules are pushed in the order they are specified. The optional special character sequence [anchor] indicates that a STREAMS anchor should be placed on the stream at the module previously specified in the list; it is an error to specify more than one anchor or to have an anchor first in the list.

A nonzero exit status indicates that one or more of the lines in the specified file failed to complete successfully.

When called with the /etc/iu.ap argument, the system will merge the content of /etc/iu.ap with the system defined entries in /etc/iu.system.ap argument.

–g

Gets the current configuration setting of a particular major and minor device number specified with the –M and –m options respectively and displays the autopush modules associated with it. It will also return the starting minor device number if the request corresponds to a setting of a range (as described with the –f option).

–m minor

Specifies the minor device number.

–M major

Specifies the major device number.

–r

Removes the previous configuration setting of the particular major and minor device number specified with the –M and –m options respectively. If the values of major and minor correspond to a previously established setting of a range of minor devices, where minor matches the first minor device number in the range, the configuration would be removed for the entire range.

Exit Status

The following exit values are returned:

0

Successful completion.

non-zero

An error occurred.

Examples

Example 1 Using the autopush command.

The following example gets the current configuration settings for the major and minor device numbers as indicated and displays the autopush modules associated with them for the character-special device /dev/term/a:


example# autopush –g –M 29 –m 0
Major     Minor     Lastminor     Modules
  29        0         1           ldterm  ttcompat

Files

/etc/iu.ap, /etc/iu.system.ap

Attributes

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
system/device-administration

See Also

sad(4D), streamio(4I), ldterm(4M), ttcompat(4M), attributes(7), dladm(8), ttymon(8)

Notes

The use of the autopush command is obsolete for networking data-links. The preferred method of configuring a list of automatically pushed STREAMS modules on a given networking data-link interface is the dladm(8) autopush link property.

Because network devices are self-cloning, the autopush command is inadequate for networking devices. The granularity of the autopush command's configuration is driver-wide, and not per-interface as one might expect. Another reason not to use autopush is that administrators are more familiar with the names of their network interfaces than with device major and minor numbers. The dladm(8) command allows the configuration using data-link interface names.