139 /*
140 * These typedefs are used to define the signature for callback functions
141 * that can be used with the iteration and visit functions below:
142 */
143 typedef int ctf_visit_f(const char *, ctf_id_t, ulong_t, int, void *);
144 typedef int ctf_member_f(const char *, ctf_id_t, ulong_t, void *);
145 typedef int ctf_enum_f(const char *, int, void *);
146 typedef int ctf_type_f(ctf_id_t, void *);
147 typedef int ctf_label_f(const char *, const ctf_lblinfo_t *, void *);
148
149 extern ctf_file_t *ctf_bufopen(const ctf_sect_t *, const ctf_sect_t *,
150 const ctf_sect_t *, int *);
151 extern ctf_file_t *ctf_fdopen(int, int *);
152 extern ctf_file_t *ctf_open(const char *, int *);
153 extern ctf_file_t *ctf_create(int *);
154 extern ctf_file_t *ctf_dup(ctf_file_t *);
155 extern void ctf_close(ctf_file_t *);
156
157 extern ctf_file_t *ctf_parent_file(ctf_file_t *);
158 extern const char *ctf_parent_name(ctf_file_t *);
159
160 extern int ctf_import(ctf_file_t *, ctf_file_t *);
161 extern int ctf_setmodel(ctf_file_t *, int);
162 extern int ctf_getmodel(ctf_file_t *);
163
164 extern void ctf_setspecific(ctf_file_t *, void *);
165 extern void *ctf_getspecific(ctf_file_t *);
166
167 extern int ctf_errno(ctf_file_t *);
168 extern const char *ctf_errmsg(int);
169 extern int ctf_version(int);
170
171 extern int ctf_func_info(ctf_file_t *, ulong_t, ctf_funcinfo_t *);
172 extern int ctf_func_args(ctf_file_t *, ulong_t, uint_t, ctf_id_t *);
173
174 extern ctf_id_t ctf_lookup_by_name(ctf_file_t *, const char *);
175 extern ctf_id_t ctf_lookup_by_symbol(ctf_file_t *, ulong_t);
176
177 extern ctf_id_t ctf_type_resolve(ctf_file_t *, ctf_id_t);
178 extern ssize_t ctf_type_lname(ctf_file_t *, ctf_id_t, char *, size_t);
|
139 /*
140 * These typedefs are used to define the signature for callback functions
141 * that can be used with the iteration and visit functions below:
142 */
143 typedef int ctf_visit_f(const char *, ctf_id_t, ulong_t, int, void *);
144 typedef int ctf_member_f(const char *, ctf_id_t, ulong_t, void *);
145 typedef int ctf_enum_f(const char *, int, void *);
146 typedef int ctf_type_f(ctf_id_t, void *);
147 typedef int ctf_label_f(const char *, const ctf_lblinfo_t *, void *);
148
149 extern ctf_file_t *ctf_bufopen(const ctf_sect_t *, const ctf_sect_t *,
150 const ctf_sect_t *, int *);
151 extern ctf_file_t *ctf_fdopen(int, int *);
152 extern ctf_file_t *ctf_open(const char *, int *);
153 extern ctf_file_t *ctf_create(int *);
154 extern ctf_file_t *ctf_dup(ctf_file_t *);
155 extern void ctf_close(ctf_file_t *);
156
157 extern ctf_file_t *ctf_parent_file(ctf_file_t *);
158 extern const char *ctf_parent_name(ctf_file_t *);
159 extern const char *ctf_parent_label(ctf_file_t *);
160
161 extern int ctf_import(ctf_file_t *, ctf_file_t *);
162 extern int ctf_setmodel(ctf_file_t *, int);
163 extern int ctf_getmodel(ctf_file_t *);
164
165 extern void ctf_setspecific(ctf_file_t *, void *);
166 extern void *ctf_getspecific(ctf_file_t *);
167
168 extern int ctf_errno(ctf_file_t *);
169 extern const char *ctf_errmsg(int);
170 extern int ctf_version(int);
171
172 extern int ctf_func_info(ctf_file_t *, ulong_t, ctf_funcinfo_t *);
173 extern int ctf_func_args(ctf_file_t *, ulong_t, uint_t, ctf_id_t *);
174
175 extern ctf_id_t ctf_lookup_by_name(ctf_file_t *, const char *);
176 extern ctf_id_t ctf_lookup_by_symbol(ctf_file_t *, ulong_t);
177
178 extern ctf_id_t ctf_type_resolve(ctf_file_t *, ctf_id_t);
179 extern ssize_t ctf_type_lname(ctf_file_t *, ctf_id_t, char *, size_t);
|