\chapter{Overview}\label{sec:intro} \section{What's SUnet?} The Scheme Untergrund Networking Package (SUnet, for short) contains a set of libraries for doing Internet hacking from 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 is accompanied some libraries which may also be used separately: \begin{itemize} \item URI and URL parsers and unparsers \item a library for 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 anonymous ftp server in Scheme. \item[ftp client library] This library allows you to access ftp servers programmatically. \item[netrc library] This library parses authentication information contained in \verb|~/.netrc|. \item[SMTP client library] This library allows you to forge mail from the comfort of your own Scheme process. \item[POP3 client library] This library allows you to access your POP3 mailbox from inside scsh. \item[RFC822 header library] This library parses email-style headers. \item[Daytime and Time protocol client library] This library lets you find out what time it is without paying for a Rolex. \item[DNS client library] This is a fairly complete, multithreaded DNS library. \item[An \texttt{ls} clone] This library Displays 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} Untar the SUnet distribution somewhere. Fire up scsh and load the SUnet \texttt{packages.scm} file into the configuration package. After that, all structures defined by SUnet are available: % \begin{alltt} atari-2600[72] scsh-0.6.3 Welcome to scsh 0.6.3 (Health Reform) Type ,? for help. > ,config ,load packages.scm modules.scm > ,open ftp Load structure ftp (y/n)? y [netrc netrc.scm] [ftp ftp.scm] > ; call library code > ,exit atari-2600[73] \end{alltt} %%% Local Variables: %%% mode: latex %%% TeX-master: "man" %%% End: