--- wikisrc/users/mbalmer/keylock.mdwn 2009/12/29 09:17:38 1.1
+++ wikisrc/users/mbalmer/keylock.mdwn 2009/12/29 09:26:30 1.4
@@ -1,4 +1,4 @@
-# A Keylock Security Model for kauth(9)
+[[!meta title="A Keylock Security Model for kauth(9)"]]
Recently, generic support for electro-mechanical multi-position keylocks
in the kernel has been added to NetBSD. Such locks can be turned into
@@ -11,21 +11,23 @@ securelevel variable...
The number of keylock positions, the current keylock position, and the
overall keylock state can be read within the kernel using a set of
-functions defined in {{src|keylock.h|sys/dev/keylock.h|}} and userland
-can access them through the '''hw.keylock''' sysctl hierarchy.
+functions defined in
+[keylock.h](http://cvsweb.de.netbsd.org/cgi-bin/cvsweb.cgi/src/sys/dev/keylock.h?rev=HEAD)
+and userland
+can access them through the hw.keylock sysctl hierarchy.
The following components have been added:
* '''{{manual page|gpiolock|4|}}''' a driver for GPIO attached keylocks.
The driver registers with the in-kernel keylock "subsystem". See
-{{src|gpiolock.c|sys/dev/gpio/gpiolock.c}}.
+[gpiolock.c](http://cvsweb.de.netbsd.org/cgi-bin/cvsweb.cgi/src/sys/dev/gpio/gpiolock.c?rev=HEAD).
-* '''secmodel_keylock''', a {{manual page|kauth|9}} security model that
+* secmodel_keylock, a {{manual page|kauth|9}} security model that
authorizes based on the keylock "closedness". Wheter the rightmost
(default) or leftmost position of the keylock means open can be
controlled using the '''hw.keylock.order''' sysctl variable. This
variable can only be changed if the keylock state is OPEN. See
-{{src|secmodel_keylock.c|sys/secmodel/keylock/secmodel_keylock.c}}.
+[secmodel_keylock.c](http://cvsweb.de.netbsd.org/cgi-bin/cvsweb.cgi/src/sys/secmodel/keylock/secmodel_keylock.c?rev=HEAD).
The security model is started when a keylock driver registers and
stopped when there is no more keylock driver. The keylock security
@@ -34,7 +36,8 @@ model as well (e.g. to provide keylock s
Useful e.g. for POS applications).
The keylock state interpretation is done in
-{{src|keylock.c|sys/dev/keylock.c}} and not in the driver itself. This
+[keylock.c](http://cvsweb.de.netbsd.org/cgi-bin/cvsweb.cgi/src/sys/dev/keylock.c?rev=HEAD)
+and not in the driver itself. This
allows for adding support for multiple keylocks in the future. The
hw.keylock.pos and hw.keylock.npos sysctl variable have debugging
character, the hw.keylock.state variable reflects the state and should
@@ -57,4 +60,4 @@ Of course you must have at least one GPI
{{manual page|gpiolock|4|}} driver to work and the lock must be
connected properly.
-Please keep in mind that this is an experimental feature...
+Please keep in mind that this is an experimental feature...