@(#)RELNOTES	6.6 00/02/04

XMCD/CDA RELEASE NOTES
----------------------

This distribution comes with several 32x32 pixmap files suitable
for use as an xmcd desktop icon.  These are installed in
XMCDLIB/pixmaps:

    xmcd.icon - for Novell/SCO UnixWare, 2 colors
    xmcd_a.px - for SCO Open Desktop (XPM2 format), 2 colors
    xmcd_b.px - for SCO Open Desktop (XPM2 C format), 2 colors
    xmcd.xpm  - for other systems that use XPM format, 2 colors

You can use the appropriate icon setup utilities under each of
these environments to create an xmcd icon (with which you can use to
launch xmcd).

Xmcd and cda must be installed as a suid-root program on virtually
all platforms.  This is because these utilities use the SCSI
pass-through mechanism to control the CD-ROM drive, which requires root
privilege on most systems.  Security issues have been addressed,
however, since neither application will send read/write commands to a
device.  They will also refuse to send any more command to a device if
the initial inquiry shows that the device is not a CD-ROM or CD-R.
Also, xmcd changes the uid and gid to that of the real user before
reading/writing CD database files or executing external programs.

On systems that do not require super-user privilege for SCSI
pass-through, it is actually more secure to turn off the user and group
permissions of the SCSI device nodes, and make xmcd and cda suid-root.
This prevents malicious users from writing other programs that send
arbitrary commands to the devices.

Xmcd and cda have also been developed, debugged and rigorously tested
with security as a very high priority.  If, despite this, you feel
uncomfortable about the suid aspect of xmcd/cda then please do not
use these applications.

Exceptions to the suid-root requirement:  If you configure xmcd
and cda to operate the drive via the "SunOS/Solaris/Linux ioctl
method" the "FreeBSD/NetBSD/OpenBSD ioctl method" or the "AIX IDE ioctl
method" (see the NON-SCSI CD-ROM DRIVES section below), suid-root
privilege is not required.  Likewise, suid-root permissions is not
required on Solaris systems.  Also, the suid requirement does not
apply on the Digital OpenVMS platform.  Lastly, suid-root privilege
is required on QNX.

If your platform does not require suid-root priviledge and you are
installing xmcd and cda as a non-root user, then you must have read
and write permissions to the specified BINDIR, XMCDLIB and MANDIR
directories.

If you run xmcd/cda without suid-root privilege, then you must make
sure that the CD-ROM drive devide node has the appropriate permissions
for "other" users.  On most platforms it is sufficient to have read-only
permission, others may also require write permission.

Your xmcd/cda binary should only be run on the same OS platform group
that it was compiled on.  For example, UNIX SVR4.0 binaries must
not be run on a UNIX SVR4.2 system.  Likewise, a binary compiled
on a SunOS 4.x platform cannot be used on a Sun Solaris 2.x and later
system.

The XMcd.ad file contains several long lines broken into separate lines
using the "\" continuation marker (in particular, the
"XMcd*someWidgetName.fontList" lines).  This has been known to cause
error messages on some Motif implementations.  To remedy this, remove
the "\" continuation markers and join the multiple lines back into a
single line.

Do not use xmcd/cda if the CD-ROM drive contains a mounted filesystem
data disc (ISO-9660, High Sierra or other formats).  Always use the
"df" or "mount" command to check if such a filesystem is mounted
before invoking the application.

The "Submit" feature of xmcd sends the local CD database information
pertaining to the loaded CD to the CDDB(tm) master server via e-mail.
Xmcd invokes an external mailer to send the mail.  If your CD information
will contain 8-bit characters (e.g., umlaut or other accents), you
should configure xmcd to use a MIME-compliant mail program (that
supports the "quoted-printable" encoding scheme).  Without MIME
encoding, your submissions may have each character's 8th bit stripped
off.  To configure the mail program that xmcd will use, edit the
LIBDIR/app-defaults/XMcd file and edit the cddbMailCmd parameter.

Certain OS platforms will print console error messages or record error
messages in a log file if the CD device is accessed without a CD loaded
in the drive.  If you encounter this situation, the workaround is to
load a CD in the drive before starting xmcd or cda, and refrain from
leaving xmcd in the "no disc" state for an extended period of time.

Unless otherwise instructed by your OS or system hardware vendor,
it is generally a bad idea to turn off the power of the CD-ROM drive
while the operating system is running.  Cycling the power may
cause the CD-ROM drive to assert a SCSI bus reset, which is not always
gracefully handled by your system's SCSI device driver (i.e., possible
system hang or crash).  Thus, it is best to turn on the CD-ROM drive
before booting the OS, and do not turn it off until after OS shutdown.

Although xmcd and cda should run reliably on the supported platforms
and CD hardware as noted, if you encounter a problem, please send a
report to "xmcd@amb.org" with detailed descriptions of the configuration
and problem symptoms.  It would also be helpful to reproduce the
problem while running either application with the -debug option, and
capture the diagnostic output.  Send the output to the author for
examination.  Please also include detailed information about your
software and hardware configuration.

Better yet, send bug fixes!

The modular design of xmcd and cda is such that support for other UNIX
environments and CD-ROM drives can be readily added.  See the PORTING
file for details if you are interested in contributing to the development
effort.  Before you start a porting effort or add significant code,
contact the author to ensure that this effort isn't being duplicated
by others.

If you wish to remove xmcd and cda from your system, this is how to do
it:

    1. Log in as root
    2. cd BINDIR
       rm xmcd cda cddbcmd dp2xmcd wm2xmcd .xmcd_start
    3. rm -r XMCDLIB

BINDIR is the executable directory that you specified when installing
xmcd.  XMCDLIB is the top level directory of the xmcd library directory
hierarchy.

