xref: /plan9-contrib/sys/src/cmd/usb/disk/mkscsierrs (revision b94bb474148e9d24a82a427863d9c9eb4c20f4ae)
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