diff options
Diffstat (limited to 'libbb')
-rw-r--r-- | libbb/xfuncs.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c index c496f9a22..1dcdbc065 100644 --- a/libbb/xfuncs.c +++ b/libbb/xfuncs.c | |||
@@ -133,6 +133,16 @@ int ndelay_off(int fd) | |||
133 | return fcntl(fd,F_SETFL,fcntl(fd,F_GETFL,0) & ~O_NONBLOCK); | 133 | return fcntl(fd,F_SETFL,fcntl(fd,F_GETFL,0) & ~O_NONBLOCK); |
134 | } | 134 | } |
135 | 135 | ||
136 | // "Renumber" opened fd | ||
137 | void xmove_fd(int from, int to) | ||
138 | { | ||
139 | if (from == to) | ||
140 | return; | ||
141 | if (dup2(from, to) != to) | ||
142 | bb_perror_msg_and_die("cannot duplicate file descriptor"); | ||
143 | close(from); | ||
144 | } | ||
145 | |||
136 | // Die with an error message if we can't write the entire buffer. | 146 | // Die with an error message if we can't write the entire buffer. |
137 | void xwrite(int fd, const void *buf, size_t count) | 147 | void xwrite(int fd, const void *buf, size_t count) |
138 | { | 148 | { |