4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License"). You may not use this file except in compliance
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
23 * Copyright (c) 2000-2001 by Sun Microsystems, Inc.
24 * All rights reserved.
27 #pragma ident "%Z%%M% %I% %E% SMI"
29 #include "libfrureg.h"
38 const int max_data_element_count
= sizeof (Element_Defs
) /
39 sizeof (fru_regdef_t
);
42 fru_reg_lookup_def_by_name(const char *elem_name
)
44 fru_regdef_t
*ret_def
= NULL
;
46 for (i
= 0; i
< max_data_element_count
; i
++) {
47 ret_def
= &(Element_Defs
[i
]);
48 if (strcmp(ret_def
->name
, elem_name
) == 0) {
56 fru_reg_lookup_def_by_tag(fru_tag_t tag
)
58 fru_regdef_t
*ret_def
= NULL
;
60 for (i
= 0; i
< max_data_element_count
; i
++) {
61 ret_def
= &(Element_Defs
[i
]);
62 if (ret_def
->tagType
== get_tag_type(&tag
) &&
63 ret_def
->tagDense
== get_tag_dense(&tag
) &&
64 ret_def
->payloadLen
== get_payload_length(&tag
)) {
72 fru_reg_list_entries(unsigned int *num
)
76 fru_regdef_t
*def
= NULL
;
79 for (i
= 0; i
< max_data_element_count
; i
++) {
80 def
= &(Element_Defs
[i
]);
81 rc
= realloc(rc
, sizeof (char *) * (number
+ 1));
82 rc
[number
] = strdup(def
->name
);