This is Jason Kraftcheck's personal web page at the University of Wisconsin's Computer Aided Engineering Department .

The following miscellaneous items are available at this site:


My Master's Thesis

"Virtual Geometry: A Mechanism for Modification of CAD Model Topology for Improved Meshability"
Department of Mechanical Engineering -- University of Wisconsin
December, 2000
(PDF) or (GZip'd PDF)


My Resumé

(It's currently years out of date.)
(HTML), (PDF) or (PostScript)


A Patch for GDB

This patch ensures gdb that the edit and list commands work from within a hook-stop handler in GDB. I use this to drive NEdit from gdb. To install this on a Debian GNU/Linux machine, do the following:
  1. Download the source for the gdb package and any other packages required for compiling gdb:
    apt-get source gdb
    apt-get build-dep gdb
  2. Download the patch for the appropriate version of gdb:
    gdb-6.4-1 (debian package),
    Alternately, patches against offical gdb source rather than debian packages:
    gdb v 6.4
  3. Apply the patch:
    cd gdb-6.4
    patch -p1 < ../gdb-6.4.patch
  4. Build the new gdb deb:
    fakeroot debian/rules binary
  5. Install the new gdb deb:
    su -c "dpkg -i ../gdb_6.4-1custom4_i386.deb"

To make this work with NEdit, append the contents of this file to your ~/.gdbinit file.

In addition to the normal development packages, you also need to install the fakeroot, libreadline4-dev, tetex-bin and debhelper packages to build the gdb package.


A patch to add Xineram support to the Blackbox window manager.

The patch is available here.


A utility for use with MythGame

MythGame is a module for the MythTV software for home-brew linux-based PVR/entertainment systems. The MythGame module manages game console emulators, arcade emulators and other games for easy launch from the MythTV interface using a remote control.

For most applications launched from MythGame, there is no corresponding mechanism to terminate those applications with a remote control. This simple utility can be used to launch an application and terminate that application when a key is pressed on a remote control.

To install and use this utility:

  1. Download the gamelaunch.c source file.

  2. Compile the utiltiy:
    gcc -o gamelaunch gamelaunch.c -llirc_client

    Note: The utility requires the LIRC client library and corrresponding header file be installed.

  3. Configure LIRC to send the "Exit" command to the utlity when the appropriate button is pressed on the remote control by adding something like the following to your ~/.lirc file:
    begin
    remote = hauppaugegrey
    button = Back/Exit
    prog = gamelaunch
    config = Exit
    end
    The prog and config options must be specified as shown. The remote and button options should be changed as appropriate for your system and configuration.

  4. Test the utility by running it with a simple command and verifying that it terminates when the configured remote control button is pressed. For example:
    ./gamelaunch cat
  5. "Install" the utility by copying it to somewhere in your $PATH. For example:
    sudo cp gamelaunch /usr/local/bin
  6. Finally, configure MythGame to use the utility when launching any applications that don't support LIRC natively. To do this, simply enter gamelaunch before the normal command string in the "command:" field of the emulator/game setup. For example, change:
    fceu-sdl -fs 1
    to:
    gamelaunch fceu-sdl -fs 1


A patch for Valgrind.

This is a patch against version 2.0.0-3 of the Debian package for Valgrind, a Linux memory checking tool.

There are two version of this patch available:

  1. A patch against the source of the Debian package.
  2. and
  3. A patch against the official Valgrind 2.0.0 source without the Debian bits.

This patch adds an option '--stack-addresses=yes|no" to turn off the display of memory address in Valgrind's stack trace output. I added this option because the memory addresses are seldom of any use to me and they clutter the output.

To create a Debian package of valgind with this patch applied:

  1. Download the patch
  2. Open a command shell and change to the directory the patch is in
  3. Execute the following commands:
    apt-get source valgrind
    apt-get build-dep valgrind
    cd valgrind-2.0.0
    patch -p1 < ../valgrind-2.0.0-3-address.diff
    fakeroot debian/rules binary
A package valgrind_2.0.0-3Custom1_i386.deb will be created in the same directory as the patch was saved in. Use dpkg -i to install the new Valgrind package.


A patch for OpenSSH.

This patch is for version 3.8p1 of OpenSSH. The SSH Communications Security implementation of ssh allows (or did at one time allow) a 'password' option in the ssh config file specifying the password to use when connecting to a given host. This option is not present in the OpenSSH implementation because it it obviously horribly insecure (the password is clear text in the config file.) One could debate that this is not much worse than the plethera of applications that save passwords (GUI ssh clients, mail clients, etc.) But that really isn't saying much, as I also consider it rather insecure to allow such applications to save passwords.

The SSH protocal provides much more secure alternatives to achieve the same effect (e.g public key authentication.) However, some sites insist on disabling all sane and secure methods of authentication other than password. This patch adds the 'password' configuration option. I created this patch for cases in which a) the site I am connecting to does not allow any of the better alternatives for authentication and b) for whatever reason entering a password interactivly is not an option.

To use this patch:


Some simple 3-D linear geometry formulas

Planes and lines in 3-space.


Layout of a Sun keyboard

Useful when I take mine apart to clean it.


Solaris Patch Script

Here's a script for installing Sun patch clusters on Solaris. It is faster and more interactive that the one Sun distrubutes with the patch clusters.


Contact Information

email:kraftche@cae.wisc.edu
phone:(608-26)2-8367
office:429 ERB
mailing
address:
Jason Kraftcheck
Fusion Technology Institute
1500 Engineering Dr.
Madison, WI 53706