HOME |  RANTS |  SOFTWARE |  PRESENTATIONS |  STUFF |  CONTACT

Kiosk Readme

Kiosk is a set of tools that allows you to restrict your Palm to a single application. This can be useful if you want to loan your handheld to someone you don't trust or who might break things. For example, you can use Kiosk to allow your child to play a game on the Palm without worrying that they will accidentally delete important Datebook entries. Or you can let someone use the Palm as a calculator without worrying that they might root through your memos.

First off, it's important to note that Kiosk works only on Palms running OS 2 to OS 4.1. It does not work on Palms running OS 5 or greater. Fortunately, there's an equivalent (in some ways superior) option for OS 5 called Paranoid Security Hack.

Installing Kiosk

Kiosk actually consists of two separate components, a hack (OS patch) and a DA (desk accessory). Both of these components need to be installed to use Kiosk. You will also need a "Hack Manager" (to configure and activate the hack) and a "DA Launcher" (to activate the DA). Personally, I use X-Master and EasyLaunch, but there are many alternatives available.

You will need to install your hack manager and DA launcher, then install the "KioskDA.prc" and "KioskHack.prc" files.

Configuring Kiosk

Configuring the Hack

In the hack manager, bring up the configuration panel for Kiosk.

You need to set a password, of course. If you don't, you'll get an error message when you try to lock an application. Kiosk can use the 'system' password (set in the Security application that comes with PalmOS), or it can use a local, Kiosk-specific password. Click on the dotted-outline box to set the local password.

The local password can be up to 64 characters.

The "Hide password" option will hide the password from view as you enter it, both here and when you want to unlock an application. (This is optional because sometimes it's hard to avoid typos when using Grafitti.)

Some applications need special consideration. Many applications (particularly networked ones) offer the ability to jump directly to a particular panel in the "Preferences" application, and when you're done with it, automatically return to the original app. (E.g., my own Ostiary program lets you jump to the "Network" and "Connection" panels.) Usually this is not a problem, and by default Kiosk doesn't block this. If you want to prevent such operations, check the box labled "Block Preference panels".

The 'Security' application can be used to password-protect your entire Palm. I have mine set to auto-lock if I haven't used my handheld in a while; others set it to lock at a specific time. In order for this to work the application must be able to run. I have a hard time imagining why someone would want to check the "Block Security application" box, but if you want to, it's there.

You can also set Kiosk to play a tone when locking/unlocking, as well as playing a tone when it prevents another application from launching.

Kiosk can also disable 'Beam Receive' (infrared receive) when an application is locked. When unlocked, Kiosk will restore the previous 'Beam Receive' state.

Configuring the DA

You need to set up whatever DA launcher you're using to launch the KioskDA. For example, I set EasyLaunch to fire off the DA when I swipe from the Find button to the Menu button.

Using Kiosk

To use Kiosk, start an application that you would like to lock, then activate the Kiosk DA (e.g, I have EasyLaunch set to fire off the KioskDA whenever I swipe from the Find button to the Menu button). A small dialog with an image of a locked padlock will appear.

Attemping to launch another application will now fail quietly (or noisily, if you've enabled the tone). (But see Limitations below.) To unlock the application, activate the Kiosk DA again. A dialog will appear asking for the password.

If you enter the correct password, a small dialog with an image of an unlocked padlock will appear, and you will be able to launch other programs as normal.

Troubleshooting

Kiosk works by patching the Palm system function "SysUIAppSwitch", and preventing it from starting a new application if Kiosk is locked. Other hacks may also patch this function, and the order in which the patches run can be significant. If your Palm crashes or behaves oddly with Kiosk enabled, try rearranging the order in which you activate the hacks, or gradually enabling hacks until you find the one that conflicts.

If you activate the hack, but don't have a password configured, you will hear beeps as you change applications. This is the hack telling you that you need to configure it.

If you forget the Kiosk password, do a soft reset. You'll be able to set a new password from the configuration panel. Configuring the hack also automatically unlocks Kiosk, even if the hack isn't enabled. This can be useful if Kiosk is in a bad state after a reset. (See Limitations below.)

Kiosk Limitations

Kiosk is meant to give you some confidence when loaning our your Palm for a short while. Kiosk is not meant to be serious security against a determined attacker. (If someone has physical access to a machine, it's almost impossible to guarantee security anyway.) There are several things it cannot do:

Finally, it is important to note that Kiosk has no warranty whatsoever. I take no responsibility if you lose data, have your Palm catch fire, or suddenly break out with acne.

Downloading Kiosk

You can get the latest binaries and source code here:

MD5sumFile
45b386aed8e49a8a7323ba8a7f445367kiosk-0.81b.zip
dc3925d642ad50238a5ddbd57356d251kiosk-src-0.81b.tgz

Important note: If you have an older version of Kiosk installed, you must delete it before installing the latest version! Kiosk doesn't show up in the normal "Applications" view of the Launcher. You can still delete it the way you would any other application using the "Delete" menu in the Launcher. Look for and delete both "KioskDA" and "KioskHack".

Version 0.70b of Kiosk can be fully deleted simply by deleting the "KioskApp" application. Make sure to deactivate the hack first!

Changelog