NDS Osax - AppleScript extension for
Novell's NetWare Directory Services

©1999 by Erich G Bratton (erich @bratton.com)

Version 1.0d9 is out! Get it right here! 5/6/99

Also check out my other AppleScript stuff and my NDS Screen Saver!

"Do you have NetWare 4 servers that you connect to using Novell's NetWare Client for Macintosh 5.1 or 5.11 ? If so, you can script your interaction with NDS using NDS Osax."


What is it?

Description: The NDS Osax is a small set of the many NetWare 4.1 NetWare Directory Services (NDS) API calls, encapsulated into an AppleScript extension (osax). This osax is only really useful if you are using Novell's NetWare Client for Macintosh version 5.1 or 5.11 to connect to NetWare 4.1 file servers. (They may also work with the older MacNDS client, but no guarantees).

What can I use it for?

Use it in a personal login script to log you in to NDS & mount some volumes (by telling the finder to open some NDS object files), or use it in a departmental shutdown script that looks at your context or user ID and takes an action depending on who you are.

What commands are included? A lot!

(the dictionary is getting big, so just download it and drop it on Script Editor :-)


Version History:

1.0d9 - aete resource updated to avoid conflicts with MacOS 8.5 "password" keyword. Username is now NDSUsername, Password is now NDSPassword, and Context is now NDSContext.
Example: NDS_Osax_Login NDSUsername "xyzzy" NDSPassword "blah" NDSContext "blah"
- included some sample scripts from Timothy Ste. Marie.

1.0d8 - added the ChangePassword function, written by Dante Treglia. I haven't tested this out much, so send in any error reports.

1.0d8 - added the ChangePassword function, written by Dante Treglia. I haven't tested this out much, so send in any error reports.

1.0d7 - added the OpenConnection function, which is useful for getting around poor-behaving NDS servers.

1.0d6 - added the HomeDirectory function, with code contributed by Dante Treglia. with slight modifications of the code for this function, it should be possible to access any NDS data for any NDS object.

1.0d5 - added the WhoAmI function, since ReturnUsername and ReturnContext were giving inconsistent results. I suggest that everyone move to using WhoAmI instead of the old functions. WhoAmI may only work with client 5.11 - I'm not sure. - now includes CW10 source code. To compile things, you must have the NWClientAPI SDK from Novell, which comes with their DeveloperNet subscription - now is free for all uses - Warning - NDS_Osax does NOT check for things such as expired passwords, remaining grace logins, etc. This means that if you write a front end to logging into your system, the first time your users log in (or whenever the password expires) they will have to go to the tree menu and change their password. There won't be any notification - their password will just stop working. (Unless you add in the error # for expired password, I guess. But that still won't cover grace logins.) Anyways, I didn't want to write a change password function - I'll leave that up to one of you guys. :-)

1.0d4 - added the DefaultTree function, since sometimes login was failing on virgin NWClient 5.1 when no tree was set - included an osax that has all of the commands in it, as well as the 7 commands separately.

1.0d3 - split out the 5 functions into separate files, so that I can regain my sanity. :-) - also changed all the functions to have a prefix of NDS_Osax_ so that you can get at the new functions explicitly, without worry that you might actually be calling the old functions in NDS Osax if that's still installed - added the NDS_Osax_LoginDialog function which puts up a dialog for getting username, password, and context. see the sample script for an example. you can redesign the dialog/DITL using resedit, just don't renumber the fields or buttons. - improved NDS_Osax_Login so that it accepts username, password, AND context! Woohoo!

1.0d2 - no changes to the OSAX itself, but I fixed the sample script, added a second sample script to show how to workaround PCI powermac's NDS problems.

1.0d1 - first public release

Licensing:

NDS Osax is free for any and all uses. There is no guarantee or warranty of any kind.

The source may be freely reused under a few conditions: * don't laugh at my programming technique. :-) constructive criticism and/or corrections gladly accepted. * keep my name in any resultant source files and put my name in the about box of any resulting programs. * if you create any additional OSAX functions that make sense to bundle in with NDS Osax, please send them to me in source form, and I will add them to the distribution, so that we all can benefit from each other's work.

NDS Osax may be freely distributed with this README file and all other files included in the distribution, on any ftp sites or CD-ROMs.


Where do I get a copy of it?

You can now Download the latest NDS Osax distribution directly from this site.

NDS Osax is also available on the info-mac and umich archives, but they are slow to update their archives


Where's the NetWare SDK?

Novell's DeveloperNet now has a FREE web access subscription level! Unfortunately, as of last check, the NetWare Client for Macintosh SDK is not available on the web, but only on the DevNet CDs... You only need the SDK if you want to compile your own NetWare code.


Table of Contents