5 # The contents of this file are subject to the terms of the
6 # Common Development and Distribution License, Version 1.0 only
7 # (the "License"). You may not use this file except in compliance
10 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
11 # or http://www.opensolaris.org/os/licensing.
12 # See the License for the specific language governing permissions
13 # and limitations under the License.
15 # When distributing Covered Code, include this CDDL HEADER in each
16 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
17 # If applicable, add the following below this CDDL HEADER, with the
18 # fields enclosed by brackets "[]" replaced with your own identifying
19 # information: Portions Copyright [yyyy] [name of copyright owner]
24 # Copyright 2005 Sun Microsystems, Inc. All rights reserved.
25 # Use is subject to license terms.
27 #ident "%Z%%M% %I% %E% SMI"
29 #pragma ident "%Z%%M% %I% %E% SMI"
32 [ -z "$input" ] && exit 1
36 * Copyright 2005 Sun Microsystems, Inc. All rights reserved.\n\
37 * Use is subject to license terms.\n\
40 #pragma ident\t\"%Z%%M%\t%I%\t%E% SMI\"\n\
43 #include <fmd_error.h>
45 static const char *const _fmd_ereports[] = {"
47 pattern
='^[ ]*EFMD_\([A-Z0-9_]*\).*,*'
48 replace
=' "ereport.fm.fmd.\1",'
50 echo "$input" |
sed -n "s/$pattern/$replace/p" |
tr '[A-Z]' '[a-z]' ||
exit 1
55 static const char *const _fmd_errstrs[] = {"
57 pattern
='^[ ]*EFMD_[A-Z0-9_]*.*\* \(.*\) \*.*'
60 echo "$input" |
sed -n "s/$pattern/$replace/p" ||
exit 1
65 static const int _fmd_nereports =\n\
66 sizeof (_fmd_ereports) / sizeof (_fmd_ereports[0]);\n\
68 static const int _fmd_nerrstrs =\n\
69 sizeof (_fmd_errstrs) / sizeof (_fmd_errstrs[0]);\n\
76 if (err >= EFMD_UNKNOWN && (err - EFMD_UNKNOWN) < _fmd_nereports)
77 c = _fmd_ereports[err - EFMD_UNKNOWN];
89 if (err >= EFMD_UNKNOWN && (err - EFMD_UNKNOWN) < _fmd_nerrstrs)
90 s = _fmd_errstrs[err - EFMD_UNKNOWN];
91 else if (err < 0 || (s = strerror(err)) == NULL)
98 fmd_set_errno(int err)