[boot scriptor] CD Shell 2.0.17b released

Ok, there's two major changes in this release, which finalize what I 
wanted to achieve with the latest round of betas. Once I'm satisfied 
that the beta is sufficiently bug-free, it will be declared stable and 
the version numbering will jump to 2.1.0. If you haven't tried out any 
of the beta releases lately, I highly suggest giving it a try before the 
change is made.

Now on to the goodies. :) The change in this release that will probably 
have the most impact, is that lines are now scanned for variables from 
right to left, instead of left to right as they were previously. The 
major benefit of this is that you can now build variable names, so that 
you can do things like have $menuOption$number expand to $menuOption43, 
and have that expand to some crazy menu option.  I guess you can kind of 
look at it as one way to build simplistic arrays.

Unfortunately this comes with some side effects, the most obvious one is 
that the $< escape sequence (used to delimit variable names) becomes 
pretty much useless. Now you can do $(variable_name) to achieve the same 
effect. See the documentation for the new $lastChar variable 
(http://www.cdshell.org/varref.html#lastChar-beta) for an example of this.

Normally this reverse scanning would slow down script processing 
noticably, but I was able to offset this by making what turned out to be 
a very significant optimization.  Large scripts that previously ran 
slowly under emulation are now a *lot* faster.

The other big change is the addition of the $MD5 variable 
(http://www.cdshell.org/varref.html#MD5-beta). Yes, you can now generate 
secure passwords for your menu options, so that it becomes a lot more 
difficult for some evil person to use your CD Shell disc for malice. 
Nothing will stop someone from mastering his/her own disc with the 
protection removed, but at least now it's not as simple as opening up 
your script in a text editor and jotting down the password.  Just for 
fun I plugged the MD5 algorithm into the CD Shell Module API, so if for 
some reason you're writing a module that can benefit from MD5, it's 
available to you.  I've updated Paul Wabno's awesome password script (in 
the /boot/samples folder) to show how to use $MD5.

The other changes made were a bugfix, and the isolinux module has been 
updated once again thanks to H. Peter Anvin. He's now up to version 
2.10, so see his website (http://syslinux.zytor.com) for what's new.

Thanks for listening!
Mike

============================================================
Boot Scriptor mailing list -- http://www.bootscriptor.org
Change your subscription options at: http://www.freelists.org/list/bscript

Other related posts: