Internet Gopher User's Guide Editor Paul Lindner DISCLAIMER OF WARRANTY COPYRIGHT NOTICE Copyright (C) 1993 by the Regents of the University of Minnesota. All rights reserved. Permission to use, copy, modify, and distribute the Gopher software for noncommercial purposes and without fee is hereby granted, provided that the University of Minnesota copyright notices and this permission notice appear inall copies, and that the name University of Minnesota not be used in advertising or publicity pertaining to this software and documentation without specific,written prior permission. The University of Minnesota makes no representations about the suitability of this software and documentation for any purpose. It isprovided 'as is' without express or implied warranty. Commercial use of Gopher requires specific permission from the University ofMinnesota; contact the internet gopher development team at for further information. Printed in the U.S.A. TRADEMARKS Internet Gopher is a trademark of the University of Minnesota.UNIX is a registered trademark of UNIX system Laboratories, Inc. All other products or services mentioned in this manual are covered by thetrademarks, service marks, or product names as designated by the companies who market those products. ISNB 0000-000000-0 ABCDEFGHIJ-DO-89 Internet Gopher User's Guide iii CHAPTER 1 Introducing Gopher 7 Introduction 7 What is the Internet Gopher? 7 Types of Information 8 Finding Information 9 Some Example Information 10 Using this Manual 11 Platforms Supported 11 Conventions used in this Manual 12 Support Questions? 12 CHAPTER 2 Getting the Internet Gopher Software 15 Getting the Software 15 Subsequent Retrievals 18 Contents Contents iv Internet Gopher User's Guide CHAPTER 3 TurboGopher 19 Overview 19 Requirements 20 Getting Help 20 Navigating Gopherspace 21 Alternate Views 23 Connecting to Terminalbased Services 23 Advanced Navigation Features 24 Authenticated Servers 25 Bookmarks and Bookmark files 26 Item Attributes 26 Canceling Slow Network Operations 27 Starting and Configuring TurboGopher 27 TurboGopher Options 28 Miscellaneous 29 For Experts 29 CHAPTER 4 PC Gopher III 33 System Requirements 33 How to Obtain the Software 34 Installation 34 Installing the Gopher Software 36 Configuring Gopher 37 Application Configuration 38 Network Configuration 40 Advanced Network Configuration Options 42 Gopher and Command Line Switches 44 The Gopher User Interface 46 Using Gopher 52 Help! 58 Acknowledgments 59 Internet Gopher User's Guide v Contents CHAPTER 5 The UNIX Gopher Client 61 Overview 61 Requirements 61 Starting the UNIX Gopher Client 62 Navigating Gopherspace 62 Special Items 63 Advanced Navigation Features 65 Bookmarks 66 Saving and Downloading 66 CHAPTER 6 Installing the Unix Gopher Distribution 69 Overview 69 Requirements 69 Compatibility 70 NeXT Indexing 71 WAIS Indexing 71 Preparing to Compile the Distribution 72 Other Optional Features 74 Special Modifications for Compatibility 75 Compiling and Installing the Distribution 76 Testing 77 CHAPTER 7 Configuring the Unix Server 79 Overview 79 Requirements 79 What is gopherd? 80 First Steps 80 Adding Information to the Server 80 Starting the Gopher Server 84 Optional Features for the Gopher Server 85 Contents vi Internet Gopher User's Guide CHAPTER 8 Go4gw The Gopher Gateway 87 Overview 87 Requirements 88 Installation 88 Writing New go4gw Gateways 89 CHAPTER 9 Common Questions 93 Overview 93 Internet Gopher User's Guide 7 CHAPTER 1 Introducing Gopher This chapter describes how you can use the Internet Gopher system to easily publish and retrieve information on a network. Introduction The internet is a wide vast place with many resources available. Searching, findingand retrieving these resources has been difficult in the past. The Internet Gopher was developed to let an average user access these resources quickly and simply. What is the Internet Gopher? All over the world, data is stored on computers, many of which are connected bythe Internet, a confederation of computer networks. With Internet Gopher you can easily access publicly available information stored on many of these connectedcomputers. Introducing Gopher 8 Internet Gopher User's Guide Gopher combines features of electronic bulletin board services and databases,allowing you to either browse a hierarchy of documents, or search for documents that contain certain words or phrases. The Internet Gopher software was conceived at the Computer and Information Services department of the University of Minnesota. Software developed at the University of Minnesota is freely distributable for non-commercial puposes. Types of Information Gopher supports a diverse range of data, all of which can be accessed by a simplekeystroke or click of the mouse. Here are some of the most popular data types: Directories The most basic information type in gopher is a directory. A directory is a list ofdocuments. Directories allow easy browsing of information. Items can be organized into specific areas, making it easy to find the information you need. In addition, a special type of directory called a "link" allows gopher to referencedirectories on a different computer. This allows gopher to traverse a hierarchy of information residing on multiple machines. These links are transparent, you won'tnotice that you're connecting to another machine. Text Files Most of the information in gopher is stored in ASCII text files. These files can beused with most popular computer applications Search Items This is a special kind of directory. You can specify any number of keywords to asearch item. Only those documents that match the given criteria will show up in the resulting list. Internet Gopher User's Guide 9 Finding Information Telnet Sessions This item type is a reference to a public telnet connection. Selecting one of theseitems will connect you to a system using terminal emulation. Phone Books This document type is a special version of the search item based upon the Ph/Qiserver developed at the University of Illinois. The phone book search allows you to search on certain fields of a database, such asname, phone number, or address. Multimedia Gopher supports a number of multimedia file formats including images, audio andvideo file formats. Images such as weather maps are available. Audio data, including the presidential debates is available. Movies in Quicktime and MPEG are available. Formatted Text Some Gopher servers will allow you to view documents in formats other than text.Postscript is one of the most popular formats for this "Rich Text." Finding Information When using Gopher, looking for information located in other continents is as easyas looking for information residing on a computer in the next room. When using Gopher, you begin at the first or root level of your home Gopher Server. From thereyou can choose between two methods or locating information: browsing and searching. Browsing You may want to follow the paths in Gopher from level to level until you find thedata you're looking for. From the first level, you can choose a topic, which leads to another level, and another, until you finally come to an item that looks interesting. Internet Gopher User's Guide 10 Some Example Information For instance at the University of Minnesota, you might look for a salmon recipe bylooking in the Fun & Games directory, then in the Recipes directory, and then in the Seafood directory until you see an item with salmon in its title. Searching Alternatively, you may want Gopher to do the work for you by using a search item.For instance, at the University of Minnesota you could select a search item called Search Recipes. A message prompts you to type in the words you're looking for;you type salmon. The server searches the text of a collection of items and lists theones that have the word salmon in them. You can then examine these items until you find one that contains a recipe that strikes your fancy. Additionally, some search items will let you specify a complex search expressionfor your query. If you only had sugar, eggs and chocolate chips, you could search for items that contained all of these words by specifying sugar and eggs and "chocolate chip" to the Search Recipes item. Some Example Information We think the easiest way to get a grasp of the information inside of GopherSpace isto try it. However, for your listing pleasure we have a lisitng of some of the more popular information: * Weather Forecasts and current conditions for the United States and Canada. * Recipes * Movie Reviews. * Computer Questions and Answers. * Weather Maps. * Movies of Chemical reactions. * Email addresses and phone books for most major institutions * Newspapers and USENET news. * Full electronic versions of many of the major classics, Shakespeare, Moby Dick,etc. * Library Catalogs from around the world. * And many many more! Introducing Gopher 11 Internet Gopher User's Guide Using this Manual You do not need to read this entire manual to use the Internet Gopher. Most likely,you will only need to read the chapters about the Internet Gopher client for yoursoftware. If you wish to publish information you will want to pay attention to the chaptersreferring to the Internet Gopher servers for your system. The First Steps See "Getting the Internet Gopher Software" on page 15 for information aboutretrieving and installing the necessary software. Then read the chapter appropriate for your system. Common Questions It's a good idea to read through the"Common Questions" on page 93. This chaptercontains answers to the most frequently asked questions about the Internet Gopher from installing it to serving data. As Needed Chapters x and x may be consulted when you blah blah blah. For an interesting history discussion refer to Chapter X - Growing Gopher. Platforms Supported The Internet Gopher works on a number of platforms and operating systems. Theoperating system for all of the following must have TCP/IP networking support and a connection to a network. Gopher Clients Clients to access data are available for the following platforms: * Macintosh Internet Gopher User's Guide 12 Conventions used in this Manual * DOS * Microsoft Windows * Unix, fullscreen, emacs and Xwindow * VMS full screen. * NeXTstep * OS/2 * VM/CMS * MVS Gopher Servers Servers to publish information are available for the following platforms: * Unix * VMS * Macintosh * VM/CMS * DOS * MVS Conventions used in this Manual This manual uses these conventions: * The Courier font is used to to show sample output of textual clients. Bold Courier is used whenever you have to enter text or commands. * In reference to the Unix Server, gophertop refers to the directory where thegopher source code is installed. * Figure boxes are used to show usage. Support Questions? We hope you enjoy using Gopher and that it helps you in you to access and publishdata quickly and easily. Internet Gopher User's Guide 13 Support Questions? If you have questions or comments, please send us electonic mail atgopher@boombox.micro.umn.edu. Or send paper mail to the following address: Internet Gopher Development Team 100 Union Street SE #152 Shepherd Labs University of Minnesota Minneapolis, MN 55455 Or fax us at +1 (612) 6256817. Introducing Gopher 14 Internet Gopher User's GuideInternet Gopher User's Guide 15 CHAPTER 2 Getting the Internet Gopher Software This chapter will show you how to get the Internet Gopher software. You shouldonly need to read the first section "Getting the Software" on page 15 and the sections appropriate to your platform. Getting the Software You will need to retrieve the Internet Gopher Software from the software repositoryat the University of Minnesota. Follow these instructions to do so. The First Retrieval Most of the software for the Internet Gopher is available on the machineboombox.micro.umn.edu. This machine is on the Internet network. To retrieve the software for the first time you'll need to use an FTP client on a local machine connected to the internet. FTP, the file transfer protocol, is a quick, reliable and widely popular means oftransferring files across the Internet. Getting the Internet Gopher Software 16 Internet Gopher User's Guide FTP clients come in many varieties. On a Unix or VMS system the command iscalled ftp. On the Macintosh there are two ftp applications, Fetch, and Xferit.NCSA has developed a version of ftp for the IBMPC called `ftp'. Refer to your local network administrator if you don't have an ftp client. Once you connect to the boombox server you will want to change to the directory /pub/gopher The different portions for gopher are in this directory. The file 00README contains descriptions of each directory. Refer to Table 1, "Available Gopher Software," on page 16 for a breakdown of the contents of each directory. TABLE 1. Available Gopher Software Directory Description Mac_server Gopher server for the Macintosh MacintoshTurboGopher A graphical Gopher client for the Macintosh NeXT A graphical Gopher client for NeXTstep PC_client A graphical Turbovision based client for PCs running DOS and using the Clarkson/Crynwr packet drivers PC_server Two PC Gopher server implementations, one based on Phil Karn's NOS, another using Clarkson/Crynwr packet drivers. Rice_CMS A Gopher server and client for VM/CMS systems written at Rice University. Unix Gopher for Unix. Includes a Gopher server, full screen client, Xwindow client, and an emacs client. VMS Gopher for VMS. Includes a Gopher server and full screen client VieGopher A Gopher Server and client for VM/CMS written at Vienna. gopher_protocol Descriptions of the Gopher network Protocol are stored here. incoming Submitted untested gopher software. mvs A Gopher server and client for MVS. os2 A Gopher client for OS/2. Internet Gopher User's Guide 17 Getting the Software Each directory contains gopher for a specific platform. You should retrieve the software from the specific directories that are compatible with your hardware and operating system. There are README files inside of each directory that will help youdecide which files to transfer. Once you find a file that interests you.you should use the GET function of your FTPclient. This usually means typing "get filename", or clicking on the appropriate file with your mouse.. Some clients, notably Unix, VMS, and IBMPC will reqire you to specify a binary"transfer mode." You can set this mode by typing binary at the ftp> prompt. Refer to Figure 1, "Using FTP with Unix," for an example ftp session to boombox.micro.umn.edu FIGURE 1. Using FTP with Unix % ftp boombox.micro.umn.edu Connected to boombox.micro.umn.edu 220 boombox FTP server (Version 4.1 Tue Apr 10 05:15:32 PDT 1990) ready. Name (boombox.micro.umn.edu:lindner): anonymous 331 Guest login ok, send ident as password. Password:(TM) 230 Guest login ok, access restrictions apply. ftp> cd /pub/gopher/Unix 250 CWD command successful. ftp> binary 200 Type set to I. ftp> get gopher1.12.tar.Z 200 PORT command successful. 150 Opening BINARY mode data connection for gopher1.12.tar.Z (306512 bytes 226 Transfer complete. 306512 bytes received in 2.4 seconds (1.3e+02 Kbytes/s) ftp> Getting the Internet Gopher Software 18 Internet Gopher User's Guide Subsequent Retrievals Things get easier after the first retrieval. You don't have to use the arcane ftp command to get the Gopher software, you can use Gopher itself. You will want to familiarize yourself with your gopher client before doing thisthough. See the chapters that follow to find out about clients. You can use your Gopher client to connect to the software repository at boombox.micro.umn.edu And choose the files, just as you would with ftp. However, now you can just selectthe software you want from the menu instead of typing commands to retrieve the file. Internet Gopher User's Guide 19 CHAPTER 3 TurboGopher TurboGopher is a Gopher client for the Macintosh. The following chapter containsinformation on using, configuring and administrating the TurboGopher application. A Websters definition is: TurboGopher n. 1. A small rodent with a turbocharger strapped on its back toincrease its speed and ferocity. 2. (Amer. colloq.) Native or inhabitant of Minnesota after consuming three double espressos. 3. (Amer. colloq.) An Olympic sprinterwho runs errands, does oddjobs, fetches or delivers documents for office staff. 4. (computer tech.) Speed-optimized Macintosh software following a simple protocolfor tunneling through a TCP/IP internet; network speed is achieved by using turbocharged software; incoming bits spin the turbine that pumps out the outgoing bits. Overview TurboGopher is a Macintosh application that we believe is (still!) the fastest Macintosh Gopher client available. Beyond optimizing TurboGopher for raw speed while fetching documents and directories, we turbocharged the user interface by displayTurboGopher 20 Internet Gopher User's Guide ing information as soon as possible... you can read the first part of a document ordirectory while the rest is being fetched. This version of TurboGopher also supports many of the Gopher+ extensions to the original Internet Gopher protocol. In spite of the design goal to run fast as possible, TurboGopher is a good Mac citizen: it shares time with other applications. You can put TurboGopher in the background to fetch lengthy items in the background while you work in anotherapplication in the foreground. Requirements You will need a copy of the TurboGopher application, if you haven't retrieved thisyet refer to "Getting the Internet Gopher Software" on page 15. You will also wantto retrieve the "helpler applications." These applications will allow you to connect to telnet sites, view graphics, etc. TurboGopher requires a Macintosh running a system 6.0.7 or later. We highly reccomend using System 7 or higher. Without it you won't be able to automatically launch the "helper applications." You should have at least one megabyte of memory, more if you're using Multifinder or System 7. You will need a correctly configured copy of MacTCP and a network connection. Ifyou don't have MacTCP you can get it from the Apple Programmers and Developers Association (APDA). MacTCP is a licensed product, it is not free. Getting Help The information in this chapter can also be found by picking the menu item "Help"from the "Gopher" menu of TurboGopher. In addition to this information you are reading right now, if you are using System 7(and we strongly recommend that you do), some Balloon Help is available in TurboGopher. See your Macintosh System 7 documentation for information on usingBalloon Help. Internet Gopher User's Guide 21 Navigating Gopherspace FIGURE 2. TurboGopherTop Level Navigating Gopherspace To navigate through gopherspace, doubleclick on any interesting items to open(fetch) them. If you double-click on a file, TurboGopher will fetch and display the file. Opening a folder will let you view its contents. Double-clicking on the ques-tion-mark (Search) icons will let you search a database. On most gopher servers these databases are full-text indexes of a collection of information. Full-text indexmeans that every word in every document is considered a keyword. The best way to search a gopher full-text database is specify the words for which to search whenTurboGopher presents you with a dialog box. The results of the search are returned as a list of documents containing those words. Phone Books If you doubleclick on the phone-book icons you can search electronic phonebooks. Phone book databases are structured in the sense that they have fields (i.e. a TurboGopher 22 Internet Gopher User's Guide name field, an address field, and a phone number field). The simple phonebooklookup dialog assumes that you want to search for someone by name. Click on the `More Choices' button if you wish to specify exactly which fields to search in,when you formulate a query. The result of the query is displayed in a document. FIGURE 3. TurboGopher Phone Book Search Software Archives Disk icons represent archived Mac software or documents that you can fetch; theseitems will be saved to your hard disk. Such items are often stored in compressed form to save space. You need to have certain Mac utilities to `uncompress' suchitems. The most common such utilities are StuffIt and Compactor. Both may be obtained from the InfoMac archives with gopher. If you are running System 7 andTurboGopher retrieves an item that needs to be `unstuffed' or `uncompacted', it will ask you if it should open them via Finder and the appropriate decompress util-ity. We recommend that you use CptExpand and SitExpand for your decompress needs; both of these are available with the TurboGopher software distribution aswell as from the Info-Mac archives. Internet Gopher User's Guide 23 Alternate Views Items that are specific to MSDOS are seen as documents with a tiny `PC' embla-zoned on them; similarly items specific to UNIX show up as documents with a tiny `UX' on them. You can retrieve either of these kinds of items if you like. TurboGo-pher will ask you if you wish to save them to your disk. You may not `view' these items as text. In fact it will probably make very little sense to fetch such itemsunless you intend to further transfer them later from your Mac to another kind of computer, or if you have some special tools on your Mac that will allow you to usethese kinds of items. Pictures Items appearing as documents with a starburst on them are probably graphics orpicture files (typically in GIF, JPEG, or PICT format). TurboGopher will transfer such files, save them on your disk, and optionally launch a pictureviewing applica-tion if you wish to view the picture. Alternate Views Gopher+ server may store more than one representation of a document (an image,text, sound, video, etc. ). If more than one view of a document is available, you can select between the views by choosing the `Get Alternate Views' item from theGopher menu. When alternate views are available, an alternate view window will be displayed with descriptions of the views. For many alternate views of documents, TurboGopher will save a copy of the itemto your Macintosh's disk, and then (under System 7) ask the Finder to launch a helper application to actually display the item. You can configure which applications should be used as TurboGopher helpers; to do this see the section on configuration options. Connecting to Terminalbased Services Opening the `terminal' icons will make TurboGopher launch NCSA Telnet (orTN3270 if appropriate) and start a terminal session to a terminal-based information system. Typically these are library catalogs or other such services. Note that for this TurboGopher 24 Internet Gopher User's Guide to work, you need to have Telnet or TN3270 installed on your Macintosh. If you arestill running System 6, TurboGopher will only save a Telnet session file rather than launch Telnet; this is another good reason to run System 7 on your Mac. Following the Macintosh guidelines, TurboGopher starts out displaying text in thestandard application font. The Font and Size menu items let you change font appearance for documents and lists. TurboGopher will attempt to display phonebook lookup results in a monospaced font (Monaco), effectively ignoring your font selection. It IS possible to change the font of a phonebook results lookup windowafter it has been opened; however things will not line up correctly and generally look icky. Advanced Navigation Features If you doubleclick on a folder while holding down the Option key, TurboGopherwill re-use the current window instead of using a new one to display the folder contents. Some folks like to do this to prevent screen clutter and keep from having toomany open windows. You may use the up and down arrow keys on your keyboard to move up and downlists in windows. The Enter or Return key opens an item (and is equivalent to doubleclicking on an item). Use of the arrow keys is not supported on the Mac Plus....(sorry). You may also type the first letter (or first few letters) of an item name in a list andTurboGopher will highlight the first item it finds that matches (sort of like the Finder does in list views). The Find menu item is available to locate an item in alist: just type a string in the Find dialog. Find can also be used to search for text in open document windows, by the way. To delete any item in any list window, click once on the item to select it. Thenchoose `Delete Item' from the Gopher menu. TurboGopher remembers the last fulltext index search (item with question-markicon) you used. If now you hold down the Option key and double-click on a word in a document window, TurboGopher will query that search service for all documentscontaining the word you selected. You must use a search service before this pseudohypertext capability is accessible (TurboGopher needs to know which search ser-vice to use in your hypertext query). Internet Gopher User's Guide 25 Authenticated Servers The Recent menu lets you go back to any directory window you have viewed during your Gopher session. The left and right arrow keys may be used to go to previous or next windows; they are equivalent to traversing the recent menu upwards ordownwards. Note that the Recent menu only remembers directory windows you visit. Document or phone-book lookup windows are not listed. If you close a window by clicking in its close box while holding down the Optionkey, then (like Finder) TurboGopher will close all open windows. If you click in the close box while holding down the Shift key, then the cache ofinformation about that window will be released. So the next time you open this window from the recent menu, TurboGopher will have to fetch the contents overthe net once more. Of course, if you hold down both Option and Shift keys then all windows are closedand all caches released. Caches are explained below. For the terminally curious, if you hold down the Shift key while single clicking onan item in a list, TurboGopher will display the item's Gopher selector string, host name, port number and Gopher+ baggage in the status pane. This is a quick peek. Ifyou want to copypaste this information, use the Get Attribute Info menu item found under the Gopher menu; the information you want is in the +INFO attribute(the first line). If wish to fetch an item that is a Macintosh file (binhexed file, shows up with theicon of a disk), but don't want TurboGopher to automatically dehex it as it fetches, you may force TurboGopher to fetch the document as a raw, unprocessed file. To dothis, hold down the Control key while you doubleclick on the item. For folks using DownLine or other applications for de-binhexing and de-archival, this is one wayto do what you want. Authenticated Servers TurboGopher now supports AdmitOne Authentication for Gopher+ servers thatrestrict access to information on a peruser basis. When you attempt to open a directory that has such access restrictions, TurboGopher will prompt you for your user-name and password on the restricted-access server. TurboGopher and the server negotiate to establish a valid ticket, and subsequent requests to the server use a new TurboGopher 26 Internet Gopher User's Guide ticket for each request. This means that your password is never sent over the network, and that you only have to enter your password to get the initial authorization. Bookmarks and Bookmark files If you formulate a search or find a folder you would like to come back to quicklylater, you can use the Set Bookmark menu item to save your place. Set Bookmark saves a reference to a folder, file, search, terminal session... in fact any Gopheritem. If nothing is selected in the front list window, a bookmark is made for a folder representing the window. Try it, it's easier to do than to say. Bookmarks are placed in a special Bookmarks window. Use the Show Bookmarksmenu item to open the Bookmarks window. Bookmarks are remembered even after you quit TurboGopher; contents of the Recent menu are however forgotten. Itmight be useful to consider the Bookmarks window to be a special kind of `worksheet' or `construction area' for you to build your own scratch-pad of useful gopherresources. You can save your Bookmarks window or ANY list window or ANY selected itemas a Bookmark file (`Save as Bookmark FileI' menu item). Bookmark files are small and may be exchanged with other Gopher users if you wish. The `Import Bookmarks' menu item lets you read a Bookmark file right into yourBookmarks window. The `Open Gopher Bookmark File' menu item on the other hand, places the contents of a bookmark file in a window of its own. The latter isequivalent to doubleclicking on bookmark files from the Finder. If you launch TurboGopher by double-clicking on a bookmark file, it will not immediately connect tothe Home Gopher server, but will open the Bookmark file instead. So you may use bookmark files as custom Home Gopher servers. Item Attributes More sophisticated Gopher servers (referred to as Gopher+ servers) can provideyou with information about any selected item, much like the Finder's Get Info menu lets you get information about a Mac item. Internet Gopher User's Guide 27 Canceling Slow Network Operations Use the `Get Attribute Info' menu item of the Gopher menu for this. Canceling Slow Network Operations TurboGopher executes most requests in a few seconds. A document or directory isdisplayed as it is received. However, if a server is especially slow or busy or if you have started to fetch what appears to be a very long and uninteresting document ordirectory, you may cancel the fetching process by closing the document or directory window. Once you have closed the window, TurboGopher assumes that it does notneed to fetch the remainder of the item. Note that when you fetch a file that is saved to your Mac disk, TurboGopher displays a window with the status of the fetch.Again, to cancel the fetch operation you can simply close the window. A more extreme method for canceling a network operation is to choose the CancelAll Requests item from the Gopher menu (or by holding down the command key and typing a period). If you open a file or folder by doubleclicking while holdingdown the Option key (to conserve screen space as described earlier), TurboGopher will also cancel the running network transaction if one is outstanding; and this is infact exactly what you want over low speed connections such as SLIP. Both these features make TurboGopher seem faster and more responsive over SLIP links. TurboGopher runs happily in the background (if you wish to fetch something verylarge or from a very slow server). You may also fetch an item (file or directory) while another one is still being fetched, since TurboGopher supports multiple con-current streams. Command-Period will cancel all active streams. Starting and Configuring TurboGopher The `Start Gopher' item under the File menu opens a window containing the initialdirectory fetched by connecting to your home Gopher server. TurboGopher is preconfigured to connect on startup to one of the University of Minnesota's Gopherservers. You may change your home Gopher server by using the `Configure' item under the Setup menu. To do this you need the full Internet domain name and portof the desired primary server. You can configure TurboGopher to use one of two alternate primary servers. This distributes the load for a campus over two different(but equivalent) primary servers and it prevents a single point of failure. TurboGoTurboGopher 28 Internet Gopher User's Guide pher will randomly try one of the two and then try the other if the first is down. Ifyou don't understand this, you don't have to bother with it or with the Another Gopher item under the File menu. TurboGopher attempts to speak Gopher+ to all Home Gopher servers, and thenbacks off if it sees that the server does not have Gopher+ style items. This is a bit presumptuous, and it confuses some servers. These servers should be revised in thefuture so they don't confuse so easily. If configured to connect to a Home Gopher server and nothing is displayed, you may want to try using the `Another Gopher'item under the file menu and making sure that the gopher+ check box is NOT checked. TurboGopher Options You can use the Options item under the Setup menu to customize some behaviorsof TurboGopher. The Single Directory Window checkbox makes TurboGopher recycle its windows whenever you open a new directory (and not just when youhold down the Option key). Use the ISO Latin1 checkbox if you need to use Latin/Romance language charac-ters. Many sites in Europe have a need for this to display their national characters. If you visit European gopher servers and the accented characters don't display cor-rectly, you may want to choose this option. The Extended Directory listings checkbox is disabled; it's for a future feature. If you visit Gopher servers with Japanese or Chinese documents, and you use a Japanese or Chinese font while running System 7.1's WorldScript, Gopher will display Japanese SJIS (MS Kanji) or traditional Chinese characters (BIG-5). When you save documents, TurboGopher normally saves them as MacWrite IITEXT documents (we like MacWrite II). If you'd rather save them as TEXT documents of your favorite word processor or editor, use the appropriate `Set' button inthe Options dialog to select the word processor of your choice. With Gopher+ servers, items may be available in a number of alternate views.When fetched, these alternate views are typically saved as a file to be viewed by a Mac application. If you are a network/macintosh cowboy, you can change the Macapplication and Mac filetype associated with a Gopher+ alternate view.... this Internet Gopher User's Guide 29 Miscellaneous changes the helper application that TurboGopher asks the finder to launch to viewthe document. Doubleclick the view in the list and you will be presented with a dialog in which you can select the application to be used as a TurboGopher helper. By the way, you won't be able to do this if you're running System 6... Miscellaneous TurboGopher saves or caches the item lists for all visited directories (even whenwindows are closed). Since these lists don't ever have to be fetched from the server again, this dramatically increases speed when choosing any item from the Recentmenu. If TurboGopher runs out of memory it will first inform you and then automatically release the caches for closed windows. As mentioned earlier, you may selectively release a directory's cache by closing thewindow while holding down the Shift key if you wish more control over memory. TurboGopher stores what it needs in a file called TurboGopher Settings; this livesin the Preferences folder, which is found in your System Folder. If you drag this file out from the Preferences folder and place it in the same folder as TurboGopher, itwill still be found and used. For Experts This section describes features of TurboGopher that either network administratorsor Gopher weenies would want to know. Waking up TurboGopher. When TurboGopher starts up, it looks for the TurboGopher Settings file first in itsown folder, and failing that in the Preferences folder. If it finds the TurboGopher Settings file, it uses the settings and resources (more on this later) it finds inside. Ifit cannot find the file, it creates a new one in the Preferences folder based on its internal defaults (more on this later too). If there are any bookmarks the user had setin the Bookmarks worksheet window, the Bookmark worksheet window is opened. TurboGopher 30 Internet Gopher User's Guide If the user had deleted all bookmarks, the Bookmarks window is not opened (thecontents of the Bookmark worksheet window are remembered via the Settings file). Next TurboGopher looks to see if the user has launched it by doubleclicking on aBookmark file (or by dropping a Bookmark file on it under System 7). If this is so, the contents of the Bookmark file (more on format later) are read and placed in a list(directory) window; in this case TurboGopher will not make a connection immediately to the Home Gopher Server. If TurboGopher was launched directly (not via a Bookmarks document) then it con-nects to the Home Gopher Server, retrieves the contents of its top directory, and places this in a list (directory) window. At this point, TurboGopher is fully up andrunning. Next we need to describe the various parts alluded to above. The Home Gopher Servers Out of the box, TurboGopher comes preconfigured to connect AT RANDOM toone of the two primary gopher clones (gopher.tc.umn.edu or gopher2.tc.umn.edu; the former is also known to old Gopher folks as gopher.micro.umn.edu) at the University of Minnesota. It must be emphasized that these are NOT a primary and secondary server: they contain exactly the same information and changes made to oneare automatically propagated to the other. If the first connection attempt fails, TurboGopher will try the next. This has two purposes. First, initial connections arevery reliable for users and since we serve as the world's Gophermeisters, this is good. More importantly for us, the randomization ensures that users will spread theload over our two small, economical, primary servers (Mac IIci's). If your campus' primary Gopher server experiences heavy use, we suggest you make a clone too. The user may of course reconfigure for only one primary server. TurboGopherremembers this via the Settings file. A campus network administrator may directly set TurboGopher's internal primary server defaults by altering STR# ID 3002 usingResEdit. The first 3 strings are for one alternate server, the next 3 are for the other. Leaving one or the other triplet empty implies that no clone servers are available.The first string in the triplet is the server's domain name, the second is the port, the third denotes whether it is a Gopher+ server (ignore this for now). Other Builtin Information A campus network administrator may also change the default bookmark set thatTurboGopher carries around with him. This is stored in a `TEXT' resource called Internet Gopher User's Guide 31 For Experts `BookMarks'. It contains Gopher item descriptors EXACTLY as they come in offthe net, ie: DisplayStringSelector-StringhostNameport NOTE: Ugly linefeed after the The built-in manual is stored as `TEXT' resource called "HeLp". While you canreplace that, we certainly don't encourage you to do so. Finally, most of the important English text for status messages etc. are stored inSTR# resources, The primary one of these is STR# resource ID 3003. This is important for international localization purposes.... but read on. Bookmark file formats Bookmark files contain just the Gopher item descriptor lines that a Gopher clientwould ordinarily retrieve over the net. Please read the Internet Gopher protocol document for more information on this. Gopher bookmark files contain text. ThefileType is not `TEXT' however, so if you wish to edit one with a word processor or text editor, you will have to either change its fileType or use a permissive editor.Each line contains the familiar: DisplayStringSelector-StringhostNameport NOTE: This is Mac text... SO NO LINEFEEDS AFTER THE Bookmark files have the type `BKMK' and creator `MDDF'. The Import Book-marks menu item allows you to ATTEMPT to read any filetype you want and treat it as a Bookmark file. Please use this with caution. While TurboGopher will attemptto make sense out of the file, and will reject most junk files, you definitely are on thin ice here. The Open Gopher Bookmark File menu item however will only letyou open bonafide Bookmark Files. ISO Translation Table The ISO Latin1 character set translation tables used by TurboGopher were kindlysupplied by Jean-Pierre Kuypers , Pascal Maes , and Andre Pirard They are stored intaBL resources with ID 1001 and 1002. TurboGopher 32 Internet Gopher User's Guide The TurboGopher Settings file We don't want you mucking around inside the data fork of a Settings file, so wearen't going to encourage you to do it by spelling out the format (though anyone with a disk editor and a room temperature IQ can figure it out). We DO want you mucking around inside the resource fork of the Settings filethough. When it is created by TurboGopher, the TurboGopher Settings file has no resource fork. If you add one by opening the file with ResEdit, then TurboGopherwill place the Settings file in its resource search path. This means that if you want some custom resource to be used by TurboGopher, you may place it in the resourcefork of the Settings file rather than munging around inside TurboGopher's application resource fork. We would like you to place things like string localizations, custom code resources,and overridden configuration resources here for your local users. This way, you can distribute a localized TurboGopher Settings file on your campus and you shouldn'thave to scramble to patch the application every time we release a new version. Certainly we might add more strings to various STR# resources... but if you drop us aline and tell us what you are doing with the resources, we will inform you before we release any new versions of TurboGopher that might affect you. We have made provision for TurboGopher to execute external code resources to docertain tasks. At this point we're deciding if we should adopt some new interface for these code resources or to use the interface that Mac folks are very familiarwith: XCMDs. We will probably wind up giving you access to various internal parts of TurboGopher via XCMDs. Internet Gopher User's Guide 33 CHAPTER 4 PC Gopher III This chapter describes PC Gopher III, hereafter referred to as Gopher, a programfor IBM and compatible microcomputers that run the MSDOS operating system. PC Gopher III is a program that lets you search for and retrieve information storedon other computers, known as "gopher servers". System Requirements Gopher runs under DOS version 3.3 or greater and requires 640K of conventionalmemory. Gopher will run on a wide range of IBM PCs and compatibles, including the earliest PCs which contained only a monochrome display adapter, with nographics support. A Microsoftcompatible mouse is helpful but optional. You must load mousedriver software before running Gopher. If your mouse contains more than one mouse button, you will only need to use the left mouse button when runningGopher. You must also install a Clarkson (a.k.a. Crynwr) packet driver, a small piece ofsoftware that allows Gopher to communicate with your ethernet card or modem. PC Gopher III 34 Internet Gopher User's Guide As of this writing, Gopher supports ONLY the Clarkson packet driver interface toyour ethernet card or modem. Gopher will not run properly if you are using FTP Software's PCTCP drivers, nor will it work with LAN Workplace for DOS, PC-NFS, or Banyan Vines. How to Obtain the Software The Gopher software consists of one file: GOPHER.EXE. There are two ancillaryfiles that Gopher will create if it can't find them: GOPHER.REZ, which stores your configuration settings, and GOPHER.BMK, which stores "bookmarks" that you canuse to easily revisit interesting places in gopherspace. You can obtain the software over the internet via anonymous FTP from boombox.micro.umn.edu Look in the directory called /pub/gopher/PC_client You can also find the Clarkson packet driver collection in the directory called /pub/gopher/PC_client/packet_drivers Installation Connecting To The Internet To run Gopher, your microcomputer must be connected to a local area network(LAN). Usually, the LAN will be connected to the global internet allowing you to find information located on gopher servers outside of your network. If you haveaccess to a dialup SLIP server, you can also use Gopher with a modem instead of a LAN connection. Internet Gopher User's Guide 35 Installation LAN Operation For your microcomputer to operate on the LAN, you must have a network adaptercard installed. In order to run Gopher, your network adapter card must be one supported by the Clarkson packet drivers. Dialup Operation If you have access to a SLIP server, you can use Gopher with a modem instead of anetwork adapter. You will still need a packet driver; we recommend UMSLIP.COM,which is available via anonymous ftp to boombox.micro.umn.edu, in the directory /pub/phone In the same directory, you can find PHONE.EXE, a phonedialer program that maybe helpful in establishing your SLIP server connection. Installing the Packet Driver In order to run Gopher, the appropriate packet driver must first be loaded into memory; it's easiest to do this automatically each time you start up your computer. Each packet driver is a specialized piece of software designed to "talk" to a specifictype of network adapter card; since all of the packet drivers have the same interface, this allows one version of Gopher to run on a wide range of network adapters.The packet driver collection includes documentation that you can use to determine which driver you need to use with your network adapter. To load the packet driver, type the packet driver name, followed by the necessaryparameters, as described in the documentation that comes with the packet driver set. For example, suppose you have a 3Com 3c523 ethernet card installed in yourPC. To load it, you would type 3C523 0x60 0x3 0x300 and hit the enter key (note that different packet drivers require different parameters;see the packet driver documentation for the correct parameters for your packet driver). As long as you do not turn the power off to your computer, you can runGopher, quit and do other things, and then start Gopher again without reloading the packet driver. Also, if you already have the packet driver loaded for other proPC Gopher III 36 Internet Gopher User's Guide grams like FTP, Telnet, or tn3270, you do not need to reload the packet driverbefore running Gopher. If you'd like the packet driver to load automatically whenever you start up yourcomputer, you can add the packet driver command and parameters to your AUTOEXEC.BAT file; most people find it easier to let the computer load the packetdriver automatically, rather than remember the complicated and arcane parameters necessary. Installing the Gopher Software After you have installed the appropriate packet driver, copy all of the Gopher filesinto a directory on your hard disk. For example, if you wanted to install Gopher in a directory called GOPHER, you'd type cd c:\ to get to the root directory of your hard disk, mkdir gopher to make a new subdirectory for Gopher, cd gopher to switch to the new subdirectory, and copy a:\*.* to copy the files from the floppy drive to the hard disk. If you already have an older version of Gopher, such as PC Gopher II v1.05, youmust delete all of your old Gopher files BEFORE installing this version. The one exception to this is your old bookmark file; you can use the included conversionutility called BMKCVT to update this file to the format used by PC Gopher III. Internet Gopher User's Guide 37 Configuring Gopher Configuring Gopher When you use Gopher for the first time, you may need to enter some configurationinformation specific to your microcomputer. Gopher needs these configuration parameters in order to identify your computer on the network. This information isstored in a "resource file" called (by default) GOPHER.REZ. Gopher will automatically create this file if it can't be found. First, start Gopher by typing GOPHER at the DOS prompt. Once Gopher starts up, pull down the Configure menu; themenu item called "Application..." will open up Gopher's application configuration dialog box (to pull down a menu, either click on its title with the mouse cursor, orhold down the Alt key and type the first letter of the menu title; to choose an item, either click with the mouse, or use the arrow keys to highlight the item, and hit theENTER key; to close a menu without choosing any item, hit the ESC key). To enter or edit any of the parameters in the configuration dialog boxes, use theTAB key (or up and down arrow keys) to advance to the appropriate field. If the FIGURE 4. PC Gopher Top Level PC Gopher III 38 Internet Gopher User's Guide field is a text field, type in the information. If the field is a series of checkboxes (apair of square brackets followed by some text), use the space bar to toggle the checkmark on and off, and the arrow keys to move between checkboxes. Application Configuration Home Gopher Server This is the name of any gopher server on the network. Your organization may berunning its own gopher server; if not, you are welcome to use our server, which goes by the name of : gopher.tc.umn.edu Gopher will attempt to connect to this server when you issue a "New Gopher" command. Your explorations are not restricted to information stored on this particular server, but you will always start off here. Port Number This is the port number that Gopher will use to attempt to connect to the gopherserver named above. Currently, gopher servers use port 70 for connections. Alternate Gopher Server and Port Number If your home server doesn't respond when you try to open a new browser window,Gopher will try to connect to this server instead. You might want to configure this to gopher2.tc.umn.edu, port 70; this server replicates the information on gopher.tc.umn.edu. Terminal Sessions Some services available in gopherspace require a standard terminal interface, ratherthan Gopher's pointand-click interface. To access these services, you need a piece of software called a terminal emulator. The two most popular terminal types usedby non-gopher services are the DEC VT100 and IBM 3270 terminals; conseInternet Gopher User's Guide 39 Application Configuration quently, Gopher allows you to configure two terminal emulation programs, one foreach kind of session (you don't need to worry about which program to use with which service; Gopher will automatically launch the right one for the job). In the input line title "Telnet Session Command Line", enter the path and filenameof your VT100 emulator, and the parameters you want to pass to the program. Gopher knows how to interpret certain symbols within the command line, replacingthem with information that can't be generated until immediately before the session is started. The symbols and what they're replaced by at runtime are: At a minimum, you need to include the symbols %n and %p as parameters; Gopherwill replace these with the name and port number of the machine it needs to connect to. For example, if the VT100 emulator you're using was in the same directory asgopher, C:\GOPHER, and it was called VT100.EXE, you'd set the command line uplike this: C:\GOPHER\VT100.EXE %n %p If your VT100 program needs a "#" in front of the port number, set the commandline up like this: C:\GOPHER\VT100.EXE %n #%p Below the command line is an input line for you to enter the amount of memorynecessary to run the program. If you leave this at zero, Gopher will always try to run the program; if you set it to a number other than zero, Gopher will warn you ifmemory is too low to run the program, and allow you to cancel the operation or, if you are brave, continue. TABLE 2. PC Gopher Telnet Command Substitutions Symbol Meaning %a address of target machine %n name of target machine %p port number of service on target machine PC Gopher III 40 Internet Gopher User's Guide By default, Gopher will try to swap itself to disk before running external programs,so normally you'll want to set the memory required to zero. If allowing Gopher to swap to disk is causing problems, you may need to disable swapping with the / NOSWAP switch; in this case, you should set the memory requirement to whateveryour external program needs, as a safety measure. The line entitled "TN3270 Session Command Line" works in exactly the samefashion as the Telnet Session Command Line item. The program that you enter here will be used to connect to IBM3270 based services. Options: New Gopher On Startup If this checkbox is checked, the program will automatically attempt to connect tothe gopher server entered in the Home Gopher Server input line, whenever Gopher is started. If not checked, you will have to select New Gopher from the File menuor the status bar to start the initial gopher session. Options: Single Window Mode Ordinarily, Gopher will open a new window each time you look in a directory. Ifyou check this checkbox, Gopher will reuse the same window, and will add a "Go Back" button to the bottom of the window to allow you to quickly return to directories that you've already seen. Network Configuration To open Gopher's network configuration dialog box, choose "Network..." from the"Configure" menu. All computers that use the internet need addressing information, so that data gets"delivered" to the right place. There are two ways to set up this information in Gopher; by hand, or automatically, via the BOOTP protocol. BOOTP allows yourmicrocomputer to ask a server for network addressing information.. Your network administrator will know if you have access to BOOTP. Gopher is set up to use BOOTP by default. If you have access to BOOTP, you don'tneed to enter any addressing information at all; you can skip to the next section. Internet Gopher User's Guide 41 Network Configuration Microcomputer IP Address This is the IP address of your individual microcomputer or workstation. See yournetwork administrator for a microcomputer IP address assignment. Microcomputer Netmask The netmask parameter has to do with how your local area network is configuredand connected to the backbone network at your work site. See your network administrator for the correct value to enter here. Many sites are configured to use anetmask of 255.255.255.0. Nameservers A name server converts a gopher server name into machinereadable address.Gopher relies heavily on nameservers; if you don't have access to one, you won't be able to use Gopher. You may enter up to four nameserver addresses; they will betried in the order in which they are entered. FIGURE 5. PC Gopher Application Configuration PC Gopher III 42 Internet Gopher User's Guide Gateways A gateway is a device which gives your computer access to the outside world. Ifyou want to use Gopher to look at information on servers beyond your local area network, you must specify the address of your gateway. You may enter up to fourgateway addresses; they will be tried in the order in which they are entered. Your network administrator can tell you the addresses of gateways accessible to you. Advanced Network Configuration Options There are several advanced configuration parameters that can be used to tune network performance; these parameters can usually be left at the default settings. Gopher Query Timeout This is the maximum number of second that Gopher will wait for a response from aserver, after sending a query. FIGURE 6. PC Gopher Network Configuration Internet Gopher User's Guide 43 Advanced Network Configuration Options TCP Connect Timeout This is the maximum number of seconds that Gopher will wait for acknowledgmentof an attempt to open a connection to a server. Name Lookup Timeout This is the maximum number of seconds allowed for the nameserver on the network to convert a gopher server name to a machine-readable address. Retransmit Timeout This is the maximum number of second that Gopher will wait before retransmittinga packet of data that hasn't been acknowledged. Maximum Transfer Unit This is the largest size TCP/IP packet that Gopher will send. Maximum Segment Size This is the maximum size packet that Gopher will accept; since Gopher cannotaccept "fragmented" packets, this number must be small enough that the server won't be tempted to fragment packets as they are sent. TCP Window Size This is the size of the TCP/IP data buffer. When you've finished setting up the network configuration parameters, confirmyour changes by choosing the "OK" button, or cancel them by choosing the "Cancel" button. PC Gopher III 44 Internet Gopher User's Guide Configuration Data File All of the parameters that you enter in the configuration dialog boxes are stored in afile called (by default) GOPHER.REZ. If this file is damaged or lost, all of your configuration data will have to be reentered. You can tell Gopher to use an alternate configuration file by using the /R commandline switch. See the section entitled "Gopher and Command Line Switches" for further information. Gopher and Command Line Switches To start Gopher, type GOPHER at the DOS prompt. Gopher understands several command line switches, which can be used to modifyits default behavior. Note that if you install all of the Gopher files in a single directory on your hard drive, you won't need to use most of these. The usage of command line switches is as follows: /SWITCH=VALUE if the switch requires a value, or just /SWITCH if it doesn't. You will need to substitute a "" for the "=" if you're trying to passthese parameters into a batch file, since DOS will eat all of the "=" characters The /R Switch By default, Gopher expects to get resources and configuration information out of afile called GOPHER.REZ, in the same directory as GOPHER.EXE. You can use a different directory and/or filename by starting Gopher like this: Internet Gopher User's Guide 45 Gopher and Command Line Switches GOPHER /R=D:\PATH\FILE.EXT replacing D:\PATH\ with the path to the alternate resource file, and FILE.EXT withthe alternate file's name and extension. Network administrators can use this switch to create separate configuration files foreach client on the network; however, since Gopher reads from AND writes to the resource file, it CANNOT BE PLACED IN A READONLY DIRECTORY. The /B Switch This switch also works like the /R switch, but it tells Gopher where to store bookmarks. By default, Gopher will save any bookmarks you create in GOPHER.BMK, in the same directory as GOPHER.EXE; you can use a different bookmark file bystarting Gopher like this: GOPHER /B=D:\PATH\FILE.EXT replacing D:\PATH\ with the path to the alternate resource file, and FILE.EXT withthe alternate file's name and extension. If you're installing Gopher on a Novell server, the bookmark file must be in a writeable directory. The /T and /X Switches These switches can be used to tell Gopher where you'd like to store saved text andbinary files, respectively. Ordinarily, Gopher offers to save files in the same directory as the file GOPHER.EXE; you can "aim" at a different directory by startingGopher like this: GOPHER /T=D:\PATH /X=D:\PATH replacing D:\PATH with the directory that you want to use. You will still beprompted for a filename when saving a file, and you'll be able to navigate through the directory hierarchy on your hard disk with the filesave dialog box; this switchjust sets the directory that you're shown first. PC Gopher III 46 Internet Gopher User's Guide Switches Used to Pass IP Address Information There are four switches that you can use to pass addressing information to Gopher,overriding the information in the configuration dialog box. They are: These switches all work the same way. For example, to use an IP address of127.0.0.1, start Gopher like this: GOPHER /MYIP=127.0.0.1 Other Switches There are three other switches that don't fall into any particular category. The /SHUTUP switch will prevent Gopher from beeping at you if there's some sortof fatal error. The /NOSWAP switch will prevent Gopher from swapping itself to disk before executing a DOS shell or external program. Note that if you use this switch, you may not have enough memory for terminal sessions! This switch is only necessary ifyour computer crashes when Gopher swaps itself to disk, which happens with some combinations of TSR programs and hardware. Finally, the /? switch will print a summary of all of the switches on your screen. The Gopher User Interface Gopher uses the standard IBM character set to emulate a graphical user interface(GUI). For this reason, Gopher runs on a wide range of IBM PCs and compatibles, including the earliest PCs which contained a monochrome display adapter (with no TABLE 3. PC Gopher IP Address Switches /MYIP IP address of your microcomputer /MYMASK Netmask of your microcomputer /MYGW Your gateway's address /MYDNS Your nameserver's address Internet Gopher User's Guide 47 The Gopher User Interface graphics support). In other words, Gopher does not require that you install a specialgraphics display adapter in your computer., or that you run a windowing operating system like Microsoft Windows or IBM OS/2. With a GUI, you interact with the program by responding to graphical symbolswhich appear on the computer screen, rather than by issuing single line commands (as with the MSDOS operating system). Because of its graphical user interface,Gopher is largely self-explanatory. If you are familiar with the GUI in Microsoft Windows or the Apple Macintosh operating system, you will be able learn how touse Gopher very quickly; you may want to skip to the section entitled "Using Gopher", and come back to this section later. Gopher's user interface consists of several elements: Lists Lists are boxes containing one or more lines of text, with a "scroll bar" along theright side of the box. The scroll bar allows you to see items in the list that aren't displayed on the screen; to scroll the list, click on the up or down arrows at the topand bottom of the scroll bar with the mouse, or use the arrow keys. There is always one item in the list that's the "currently selected" item; if you clickon it, or hit the enter key, the list will perform its default action on that item. The currently selected item is indicated by highlighting; the text and background colorsof the currently selected item are colored differently than the rest of the list, or are shown in inverse video on a monochrome monitor. Buttons Buttons are rectangular areas of the screen which will respond to a mouse click byperforming some action. Some buttons have one letter of their label highlighted; you can operate these buttons by holding down the Alt key, and typing the highlighted letter. Other buttons have all of their label highlighted; this indicates that the button is the "default" but-ton, and can be operated by hitting the ENTER key. PC Gopher III 48 Internet Gopher User's Guide Dialog Boxes Dialog boxes allow Gopher to ask you for information. For example, when youchoose a search item from the list of available items, a dialog box will pop up to allow you to enter the text to search for. Dialog boxes are also used to inform you of errors while Gopher is running. Whenone of these error dialog boxes pops up, you must click on the OK button (or hit ENTER on the keyboard) before you can continue using the program. A dialog box can consist of many elements; buttons, fields to enter text, list boxes,and so on. If you are using a keyboard rather than a mouse, you'll need to use the TAB key to select these various elements before you can use them. Windows Gopher uses windows to display information. There are two main types of windows in Gopher; the browser window, which displays lists of items for you to choose from, and the file display window, which displays the contents of a text filethat you've chosen. Both windows can be positioned anywhere on the screen, with the mouse or thekeyboard. To move a window with the mouse, position the cursor over the title bar of the window (the horizontal line marking the window's top edge), then press andhold the mouse button as you move the mouse. To move a window with the keyboard, type CtrlF5, and use the arrow keys to move the window around the screen.When the window is positioned the way you want, hit the ENTER key. In the upper lefthand corner of each window is a small rectangle enclosed insquare brackets. This is the window's close box; clicking with the mouse in the close box will close the window. To close a window using the keyboard, type Alt-F3. Some windows can also be resized; resizeable windows have a resize box in thelower righthand corner. To resize the window with the mouse, position the cursor in the resize box, press the mouse button, and move the mouse. To resize the win-dow from the keyboard, type Ctrl-F5, hold the shift key down, and use the arrow keys to resize the window. When the window is sized the way you want, hit theENTER key. Internet Gopher User's Guide 49 The Gopher User Interface The Menu Bar The very top line of the computer screen contains Gopher's menu bar with threemenu labels. The menu bar looks like this: # File Window Configure The menu bar is the primary mechanism you use to communicate with Gopher.The menus have pulldown labels; that is, when you select a title in the menu bar, a list of specific commands are displayed underneath the menu label. If one of the commands in a pull-down menu is followed by an ellipsis, choosingthat command will display a dialog box, requesting further information. If a command in a pull-down menu is not followed by an ellipsis, the indicated action willoccur as soon as you select the item and release the mouse button or hit the ENTER key. You can use either a mouse or keyboard to select commands. To use a mouse, clickon the desired menu title to display the pull-down menu (use only the left mouse button if your mouse has more than one button). Then click the desired command.Alternatively, you can push the mouse button down over a menu title and then continue to hold the mouse button down while you drag straight down from the menutitle to the desired menu command, and then release the mouse button. If you decide not to choose a command, just drag out of the boundaries of the pull-downmenu and no action will be performed. To choose menu commands using the keyboard, first pull down the menu. Press theF10 key to make the menu bar active; when the menu bar is active, one menu title is highlighted. If the menu title you want is not the one currently highlighted, use thearrow keys to move to the right or left along the menu bar, until you select the menu title you want. Press the ENTER key to pull down the menu. Now use the up anddown arrow keys to select the command you want. To execute the command, hit the ENTER key; to close the menu without executing any commands, hit the ESCkey. There is also hotkey alternative to pulling down a menu. Hold the Alt key downwhile typing the letter corresponding to the first letter of the menu title you want; for example, type Alt-F to pull down the File menu (the hot key to pull-down the #menu is Alt-Spacebar). PC Gopher III 50 Internet Gopher User's Guide Once the menu you want is pulled down, you can press the key corresponding tothe highlighted letter of the desired command. In addition to the four menus, there are two indicators at the left end of the menubar. The first indicator shows how much memory is available to the program; the second one is a clock. Menu Structure The individual items under the pulldown menus are organized as follows. High-lighted letters (shown here as capital letters) are used to perform the various shortcuts described in the previous section and elsewhere in this manual. Note that the hot-key letter associated with each command is not always the firstletter of the command. In addition, some menu commands are used often enough that they can be activated with a keyboard alternative (in other words, without hav-ing to pull down any menu first). These keys are also shown below. The Preferences menu has a submenu listing userconfigurable preferences; thissubmenu works the same way that the other menus do. TABLE 4. PC Gopher Menus MenuName Item Names Action When Selected KeyboardAlternatives # AltSpacebar About PC Gopher III displays program credits Calculator popup calculator CaLender Perpetual Calendar Puzzle Challenging Puzzle DOS Shell Temporarily use DOS File Alt-F new Gopher opens a browser foryour home serve r AltG Save file... saves foremost text window to a file AltS Internet Gopher User's Guide 51 The Gopher User Interface The Status Bar Gopher's status bar is located across the bottom line of the screen. The status barlooks like this: F1 Help F10 Menus AltX Exit Alt-G New Gopher Alt-Z Cancel The status bar contains "hot spots". Hot spots are located wherever words occur inthe status bar. For example, "Alt-G New Gopher" constitutes one hot spot. Hot spots are separated from each other by more than one space. When you click on ahot spot with a mouse, the indicated function will occur. For example, when you Open bookmark file opens the bookmark list dialog F9 eXit quits PC Gopher III AltX Window Alt-W Next brings the back window to the front F6 Zoom makes a window fullscreen sized F5 Move allows keyboard positioning of a window CtrlF5 cLose closes the front window AltF3 Configure... Alt-C Application... displays application configuration dialog Network... displays network configuration dialog Preferences displays submenus Mouse... displays mouse configuration dialog Video Mode toggles video mode between 25&50 lines TABLE 4. PC Gopher Menus MenuName Item Names Action When Selected KeyboardAlternatives PC Gopher III 52 Internet Gopher User's Guide click on the words "AltG New Gopher", Gopher will open a new browser win-dow, and when you click on the words "Alt-X Exit", Gopher will shut down and return you to the DOS prompt. To activate a hot spot without using a mouse, holddown the Alt key, and type the letter indicated in the status bar. Using Gopher To start exploring gopherspace, choose "New Gopher" from the File menu, or clickon the words "AltG New Gopher" on the status line (if you'd rather use the keyboard, type Alt-G). Gopher will attempt to connect to the first server that you spec-ified in the configuration dialog box. If the attempt is successful, Gopher will retrieve a list of the items that the server knows about. The list will look somethinglike this: About Internet Gopher GIF picture of Joey Ramone Really Interesting Administrative Information

U of MN Phone Book Search Pyrotechnics Recipes Card Catalog via Telnet Any item on the list can be selected either by moving the selection bar with thearrow keys and hitting ENTER, or by doubleclicking with the mouse. Gopher Item Types At the beginning of each line in the item list is a character enclosed in brackets; thischaracter tells you what the item is. Gopher knows about the following item types: TABLE 5. PC Gopher Item Types Character Type Name Action When Selected Text File retrieves and displays the file Binary File retrieves the file Directory shows you more items Search Item prompts for text to search for

Phone book prompts for person to look up Internet Gopher User's Guide 53 Using Gopher Text Files In the above example, line one refers to a file called "About Internet Gopher". Tosee the contents of this file, select the item with either the mouse or the keyboard. Gopher will attempt to retrieve the file, and display it in a separate window. If thefile is too large for Gopher to fit into available memory, it will put up a dialog box requesting that you specify a filename and directory to save the file in. You can thenopen the file with your favorite word processor to see the contents. You may also choose to save the information that you get back as a file, even if it issmall enough for Gopher to display immediately in a window. Just choose "Save File..." from the File menu, and enter the filename and directory that you want tosave the file in. Terminal Session connects you to a nonGopher service Error none TABLE 5. PC Gopher Item Types Character Type Name Action When Selected FIGURE 7. PC Gopher Text Files PC Gopher III 54 Internet Gopher User's Guide Binary Files The second item in the list above is a binary file, a GIF picture of one of our favorite rock stars. Choosing this item will pop up a dialog box, prompting you for a filename to save the picture in; once you've entered a filename and chosen the "OK"button, Gopher will retrieve the file. Instead of displaying the file in a window, Gopher will show you a progress indicator so that you can tell when the file hasbeen retrieved. To view the file, you'll have to quit Gopher and run a separate program capable of displaying GIF pictures. Directories The third item in our example listing is a directory. Directories are like folders ordrawers full of other items. When Gopher first connects to the gopher server that you specify as your starting point, the list that you get back shows the contents ofthe main or "root" directory of that server. To see the contents of a directory, select it from the list using either the mouse orthe keyboard. Gopher will request a list of the contents of the subdirectory that you selected, and will present this list in the browser window. If you anticipate returning to a particular directory on a particular server, you canuse the Bookmark List to save that position in gopherspace. To save a bookmark, first navigate to the place that you want to remember, and the choose Open Bookmark File from the File menu. Once the bookmark list opens up, click on the Add button; you will be prompted for a name for the bookmark. To return to the book-marked position later, just open the bookmark list and choose the bookmark you wish to return to. Phone Book Items The fourth item in the example is a Phone Book item. Phone book items are pointers to databases that contain information about people's phone numbers, office locations, e-mail addresses, and so on; these databases are called CSO or PH servers.When you select a phone book item, a dialog box will pop up, and Gopher will ask the database server for a list of items that you can ask about. Once the list of theseitems is built, you can look a person up by typing her name into the dialog box and choosing the "Lookup" button. Any matching items will be displayed in a separatewindow, and can be saved to disk using the File menu's Save File command. Internet Gopher User's Guide 55 Using Gopher If you want to enter more information to narrow the search, you can choose the"More Choices..." button, and you'll be presented with a larger dialog box, containing a list of fields that you can use in a query. You build up a query by selecting anitem from the list, and typing in the search key next to the item name when it pops up on the screen. You can build queries of up to five items; if you want to changethe query, selecting the Clear button will clear all of the items you've chosen. Once the query is set up, select the Lookup button, and the query will be sent to theserver. Search Items Next in the listing is a Search item for an interesting set of recipes. A search item isa computer that can search various gopher servers for files containing text that you specify. If you select a search item, a dialog box will pop up for you to enter yoursearch text in. To start the search, click on the "Search" button, or just hit the ENTER key. The search item returns a list of files that it knows about that contain ALL of thetext that you enter in the input box. If you entered the word "salmon", the search item would return a list of all of the files containing that word. If you entered FIGURE 8. PC Gopher Phone Book Search PC Gopher III 56 Internet Gopher User's Guide "salmon spinach", the search item will return a list of files that contain both theword "salmon" and the word "spinach"; it would NOT return the names of files that had only one of the two words. Search Items and Logical Operators Logical operators are special words that allow you to set up specific search conditions. The logical operators "and", "or", and "not" are supported by many search items. You can use one or more of these operators to narrow the field of yoursearch. There are three different types of search items in gopherspace. The first typeassumes an implicit "and" between words, and will let you use logical operators to change this behavior. The second assumes and implicit "or" between words, andwill also allow the use of logical operators to alter the default. The third assumes "or", and ignores logical operators. Unfortunately, the only way to find out whichtype of search item you're dealing with is to experiment (unless it is explicitly labeled as one of these three types). For example, assume you've found a search item that assumes "and" betweenwords, and also understands logical operators. Suppose you want to find files that FIGURE 9. PC Gopher Searches Internet Gopher User's Guide 57 Using Gopher contain the word "salmon" or the word "spinach", but not both. You can do this byentering "salmon or spinach" in the input box. You can also use the word "and" to explicitly indicate that the files you're searching for must contain both words; thisallows you to set up specific search conditions by using multiple logical operators. Logical operators are evaluated in rightto-left order; the search pattern "spinachand salmon or broccoli" would result in a list of files that contained the word spinach and the word salmon, or just the word broccoli. To exclude words from the search pattern, use "not". The search phrase "Minnesotanot snow" would produce a list of files containing at least one instance of the word "Minnesota", and no instances of the word "snow". Terminal Session Items The last item in the example listing is a Terminal Session item. A terminal sessionitem is a way to allow you access to information services that expect to communicate with a terminal rather than a program like Gopher. When you select a terminalsession item, Gopher will execute the terminal emulator if your choice, passing the name, address, and/or port number required to connect to the terminalbased ser-vice. See the section entitled "Configuring Gopher" for information about how to configure Gopher to access these services. Multiple Concurrent Queries Gopher is capable of handling more than one query at a time, although it is limitedto no more than three simultaneous queries. This allows you to continue to navigate through gopherspace while you're receiving a large binary file, and even tofetch other files at the same time. Query Progress Indicators The browser window and the text display window both have query progress indicators in the lower left-hand corner of their window frames. This indicator will tell you exactly what the status of the query is; usually, you'll see either "receiving",meaning that Gopher is receiving a response to your query, "waiting", meaning that Gopher is waiting for the server to continue the transaction, or "idle", meaning thatthe query is complete and that Gopher has closed the connection with the server. PC Gopher III 58 Internet Gopher User's Guide The progress indicator can be helpful in diagnosing problems with slow or sickservers, misconfigured or broken networks, or (heaven forbid) PC Gopher itself. Canceling a Query Any query can be canceled at any time. If you want to cancel a query and throwaway any directory listing or text that you've received so far, you can close the window associated with the query. To cancel a query without closing its window, typeAltZ or choose the "Alt-Z Cancel Query" hotspot in the status line. Help! If you run into difficulties installing or using Gopher, or have bug reports, suggestions, or general comments, you can send e-mail to us at: gopher@boombox.micro.umn.edu Although we greatly prefer email, you can also contact us via paper mail at: The Gopher Development Team Computer and Information Services University of Minnesota Room 190 Shepherd Labs 100 Union St. SE Minneapolis, MN 55455 U.S.A. In all of your correspondence pertaining to PC Gopher III, please indicate: * your PC Gopher III version number * your operating system and version number (e.g., DOS 5.0) * your computer brand and model * your ethernet card brand and model (if applicable) Internet Gopher User's Guide 59 Acknowledgments Acknowledgments Thanks to Borland International of Scotts Valley, California, for Borland Pascalversion 7.0, and for TurboVision. Thanks to Clarkson College of Potsdam, New York, for the use of the ClarksonPacket Drivers. Thanks to Ralf Brown for allowing us to use his Turbo Pascal swapping unit,Spawno. Thanks to George Gonzalez and Earl Schleske for their tireless maintenance of theTCP/IP driver used in PC Gopher III. Finally, thanks to ShihPau Yen for having a lot of faith, Farhad Anklesaria andMark McCahill for having a lot of nerve, and all of the beta-testers for having a lot of patience. PC Gopher III 60 Internet Gopher User's GuideInternet Gopher User's Guide 61 CHAPTER 5 The UNIX Gopher Client This chapter describes how to use the UNIX Gopher client. Overview Internet Gopher for Unix is distributed as C source code. You will need to compilethis source code into binary executables for your system. To make it generally available to the rest of the users on the system, you should install the software intoa central directory. Requirements You will need a working gopher client, to see if it's been installed just type: gopher If you get an error message, then you will have to install the UNIX Gopher client,see "Installing the Unix Gopher Distribution" on page 69, or you'll have to use oneof the public gopher systems listed in the Common Questions chapter. The UNIX Gopher Client 62 Internet Gopher User's Guide Starting the UNIX Gopher Client To start the UNIX Gopher client, simply type gopher. You'll be presented with ascreen that looks like this: FIGURE 10. Unix Gopher ClientTop Level This is what you would see if you used gopher at the University of Minnesota, othersystems may have localized and customized the client for their own sites. Navigating Gopherspace Once you've started the client you can move around Gopherspace using a few differnt keys, the most common ones are the cursor keys, the u key, and the RETURN key. The cursor keys control the arrow pointer; pressing the cursor down key moves thearrow to the next item, pressing the cursor up key moves the arrow to the previous item. Pressing the RETURN key or right arrow key displays the item that the arrow ispointed at. Internet Gopher User's Guide 63 Special Items Each item is tagged with special characters to make it easy to predict what eachitem is. Items ending with a slash (/) are Gopher directories, selecting one of these items will cause a new directory to be displayed. An item that ends with a period (.) are text files. Pressing RETURN on these itemswill view the file. For instance pressing RETURN on the file "About Gopher" will retrieve the file and result in a screen that looks like the following: FIGURE 11. Unix Gopher ClientText File Press the `q' key when you're finished viewing a file to return to the directory Once you've finished with viewing the directory you can, if you wish, return to theprevious directory by pressing the `u' key or the left arrow key. This moves you upto the previous directory. These simple keys will move you through Gopherspace quickly and easily. Special Items This section details how to use the Unix Gopher Client to access services other thantext files and directories. The UNIX Gopher Client 64 Internet Gopher User's Guide Index Searches Items with a tag at the end of the name are searchable indices. When you selectone of these items you will get to type in search words. These words will determine the items in the resulting directory listing. For instance a search on "Search Recipes" with word salmon would result in a listing of recipes related to salmon. Phone Book Servers Phone Book Servers show up with the tag at the end of the name. Selectingone of these items results in a screen that looks like this: FIGURE 12. Unix Gopher ClientPhone Book Search You can fill in the fields in any way you wish. In this example we want to see ifthere are any people with the name "lindner" at the National Institues of Health. Telnet/tn3270 Servers Gopher can connect to telnet sites such as Library Catalogs rather easily, if you seean item tagged with or <3270> you'll be presented with a screen similar tothe following Internet Gopher User's Guide 65 Advanced Navigation Features FIGURE 13. Unix Gopher ClientTelnet/tn3270 services In this example we're connecting to the "James Cook University" library system. Ifthere's a special login required Gopher will tell us. In this case it's "opac" If we press RETURN, Gopher will connect us to the host jculib.jcu.edu.au and let uslogin. Advanced Navigation Features There are many other keys that you can use with the UNIX client. Instead of thecursor keys you can use the the equivilant cursor control keys for vi or emacs. In vi the keys are h,j,k, and l. In emacs the keys are ^B, ^N, ^P, and ^F. The following table summarizes the other keys: TABLE 6. UNIX Gopher ClientAdvanced Navigation Keys Key Action >, +, SPACE Move to the next directory page. <, -, b Move to the previous directory page. 0-9 View a specific item. m Go back to the first "main" directory screen. The UNIX Gopher Client 66 Internet Gopher User's Guide Bookmarks If you formulate a search or find a folder you would like to come back to later, youcan set a bookmark for the item. Then you can easily find the item later in your personal bookmark directory. Move the arrow to the interesting item and press the `a' key to add a bookmark.You will see a screen like this: FIGURE 14. Unix Gopher ClientAdding a Bookmark Type in a meaningful name. Later on, when you wish to access this item again,press the `v' key to view your personal bookmark list. You'll get a directory listing screen that contains all of your bookmarks. If you wish to delete a bookmark entryyou can press the `d' key when the arrow is pointed to the item. Saving and Downloading If you want a permanent copy of an item in Gopherspace, not just a reference,which a bookmark is, you should press the `s' key. This will save the current item into a filename on your system. Internet Gopher User's Guide 67 Saving and Downloading If you are connected to a Unix machine through a modem using terminal emulationsoftware you can press the `D' key to download the item using either of several filetransfer protocols such as Zmodem, Ymodem, Xmodem, and Kermit. The UNIX Gopher Client 68 Internet Gopher User's GuideInternet Gopher User's Guide 69 CHAPTER 6 Installing the Unix Gopher Distribution This chapter describes how to compile and install the Internet Gopher for Unix Distribution. The two main parts of this distribution are the Gopher Server, gopherdand the Gopher client, gopher. Overview Internet Gopher for Unix is distributed as C source code. You will need to compilethis source code into binary executables for your system. To use the gopher client or server you will need to compile the code using a C compiler. To make it generally available to the rest of the users on the system, you should install the software into a central directory. Requirements You should have a copy of a compressed tar file containing the source. You shouldconsult "Getting the Software" on page 15 if you don't have this file. Installing the Unix Gopher Distribution 70 Internet Gopher User's Guide You will need a Unix machine with a C compiler and development environment tocompile the software. The source code requires about one megabyte of disk space when uncompressed. The source takes up about two megabytes of disk space whencompiled. Your UNIX machine will need to be connected to a TCPIP network for the soft-ware to function properly. Some experience with Unix software installation is recommended. A knowledge ofC programming and Makefiles will be useful. If you want to index files with your server you will need to get some additionalsoftware. There are two file indexing kits supported by the Internet Gopher server, NeXT indices and WAIS indices. NeXT indexing comes bundled with the NeXTstep operating system. It is the basisfor many NeXT applications, including the Webster dictionary and the Digital Bookshelf. WAIS indexing is a freely available indexing kit for many Unix machines. Itincludes an index generator called waisindex, a database server called waisserver,and client programs for Xwindow, fullscreen and command line searching. WAIS is an acronym for Wide Area Information Server. If you are compiling a server on a NeXT machine you will want to consult "NeXT Indexing" on page 71 before continuing. Follow the instructions in "WAIS Indexing" on page 71 if you want to use WAIS indexing with your server. You may skipthese sections if you don't want indexing or don't want to bother with it just yet. Compatibility The Gopher source should compile on most UNIX systems. Here are a few that weknow it has worked on: * Suns running SunOS 4.1.x * RS/6000s running AIX 3.2 * NeXTs running NeXTstep * SCO ODT systems Internet Gopher User's Guide 71 NeXT Indexing * Apples running A/UX * DECstations running Ultrix * Silicon Graphics Iris' running Irix Don't worry if your system isn't listed above, the code has been written with compatibility in mind. Most systems should work just fine. NeXT Indexing For NeXT indexing you will need the file NeXTtext.tar.Z. Use anonymous ftpto boombox.micro.umn.edu and get the file /pub/gopher/Unix/NeXTtext.tar.Z The files libbtree.a and libtext.a are in this compressed tar file, along withthe directories btree and text. The files libbtree.a and libtext.a need to be installed in the directory /usr/local/lib The btree and text directories need to be installed in the directory /usr/local/include. Type the following commands as root to install the NeXT indexing libraries. 1. uncompress NeXTtext.tar.Z 2. tar xvf NeXTtext.tar.Z 3. mv libtext.a libbtree.a /usr/local/lib 4. ranlib /usr/local/lib/libbtree.a /usr/local/lib/libtext.a 5. cp r text btree /usr/local/include WAIS Indexing For WAIS indexing you will need to get the freely available WAIS software. Thereare two different versions of WAIS software: the software from Thinking Machines Inc. and the modified software from Don Gilbert at the University of Indiana. Installing the Unix Gopher Distribution 72 Internet Gopher User's Guide The Don Gilbert Version supports boolean searches and phrase matching. The normal WAIS software does not support these features. To retrieve the Thinking Machines Inc. version of WAIS, use anonymous ftp to thehost ftp.think.com and retrieve the file /wais/wais8-b5.1.tar.Z To retrieve Don Gilbert's version of WAIS use anonymous ftp to the host ftp.bio.indiana.edu and retrieve the file /util/iubiowais-8b5.tar.Z The source code to the WAIS system is in this compressed tar file. You should thenextract the archive and compile the software. The installation instructions are in the file INSTALLATION inside the wais doc directory. Note that you do not need to make the Xwindow or emacs client. Many systemswill not compile these cleanly. When you are finished you will have a bin directory that contains the programs: waisindex, waisserver, and waissearch. These binaries allow you to create,serve and search indices respectively. The bin directory contains the libraries necessary for compiling the gopher server.These are inv.a, libftw.a, client.a, and wais.a. The ui directory containsone module necessary for the WAIS gateway, source.o. Go to your Gopher source code directory and type the following commands to letthe Gopher code know you want to use WAIS. Substitute the WAIS source code directory for waisdir in the following commands. ln s /waisdir/ir . ln -s /waisdir/bin . ln -s /waisdir/ui . Preparing to Compile the Distribution There are some options you will want to check before compiling the Gopher server,some of these options are for compatibility with various platforms, others are for special features. Internet Gopher User's Guide 73 Preparing to Compile the Distribution Two files control the compilation process: Makefile.config and conf.h. Youwill find both of them in the top level of the Gopher source directory. Most sites will not need to make major changes to these files, in fact you might just want to trytyping "make" and see if it works for you. There are comments in these files that you will want to read before you compile.The following tables document some of the more popular ones. TABLE 7. Configuration Parameters in Makefile.config Parameter Default What it is CC cc Your favorite C compiler OPT O Use -O for faster code, -g for debuigging RANLIB ranlib Use touch if you don't have the ranlib command. PREFIX /usr/local The base directory where the software will be installed. Many other parameters use this value. CLIENTDIR $(PREFIX))/bin Where the client "gopher" is installed. CLIENTLIB $(PREFIX)/lib Where the help filesforthe client are installed. SERVERDIR $(PREFIX)/etc Where the server files are installed. SERVEROPTS Optional server features. See below. DOMAIN .micro.umn.edu Set this to the portion of your hostname that the "hostname" command doesn't return. SERVERDATA /home/gopher The defauilt location of gohper data for the gopher server. SERVERPORT 70 The default port for the Gopher server. TABLE 8. Configuration Parameters in conf.h Parameter Default What it does CLIENT1_HOST gopher.tc.umn.edu The default host to connect to. CLIENT2_HOST gopher2.tc.umn.edu The alternate host to connect to. CLIENT1_PORT 70 The default port for the first host. CLIENT2_PORT 70 The default port for the alternate host. PAGER_COMMAND more d %s Command used to display text. Installing the Unix Gopher Distribution 74 Internet Gopher User's Guide Other Optional Features Many people have submitted nifty options for the server, follow the instructions inthe appropriate section if you wish to implement these features. Load Restriction Add DLOADRESTRICT to the SERVEROPTS variable in Makefile.config if youwant to restrict access to the Gopher server at a certain load average. You will also need to add -lkvm to SERVERLIBS in Makefile.config. This has only been tested underneath SunOS 4.1.1 Biological Databases Add DBIO to SERVEROPTS if you're using the biology portion of Don Gilbert'smodified wais8b5 that supports boolean and phrase searching. PLEASE NOTE: the DBIO option is NOT needed nor recommended for use of the boolean and phrasesearching portion of this modified wais, just the symbol searching. But, you must compile wais and gopher with the same option setting (-DBIO or NOT). Otherwiseyour server will core dump when doing searches. PLAY_COMMAND Commaand used to play sounds. MAIL_COMMAND mail Command used to mail files. TELNET_COMMAND telnet Command used to connect to other hosts using telnet protocol. TN3270_COMMAND tn3270 Command used to connect to IBM mainframe hosts. IMAGE_COMMAND xloadimage fork %s Command used to view image files. TABLE 8. Configuration Parameters in conf.h Parameter Default What it does Internet Gopher User's Guide 75 Special Modifications for Compatibility DL Database Support Add DDL and define DLPATH and DLOBJS if you want to include support for TimCook's 'dl' databases You will also have to have a working copy the program with source code in the DLPATH directory. The files getdesc.o and enddesc.o mustbe there. Source for dl can be gotten from: admin.viccol.edu.au as /pub/dl/describe1.8.tar.Z or higher... Special Modifications for Compatibility The Gopher distribution tries to automatically make up for operating system dependencies, however sometimes you have to tweak things for certain operating systems. Follow the appropriate steps if your system is listed below: UMAX Systems Uncomment the line that contains UMAXLIBS in Makefile.config Dynix PTX Systems Uncomment the line that contains PTXLIBS in Makefile.config. Dynix systems in the BSD universe Uncomment the line that contains SEQLIBS in Makefile.config. SCO Open Desktop Systems Uncomment out the line that contains SCOLIBS in Makefile.config. System VR4 Systems Uncomment out the line that contains SVR4LIBS in Makefile.config. Installing the Unix Gopher Distribution 76 Internet Gopher User's Guide DEC Ultrix Systems Change the line that contains lcurses to have -lcursesX instead. Other Systems There is a line in the file Makefile.config for compatibility definitions. Look for theline with COMPAT= at the beginning. If you have problems linking due to unresolved symbols you'll want to edit this line. Consult the following table for theappropriate definitions you should add if you have problems. You should then type make clean and restart the compilation process. Compiling and Installing the Distribution You should now be ready to compile the distribution. If you want to make just the client type make client If you want to make just the server type make server If you want to make everything just type make TABLE 9. Compatibility Definitions Unknown symbol What you should add to COMPAT= strstr DNOSTRSTR tempnam -DNO_TEMPNAM strdup -DNO_STRDUP bzero or bcopy -DNO_BZERO getwd -DNO_GETWD tzset -DNO_TZSET strcasecmp -DNO_STRCASECMP Internet Gopher User's Guide 77 Testing If you want to install everything in the directories specified in Makefile.config type: make install If you want to install just the client type: (cd gopher; make install) If you want to install just the server type: (cd gopherd; make install) Testing .... Installing the Unix Gopher Distribution 78 Internet Gopher User's GuideInternet Gopher User's Guide 79 CHAPTER 7 Configuring the Unix Server This chapter will show you how to configure and run the UNIX gopherd server. Overview The UNIX server has many features. This chapter will show you how to configureyour server and control how a gopher client views the data contained within the server. In this chapter "gopher server" refers to the Unix gopherd program. Requirements You should have a working copy of gopherd installed. If you don't refer to "Installing the Unix Gopher Distribution" on page 69 for more information about compiling and installing the software. You will need a Unix machine with a TCP-IP network connection to use the Unix Gopher Server. You will also mostlikely needto have a connection to a machine that is running a Domain Name Server (DNS). Configuring the Unix Server 80 Internet Gopher User's Guide What is gopherd? The gopherd server is a program that accepts requests from gopher clients and"serves" the information to them. It uses a number of methods to supply this information. Most of this information comes from a portion of a file system called the gopherdata directory. Gopherd can also "gateway" to other network services such as ftp and WAIS. Thegopher clients do not need to understand these protocols, the gopher server does it for them. First Steps The first thing you will want to do is create your "gopherdata" directory. Thisdirectory will contain all of the information that gopher clients will see. In all the examples below the term gopher-data will refer to this directory. Whenever you seethis reference fill in your local gopher data directory. So, let's create this directory. Make sure there's sufficent space on the filesystemand use the mkdir command to create the directory. You will probably have to do this as root. Here is an example of creating the gopherdata directory: mudhoney# mkdir /home/mudhoney/gopherdata Now we can add data for the clients to this directory. Adding Information to the Server The gopher server gets its information from the files and directories in gopherdata.By making changes in this directory tree, you will change what the gopher clients see. Internet Gopher User's Guide 81 Adding Information to the Server Default Translations1 * Directories inside of gopherdata are served as Gopher Directories. * Text files are represented as Gopher Text items. * ulaw sound files (as used by Sun and NeXT workstations) are represented asGopher audio/basic files. * GIF files are represented as Gopher image/gif (I) files. * All files/directories that start with a dot (i.e. .foo) or are named etc, usr, bin, dev, or core are ignored by the server. * The title of each object presented to the client is the filename of the file/directory. * Files compressed with "compress"and files compressed with GNU zip (gzip)files are supported. They will be sent to the client uncompressed. * Mail spool files are represented as directories. When the mailspool file isviewed, each mail message is represented as a Gopher Text item. * Executable shell scripts are represented as a Gopher Text item. The output of thescript is sent when the client requests to view the item. The shell script must start with the magic three characters #!/ * Files that end with .src are assumed to be WAIS database files generated by thewaisindex program. * The server sorts directories it sends out alphabetically. The server does distinguish between upper and lower case when sorting. Links to Other Servers You can add data to your server by creating what are known as Links in the gopherdata directory tree. Links allow you to connect Goher servers together. The ability to make links to other hosts is how Gopher distributes itself amongmultiple hosts. To make a link create a file starting with a period that contains the data needed by the server. By default all files in the gopher data directory startingwith a period are taken to be link files. A link file can contain multiple links, just separate the different links with a . To define a link you need to put five lines in alink file that define the needed characteristics for the document. Here is an example of a link. 1. The defaults mentioned in this section apply to the default gopherd.conf file that comeswith the gopher server. If you change this file then the default behavior will be different. Configuring the Unix Server 82 Internet Gopher User's Guide Numb=1 Name=National Weather Service Forecasts Type=1 Port=70 Path=1/Weather Host=ashpool.micro.umn.edu The Name= line is what the user will see when cruising through the database. Inthis case the name is "National Weather Service Forecasts". The "Type=" defines what kind of document this object is. The following is a list ofall the defined types: 0 - Text File 1 -- Directory 2 -- CSO name server 4 -- Mac HQX file. 7 -- Full Text Index 8 -- Telnet Session 9 -- Binary File s -- Sound The "Path=" line contains the selector string that the client will use to retrieve theactual document. The "Numb=" line specifies that this entry should be presented first in the directory list (instead of being alphabetized). The "Numb=" line isoptional. The "Port=" and "Host=" lines specify a fully qualified domain name (FQDN) anda port respectively. You may substitute a plus '+' for these two parameters if you wish. The server will insert the current hostname and the current port when it sees aplus in either of these two fields. An easy way to retrieve links is to use the Curses Gopher Client. By pressing '='You can get information suitable for inclusion in a Link file. Internet Gopher User's Guide 83 Adding Information to the Server A Simple Example of Adding Information Okay, let's add some information to the gopher server. The following commandswill add the Gopher directories "News", "Fun and Games" and "Recipes" to our server. mudhoney# cd gopherdata mudhoney# mkdir News mudhoney# mkdir "Fun and Games" mudhoney# mkdir "Recipes" Now that the directory structure is created we can add some text files. Let's say thatwe have a file called "about" that describes the server and two recipes for clam chowder in two files called "chowder1" and "chowder2." Also assume that thesefiles are in the directory /tmp. These steps will put the files in their proper place. mudhoney# cd gopherdata mudhoney# cp /tmp/about "About This Server" mudhoney# cp /tmp/chowder1 "Recipes/Yummy Clam Chowder" mudhoney# cp /tmp/chowder2 "Recipes/Icky Clam Chowder" Let's now add a link to another server. The weather forecasts link in the previoussection is a real, live link. Put the link information into a file in the gopherdatadirectory. Your server will now have the following entries in the top-level: National Weather Service Forecasts About This Server Fun and Games News Recipes Additonally you will have the following files in the Recipes directory Yummy Clam Chowder Icky Clam Chowder Configuring the Unix Server 84 Internet Gopher User's Guide Starting the Gopher Server Now that we have some data to serve to clients we can start the gopher server. There are two separate ways to start the gopherd program. The first method startsthe gopher server at boot time, the other starts the server as it is needed via the inetdsuperserver. Continuous Servers Continuous servers are started at boot time. You will need to add an entry to theboot sequence of your unix machine to insure that the server is available at all times. Typically this entry will be put into the file /etc/rc.local (for BSDishsystems) or /etc/inittab (for System V systems). Here is a typical entry in the rc.local file: if [ f /home/mudhoney/gopher-data ]; then /usr/local/etc/gopherd u nobody \ -l /home/mudhoney/GopherLog70 \ gopher-data 70 fi The parameters to the gopherd program are described later in the chapter. Here is a typical entry in the inittab file: loc0:2:once:/etc/startgopher-server Put what would normally go into the rc.local file into the file /etc/startgopherserver. Reboot the system and the gopher server will run. As Needed Servers If your system supports the inetd program then you can run the server using itinstead of continuously. The main advantage is that the gopher server is only started when a connection is made by a gopher client, instead of running all the time. To use gopher in this manner you must modify two files: /etc/services and / etc/inetd.conf Internet Gopher User's Guide 85 Optional Features for the Gopher Server Add the following line to the /etc/services file: gopher 70/tcp If you are running on a machine that runs NIS/YP you will need to remake yourdatabase. Other systems may require you to do something similar, consult the "services" manual page on your system. Next, you will add an entry to the /etc/inetd.conf file similar to the one below. gopher stream tcp nowait nobody /usr/local/etc/gopherd gopherd Add any options to the end of the line if you want. However be aware that somesystems only support a limited number of arguments. (Suns running 4.1.x only support five for instance.) To start the gopher server you should either reboot, or send a HUP signal to the process id of the inetd process. If the process number was 12356 then you would do the following: kill HUP 12356 Testing Once you have the server running you can test it by using the telnet program to connect to the gopher port. Here is an example of testing the server: mudhoney% telnet mudhoney 70 Trying 134.84.132.7 ... Connected to mudhoney.micro.umn.edu. Escape character is '^]'. {Press RETURN} .... Gopher output here.... If you don't see an error message you're ready to use your gopher server. Optional Features for the Gopher Server In addition to the simple functionality provided above, the gopher server does manyother things, such as logging, security, etc. You can control these features of the server two ways: by editing the file gopherd.conf or by using command lineoptions. Configuring the Unix Server 86 Internet Gopher User's Guide The gopherd.conf File Most of the optional paramters for the gopher server can be set by editing the file gopherd.conf. Command Line Options Some options cannot be set using the gopherd.conf file. These options can be set byadding paramters to the command line of the gopherd program. Here is a quick guide to the various options: gopherd [DCIc] [-o options] [-L load] [-l logfile] [-u user] gopher-data gopher-port The following table summarizes the various command line options. TABLE 10. Command Line Options for gopherd Option Description D Enable copious debugging output -L load Restrict connections when the load average is above load. Your server must be compiled with the LOADRESTRICT option for this to work. C Disables caching of directory retrievals. Otherwise a directory retrieval is cached in the file .cache. l logfile For each connection the server will log the time, host and transaction to the file logfile. I Specify when running the server from inetd. -o options Specify an alternative "gopherd.conf" file instead of the default. -c Do not use the system call chroot(2) before processing connections. This relies on code that (tries to) ensures that files outside the gopher-data directory cannot be retrieved. Use with care and with the -u option. u user Run as the user named user. The server is run with reduced permissions (i.e. other than root) which can ensure that only publically readable file are available from the server. gopherdata The directory where the Gopher information resides gopher-port The port number (usually 70) that the server runs at. Internet Gopher User's Guide 87 CHAPTER 8 Go4gw The Gopher Gateway Go4gw is a program that provides gateways to many popular internet services, suchas USENET news, whois, and archie. The following chapter describes go4gw and how to install and manage it. Overview There is quite a bit of information that could be in gopher, but isn't. The use of aGopher Gateway makes it possible to include this information inside of Gopherspace. Go4gw is designed to channel these other forms of information into a format suitable for gopher. It is written in perl and allows easy extensibility, a number of prewritten gateways and easy administration. Gateways to the following services are provided with go4gw1.01 * Archie a database of files available for anonymous ftp. * Finger a service that provides information about people logged in to UNIX orVMS hosts. * Geo the geographic name server at the University of Michigan. Go4gw The Gopher Gateway 88 Internet Gopher User's Guide * NNTP the USENET news transport protocol. * Webster the Webster dictionary service available on some NeXT machines. * Whois services that provide information about users and organizations. Requirements You will need a UNIX machine on a network with a working version of perl. Thesource code for Perl can be gotten from various FTP sites on the Internet. The canonical location of perl is the anonymous ftp site prep.ai.mit.edu, as perl4.036.tar.z You will, of course, need the go4gw software distribution. See "Getting the Internet Gopher Software" on page 15 if you don't have the go4gw software. Installation Copy all of the perl scripts that comprise go4gw into a common directory, in ourexamples we'll use /usr/local/etc/go4gw as our directory. You need to put the following line in /etc/services: go4gw 4320/tcp And the following line in /etc/inetd.conf (depending on your system type): go4gw stream tcp nowait /usr/local/etc/go4gw go4gw The go4gw script has a few variables you might want to change: $Gconf_file = "/usr/local/etc/go4gw.conf"; $Gport=4320; $Ghost="Slapshot.Stanford.EDU"; You need to set Gport to the same port as in /etc/services, and Ghost to yourfully qualified host name. Internet Gopher User's Guide 89 Writing New go4gw Gateways Why aren't these two automagically figured out? Mainly for speed, but alsobecause some `hostname` commands don't have the domain, some do, etc. Its easier just to define them here. Since all the other gateways are run in the context ofthis perl script, the gateways don't need any of this stuff in them. Gconf_file should be set to the location of your go4gw.conf file. The format ofthis file is: # # format # gateway : user : module : gopher title : whois:2:/usr/local/etc/g2whois:Whois: nntp:-2:/usr/local/etc/g2nntp:USENET News: webster:-2:/usr/local/etc/g2webster:Webster: Where gateway is the name of the gateway, user is either a numeric uid or name,module is the name of the perl script that go4gw will dynamically load, and title is the title that will show up in the gopher menu if go4gw is sent the empty string "".If the gateway doesn't take an empty string, the title should be "" and it won't show up in the menu. By writing all your gateways so they take a "" command, you canpoint a link at the go4gw daemon with path set to "" and get a menu of all your gateways. The menu order will be the same order as the go4gw.conf file. Writing New go4gw Gateways go4gw gateways need to a follow a few simple conventions: You need to have a routine called "${gateway}_main", where gateway is the nameof your gateway. For example, if your gateway is called whois, then you need: whois_main { local($_) = @_; ... } In your module, for example /usr/local/etc/g2whois. Go4gw The Gopher Gateway 90 Internet Gopher User's Guide Your *_main will be passed the string sent to go4gw WITHOUT your gatewayprefix. For example, if someone sends the following string to go4gw: nntp ls su.jobs Then go4gw will call &nntp_main("ls su.jobs"), after loading g2nntp. You should define any variables that users might have to change at the front of yourscript, and prefix them with your gateway name. When your gateway has to return selector string, hostname, and port, it should usethe following variables: $Ggw > name of this gateway $Gport -> port this gateway is running on $Ghost -> host this gateway is running on For example, nntp might do the following: &Greply("0$Subject\t$Ggw article $group $article\t$Ghost\t$Gport"); So when the user selects this the client will send: nntp article su.jobs 104 Back to the go4gw daemon, which will figure out that "article su.jobs 104" needs toget passed to g2nntp. The following variables and routines are defined in go4gw, and can be used bygateways: TABLE 11. Go4gw variables and routines Variable/Routine Function $GnotServer You can define this in perl scripts that want to include the go4gw script without running theserver. See the g2nntp_groups script. $Ggw Can be used by gateway routines to determine their gateway name. $Gport Can be used by gateway routines to determinewhich port go4gw is running on. Internet Gopher User's Guide 91 Writing New go4gw Gateways Other "standard" routines and variables may be added. They will start with a `G'. $Ghost Can be used by gateway routines to determine which host go4gw is running on. GSERVER File handle which is opened when GopenServer is called. &Grepry(reply) Sends string back to gopher client with \r\n on the end. &Gabort(message) Sends error message back to gopher client with"3mess\r\n.\r\n" on end. &GopenServer(server,port) Opens TCP port on server or calls &Gabort(). &GcloseServer Closes server opened by &GopenServer() $Gdebug Controls debug messages in &Gsend() and &Grecv() $Gport Can be used by gateway routines to determinewhich port go4gw is running on. &Gsend(cmd) Sends "cmd\r\n" to GSERVER. $_ = &Grecv; Gets a response from GSERVER and strips \r and \n &Gsorry Sends a message about data that cannot be delivered due to restrictions. TABLE 11. Go4gw variables and routines Variable/Routine Function Go4gw The Gopher Gateway 92 Internet Gopher User's GuideInternet Gopher User's Guide 93 CHAPTER 9 Common Questions This chapter contains some of the more common questions that we've had theplease to answer, and answer, and answer. Overview The most recent version of these "Common Questions can be gotten throughgopher, or through anonymous ftp to the host: rtfm.mit.edu as /pub/usenet/news.answers/gopherfaq Those without FTP access should send email to mail-server@rtfm.mit.edu with"send usenet/news.answers/finding-sources" in the body to find out how to do FTP by e-mail. . Common Questions 94 Internet Gopher User's Guide Where are there publicly available logins for Gopher? Here is a short list, use the site closest to you to minimize network lag. We recommend running your own local gopher client though. The response timewill be much faster, and you'll be able to save and print files. How can I get my server published in the "Other Gophers" list? When you have your server ready you can publish it to the world by sending emailto the maintainters of the "Other Gophers" list: If your gopher server is in Europe, send mail to: gopher@ebone.net Otherwise send mail to: gopher@boombox.micro.umn.edu TABLE 12. Public Gopher Sites Hostname IP# login as area consultant.micro.umn.edu 134.84.132.4 gopher North America pandaa.uiowa.edu 128.255.40.201 panda North America gopher.sunet.se 192.36.125.2 gopher Europe info.anu.edu.au 150.203.84.20 info Australia gopher.chalmers.se 129.16.221.40 gopher Sweden tolten.puc.cl 146.155.1.16 gopher South America ecnet.ec 157.100.45.2 gopher Ecuador Internet Gopher User's Guide 95 Overview How can I set up a "CSO" phone book server? Where is the software? CSO phone book servers are also known as "qi" servers. The software implementation can be gotten via anonymous ftp from uxc.cso.uiuc.edu (128.174.5.50) as /pub/qi.tar.Z You may also see this referred to as "ph", which is what most of the clients arecalled. A collected set of clients for Macs, PCs, VMS, VM, etc, are in the /pub/ph.tar.Z file. There is also an archive of the mailing list for qi/ph software on the same machine.It's in /pub/infoph.archive. You may join the list by sending email to info-phrequest@uxc.cso.uiuc.edu. This software is supported by Paul Pomes Contact him formore information. Why can't I access the University of Minnesota's UPI news? The University of Minnesota has a site license for UPI news, we are not allowed todistribute it off of our campus. We get our UPI news from Clarinet. For more information about getting UPI news send mail to info@clarinet.com. For informationabout setting up your own gopherUPI server search the gopher-news archive for UPI. When I do fulltext searches I always get every document back, Why? This is a problem occasionally encountered with Unix full-text indexes. It is causedby setting up the link incorrectly to a gindexd port. The Path= field should be blank when pointing to a gindexd index. Otherwise the client will send the path to the gindexd daemon, which interpretseverything as a keyword. This path is likely to contain a pathname that is common to all of the indexed files. Thus a search generates hits on everything. Common Questions 96 Internet Gopher User's Guide When I try to build the UNIX software I get an error from make:"Must be a separator on rules line #. Stop" Why? This is a problem with older makes that don't understand the "include" keyword.One easy way to cope with this problem is compiling GNU make, which does understand the include keyword. If this is too difficult, remove the line: include Makefile.config from all the Makefiles and paste in a copy of Makefile.config at the top of eachMakefile. Or, instead of pasting you can make the client/server by going into the appropriatedirectory and typing: make f ../Makefile.config -f Makefile Are papers or articles describing Gopher available? Gopher has a whole chapter devoted to it in : The Whole_Internet Users Guide and Catalog by Ed Krol (publisher O'Reilley &Associates, Inc; ISBN: 1-56592-025-2). (Editors note: ...Great book, go out and buy a bunch!) The Internet Passport: NorthWestNet's Guide to Our World Online" By JonathanKochmer and NorthWestNet. Published by NorthWestNet, Bellevue, WA. 1993. 516 pp. ISBN 09635281-0-6. Contact info: passport@nwnet.net, or (206) 562-3000 A Students Guide to UNIX by Harley Hahn. (publisher McGraw Hill, Inc.; 1993ISBN 007-025511-3) Other references include: The Internet Gopher, "ConneXions", July 1992, Interop. Exploring Internet GopherSpace "The Internet Society News", v1n2 1992, Internet Gopher User's Guide 97 Overview (You can subscribe to the Internet Society News by sending email to isoc@nri.re-ston.va.us) The Internet Gopher Protocol, Proceedings of the Twenty-Third IETF, CNRI, Sec-tion 5.3 Internet Gopher, Proceedings of Canadian Networking `92 The Internet Gopher, INTERNET: Getting Started, SRI International, Section10.5.5 Tools help Internet users discover online treasures, Computerworld, July 20, 1992 TCP/IP Network Administration, O'Reilly. Balakrishan, B. (Oct 1992) "SPIGopher: Making SPIRES databases accessible through the Gopher protocol". SPIRES Fall `92 Workshop, Chapel Hill, NorthCarolina. Tomer, C. Information Technology Standards for Libraries, _Journal of the American Society for Information Science_, 43(8):566-570, Sept 1992. On a DECstation I get the error message "/etc/svc.conf no such file ordirectory" when running the gopherd server, why? A14: This is caused by the chroot() call in gopherd. It can be easily fixed by running gopherd with the -c option. Alternatively you can copy /etc/svc.conf into a directory named "etc" inside thegopher-data directory. The boolean searching terms don't work for my fulltext index, why? This is probably because the searching is being provided by WAIS. WAIS opts toreturn all documents that contain a search phrase within certain limits. WAIS searches do return the documents with the highest "score" at the top, those docu-ments will have the closest relevance. Alternatively you could get a booleanized version of wais from ftp.bio.indiana.edu. Common Questions 98 Internet Gopher User's Guide When linking the Unix gopher server with WAIS I get undefinedsymbols, such as: log_file_name logfile PrintStatus find_value Sources NumSources This happens if you make gopherd before linking in the WAIS ir/ui directories. Thefix is to "make clean" or remove gopherd/{waisgopher.o,Waisindex.o}and then remake gopherd. Or link the ir/ui directories first. Why don't my WAIS indexes work? I never get anything back forsearches. or Why do I get "Dangling file" error messages in my logfile? The problem could be in the server. The server should be run using the c option ifyou want WAIS to work. Another solution is to patch the WAIS code so that it doesn't check the files on the disk. Search the gopher-news archive for "dangling".This will turn up a single document with the patch. My gopher server doesn't work under inetd, why? It could be that your inetd server only supports a limited amount of arguments. Forinstance, the maximum number of arguments to an inetd server is 5. You can get around this by combining arguments: i.e. gopherd I -c becomes: gopherd Ic You may also leave the port specifier off of the command line. The gopher serverautomagically finds out the port it's running on. Help! I have PCNFS and want to use the PC-Gopher client. How? Use a piece of software called PKTMUX, available at fine ftp sites everywhere.This will let you use any packet driver application. Or, aquire a client that supports PCNFS. Internet Gopher User's Guide 99 Overview Is there somewhere I can retrieve a list of announced gopher links? I'dlike to keep a local, upto-date list of available gopher holes without requiring our users to gopher to umn just to scan GopherSpace. In the Unix client/server distribution is a perl script called "gopherdist". Gopherdistcan fetch the contents of any point in GopherSpace. To dump the contents of all the North American links from gopher.tc.umn.edu dothe following: % gopherdist gopher.tc.umn.edu 70 "1/Other Gopher and Information Servers/North America" > .Links Why doesn't my unix gopher client display ISOLatin-1 charactersproperly? It is the client's problem, the server is perfectly 8-bit transparent. The BSD curseslibrary uses bit 8 in order to remember, whether a character has been displayed reverse. So use just /usr/5bin/cc and you get the System V curses version which is 8bit clean. Note that this may be a problem under other versions of UNIX too... What is veronica? veronica: Very Easy RodentOriented Net-wide Index to Computerized Archives. veronica offers a keyword search of most gopher-server menu titles in the entiregopher web. As archie is to ftp archives, veronica is to gopherspace. A veronica search produces a menu of gopher items, each of which is a direct pointer to agopher data source. Because veronica is accessed through a gopher client, it is easy to use, and gives access to all types of data supported by the gopher protocol. To try veronica, select it from the "Other Gophers" menu on Minnesota's gopherserver, or point your gopher at: Name=veronica (search menu items in most of GopherSpace) Type=1 Port=70 Common Questions 100 Internet Gopher User's Guide Path=1/veronica Host=futique.scs.unr.edu Internet Gopher User's Guide 101 Symbols /B Switch 45/etc/inetd.conf 85 /etc/inittab 84/etc/rc.local 84 /etc/services 85/etc/svc.conf 97 /NOSWAP 46/R Switch 44 /SHUTUP 46"q 95 Numerics 3270 383Com 3c523 35 A AdmitOne 25Alternate Views 23 anonymous ftp 71Another Gopher 28 B Banyan Vines 34 Binary Files 54BMKCVT 36 Bookmarks 26boombox.micro.umn.edu 18, 34 BOOTP 40 C Cancel All Requests 27Clarkson 33, 34, 35 Compactor 22compress 81 consultant.micro.umn.edu 94CptExpand 22 Crynwr 33CSO 82, 95 D Dangling file 98Digital Bookshelf 70 DNS 79DOS 33 DownLine 25 Index Index 102 Internet Gopher User's Guide E ecnet 94ecnet.ec 94 F Finder 23FTP 36, 93 ftp 80ftp.bio.indiana.edu 72 ftp.think.com 72 G Gateways 42Get Attribute 25 GIF 23, 54Gilbert, Don 72, 74 gindexd 95gopher.chalmers.se 94 gopher.sunet.se 94gopher.tc.umn.edu 38 gopher2.tc.umn.edu 38Gopherd 80 gopherd 80gopherdata 80 gopherdist 99gopher-faq 93 gzip 81 H helper application 23HQX 82 I Icky Clam Chowder 83Import Bookmarks 26 inetd 84, 98info.anu.edu.au 94 ISO Latin1 28, 31ISO-Latin-1 99 Item Attributes 26 J JPEG 23 K Kanji 28Kuypers, JeanPierre 31 L libbtree.a 71libftw.a 72 libtext.a 71Links 81 Logical Operators 56 M MacWrite II 28Maes, Pascal 31 Makefile.config 96Monaco 24 MPEG 9MSDOS 23, 47 N Nameservers 41NCSA Telnet 23 Netmask 41NeXT 70 NeXTtext.tar.Z 71 P pandaa.uiowa.edu 94PC Gopher II 36 PC Gopher III 33ph 95 Phone Book 54PHONE.EXE 35 PICT 23Pirard, Andre 31 PKTMUX 98Pomes, Paul 95 Preferences folder 29 Q Quicktime 9 R r tn32 36Recent menu 25 rtfm.mit.edu 93 S shell scripts 81SitExpan 22 SLIP 27, 34, 35StuffIt 22 Internet Gopher User's Guide 103 Index svc.conf 97System 20 System 7 20System Folder 29 T Telne 36TN3270 23, 40 tolten.puc.cl 94TurboGopher 19 TurboGopher Settings 29 U UMSLIP.COM 35UPI news 95 V veronica 99VT100 38, 39 W WAIS 80, 81, 97wais8-b5.1.tar.Z 72 waisindex 70waissearch 72 waisserver 72Webster 70 WorldScript 28 X XCMD 32 Y Yummy Clam Chowder 83