X-Git-Url: http://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Fnoerr%2Fnoerr.c;fp=ccan%2Fnoerr%2Fnoerr.c;h=d6df81f7a0677dad1591473a79ed6432cead713c;hp=0000000000000000000000000000000000000000;hb=650c775ff00cccd03fc84e7789a03c51d9839004;hpb=c8acddea39d222312102952e91c32cfe4dd2cea0 diff --git a/ccan/noerr/noerr.c b/ccan/noerr/noerr.c new file mode 100644 index 00000000..d6df81f7 --- /dev/null +++ b/ccan/noerr/noerr.c @@ -0,0 +1,29 @@ +#include "noerr.h" +#include +#include + +int close_noerr(int fd) +{ + int saved_errno = errno, ret; + + if (close(fd) != 0) + ret = errno; + else + ret = 0; + + errno = saved_errno; + return ret; +} + +int unlink_noerr(const char *pathname) +{ + int saved_errno = errno, ret; + + if (unlink(pathname) != 0) + ret = errno; + else + ret = 0; + + errno = saved_errno; + return ret; +}