home *** CD-ROM | disk | FTP | other *** search
- c-tree V4.3 Release C
- February 7, 1989 17:30
-
- ---------
- General
- ---------
-
- The c-tree VAP server is designed for Advanced Netware 2.1 or later.
- IT WILL NOT RUN WITH EARLIER VERSIONS OF NETWARE. (USE NETBIOS EMULATION
- WITH EARLIER VERSIONS OF NETWARE, AND SEE THE CODE AND README IN THE
- NETBIOS DIRECTORY.)
-
- A VAP is an executable module especially designed to run as an extension
- of the Novell kernel. As such, it sits with the dedicated 2.1 Server node.
-
- Novell has granted permission for FairCom to distribute excerpts from
- their libraries used to make calls to the netware environment. These
- libraries are based on Microsoft C V5.
-
- NOV$SVAP.LIB - small memory model, VAP based calls
- NOV$CVAP.LIB - compact memory model, VAP based calls
- NOV$SAPP.LIB - small memory model, APPLICATION based calls
- NOV$LAPP.LIB - large memory model, APPLICATION based calls
-
- The small memory model VAP limits the file, index buffer and user memory areas.
- Our initial configuration is for
-
- - 8 users
- - 100 files
- - 32 index buffers (each 512 bytes)
-
- Roughly speaking, each user requires about 1K bytes which is about as much
- memory as is required for 5 files (where each data file and each index counts
- as one file) or 2 (512 byte) index buffers. Note that when the same file
- is opened by more than one user, only one file slot is required.
-
- The compact memory model VAP uses a larger data area and can accommodate
- many more users files and file buffers.
-
- ---------
- Message Size
- ---------
-
- The maximum message size, which should already be set in your Novell CTCOMM.H,
- is 534. In CTAPPX.C, be sure that DEFASIZ and MAXSIZ are set to this value.
-
- ---------
- Compiler
- ---------
-
- The Microsoft compiler and macro assembler were chosen for this development. Use
- of another compiler will require changes to the assembly code
- which is now compatible with the Microsoft segment conventions.
-
- Also, the make files are set up for the Microsoft compiler and the Novell
- libraries are based on Microsoft. (Novell will be marketing a complete
- Netware interface library and presumably versions for different compilers
- will be available. Check with Novell for details.)
-
- ---------
- Make Files
- ---------
-
- Before compiling a c-tree VAP server, be sure to move the ctcomm.h provided
- in the novell sub-directory to the main c-tree directory. Use MAKESRV S
- to create the small model c-tree VAP server in the SSRV subdirectory
- (ctree\novell\ssrv\ctsrvrs.vap). Use MAKESRV C to create the compact
- model VAP in the CSRV subdirectory (ctree\novell\csrv\ctsrvrc.vap).
- Use MAKEAPP {S or L} to create c-tree application libraries and the
- examples in the mAPP sub-directory where m is S or L depending on the
- memory model chosen.
-
- ---------
- Service Advertising Protocol
- ---------
-
- This c-tree VAP server does not utilize the Novell Service Advertising
- Protocol which allows requesters to locate servers on the internet. Instead,
- the module CTAMSG.C (which is linked with your applications) uses the
- following default network address for the c-tree server:
-
- Server Network Number 00 00 00 00 (all zero implies
- requester in same network
- as server)
- Server Node Address 00 00 00 00 00 01
-
- You can modify these defaults as follows:
-
- 1) copy the four byte Network Number into the four byte global
- char array netnum[].
- 2) copy the six byte Node Address into the six byte global char
- array nodadr[].
-
- These copy operations should be performed by your application prior to
- calling any c-tree functions. NOTE that these addresses are expressed
- as right-justified hexadecimal values. Each byte holds two hexadecimal
- characters. For example, a Node Address of 23A5F4E could be represented as
-
- TEXT nodadr[] = {0,0,0x02,0x3A,0x5F,0x4E};
-
- ---------
- Disconnections
- ---------
-
- Novell's message watchdog facility which detects dropped and/or bad
- connections is now working with the c-tree server. A dropped and/or bad
- connection will now cause the application to be automatically logged off
- the c-tree server. Combined with the ^C and DOS Critical Errors discussed
- below, c-tree can now properly log off applications which abnormally
- terminate.
-
- ---------
- CONTROL-C and DOS CRITICAL ERRORS
- ---------
-
- The following information is important to MS-DOS developers that use special
- control-c (interrupt 23) or critical error (interrupt 24) handlers.
- The handlers may be explicitly coded or embedded, for example, in a
- your console i/o library. As shipped, c-tree installs interrupt 23 & 24
- handlers which cleanup the c-tree environment. To change this default,
- change the contents of CTAXIT.H for CBRKmode and CERRmode as outlined
- in README.CUP.
-
- ---------
- Server Login
- ---------
-
- Advanced Netware 2.1 loads a VAP at the time the network server is booted.
- If you have copied the c-tree executable server (CTSRVR.VAP) to the SYSTEM
- directory of the NOVELL server, then you will be asked if you want the
- VAP(s) loaded. Respond y. You will then see the c-tree Server banner.
-
- BEFORE ATTEMPTING TO LOAD THE c-tree VAP SERVER IN THIS MANNER, BE SURE
- that the system administrator has created a network user with the name
- CTREEV4-3, no password, and the desired file creation and update
- attributes. (See the NOVELL documentation for the use of SYSCON in order
- to add new users). If no such user exists, then the c-tree VAP will
- load without error, but it will not operate properly. You can detect
- a login problem as follows: The last line of the c-tree VAP banner
- will either appear as
-
- login:0 or login:252
-
- A non-zero login value indicates a server login problem. Be sure
- the CTREEV4-3 user is part of your network.
-
- ---------
- Novell Library Function Names
- ---------
-
- In the event that the Novell function names referenced by c-tree in the
- CTAMSG.C and CTSMSG.C modules must be changed (either because Novell
- has changed their naming convention or because you require the functions
- to have all UPPER case names), examine the CTMSSG.H module. Beginning
- around line 85, there are a series of defines which you can modify to
- the desired function names.
-
- For example,
-
- #define IPXdatadr IPXGetDataAddress
-
- could be changed to
-
- #define IPXdatadr IPXGETDATAADDRESS
-
- ---------
- end
- ---------
-