1113451Sphk#!/bin/sh
2113451Sphk# $FreeBSD$
3113451Sphk
4113451Sphkset -e
5113451SphkMD=`mdconfig -a -t malloc -s 4m -x 63 -y 16`
6113451Sphkif [ ! -c /dev/${MD} ] ; then
7113451Sphk	echo "MD device $MD did not materialize" 1>&2
8113451Sphk	exit 2
9113451Sphkfi
10113451Sphktrap "mdconfig -d -u ${MD}" EXIT INT TERM
11113451Sphk
12113451Sphk# Create an empty bootcode file to isolate our checksum from any changes
13113451Sphk# which might happen to the boot code file.
14113451Sphkdd if=/dev/zero of=tmp count=1 > /dev/null 2>&1
15113451Sphk./fdisk -b tmp -I $MD > /dev/null 2>&1
16113451Sphkrm tmp
17113451Sphk
18113451Sphkc=`dd if=/dev/${MD} count=1 2>/dev/null | md5`
19113454Sphkif [ $c != ea4277fcccb6a927a1a497a6b15bfb8c ] ; then
20113454Sphk	echo "FAILED: 'fdisk -I' gives bad checksum ($c)" 1>&2
21113451Sphk	exit 1
22113451Sphkfi
23113451Sphkecho "PASSED: fdisk -I"
24113454Sphkc=`./fdisk $MD | md5`
25113454Sphkif [ $c != 4b126d7ac4c6b2af7ef27ede8ef102ec ] ; then
26113454Sphk	echo "FAILED: 'fdisk' gives bad checksum ($c)" 1>&2
27113454Sphk	exit 1
28113454Sphkfi
29113454Sphkecho "PASSED: fdisk"
30113451Sphkexit 0
31