The following source distributions are available here:
This is an addition to Casper Dik's auto-install package to do automatic installation of packages in a way analogous to the installation of patches. The directory structure is the same. Here, for example, packages are spooled (with pkgadd -s) to /opt/install/pkgs/5.4. The pkglist.common file and the admin.quiet files reside there as well. The do-pkg script goes in the same directory as the do-patch script, which is /opt/install here. The pkgs script goes in the same directory as the other auto-install scripts. Here, it is /auto/install/scripts. To install packages during auto-update, apply the patch to install_check.
Source is available as a compressed shell archive.
This is an improved directory hashing patch for the Cyrus IMAP server. It consists of two parts. The patch file itself, 285 lines, should be applied from the top-level source directory. It's built against cyrus-imapd-2.0.12. It simply centralizes all directory hashing into one function: dir_hash_c(). By default, this function uses the old hashing scheme, based on the first letter of the user name. When the compile-time symbol USE_DIR_FULL is defined, it uses the new scheme that hashes all letters of the user name to provide an even hash distribution.
Source is available as a compressed tar file.
DRAC is a daemon that dynamically updates a relay authorization map for sendmail. It provides a way to allow legitimate users to relay mail through an SMTP server, while still preventing others from using it as a spam relay.
For more information, go to the DRAC home page.
Dtautologin is an alternative to dtlogin, that automatically starts up a complete CDE session on a workstation console without requiring the session owner to log in and supply a password. It's most useful in secure environments, where only authorized people have access to the console, for monitoring and control applications.
For more information, go to the dtautologin home page.
easysieve.pl is a web application that offers a simplified interface for commonly-used Cyrus sieve script functions. Each web form has a detailed explanation of its purpose, and each field on the form has a block of text explaining what should be entered there.
easysieve.pl is a companion or alternative to Alain Turbide's websieve.pl, available at his web site. It's generally modeled on websieve.pl, but is a complete rewrite.
Source is available as a compressed tar file.
This is a port of the BSD fortune command to Solaris 2.4 and later. See the top-level Makefile for details on how to build and install it.
Source is available as a compressed tar file.
getypnam is a replacement for getpwnam that gets an entry from the passwd.auth.byname NIS map, instead from the passwd file.
Source is available as a compressed tar file.
This is a sendmail feature file for a site that uses the Cyrus LMTP server exclusively for local mail delivery. It requires Sendmail 8.10 or later.
Install it in your cf/feature directory and add a line like this to your .mc file:
FEATURE(local_cyrus, `/var/run/imap/lmtp')dnl
Source is available as a compressed tar file.
imaputil.cgi is used to run the IMAP mailutil command on a web server. With it, various operations can be performed on IMAP mailboxes, including a transfer from one IMAP server to another, by submitting a web form. mailutil is part of the c-client package from Washington University.
Source for imaputil.cgi is available as a compressed tar file. It also requires the getpass preload library to permit the CGI script to supply a password. Source for getpass is also available as a compressed tar file.
load-imap is used to populate a Cyrus IMAP server from Unix mailboxes, preserving the `read' status of messages. The Cyrus mailboxes should have been previously created, with the appropriate quota. User names are taken from the Unix mailbox names.
Source is available as a compressed tar file.
LP-Magic is an enhancement for the Solaris print service, consisting of file type recognizers, filters, interface scripts, network drivers, configuration scripts, and a log summary script.
For more information, go to the LP-Magic home page.
Mailclean and mailsize comprise a mail spool management package for unix. They restrict the amount of spool space available to users, but do it in a nicer way than disk quota would do. They are very configurable, taking parameters from a policy file.
Source is available as a compressed tar file.
These are backend CGI scripts designed to run under UserMode (see below). mailprogram allows the user with a web browser to change password, set vacation, set mail forwarding, etc.
Source is available as a compressed tar file.
The centerpiece of this release of Midas is a multi-threaded NIS server that uses a MySQL database as its data store. This design eliminates some of the limitations of Sun's ypserv, specifically those associated with the dbm file format. The main advantage, however, is the flexibility that comes from basing an authentication server on an SQL database. We are running Midas in production on a system of approximately 90 servers and workstations, with over 40,000 users.
Future versions will include several other network authorization and authentication protocols, all sharing the same MySQL data store.
This software package is suitable for medium-sized Unix networks with between 10,000 and 100,000 users. The NIS server has only been compiled under Solaris, but should be reasonably portable. Only experienced Unix system administrators should attempt to use Midas.
Look in the `doc' directory of the source distribution for the rest of the documentation. Source is available as a compressed tar file.
mysqledit allows you to make changes indirectly to MySQL database tables. It does this by selecting a subset of the rows from the table, and writing them to a temporary file. It then starts your text editor on this file. When you exit the editor, it determines the changes that you have made by comparing the file to an original version, and then does the appropriate inserts, deletes, or updates to the database table.
Source is available as a compressed tar file.
This version of ntalkd, derived from 4.3 BSD talkd, supports both the old and new talk protocols, under SunOS 4.1.3 and Solaris 2.4. It also checks the caller's user name for printable characters, to prevent `flash' attacks.
Source is available as a compressed tar file.
These two PAM modules perform the account management functions of PAM by refering to one of a pair of `allow' or `deny' files. Specifically, pam_auth_by_user can limit access to a specific PAM service to a subset of the passwd database. Likewise, pam_auth_by_shell can limit access to a specific PAM service based on the shell field of the passwd database.
This means that the entire passwd database can be visible on a server, through /etc/nsswitch.conf, but only a few of those users can be allowed to log in. It also allows specific login shells to indicate the status of accounts, so that, for example, users with locked accounts can be denied access to e-mail services.
Source is available as a compressed tar file.
This facility permits a server program, running as an ordinary user, to authenticate users against the /etc/shadow file or the corresponding NIS or NIS+ maps.
The RPC server runs as root, but listens only on the ticlts transport. This restricts client and server to the same hosts and prevents password capture by snooping. Password verification is performed on the RPC server to prevent rogue clients from obtaining all encrypted passwords.
Source is available as a compressed tar file.
The report-spam perl script analyzes the Received headers of a spam e-mail message and determines the actual origin of the message. It then sends a complaint to the appropriate abuse address. It also collects all of the messages that it processes and logs its activity. It keeps a history of complaints so that it will not send duplicate complaint messages within a specified time period.
Source is available as a compressed tar file.
The basic idea is that the CGI script runs as the user and from the user's home directory, with this same environment as if the user had logged in to the machine. It receives the web form on standard input just like a normal CGI script, and of course standard output goes back to the user's web browser. There are several additional environment variables that the CGI script can use to obtain information about the user.
Source is available as a compressed tar file.
The Solaris initgroups() function is used by commands such as cron, that run as root and execute other commands as ordinary users, to set the supplementary group list for the user. When NIS is in use, initgroups() enumerates the entire group map to obtain the groups. It's equivalent to `ypcat group'. This is inefficient, and can be quite slow if the group map is large. In addition, the group map is not cached locally, so the request must always go to the NIS server. When many workstations and servers all run the same cron commands at exactly the same times, the simultaneous requests can overload the server, causing it to run out of file descriptors or connections.
NIS does have a map called netid.byname that does contain exactly the information needed by initgroups(), but it's not used because other databases, such as NIS+, do not have this map. A lookup in this map, which is equivalent to `ypmatch XXX netid.byname', is much more efficient. The shared library ypinitgroups.so.1 contains a replacement version of initgroups() that uses the netid.byname NIS map to obtain group information. This file should be installed in /usr/lib. To use it, simply place the string `LD_PRELOAD=ypinitgroups.so.1' in the environment before starting applications such as cron. This can most simply be done at boot time with init.d scripts.
Source is available as a compressed tar file.