![Paul Slootman](/assets/img/avatar_default.png)
(scripts were executed with system() so e.g. IFS and PATH could be used to work around any attempt of security...). Now check that it is not installed setuid root (unless the user insists, details in manpage), and recommend to put user in group `dialout' or similar and also make the isdn devices group `dialout'; the scripts can then use isdnctrl to stop/start stuff.
250 lines
8.4 KiB
Groff
250 lines
8.4 KiB
Groff
.\" $Id$
|
|
.\"
|
|
.\" CHECKIN $Date$
|
|
.\"
|
|
.TH XMONISDN 1 "@MANDATE@" isdn4k-utils-@I4LVERSION@ "X Tools"
|
|
.SH NAME
|
|
xmonisdn \- monitor for ISDN network
|
|
.SH SYNOPSIS
|
|
.B xmonisdn
|
|
[ \-\fItoolkitoption\fP ... ] [ \fI\-option\fP ... ]
|
|
.SH DESCRIPTION
|
|
The
|
|
.I 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
|
|
.I volume
|
|
option).
|
|
.PP
|
|
Pressing button 2 on the window executes the command
|
|
.I @CONFIG_XMONISDN_UPCMD@ start
|
|
and pressing button 3 executes
|
|
.I @CONFIG_XMONISDN_DOWNCMD@ stop.
|
|
@CONFIG_XMONISDN_UPCMD@
|
|
should be a shell script that starts and stops the ISDN subsystem;
|
|
if the
|
|
.ul
|
|
route
|
|
command is used, xmonisdn must be run as setuid root for this to work.
|
|
Alternatively, the script can manipulate the
|
|
.ul
|
|
isdnctrl dialmode
|
|
setting, in which case only permission to access /dev/isdnctrl is needed.
|
|
.SH OPTIONS
|
|
.I xmonisdn
|
|
accepts all of the standard X Toolkit command line options along with the
|
|
additional options listed below:
|
|
.TP 8
|
|
.B \-help
|
|
This option indicates that a brief summary of the allowed options should be
|
|
printed on the standard error.
|
|
.TP 8
|
|
.B \-update \fItenth of a second\fP
|
|
This option specifies the frequency in 1/10 of a second at which \fIxmonisdn\fP
|
|
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).
|
|
.TP 8
|
|
.B \-file \fIfilename\fP
|
|
This option specifies the name of the file which should be monitored. By
|
|
default, it watches /dev/isdninfo.
|
|
.TP 8
|
|
.B \-volume \fIpercentage\fP
|
|
This option specifies how loud the bell should be rung when there is an important status change.
|
|
.TP 8
|
|
.B \-shape
|
|
This option indicates that the xmonisdn window should be shaped if masks for
|
|
the images are given.
|
|
.PP
|
|
The following standard X Toolkit command line arguments are commonly used with
|
|
.I xmonisdn:
|
|
.TP 8
|
|
.B \-display \fIdisplay\fP
|
|
This option specifies the X server to contact.
|
|
.TP 8
|
|
.B \-geometry \fIgeometry\fP
|
|
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.
|
|
.TP 8
|
|
.B \-bg \fIcolor\fP
|
|
This option specifies the color to use for the background of the window.
|
|
.TP 8
|
|
.B \-bd \fIcolor\fP
|
|
This option specifies the color to use for the border of the window.
|
|
.TP 8
|
|
.B \-bw \fInumber\fP
|
|
This option specifies the width in pixels of the border surrounding the window.
|
|
.TP 8
|
|
.B \-fg \fIcolor\fP
|
|
This option specifies the color to use for the foreground of the window.
|
|
.TP 8
|
|
.B \-rv
|
|
This option indicates that reverse video should be simulated by swapping
|
|
the foreground and background colors.
|
|
.TP 8
|
|
.B \-xrm \fIresourcestring\fP
|
|
This option specifies a resource string to be used. This is especially
|
|
useful for setting resources that do not have separate command line options.
|
|
.SH X DEFAULTS
|
|
The application class name is xmonisdn.
|
|
This program uses the
|
|
.I Netstat
|
|
widget.
|
|
It understands all of the core resource names and
|
|
classes as well as:
|
|
.PP
|
|
.TP 8
|
|
.B file (\fPclass\fB File)
|
|
Specifies the name of the file to monitor. The default is to watch
|
|
/dev/isdninfo.
|
|
.TP 8
|
|
.B width (\fPclass\fB Width)
|
|
Specifies the width of the icon.
|
|
.TP 8
|
|
.B height (\fPclass\fB Height)
|
|
Specifies the height of the icon.
|
|
.TP 8
|
|
.B update (\fPclass\fB Interval)
|
|
Specifies the frequency in 1/10 of a second at which the isdninfo file should be checked.
|
|
The default is 5.
|
|
.TP 8
|
|
.B volume (\fPclass\fB Volume)
|
|
Specifies how loud the bell should be rung. The default is 33 percent.
|
|
.TP 8
|
|
.B foreground (\fPclass\fB Foreground)
|
|
Specifies the color for the foreground.
|
|
.TP 8
|
|
.B reverseVideo (\fPclass\fB ReverseVideo)
|
|
Specifies that the foreground and background should be reversed.
|
|
.TP 8
|
|
.B flip (\fPclass\fB Flip)
|
|
Specifies whether or not the image that is shown when there is an outgoing network connection
|
|
should be inverted. The default is ``true.''
|
|
.TP 8
|
|
.B inactivePixmap (\fPclass\fB Pixmap)
|
|
Specifies a bitmap to be shown when the ISDN subsystem is inactive.
|
|
The default is netinactive.
|
|
.TP 8
|
|
.B waitingPixmap (\fPclass\fB Pixmap)
|
|
Specifies a bitmap to be shown when the ISDN subsystem is active, but there is no connection. The default is netwaiting.
|
|
.TP 8
|
|
.B activePixmap (\fPclass\fB Pixmap)
|
|
Specifies a bitmap to be shown when there is a incoming network connection (or dialing is in progress). The default is netactive.
|
|
.TP 8
|
|
.B activeoutPixmap (\fPclass\fB Pixmap)
|
|
Specifies a bitmap to be shown when there is a outgoing network connection.
|
|
The default is netactiveout.
|
|
.TP 8
|
|
.B startPixmap (\fPclass\fB Pixmap)
|
|
Specifies a bitmap to be shown when the ISDN network is started up.
|
|
The default is netstart.
|
|
.TP 8
|
|
.B stopPixmap (\fPclass\fB Pixmap)
|
|
Specifies a bitmap to be shown when the ISDN network is stopped.
|
|
The default is netstop.
|
|
.TP 8
|
|
.B shapeWindow (\fPclass\fB ShapeWindow)
|
|
Specifies whether or not the xmonisdn window should be shaped to the
|
|
given PixmapMasks. The default is false.
|
|
.TP 8
|
|
.B inactivePixmapMask (\fPclass\fB PixmapMask)
|
|
Specifies a mask for the bitmap to be shown when the ISDN subsystem is inactive.
|
|
The default is none.
|
|
.TP 8
|
|
.B waitingPixmapMask (\fPclass\fB 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.
|
|
.TP 8
|
|
.B activePixmapMask (\fPclass\fB 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.
|
|
.TP 8
|
|
.B activeoutPixmapMask (\fPclass\fB PixmapMask)
|
|
Specifies a mask for the bitmap to be shown when there is a outgoing network connection.
|
|
The default is none.
|
|
.TP 8
|
|
.B startPixmapMask (\fPclass\fB PixmapMask)
|
|
Specifies a mask for the bitmap to be shown when the ISDN network is started up.
|
|
The default is none.
|
|
.TP 8
|
|
.B stopPixmapMask (\fPclass\fB PixmapMask)
|
|
Specifies a mask for the bitmap to be shown when the ISDN network is stopped.
|
|
The default is none.
|
|
.SH ACTIONS
|
|
The \fINetstat\fP widget provides the following actions for use in event
|
|
translations:
|
|
.TP 8
|
|
.B check()
|
|
This action causes the widget to check the isdninfo file and display the appropriate icon.
|
|
.TP 8
|
|
.B netdown()
|
|
This action causes the widget to execute @CONFIG_XMONISDN_DOWNCMD@ stop.
|
|
.TP 8
|
|
.B netup()
|
|
This action causes the widget to execute @CONFIG_XMONISDN_UPCMD@ start.
|
|
.PP
|
|
The default translation is
|
|
.sp
|
|
.nf
|
|
<ButtonPress>Button2: netup()
|
|
<ButtonPress>Button3: netdown()
|
|
.fi
|
|
.sp
|
|
|
|
.SH SECURITY ISSUES
|
|
There are a number of reasons why you should not run
|
|
.I xmonisdn
|
|
as a `setuid root' program.
|
|
Most importantly, any setuid root program is a potential security hole.
|
|
The scripts that are executed by
|
|
.I 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.
|
|
.br
|
|
If you are sure that your scripts are secure and you insist on making
|
|
.I xmonisdn
|
|
setuid root, you can give the
|
|
.B -r
|
|
option as
|
|
.I first
|
|
option. This will turn off xmonisdn's setuid detection. However, you are on
|
|
your own if you do this!
|
|
.br
|
|
|
|
A better alternative is to put the isdn devices in group
|
|
.B dialout
|
|
(if not so already), and add yourself to the
|
|
.B dialout
|
|
group. This way you have permission to manipulate the ISDN devices, e.g.
|
|
to use
|
|
.I 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
|
|
.I isdnctrl manpage for more info.
|
|
This is a more secure way of controlling the dialing than e.g. by
|
|
manipulating routes.
|
|
|
|
.SH ENVIRONMENT
|
|
.PP
|
|
.TP 8
|
|
.B DISPLAY
|
|
to get the default host and display number.
|
|
.TP 8
|
|
.B XENVIRONMENT
|
|
to get the name of a resource file that overrides the global resources
|
|
stored in the RESOURCE_MANAGER property.
|
|
.SH AUTHOR
|
|
Bernhard Nebel
|
|
.SH SEE ALSO
|
|
.BR isdnctrl(8)
|