/* Library routines * * Porting to Minix 2.0.0 * Author: Giovanni Falzoni */ #include #include "namespace.h" #include #include #include #include #include #include #ifdef __weak_alias __weak_alias(flock, _flock) #endif /* * Name: int flock(int fd, int mode); * Function: Implements the flock function in Minix. */ int flock(int fd, int mode) { struct flock lck; register int retcode; memset((void *) &lck, 0, sizeof(struct flock)); lck.l_type = mode & ~LOCK_NB; lck.l_pid = getpid(); if ((retcode = fcntl(fd, mode & LOCK_NB ? F_SETLK : F_SETLKW, &lck)) < 0 && errno == EAGAIN) errno = EWOULDBLOCK; return retcode; } /** flock.c **/