X-Git-Url: http://git.tuebingen.mpg.de/?p=osl.git;a=blobdiff_plain;f=fd.c;h=fd6ef7dcbcac876dbf516a97cb9c0d5b25705cd1;hp=920bce9cf49a132a868c1983f990cd7fd124748a;hb=41c4262daac7908ad77896e862811c4b34fe0532;hpb=e7fdbaf015655af4eec7e4655b9306e1db862a40 diff --git a/fd.c b/fd.c index 920bce9..fd6ef7d 100644 --- a/fd.c +++ b/fd.c @@ -15,6 +15,7 @@ #include "log.h" #include "osl.h" #include "error.h" +#include "fd.h" /** * Wrapper for the write system call. @@ -124,11 +125,9 @@ out: * * \return Standard. */ -static int para_chdir(const char *path) +_static_inline_ int __chdir(const char *path) { - int ret = chdir(path); - - if (ret >= 0) + if (chdir(path) >= 0) return 1; return -ERRNO_TO_ERROR(errno); } @@ -167,7 +166,7 @@ int para_opendir(const char *dirname, DIR **dir, int *cwd) return ret; *cwd = ret; } - ret = para_chdir(dirname); + ret = __chdir(dirname); if (ret < 0) goto close_cwd; *dir = opendir("."); @@ -334,22 +333,18 @@ __must_check __printf_1_2 __malloc char *make_message(const char *fmt, ...) * * \sa truncate(2) */ -int para_truncate(const char *path, off_t size) +int truncate_file(const char *path, off_t size) { int ret; struct stat statbuf; - ret = -E_OSL_STAT; - if (stat(path, &statbuf) < 0) - goto out; + ret = osl_stat(path, &statbuf); + if (ret < 0) + return ret; ret = -E_OSL_BAD_SIZE; if (statbuf.st_size < size) - goto out; - ret = -E_OSL_TRUNC; + return ret; if (truncate(path, statbuf.st_size - size) < 0) - goto out; - ret = 1; -out: - return ret; + return -ERRNO_TO_ERROR(errno); + return 1; } -