xmonisdn man page

xmonisdn — monitor for ISDN network

Synopsis

xmonisdn [ -toolkitoption ... ] [ -option ... ]

Description

The xmonisdn program displays the status of the ISDN network connection and allows the starting and stopping of the ISDN subsystem. If the ISDN subsystem is not active, a window showing a terminal in the foreground and a dashed terminal in the backgorund is displayed. If the ISDN system is active, but there is no network connection established, two terminals with dashed arrows between them is displayed. If there is a incoming connection or there is dialing in progress, the arrows become more solid. An outgoing network connection is signaled by solid arrows between the terminals and the window is displayed in reverse video. If the ISDN subsystem dials out or hangs up, the program beeps to signal the state change (this can be changed using the volume option).

Pressing button 2 on the window executes the command /sbin/ifup and pressing button 3 executes /sbin/ifdown
/sbin/ifup and /sbin/ifdown should start and stop the ISDN subsystem; if the route command is used, xmonisdn must be run as setuid root for this to work. Alternatively, the scripts can manipulate the isdnctrl dialmode setting, in which case only permission to access /dev/isdnctrl is needed.

Options

xmonisdn accepts all of the standard X Toolkit command line options along with the additional options listed below:

-help
This option indicates that a brief summary of the allowed options should be printed on the standard error.
-update tenth of a second
This option specifies the frequency in 1/10 of a second at which xmonisdn should update its display. If the window is obscured and then exposed, it will be updated immediately. The default is 0.5 seconds (i.e. -update 5).
-file filename
This option specifies the name of the file which should be monitored. By default, it watches /dev/isdninfo.
-volume percentage
This option specifies how loud the bell should be rung when there is an important status change.
-shape
This option indicates that the xmonisdn window should be shaped if masks for the images are given.

The following standard X Toolkit command line arguments are commonly used with xmonisdn:

-display display
This option specifies the X server to contact.
-geometry geometry
This option specifies the preferred size and position of the xmonisdn window. The icon is 48 pixels wide and 48 pixels high and will be centered in the window.
-bg color
This option specifies the color to use for the background of the window.
-bd color
This option specifies the color to use for the border of the window.
-bw number
This option specifies the width in pixels of the border surrounding the window.
-fg color
This option specifies the color to use for the foreground of the window.
-rv
This option indicates that reverse video should be simulated by swapping the foreground and background colors.
-xrm resourcestring
This option specifies a resource string to be used. This is especially useful for setting resources that do not have separate command line options.

X Defaults

The application class name is xmonisdn. This program uses the Netstat widget. It understands all of the core resource names and classes as well as:

file (class File)
Specifies the name of the file to monitor. The default is to watch /dev/isdninfo.
width (class Width)
Specifies the width of the icon.
height (class Height)
Specifies the height of the icon.
update (class Interval)
Specifies the frequency in 1/10 of a second at which the isdninfo file should be checked. The default is 5.
volume (class Volume)
Specifies how loud the bell should be rung. The default is 33 percent.
foreground (class Foreground)
Specifies the color for the foreground.
reverseVideo (class ReverseVideo)
Specifies that the foreground and background should be reversed.
flip (class Flip)
Specifies whether or not the image that is shown when there is an outgoing network connection should be inverted. The default is “true.”
inactivePixmap (class Pixmap)
Specifies a bitmap to be shown when the ISDN subsystem is inactive. The default is netinactive.
waitingPixmap (class Pixmap)
Specifies a bitmap to be shown when the ISDN subsystem is active, but there is no connection. The default is netwaiting.
activePixmap (class Pixmap)
Specifies a bitmap to be shown when there is a incoming network connection (or dialing is in progress). The default is netactive.
activeoutPixmap (class Pixmap)
Specifies a bitmap to be shown when there is a outgoing network connection. The default is netactiveout.
startPixmap (class Pixmap)
Specifies a bitmap to be shown when the ISDN network is started up. The default is netstart.
stopPixmap (class Pixmap)
Specifies a bitmap to be shown when the ISDN network is stopped. The default is netstop.
shapeWindow (class ShapeWindow)
Specifies whether or not the xmonisdn window should be shaped to the given PixmapMasks. The default is false.
inactivePixmapMask (class PixmapMask)
Specifies a mask for the bitmap to be shown when the ISDN subsystem is inactive. The default is none.
waitingPixmapMask (class PixmapMask)
Specifies a mask for the bitmap to be shown when the ISDN subsystem is active, but there is no connection. The default is none.
activePixmapMask (class PixmapMask)
Specifies a mask for the bitmap to be shown when when there is a incoming network connection (or dialing is in progress). The default is none.
activeoutPixmapMask (class PixmapMask)
Specifies a mask for the bitmap to be shown when there is a outgoing network connection. The default is none.
startPixmapMask (class PixmapMask)
Specifies a mask for the bitmap to be shown when the ISDN network is started up. The default is none.
stopPixmapMask (class PixmapMask)
Specifies a mask for the bitmap to be shown when the ISDN network is stopped. The default is none.

Actions

The Netstat widget provides the following actions for use in event translations:

check()
This action causes the widget to check the isdninfo file and display the appropriate icon.
netdown()
This action causes the widget to execute /sbin/ifdown stop.
netup()
This action causes the widget to execute /sbin/ifup start.

The default translation is

       <ButtonPress>Button2:  netup()
<ButtonPress>Button3:  netdown()

Security Issues

There are a number of reasons why you should not run xmonisdn as a `setuid root' program. Most importantly, any setuid root program is a potential security hole. The scripts that are executed by xmonisdn may be compromised, or contain non-absolute paths to the commands called (so that by changing the PATH variable the wrong binary is executed!); or the script may in turn call other things that are not secure.
If you are sure that your scripts are secure and you insist on making xmonisdn setuid root, you can give the -r option as first option. This will turn off xmonisdn's setuid detection. However, you are on your own if you do this!

A better alternative is to put the isdn devices in group dialout (if not so already), and add yourself to the dialout group. This way you have permission to manipulate the ISDN devices, e.g. to use isdnctrl to change the dialmode setting to off (to disable dialing) or auto (for autodial). The whole ISDN system may also be turned on and off, see the isdnctrl manpage for more info. This is a more secure way of controlling the dialing than e.g. by manipulating routes.

Environment

DISPLAY
to get the default host and display number.
XENVIRONMENT
to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property.

Author

Bernhard Nebel

See Also

isdnctrl(8)

Info

2002/01/31 isdn4k-utils-3.27 X Tools