Print this page
1730 DTrace should ignore type information from modules with cth_parlabel mismatches
Reviewed by: Keith Wesolowski <keith.wesolowski@joyent.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>


 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);