\chapter{Overview}\label{sec:intro} \section{What's in SUnet?} The Scheme Underground Network Package contains a set of libraries for doing Net hacking from Scheme/scsh. It includes: \begin{description} \item[The SUnet Web server] This is a complete implementation of an HTTP 1.0 server in Scheme. The server contains other standalone packages that may separately be of use: \begin{itemize} \item URI and URL parsers and unparsers. \item A library to help writing CGI scripts in Scheme. \item Server extensions for interfacing to CGI scripts. \item Server extensions for uploading Scheme code. \item Simple structured HTML output library \end{itemize} \item[The SUnet ftp daemon] This is a complete ftp server in Scheme. \item[ftp client library] Access an ftp server programmatically. \item[SMTP client library] Forge mail from the comfort of your own Scheme process. \item[POP3 client library] Get at your mails from inside scsh. \item[RFC822 header library] Read email-style headers. Useful in several contexts (smtp, http, etc.) \item[Daytime and Time protocol client library] Find out what time it is without paying for a Rolex. \item[An \texttt{ls} clone] Display Unix-style directory listings without running \texttt{ls}. \end{description} \section{Obtaining the system} The SUnet code is available \urlhd{http://www.scsh.net/sunet/}{here}{from \url{http://www.scsh.net/sunet/}}. To run the code, you need version 0.6.3 or later of \urlhd{http://www.scsh.net/}{scsh}{scsh from \url{http://www.scsh.net/}}. \section{How to use the packages} Scsh is started in the SUnet top-level directory. Then, the description file of the modules is loaded and the \texttt{ftp} module is opened (to use a ftp client). After the things are done, scsh is finished via the \verb|,exit| command. % \begin{alltt} atari-2600[72] scsh-0.6.2 Welcome to scsh 0.6.2 (Gambit-C 4.0) Type ,? for help. > ,config ,load packages.scm modules.scm > ,open ftp Load structure ftp (y/n)? y [ecm-utilities ecm-utilities.scm] [netrc netrc.scm] [ftp ftp.scm] > ; call library code > ,exit atari-2600[73] \end{alltt} %%% Local Variables: %%% mode: latex %%% TeX-master: "man" %%% End: