1a32a4683SAxel Dörfler /* 2a32a4683SAxel Dörfler * Copyright 2008, Axel Dörfler, axeld@pinc-software.de. All rights reserved. 3a32a4683SAxel Dörfler * Distributed under the terms of the MIT License. 4a32a4683SAxel Dörfler */ 5a32a4683SAxel Dörfler 6a32a4683SAxel Dörfler 7a32a4683SAxel Dörfler #include <sys/file.h> 824df6592SIngo Weinhold 9a32a4683SAxel Dörfler #include <errno.h> 1024df6592SIngo Weinhold #include <pthread.h> 1124df6592SIngo Weinhold 12*ae901935SOliver Tappe #include <errno_private.h> 1324df6592SIngo Weinhold #include <syscalls.h> 14a32a4683SAxel Dörfler 15a32a4683SAxel Dörfler 16a32a4683SAxel Dörfler int flock(int fd,int op)17a32a4683SAxel Dörflerflock(int fd, int op) 18a32a4683SAxel Dörfler { 19a32a4683SAxel Dörfler status_t status = _kern_flock(fd, op); 2024df6592SIngo Weinhold 2124df6592SIngo Weinhold pthread_testcancel(); 2224df6592SIngo Weinhold 23a32a4683SAxel Dörfler if (status < B_OK) { 24*ae901935SOliver Tappe __set_errno(status); 25a32a4683SAxel Dörfler return -1; 26a32a4683SAxel Dörfler } 27a32a4683SAxel Dörfler 28a32a4683SAxel Dörfler return 0; 29a32a4683SAxel Dörfler } 30a32a4683SAxel Dörfler 31