xref: /plan9/sys/src/cmd/usb/disk/mkscsierrs (revision 906943f9f6b8411972abb5e3a03ed19f74be7ccc)
1#!/bin/rc
2
3cat <<EOF
4#include <u.h>
5#include <libc.h>
6
7typedef struct Err Err;
8struct Err
9{
10	int n;
11	char *s;
12};
13
14static Err scsierrs[] = {
15EOF
16
17grep '^[0-9a-c][0-9a-c][0-9a-c][0-9a-c][ 	]' /sys/lib/scsicodes |
18	sed -e 's/^(....) (.*)/	{0x\1,	"\2"},\n/'
19cat <<EOF
20};
21
22char*
23scsierrmsg(int n)
24{
25	int i;
26
27	for(i = 0; i < nelem(scsierrs); i++)
28		if(scsierrs[i].n == n)
29			return scsierrs[i].s;
30	return "scsi error";
31}
32EOF
33