BABBA issue # 15 - May 1994, page 12


Internet Email Servers

(By Randy Just)

In a previous article, I discussed using the DOS version of Waffle, a BBS package, to receive Internet email and Usenet newsgroups via UUCP (Issues # 7 and 8). As was pointed out in the article, for most systems the cost of providing FTP and Telnet capabilities is prohibitive.

As a quick refresher, to offer FTP (file transfer protocol) and Telnet capabilities on a BBS it is necessary to be "continuously connected" to the Internet. The keywords here are continuously connected. This may be through modems, leased telephone lines or a network connection for example.

Many Internet providers are making these connections available via network protocols such as SLIP and/or PPP. Both SLIP and PPP allow you to use a modem over dialup (i.e. voice) telephone lines to be "on" the Internet. Using these protocols would allow other people to FTP and Telnet to your system. You are a part of the Internet during the times your system is connected. The catch is that the cost is outside the reach of most BBS operators. One local provider charges $450 for setup and then a monthly fee of $150.

A common alternative to a continuous connection to the Internet is a hook-up to the Internet via UUCP (UNIX-to-UNIX copy). This is done by having a computer system (your BBS) calling a "feed" system at predefined times. This is most often called polling. Data packets that contain Usenet newsgroup messages or Internet email are "stored" and then "forwarded" when the data transfer occurs.

Pseudo FTP
It is possible, by using the email capabilities of a system to provide pseudo FTP capabilities. In other words, if your system has UUCP capabilities, it is possible to provide FTP-like services. These services are called a variety of names. Some of them being an info-server, archive-server, or an email server. I will provide a general overview of the process and then discuss specific software that is available for the DOS version of Waffle.

It is necessary to designate an email account on your system to provide the info-server services. At our company, we use the email account name of info. If mail is sent to this account, a special sequence of steps will occur. In other words, the normal processing of email will not happen for mail sent to this (info) account name. What will happen is that a special program will be launched when mail is sent to the server account. This special program will then review the message without human intervention and act accordingly.

The email message is parsed, line-by-line. If the message contains certain keywords, then the appropriate action will take place. Some of those keywords might be words such as help, get, send, or quit. Help is a keyword that is pretty universal to all info-servers. The action that usually takes place after a message is parsed is to send a return email with the information requested.

A real-world example:
Our company is involved in a variety of businesses. One business is mail order sales of CD-ROMs. Many of our customers are outside of the United States.

The vast majority of communications are handled via FAX or email. More specifically, no voice communication ever occurs. To further enhance services to our customers and minimize the amount of human time necessary to process requests, we provide an info-server. Customers send email messages to the account: info@justcomp.com. When our system "sees" this email, a sequence of events is invoked. A sample email message from "Alex" (a potential customer) to the info account might look something like this:

From: reed@abul.com
Subject: Information
To: info@justcomp.com
help
The message will be parsed and when the word "help" is found, a reply will be prepared. The reply will be sent to: reed@abul.com. In the body of the email message, the available commands on the info-server will be sent:

HELP FILE: Commands that are understood by the Just Computers! InfoServer:

help - sends a help file get index - sends index to available files get filename uue - sends filename uuencoded get filename - sends file send filename - same as 'get filename' get catalog - sends catalog of products get order.frm - sends order form
After Alex receives the above information, Alex will most likely send a second email requesting the specific information he wants. This second email would look something like this:
From: reed@abul.com
Subject: Information
To: info@justcomp.com
get index
get catalog
get order.frm
When our info-server receives this message, three email messages would be sent back to Alex. One would contain an index of all the available files, the second would contain our catalog listing and the third would contain an order form. If Alex wanted to order any of the available products, he would fill out the order form and then send it back to us. This could be by regular mail, fax or email. If Alex orders by email, he will probably reply to the email account that sent the order form to him.

Potential Email Loop
A special consideration should be pointed out. Though Alex is sending email to the account info@justcomp.com, it is important that the email sent back to him is not from info@justcomp.com. The reason this is important is because email would go into a loop. Alex's message to info would go back to Alex. If Alex replied to the mail, it would go back to info, only to be parsed again! The program that sends mail back to Alex must be configured so that another account (such as sales@justcomp.com) would receive any replies. Email sent to this account would be read by a human.

As you probably can see, it is necessary to have at least 2 email accounts on a system for this process to work. In other words, if you have a single dialup account at an Internet service provider, this will not work for you. While it is possible to make an info-server by getting two accounts from your Internet provider and doing some programming, for most people, it is necessary to have UUCP access. Your local Internet provider can usually give you full UUCP access for less than the price of two interactive accounts. However, UUCP access is usually only useful to those running a UNIX system or a BBS.

Binary Files too
So far we have only described the process of sending ASCII files as the body of an email message. It is also possibly to make binary files accessible. You will see a line in one of our previous examples that shows "get filename uue".

Uue means uuencoded, which converts the binary file to an ASCII file for the purpose of email transmission. When the message is received, it is necessary for the recipient to uudecode the message to create the file.

Messages that contain binary files that are sent via an info-server are often broken into several parts. The info-server software can be configured to for a maximum number of lines in a message. Also, some info-server software allows the send of the message to specify this criteria. For more insight to uuencoding /uudecoding, you might want to look at several of the books that are available which have information about it.

Specific Solutions
I found a couple of packages to accomplish the task of an info-server. No doubt there are others. The two that I found were Aser and Waffle File Server. Waffle File Server is a shareware info-server utility that works with the stand-alone utilities included in the Waffle BBS package. Waffle (discussed at length in previous issues) is a BBS package that includes many stand-alone utilities useful for many DOS Internet-related applications. (The Waffle File Server - WFS310.ZIP, and many other Waffle files are at www.irtech.com/treehous)

Aser
Aser is freeware and the source code is available. (Do a web search for ASER28.ZIP) Although Aser is not nearly full featured as Waffle File Server, depending on the needs of your applications, it may or may not be appropriate.

I chose Aser for our installation for a couple of reasons. One is that it was easy to install, and the second was because of the source code being included. Aser is a few years old, but so far seems to be working reliably. The 4 pages of installation notes are adequate. Even with little knowledge of Waffle, it is possible to get the system up and running without much effort. The best part is that the installation only took about 45 minutes.

What a feature...
One Aser 'feature' that may stop some folks is that it's necessary to recompile one of the included programs (REJECT.EXE). This (written in C) program must be recompiled because of a path being hard-coded. For those that are interested, a recompiled REJECT.EXE file, set-up for C:\ASER can be found on our BBS, The Programmer's Corner. The path that was hard-coded was for the E:\ drive which didn't do me any good. I suppose it's possible to use the DOS SUBST command instead.

I have been receiving email from some of you about the articles that I have written. One was regarding a comment I made about OS/2 and my trials and tribulations installing it. Well, with the information provided, I should be able to get my copy up and running. Keep that email coming.


Page 12 had ads for Just Computers! (www.justcomp.com), and the Terminal One and Weasel Den 2 BBSs.




Tagline Observations


How to read a BBS ad

Here are the tongue-in-cheek daffy-nitions of the top-ten phrases in an advertisement for a BBS. For example, when advertising a car that has a hole in the floorboard, you might say it has good road visibility or excellent ventilation...
  1. 42 gigs online - There is that much space available, but there are only three files on our drives, so hurry up and upload.
  2. 300,000 files - If you count the files inside of ZIPs, and the files we plan to get.
  3. All New files - They are new to this particular BBS. Ignore the file date of 02/17/81.
  4. 250 nodes - The software can handle 250 nodes but only 2 are connected to modems. There are lots of local nodes, though.
  5. Adult Access - Adults can log on.
  6. Files from Space (Satellite) - My neighbor throws disks through my window.
  7. 1000 callers - So the Sysop, his/her spouse, and kids, the neighbors and their kids, and the co-Sysops have a hundred accounts each. That adds up.
  8. Massive amounts of mail - The postman brings it every day.
  9. Fastest Modems available - These 300-baud acoustic modems were the fastest available, at Bobs garage sale, for under $10.00.

Page 13 had ads for the iNFormation Exchange and UFO BBSs.



v5.0 - The best FLIGHT SIMULATOR Yet!

(By Kevin Morris)

Have you ever wanted to fly a small plane? Did you go to the airport when you were a kid and watch the planes take off and land, like I did? If so, you'll want to get the new Microsoft Flight Simulator version 5 (FS5). Try your hand flying four different planes: The Cessna 182 Skylane RG, Learjet 35A, a Schweizer 2-32 sailplane, and a WWI vintage Sopwith Camel. Additional planes are expected soon from third-party vendors. The Cesna is the popular propeller-driven small plane that is easy to fly and has good performance characteristics.

Just about everything in FS5 can be customized, including your plane's reliability, weather (clouds, wind, temp, rain), flight controls, complexity of scenery, and locations. Several geographical areas are covered, including our own S.F. Bay Area, and each area has many airports.

In S.F., I've flown through downtown, under the Golden Gate, and landed on the aircraft carrier Nimitz as it steamed toward the bay. All of which was highly illegal, but a lot of fun. Don't try this in real life unless you like prison food!

FS5 is not a game. It is a realistic simulation of flying a small plane. Like flying a small plane, it is not easy. Taking off and landing are only two of the problems. Navigating and Instrument Flying can be very demanding. Fortunately, all the necessary tools are provided. It's a satisfying feeling to fly a 200 mile trip, knowing exactly where you are every step of the way.

If you get tired of crashing while trying to land, ask the instructor to land for you. He'll take over and land the plane safely, and you can see how it's done. A buddy option is also available. Do you have a friend who has FS5 and a modem? Well hook up and fly together. See if you can follow the others lead, or if you can fly in tight formation. No combat though!

Microsoft wanted their product to be fun too, so they've lightened up things a bit in this version. They also improved the help in many places. A series of lessons teach the basics and talk you through your flights. Some added challenges are crop-dusting a field and flying through hoops in the sky. The scenery has improved greatly since version 4, and the view of your cockpit, instruments, and the plane itself are excellent. The instrument panel looks like a real plane's instrument panel. All this simulated reality comes with a price, though.

At the most realistic viewing options, FS5 places demands on your system. It will run very slow unless you have at least a 386DX-33. Even then, you will have to use simpler scenery to make your frame rate usable. To get the most of out FS5 you really need a 486SX-33 or faster. You also need 4 MB RAM and expanded memory. I highly recommend using sound board. There are disks available to let you see realistic scenery when you fly over certain areas. Currently, these scenery additions, found on many local BBSs, are available for SF, Chicago, New York, Paris, and Washington, D.C.

If you try FS5 and find it difficult, outside help is available. There are several good Flight Simulator 5 books out, and more to come in the months ahead. Some of the older books (for earlier versions of Flight Simulator) are also good ways to learn how to fly. Learning to Fly with Flight Simulator by John Rafferty, and Flight Simulator Co-Pilot by Charles Gulick are excellent.

A Flight Simulator conference is carried on the RIME network. I've gotten a lot of good information and advice from that conference. I know of one magazine, Full Throttle (www.cobb.com/fth) dedicated to FS5. If you are a pilot, learning to fly, or even just curious about flying, Flight Simulator will definitely be interesting, and even helpful, but not always easy. Just like real flying.


Page 14 had an ad for DC-to-Light.



Online Etiquette Tips

Here are a few guidelines to general online etiquette from a Sysop's point of view:

1. Don't habitually hang up on a system without going through the logout procedure. It can annoy a Sysop to see people hang up every single time they call. If you have Call Waiting you should shut it off for the duration of your call to a BBS. There are instructions for this in your phone book.

2. Don't leave yourself a message that says "Just testing to see if this thing works". Where do you think all those other messages came from if it didn't work? Also, don't leave messages that say "Please leave me a message". If you want to get messages, start by reading the ones that are already online and getting involved in the conversations that already exist.

3. Don't page your Sysop unless you really have some clear-cut notion of what you want to say and why. Almost all Sysops are more than happy to answer questions or offer help concerning their systems. Unfortunately, because many people have absolutely nothing to say besides "How old are you?" or something equally irrelevant, fewer Sysops answer their pagers every day.

4. Before you log on with your favorite pseudonym, make sure that handles are allowed. Many Sysops don't want people using handles on the system. Some feel that everyone should be willing to take full responsibility for their actions or comments instead of using a phony name.

5. On your first visit to a BBS, take the time to give complete information about yourself, especially when you enter your city and state. You may think that everyone knows what RC is supposed to mean, but many online systems have people calling from all around the country.

6. Don't make rude observations like "Gee, this system is slow". Every BBS is a trade-off of features. You can generally assume that if someone is running a particular brand of software, they are happy with it. Constructive criticism is usually welcome. If you have an alternative method of doing something that makes good sense, mention it in a message to the Sysop. Also, avoid unnecessary messages such as "I registered with this BBS, but I find it is not very good so please delete my account since I won't be calling again."

7. Post messages correctly. When leaving messages, stop and ask yourself whether it is necessary to make it private. Unless there is some particular reason that everyone shouldn't know what you're saying, don't make it private.

If you have a question or statement to make and expect the Sysop to respond to it, it should always be made in a public section where all the other messages are kept. This allows the Sysop to help many people with the same problem, with the least amount of effort on their part. Before asking a question, try doing a text search of the already existing messages to see if the question has been asked and answered before. Also, do not feel obligated to respond to every message you see. If you see a message you don't like, consider ignoring it.

8. If a BBS has a time limit, observe it. Don't tie up a system until it finally kicks you off and then call back with another name. If only one person at a time can be logged on to a BBS, it isn't fair to everyone else if you overstay your welcome. If you try and cheat the rules, you just hurt everybody by forcing the Sysop to adopt more stringent policies.

9. Pay attention to what passes in front of your face. When a BBS displays your name and asks "Is this you?", don't say yes when you can see perfectly well that it is misspelled. Also, don't ask questions about the operation of a system until you have thoroughly read all of the instructions and bulletins that are available to you. It isn't any fun to answer a question for the thousandth time when the answer is prominently displayed in the system bulletins or instructions. Use common sense when you ask your questions.

10. If by some chance you should encounter an error while you are online, take the time to leave the Sysop a public message describing the circumstances. Don't just write "There was an error". The Sysop needs to know what you were doing when the error occurred, so that they can have some chance of finding and correcting it. A BBS can't improve unless you're willing to help.

11. Keep in mind that you are either a guest or a client of any BBS you call, and the Sysop has authority over every aspect of their BBS. Logging on to a BBS does not give you the right to be rude, even if the Sysop has charged you for access time.

12. Following these guidelines will maintain your welcome on whatever system you call. While Sysops don't expect frequent compliments, they do expect fair treatment from their callers. This includes following their rules about using their systems.


Page 15 had ads for Arsenal Computer, and the Monterey Gaming System and Party Line (www.partyline.com) BBSs.




Tuna Helper in a Box?
(Quickpath's Portfolio card)

(By Fred Townsend)

Does your CPU have tired blood? Does it need Geritol? Here is a way you may have never thought of to tune up your computer - Tune up helper in a box.

I have always been a fan of the 386 DX/40. In heavy I/O applications doing mostly byte by byte or word by word transfers, a 386 DX/40 will beat a 486 DX/33 or a 486 DX2/66. It's not really a fair contest because the 386 is loading the 386 registers at 40 MHz while the 486 loads at 33 MHz. Granted, not everyone is doing a lot of byte-by-byte transfers, and the 486 will beat the pants off a 386 in heavy CAD applications. However, if you are running a networked BBS workstation, or a FAX or modem server the 386/40 is the ideal economy and performance candidate.

When 386 DX/40 mother board prices dropped to under $100, I started migrating some of my BBS nodes from the tired dogs they were then running on. I used a cheap IDE drive and flinched at the price of memory when adding the 16 MB of RAM I knew would make my BBS applications fly. The memory cost a lot more than the mother board, drive, and host adapter combined.

What about the Serial Ports?
I had been warned the serial ports on the multi-function IDE host adapters were bad news but bucks were short. $20 for the IDE host adapter with 2 serial, a parallel, and game port seemed like a hell of a bargain. Also, my modems were some of the first V32 modems available. They could not run with DTE baud rates of more than 9600. Any serial port should be able to handle 9600? WRONG!

The new motherboard was better than the old one but I never realized the kind of performance I expected, based upon the other 386/40s I was using elsewhere. Oh well, it was working well enough to give a significant improvement over the old dog.

Finally, the day came when I replaced one of the V32 with a V32.bis. The new modem could smoke at up to four times the speed of the old one. I used PCBoard's (BBS software package) PCBModem to set the comm port to 57,600 baud. Wow, the setup, modem, serial port, and BBS program only took 30 seconds to complete. Now to sit back and watch the users surprise at the nodes faster performance. I didn't have long to wait. The first user logged in and started downloading almost immediately. Wow, almost 1600 cps on zipped files. Not bad. I went back to running a business.

That Darned Modem?
I had only upgraded one of my two modems. A second node was running under Desqview on the same workstation. The other port still had the old V32. Then the other modem started having problems. What can you expect from a modem salvaged from a dumpster? Luckily, I had a spare modem since I had just replaced one of my old V32s. I quickly swapped the modems, thinking that would be the end of my troubles.

A couple of days later I found 3 messages from 3 different unsuccessful uploaders. The &%$$# V32 I thought! I checked my logs to discover the problems had occurred with the new V32.bis modem. Yes, there are errors on the companion node too, but they were download errors. Downloads that had occurred while the new modem was also in use. Could it be the new modem was the source of all the problems? What components did the modems have in common? Bingo! The bargain IDE/combo board.

I watched while the new modem took another upload. Errors, errors, more errors, and finally an error abort. I reset the port from 57,600 to 9600 baud. The errors disappeared from both ports, but no more 1600 cps transfers. More like 800 cps on both ports. I knew what the problem was. The errors were classic symptoms of register overrun in the UARTs. Time to install 16550s.


Quickpath (www.quickpath.com) to the Rescue
I looked at the QUICKPATH PORTFOLIO 16550 box. It listed: 13 port super I/O with four integrated 16550 UARTs, 2 IDE Hard Drive Ports, 2 Parallel Ports, 4 Serial Ports, 4 Floppy Ports, and 1 Game Port. Wow! Hoping for the best and fearing the worst, I opened the manual. I wondered what language this one would be written in. Would it be Chinese crudely translated to English, or maybe pidgin English? I read the words, Made in USA. Wow, a genuine English manual with lots of pictures of the configuration jumpers. A bonus too, a plastic coated diagram like the one in the manual that could be laid beside the card for configuration. Definitely competition for sliced bread.

Five minutes of page by page jumper configuration, and the card was ready to install. While I was at it, I set comm ports 3 and 4. I set the third port to interrupt 9 and the fourth to interrupt 12, carefully avoiding the cascade interrupt 10 and interrupt 11 normally used by SCSI host adapters.What a piece of cake! Now to install the card.

The box included cables for every port. The card was easy to install near the power supply where the drive is close and the other I/O ports are easy to access. I fired up the machine and booted. I reset the serial port to 57,600 and set the "force 16550" option to YES on PCBoard's install. End of story, well almost.

A Surprise Benefit!
I had noticed the machine had seemed to boot Desqview rather quickly. I wondered if everything had loaded correctly. I tested all the workstations processes. All running fine. Maybe it was my imagination. I rebooted again and watched closely. Yes, the machine loaded Desqview more than twice as fast. I wondered why. I put the phone back on hook. Seconds later, I had my first caller.

I watched the logon. It seemed faster too. Then a call on the other line. Again faster. The speed-up seemed to be coming from commanding the modem faster. The modem commands were only a few bytes. The 16550 buffers would not effect this speed. What was happening? When the modem is commanded, the BBS awaits a reply from the modem. The simple acknowledgment (OK) is verified by PCBoard to make sure the port is alive and well. I had always assumed the typical delay was caused by the slowly responding modems. Now I realized the delay was in the old serial port's interrupts. The delay is not the fault of the UART, rather it is poor combo board design.

Another bonus: The better interrupt handling applied to everything on the card, particularly the IDE drive. Wow, Quickpath's (www.quickpath.com) Portfolio Multi-Function card is a tune-up in a box.


Page 16 had ads for the Silicon Matchmaker (www.silicon.email.net), and the InfoDude Communications, and Eyes on the Skies BBS (http://sunmil1.uml.edu/tvs/ BBSs.

Page 17 had ads for SpringBoard (http://www.wbs.net), a2i Communications (www.rahul.net), CCnet Communications, and Computer College Silicon Valley (www.ccsv.com).



Dear Emily Postnews

(By Brad Templeton and Gene Spafford)


Ms. Emily Postnews, foremost authority on proper net behavior, gives advice on how to use online systems and networks. Usenet is the named network, but Emily's advice applies to any online network. Note: This is intended to be satirical. If you do not recognize it as such, consult a doctor or professional comedian. The recommendations in this article should be recognized for what they are: suggestions about what not to do.


Q: How long should my tagline signature be? (verbose@somesite)

A: Make your signature as long as you can. It's much more important than your actual message, so try to have more lines of signature than actual text. Try to include a large ASCII graphics, plus lots of cute quotations and slogans. People will never tire of reading these pearls of wisdom again and again. You will soon become personally associated with the joy each reader feels at seeing yet another delightful repeat of your signature.

Also, be sure to include a complete map to show how anybody can get mail to you from any site in the world. Be sure to include Internet gateways as well. Give independent addresses for Internet, UUCP, Bitnet, and CSNet, even if they're all the same. By all means include your phone number and street address in every message. People are always responding to Usenet messages with phone calls and letters.

Q: What about a test message?

A: It is important, when testing, to test the entire net. Never test merely a subnet distribution when the whole net can be done. Also put "please ignore" on your test messages, since we all know that everybody always skips a message with a line like that.

Q: Somebody just posted that Roman Polanski directed Star Wars. What should I do?

A: Post the correct answer at once! We can't have people go on believing that! Very good of you to spot this. You'll probably be the only one to make the correction, so post as soon as you can. No time to lose, so certainly don't wait a day, or check to see if somebody else has made the correction. Don't send your correction by private email. Since you're the only one who really knows that it was Francis Coppola, you have to inform the whole net right away!

Q: How can I choose what groups to post in?

A: Pick as many as you can, so that you get the widest audience. Ignore those who suggest you should only use groups where you think the message is highly appropriate. Pick all groups where anybody might even be slightly interested.

Q: How should I pick a subject for my messages?

A: Keep it short and meaningless. That way people will be forced to actually read your message to find out what's in it. This means a bigger audience for you, and we all know that's what the net is for. If you do a follow-up, be sure and keep the same subject, even if it's totally meaningless and not part of the same discussion. If you don't, you won't catch all the people who are looking for stuff on the original topic, and that means less audience for you.

Q: What sort of tone should I take in my message?

A: Be as outrageous as possible. If you don't say outlandish things, you may not stick out enough in the flood of messages to get a response. The more insane your posting looks, the more likely it is that you'll get lots of follow-ups. The net is here, after all, so that you can get lots of attention.

Q: They just announced on the radio that Mr. Clinton just signed that new legislation into law. Should I post?

A: Of course. The net can reach people in as few as 3 to 5 days. It's the perfect way to inform people about such news events long after the broadcast networks have covered them. As you are probably the only person to have heard the news on the radio, be sure to post as soon as you can.

Q: What computer should I buy? An Atari ST or an Amiga?

A: Cross post that question to the Atari and Amiga groups. It's an interesting and novel question that I am sure they would love to investigate in those groups.

Q: What is the measure of a worthwhile newsgroup?

A: Why, it's Volume, Volume, Volume. Any group that has lots of noise in it must be good. Remember, the higher the volume of material, the higher percentage of useful, factual and insightful messages you will find. In fact, if a group can't demonstrate a high enough volume, it should be deleted from the net.



Page 18 had ads for DC-to-Light and Mookie's Place BBS (mookie.relay.net).

Page 19 had a full-page ad for Mustang Software (www.mustang.com).

Pages 20 though 36 had detailed listings of Bay Area BBSs .

Page 36 had ads for the Bust Out and Tiger Team BBSs.

Page 37 had a full-page ad for a full-page ad for Galacticomm (www.galacticomm.com)

Page 30 (back cover) had a full-page ad for TeleText Communications.



End of Issue 15. Go back, or to Issue 16, or to Mark's home page.