__fpathcon.c

来自「一个C源代码分析器」· C语言 代码 · 共 115 行

C
115
字号
/* Copyright (C) 1991 Free Software Foundation, Inc.This file is part of the GNU C Library.The GNU C Library is free software; you can redistribute it and/ormodify it under the terms of the GNU Library General Public License aspublished by the Free Software Foundation; either version 2 of theLicense, or (at your option) any later version.The GNU C Library is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNULibrary General Public License for more details.You should have received a copy of the GNU Library General PublicLicense along with the GNU C Library; see the file COPYING.LIB.  Ifnot, write to the Free Software Foundation, Inc., 675 Mass Ave,Cambridge, MA 02139, USA.  */#include <ansidecl.h>#include <errno.h>#include <stddef.h>#include <unistd.h>#include <limits.h>/* Get file-specific information about descriptor FD.  */long intDEFUN(__fpathconf, (fd, name), int fd AND int name){  if (fd < 0)    {      errno = EBADF;      return -1;    }  switch (name)    {    default:      errno = EINVAL;      return -1;    case _PC_LINK_MAX:#ifdef	LINK_MAX      return LINK_MAX;#else      errno = ENOSYS;      return -1;#endif    case _PC_MAX_CANON:#ifdef	MAX_CANON      return MAX_CANON;#else      errno = ENOSYS;      return -1;#endif    case _PC_MAX_INPUT:#ifdef	MAX_INPUT      return MAX_INPUT;#else      errno = ENOSYS;      return -1;#endif    case _PC_NAME_MAX:#ifdef	NAME_MAX      return NAME_MAX;#else      errno = ENOSYS;      return -1;#endif    case _PC_PATH_MAX:#ifdef	PATH_MAX      return PATH_MAX;#else      errno = ENOSYS;      return -1;#endif    case _PC_PIPE_BUF:#ifdef	PIPE_BUF      return PIPE_BUF;#else      errno = ENOSYS;      return -1;#endif    case _PC_CHOWN_RESTRICTED:#ifdef	_POSIX_CHOWN_RESTRICTED      return _POSIX_CHOWN_RESTRICTED;#else      return -1;#endif    case _PC_NO_TRUNC:#ifdef	_POSIX_NO_TRUNC      return _POSIX_NO_TRUNC;#else      return -1;#endif    case _PC_VDISABLE:#ifdef	_POSIX_VDISABLE      return _POSIX_VDISABLE;#else      return -1;#endif    }  errno = ENOSYS;  return -1;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?