diff options
author | Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> | 2023-09-13 11:02:36 +0200 |
---|---|---|
committer | Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> | 2023-10-17 17:31:20 +0200 |
commit | 998a4f589d68503f79695f180fdf1742eeb0a39d (patch) | |
tree | 618e2906f5b949c620ddba79664f7f32a14d25bc /libctf/ctf-util.c | |
parent | 22bfda88f898e8ce11a622a888bd3f1daf86114a (diff) | |
download | binutils-998a4f589d68503f79695f180fdf1742eeb0a39d.zip binutils-998a4f589d68503f79695f180fdf1742eeb0a39d.tar.gz binutils-998a4f589d68503f79695f180fdf1742eeb0a39d.tar.bz2 |
libctf: Sanitize error types for PR 30836
Made sure there is no implicit conversion between signed and unsigned
return value for functions setting the ctf_errno value.
An example of the problem is that in ctf_member_next, the "offset" value
is either 0L or (ctf_id_t)-1L, but it should have been 0L or -1L.
The issue was discovered while building a 64 bit ld binary to be
executed on the Windows platform.
Example object file that demonstrates the issue is attached in the PR.
libctf/
Affected functions adjusted.
Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
Co-Authored-By: Yvan ROUX <yvan.roux@foss.st.com>
Diffstat (limited to 'libctf/ctf-util.c')
-rw-r--r-- | libctf/ctf-util.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/libctf/ctf-util.c b/libctf/ctf-util.c index 9f83ab9..e0d412d 100644 --- a/libctf/ctf-util.c +++ b/libctf/ctf-util.c @@ -255,16 +255,6 @@ ctf_set_open_errno (int *errp, int error) return NULL; } -/* Store the specified error code into the CTF dict, and then return CTF_ERR / - -1 for the benefit of the caller. */ - -unsigned long -ctf_set_errno (ctf_dict_t *fp, int err) -{ - fp->ctf_errno = err; - return CTF_ERR; -} - /* Create a ctf_next_t. */ ctf_next_t * |