From f61bf72e61f012e173acc15dfda71a3e5371bde1 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Fri, 19 Jun 2020 20:55:26 -0700 Subject: Replace all strerror calls with wrapper. All string_utf8(strerror(x)) calls are replaced with errno_to_str(x). * sysif.c (errno_to_str): New function. (strerror_wrap): Now implemented via call to errno_to_str. (mkdir_wrap, ensure_dir, chdir_wrap, getcwd_wrap, rmdir_wrap, mknod_wrap, mkfifo_wrap, chmod_wrap, do_chown, symlink_wrap, link_wrap, readlink_wrap, close_wrap, exec_wrap, stat_impl, do_utimes, pipe_wrap, poll_wrap, getgroups_wrap, setuid_wrap, seteuid_wrap, setgid_wrap, setegid_wrap, setgroups_wrap, getresuid_wrap, getresgid_wrap, setresuid_wrap, setresgid_wrap, crypt_wrap, uname_wrap): Use errno_to_str. * sysif.h (errno_to_str): Declared. * ftw.c (ftw_wrap): Use errno_to_str. * socket.c (dgram_get_byte_callback, dgram_flush, sock_bind, open_sockfd, sock_connect, sock_listen, sock_accept, sock_shutdown, sock_timeout, socketpair_wrap): Likewise. * stream.c (errno_to_string): Likewise, and don't handle zero case any more; pass down to errno_to_str. (stdio_close, pipe_close open_directory, open_file, open_fileno, open_tail, fds_subst, open_command, open_subprocess, run, remove_path, rename_path): Use errno_to_str. * termios.c (tcgetattr_wrap, tcsetattr_wrap, tcsetattr_wrap, tcsendbreak_wrap, tcdrain_wrap, tcflush_wrap, tcflow_wrap): Likewise. diff --git a/termios.c b/termios.c --- ftw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'ftw.c') diff --git a/ftw.c b/ftw.c index 9e066754..99178961 100644 --- a/ftw.c +++ b/ftw.c @@ -126,7 +126,7 @@ val ftw_wrap(val dirpath, val fn, val flags_in, val nopenfd_in) { int eno = errno; uw_throwf(errno_to_file_error(eno), lit("ftw ~a: ~d/~s"), - dirpath, num(eno), string_utf8(strerror(eno)), nao); + dirpath, num(eno), errno_to_str(eno), nao); } default: return num(res); -- cgit v1.2.3