fcntl.cc
来自「cygwin, 著名的在win32下模拟unix操作系统的东东」· CC 代码 · 共 50 行
CC
50 行
/* fcntl.cc: fcntl syscall Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.This file is part of Cygwin.This software is a copyrighted work licensed under the terms of theCygwin license. Please consult the file "CYGWIN_LICENSE" fordetails. */#include "winsup.h"#include <stdarg.h>#include <errno.h>#include <unistd.h>#include "security.h"#include "fhandler.h"#include "path.h"#include "dtable.h"#include "cygerrno.h"#include "cygheap.h"#include "thread.h"extern "C"int_fcntl (int fd, int cmd,...){ void *arg = NULL; va_list args; int res; cygheap_fdget cfd (fd, true); if (cfd < 0) { res = -1; goto done; } va_start (args, cmd); arg = va_arg (args, void *); if (cmd != F_DUPFD) res = cfd->fcntl(cmd, arg); else res = dup2 (fd, cygheap_fdnew (((int) arg) - 1)); va_end (args);done: syscall_printf ("%d = fcntl (%d, %d, %p)", res, fd, cmd, arg); return res;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?