diff options
-rw-r--r-- | include/ChangeLog | 5 | ||||
-rw-r--r-- | include/ctf-api.h | 2 | ||||
-rw-r--r-- | libctf/ChangeLog | 6 | ||||
-rw-r--r-- | libctf/ctf-open.c | 12 | ||||
-rw-r--r-- | libctf/libctf.ver | 3 |
5 files changed, 28 insertions, 0 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 1d4eac9..704c9af 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,5 +1,10 @@ 2020-11-20 Nick Alcock <nick.alcock@oracle.com> + * ctf-api.h (ctf_getsymsect): New. + (ctf_getstrsect): Likewise. + +2020-11-20 Nick Alcock <nick.alcock@oracle.com> + * ctf-api.h (ctf_arc_lookup_symbol): New. (ctf_arc_flush_caches): Likewise. * ctf.h: Document new auto-ctf_import behaviour. diff --git a/include/ctf-api.h b/include/ctf-api.h index f0c00c0..8687475 100644 --- a/include/ctf-api.h +++ b/include/ctf-api.h @@ -307,6 +307,8 @@ extern ctf_archive_t *ctf_open (const char *filename, const char *target, int *errp); extern void ctf_close (ctf_archive_t *); extern ctf_sect_t ctf_getdatasect (const ctf_dict_t *); +extern ctf_sect_t ctf_getsymsect (const ctf_dict_t *); +extern ctf_sect_t ctf_getstrsect (const ctf_dict_t *); extern ctf_archive_t *ctf_get_arc (const ctf_dict_t *); extern ctf_archive_t *ctf_arc_open (const char *, int *); extern ctf_archive_t *ctf_arc_bufopen (const ctf_sect_t *, diff --git a/libctf/ChangeLog b/libctf/ChangeLog index deca027..685c06a 100644 --- a/libctf/ChangeLog +++ b/libctf/ChangeLog @@ -1,5 +1,11 @@ 2020-11-20 Nick Alcock <nick.alcock@oracle.com> + * ctf-open.c (ctf_getsymsect): New. + (ctf_getstrsect): Likewise. + * libctf.ver: Add them. + +2020-11-20 Nick Alcock <nick.alcock@oracle.com> + * ctf-impl.h (struct ctf_archive_internal) <ctfi_dicts>: New, dicts the archive machinery has opened and cached. <ctfi_symdicts>: New, cache of dicts containing symbols looked up. diff --git a/libctf/ctf-open.c b/libctf/ctf-open.c index 3281c67..ecf27ee 100644 --- a/libctf/ctf-open.c +++ b/libctf/ctf-open.c @@ -1854,6 +1854,18 @@ ctf_getdatasect (const ctf_dict_t *fp) return fp->ctf_data; } +ctf_sect_t +ctf_getsymsect (const ctf_dict_t *fp) +{ + return fp->ctf_symtab; +} + +ctf_sect_t +ctf_getstrsect (const ctf_dict_t *fp) +{ + return fp->ctf_strtab; +} + /* Return the CTF handle for the parent CTF dict, if one exists. Otherwise return NULL to indicate this dict has no imported parent. */ ctf_dict_t * diff --git a/libctf/libctf.ver b/libctf/libctf.ver index f0633f2..cfecc89 100644 --- a/libctf/libctf.ver +++ b/libctf/libctf.ver @@ -190,4 +190,7 @@ LIBCTF_1.1 { ctf_arc_lookup_symbol; ctf_arc_flush_caches; + + ctf_getsymsect; + ctf_getstrsect; } LIBCTF_1.0; |