PLS Personal Login Script Version 1.0 Release date: 01/25/92 Copyright 1992, Michael Volk PLS is a little utility I have written to solve a problem using Novell Netware. There is no inherent way to know whether users have a personal login script. If they do, it will be executed; if not, the default login script will executed. Since as a network administrator you wish to do as much as possible in the system script, the user's HOME directory should be set there. However SYS:%LOGIN_NAME (the assumption of the default login script) will not work if SYS:DEPARTMENT\%LOGIN_NAME is used. Therefore I was left with the choice either of making a script for every user (hoping that no one erases it) or of using EXIT in the System login script to prevent the DEFAULT USER SCRIPT from being executed. In many installations the solution is to place an EXIT command at the end of the SYSTEM LOGIN SCRIPT, thereby preventing the user's LOGIN SCRIPT or the DEFAULT SCRIPT from executing. I wanted to be able to allow the users that are so inclined to use and learn more about the network, including Login Scripts. At the same time, I didn't want to waste the space required to create a script for every user at 4k per file. Not being satisfied with either of these options, I decided to provide a third solution. I wrote PLS, Personal Login Script, to test for the existence of a user's script, to delete wasteful LOGIN scripts (3 bytes or shorter), and to do it in a fashion that involves no extra work for the Network Adminstrator once he has set it up, even in the event that users delete their scripts. WARRANTY AND LICENSE No warranty of any kind is provided and the user assumes all risks of operation. The program is provided AS-IS and the author shall not be liable in the event of lost data or any other damage caused by the program. The program was carefully written but if you do encounter errors or bugs please report them to me. This program is FREEWARE. It is copyrighted software and you are free to use it. You may distribute it ONLY under the following conditions: No modifications are made. This documentation must accompany the program. No fee is charged for the software. If you do use the software and find it helpful I would appreciate it if you would drop me a note and let me know. Compuserve - 70242,376 Internet - MVOLK@PUCC.PRINCETON.EDU Or via US Mail Mike Volk 91 Princeton Arms West Cranbury, NJ 08512 609-448-2479 ( 6pm - 10pm EST only ) USING THE PROGRAM Use is very easy. Copy PLS to you PUBLIC directory and flag it as SHARABLE, READ-ONLY. For purposes of installation, knowledge of Netware is presumed. In your SYSTEM LOGIN SCRIPT MAP INSERT S16:= ... ... ... MAP h:=SYS:depart\%login_name #PLS ; ; If the script can't deleted or other error. ; IF "%ERROR_LEVEL">="3" then begin Write "Please inform the Network Supervisor that there is a problem"; EXIT END ; ; If script is too short it is not run and it gets deleted. ; IF "%ERROR_LEVEL"="2" THEN BEGIN Write "Your Script was too short and has been deleted." EXIT END ; ; If script isn't found ; IF "%ERROR_LEVEL"="1" THEN EXIT WRITE "You have no personal Login script." EXIT END ; ; This line is not needed - Only there as feedback to verify operation ; IF "%ERROR_LEVEL"="0" THEN BEGIN Write "Now executing %LOGIN_NAME's Login Script" END ERROR LEVELS 0 - Login script exists and is more than 3 bytes long 1 - Login script does not exist and EXIT should be executed to prevent DEFAULT login script from executing. 2 - Login script was 3 bytes or less and has been deleted. Exit should be executed to prevent DEFAULT login script. 3 - Error opening Login script - Exit should be executed. 4 - Login script was not deleted, but should have been. You may want to have a message that tells them to inform the Network Supervisor to look into their script as there might be a problem. Other error levels might appear but shouldn't. If they do, there probably is an unrelated Netware error. This software has been tested on Novell Netware 386 v3.11 but should work with older versions as well. CREDITS This program was written using Borland's Turbo Assembler v2.0 and Base Two Development's Spontaneous Assembly. Programmer's Guide to Netware by Charles G. Rose, McGraw-Hill Lan Times Book series. Mastering Turbo Assembler by Tom Swan, Hayden Books. I would also like to thank the following people: Charles G. Rose, not only for writing his book but also for his prompt reply to my query that steered me into using a newer call to obtain the information, and provided me with the correction to the published information. Paul Troiano, for his assistance in getting me going with 80x86 assembly after so many years of not doing assembler. Malcolm DeBevoise, for assistance editing this document. I would also like to thank Charles L. Creesy, John E. Van Sant, Bob LaFond and others whose names escape me just now for their encouragement during this project and their kind ears whilst I stumbled about when I started this. OTHER PROGRAMS ONCE - meant to be used in conjection with utilities such as MIRROR to run them ONCE a day -- using this allows you to run MIRROR the first time you BOOT each day and not every time you reboot. File is ONCE.ZIP Look for others to follow.