Return error for semtimedop on BSD. Logger can not be used directlly. On BSD use redirected IO. Signed-off-by: Boaz Harrosh <bharrosh@xxxxxxxxxxx> --- usr/bsd/os.c | 6 ++++++ usr/linux/os.c | 6 ++++++ usr/log.c | 3 ++- usr/os.h | 5 +++++ 4 files changed, 19 insertions(+), 1 deletions(-) diff --git a/usr/bsd/os.c b/usr/bsd/os.c index 7fec458..d8bd51a 100644 --- a/usr/bsd/os.c +++ b/usr/bsd/os.c @@ -48,3 +48,9 @@ int os_blockdev_size(int fd, uint64_t *size) { return ioctl(fd, DIOCGMEDIASIZE, &size); } + +int os_semtimedop (int __semid, struct sembuf *__sops, size_t __nsops, + __const struct timespec *__timeout) +{ + return -1; +} diff --git a/usr/linux/os.c b/usr/linux/os.c index b4027cb..cee4f47 100644 --- a/usr/linux/os.c +++ b/usr/linux/os.c @@ -104,3 +104,9 @@ int os_blockdev_size(int fd, uint64_t *size) { return ioctl(fd, BLKGETSIZE64, size); } + +int os_semtimedop (int __semid, struct sembuf *__sops, size_t __nsops, + __const struct timespec *__timeout) +{ + return semtimedop (__semid, __sops, __nsops, __timeout); +} diff --git a/usr/log.c b/usr/log.c index 056314a..c1dfabb 100644 --- a/usr/log.c +++ b/usr/log.c @@ -30,6 +30,7 @@ #include <sys/types.h> #include <sys/wait.h> +#include "os.h" #include "log.h" #define SEMKEY 0xA7L @@ -260,7 +261,7 @@ static void dolog(int prio, const char *fmt, va_list ap) ops.sem_num = 0; ops.sem_flg = 0; ops.sem_op = -1; - if (semtimedop(la->semid, &ops, 1, &ts) < 0) { + if (os_semtimedop(la->semid, &ops, 1, &ts) < 0) { syslog(LOG_ERR, "semop up failed"); return; } diff --git a/usr/os.h b/usr/os.h index 03ad898..28c8973 100644 --- a/usr/os.h +++ b/usr/os.h @@ -19,4 +19,9 @@ int os_oom_adjust(void); int os_blockdev_size(int fd, uint64_t *size); +struct sembuf; +struct timespec; +int os_semtimedop (int __semid, struct sembuf *__sops, size_t __nsops, + __const struct timespec *__timeout); + #endif /* ndef __TGT_OS_H__*/ -- 1.6.0.6 -- To unsubscribe from this list: send the line "unsubscribe stgt" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html