SRT(4)

NAME
srt - source-routing network interface

SYNOPSIS
pseudo-device srt

DESCRIPTION
The srt interface is a software interface that implements source-address-based routing. Packets are directed to the srt interface using normal routing decision process. Packets queued for delivery are then processed according to the rules established for the interface using the srtconfig(1) utility.

To use an srt device, the administrator must first create the interface. This can be done by using the ifconfig(8) create command. An open(2) call on /dev/srtN will also create a network interface with a unit number the same as the minor device number of that device if the interface doesn't exist yet.

To be useful, the srt interface needs to be configured using srtconfig(1) which uses the associated srt character device /dev/srt#.

The network interfaces should be named srt0, srt1, etc. The srt interface supports only the open(2), close(2), and ioctl(2) operations; other operations such as read(2) and write(2) are not supported.

All standard network interface ioctl(2) calls are supported by the srt interface. In addition, the following ioctl(2) calls (defined in <net/if_srt.h>) are supported on the srt character device:

SRT_GETNRT
    The argument is a pointer to an integer, in which the number of entries in the device's routing table is returned.

SRT_GETRT
    The argument is the address of a struct srt_rt. The routing table entry specified by the “inx” member is returned.

SRT_SETRT
    The argument is the address of a struct srt_rt. The routing entry is placed into the device's routing table at the index specified by the “inx” member.

SRT_DELRT
    The argument is the address of a struct srt_rt. The routing entry specified by the “inx” member is deleted from the device's routing table. (Any entries in the device's routing table with higher index values are renumbered.)

SRT_SFLAGS
    The argument is a pointer to an integer containing any of the following flags to be set:

    SSF_MTULOCK
        If set, do not automatically update the interface's MTU.

SRT_GFLAGS
    The argument is a pointer to an integer in which the current flags are returned.

SRT_SGFLAGS
    This call updates the flags in the same manner as SRT_SFLAGS. The original flags are returned in the integer pointed to by the argument.

SRT_DEBUG
    Currently this is a no-op.

SEE ALSO
srtconfig(1), inet(4), intro(4)

HISTORY
-nosplit The srt device was added in NetBSD 5.0 by der Mouse <mouse@NetBSD.org>. This manual page was prepared by Paul Goyette <pgoyette@NetBSD.org>.