SRVIFS as an OS/2 Peer-To-Peer Network

After giving up on Lantastic running in a DOS session, I started to look around for a native OS/2 solution to network 4 machines at home. The best solution I have found so far, is using some of the remote installation files from MPTS, NPTS or LAPS. This consists of a server program (SERVICE.EXE) running on each machine that contains drives you wish to share with other machines, and an IFS called SRVIFSC.IFS that talks to NetBIOS and supports long filenames etc.

The disadvantages of this network setup include: The advantages of this network setup include:
 * It has no security to speak of.
 * It doesn't connect to DOS or Windows machines.
 * You are left with dead drive letters if a server goes down before you can detach all drives connected to it.
 * It's small. It takes next to no system resources compared to any other networking products I have seen for OS/2.
 * It has no security that you have to deal with.
 * It is cheap...free even if you already have MPTS, NTPS or LAPS.
 * Being an IFS, it provides you with a new disk icon in your drives folder for each network drive you are connected to.
 * It supports all OS/2 and DOS sessions.
 * It doesn't connect to DOS or Windows machines.

DISCLAIMER
Before you start, I would like to point out that I know almost zero about networking. Try the below procedure at your own risk. Please take all necessary steps to back up your system before proceeding.

This setup works fine with my 8 bit WD/SMS network cards. I have never tried it with any other cards.

People have pointed out to me that it isn't an ideal network solution, and that it doesn't connect to DOS machines, doesn't have security etc etc. I realize this, and I am not trying to promote it as a elegant network solution, but it is something I can use until IBM (or someone) comes up with something better.

If anyone has any improvements/suggestions etc please let me know, and I'll add them to this document.

FILES REQUIRED
The files you need to make SRVIFS run, come from IBM and are commercial... sorry folks.

I got all the files listed below off my 3 MPTS/2 disks. If you don't have any MPTS/2 disks then you are a little stuck. I am told that SRVIFS is also included on the LAPS and NTPS disks. I have also been told that SRVIFS is included on some of the DEV-CON CDs from IBM, and I suspect that you could probably find them on many of the networking CSD's and betas that can be found on various FTP sites. (Although I have no idea about the legalities of using such copies).

If you do find them from somewhere else and they seem to work, please let me know and I'll add them to the list.

Most files I got from the A:\SRVIFS, A:\IBMCOM, and A:\IBMCOM\PROTOCOL directories of my MTPS floppies.

Trap for new players: The NETBEUI.OS2 and NETBIOS.OS2 files might be contained in a zip file called A:\IBMCOM\PROTOCOL\PROTOCOL.ZIP on some disks. Use InfoZip or PKZip to extract the files you need.

Anyway, if you can find these files you're in business: 3349          0  ACSNETB.DLL  // DLL file 170         35  AURORA.INI   ** This will be the name of your machine 17972          0  MACWD.OS2    ** These are the dvrs for my SMS card... 3516        162  MACWDAT.NIF  ** you'll have to find some for your cards 113460        162  NETBEUI.OS2  // NetBIOS driver 13657        255  NETBIND.EXE  // Required file 15860        162  NETBIOS.OS2  // NetBIOS driver 2234        158  PRO.MSG      // Error msg text 20212        162  PROTMAN.OS2  // Network driver 1076        194  PROTOCOL.INI ** INI file...see below 50208          0  SERVICE.EXE  // Server program 13938          0  SRVATTCH.EXE // Client program 1076          0  SRVIFS.SYS   // Driver for the IFS 24692          0  SRVIFSC.IFS  // IFS 8502          0  XI1.MSG      // Error msg text 28879          0  XI1H.MSG     // Error msg text The dates on all my files are sometime in 1994. Earlier versions might work in the same fashion...I have no idea.

The files marked ** will either be different for your setup, or will have to be edited.

The MACWD*.* files are drivers for my "Standard Microsystems" or "Western Digital" cards. You'll have to find the equivalent drivers for your cards.

INSTALLATION
Follow these instructions on any machine that you want to connect to the network.

Copy them all files into a directory called C:\SRVIFS.

The AURORA.INI file should be named the same as the name of your machine... (mine is called Aurora). Here is a listing of mine: Name=Aurora Groupname=No MaxClients=20 PermitWrite=Yes ClientWorkers=6 Adapter=0 Path=E:\ Alias = ReadWrite,Single,DriveE,E:\ Alias = ReadWrite,Single,DriveD,D:\ You'll need to change the "Aurora" to the name of your machine, set up aliases for drives you want to share, and change the path to a drive that exists on that machine.

The PROTOCOL.INI is a bit tricker. Here is a listing of mine: [PROT_MAN]

DRIVERNAME = PROTMAN$

[IBMLXCFG]

NETBEUI_nif = NETBEUI.NIF MACWDAT_nif = MACWDAT.nif

[NETBIOS]

DriverName = netbios$ ADAPTER0 = netbeui$,0

[NETBEUI_nif]

DriverName = netbeui$ Bindings = MACWDAT_nif ETHERAND_TYPE = "I" USEADDRREV = "YES" OS2TRACEMASK = 0x0 SESSIONS = 40 NCBS = 225 NAMES = 21 SELECTORS = 15 USEMAXDATAGRAM = "NO" ADAPTRATE = 1000 WINDOWERRORS = 0 MAXDATARCV = 4168 TI = 30000 T1 = 1000 T2 = 200 MAXIN = 1 MAXOUT = 1 NETBIOSTIMEOUT = 500 NETBIOSRETRIES = 2 NAMECACHE = 1000 RNDOPTION = 0 PIGGYBACKACKS = 1 DATAGRAMPACKETS = 10 PACKETS = 350 LOOPPACKETS = 8 PIPELINE = 5 MAXTRANSMITS = 6 MINTRANSMITS = 2 DLCRETRIES = 10 FCPRIORITY = 5 NETFLAGS = 0x0

[MACWDAT_nif]

DriverName = MACWD$ IOBase = 0x280 IRQ = 5 RamAddress = 0xD000 MaxRequests = 8 MaxTransmits = 12 ReceiveBuffers = 12 ReceiveBufSize = 256 ReceiveChains = 12 As you can see, the last section refers to my network card. The way I got it was to install MPTS/2 and it was created automatically for me. I don't pretend to know what all the settings do.

When all this is done, add these lines to your CONFIG.SYS: DEVICE=C:\SRVIFS\PROTMAN.OS2 /I:C:\SRVIFS CALL=C:\SRVIFS\NETBIND.EXE DEVICE=C:\SRVIFS\NETBEUI.OS2 DEVICE=C:\SRVIFS\NETBIOS.OS2 DEVICE=C:\SRVIFS\MACWD.OS2 DEVICE=C:\SRVIFS\SRVIFS.SYS IFS=C:\SRVIFS\SRVIFSC.IFS AURORA1 I have no idea why, but both the server and client won't run at the same time if the SRVIFSC.IFS parameter is the name of the machine.

Add C:\SRVIFS to the PATH, LIBPATH, and DPATH statements in your CONFIG.SYS file.

Reboot.

USING THE NETWORK
If the installation has worked, you should be able to type: START C:\SRVIFS\SERVICE.EXE /INI=AURORA (replacing the AURORA with the name of your computer) to start the server program. This can be added to your STARTUP.CMD file, or a shadow of a CMD file can be placed in the startup folder so that the server starts up each time. You may want to change the settings to "Start minimized".

The server can be closed down by switching to the session and pressing [CTRL][BREAK]. The server will shut down when all clients have detached.

To start the client, type: C:\SRVIFS\SRVATTCH.EXE X: \\UTOPIA\DriveC for each drive you want to attach...usually you'll want to assign one drive letter for each alias in the other INI file. Don't forget to replace UTOPIA with the other machines name.

Typing: C:\SRVIFS\SRVATTCH.EXE X: UTOPIA Will assign H: to be X: to be the directory specified in UTOPIA's PATH statement contained in UTOPIA.INI.

Network drives can be detached by typing: C:\SRVIFS\SRVATTCH.EXE X: /D Now all we need to do is convince IBM to release these files as an EWS peer product. :-)

Good luck.

Michael Brown zilch@aurora.equinox.gen.nz

23/9/94