chmod_.c

来自「<B>Digital的Unix操作系统VAX 4.2源码</B>」· C语言 代码 · 共 42 行

C
42
字号
/*char	id_chmod[]	= "@(#)chmod_.c	1.2"; * * chmod - change file mode bits * * synopsis: *	integer function chmod (fname, mode) *	character*(*) fname, mode */#include "../libI77/f_errno.h"#include <sys/param.h>#ifndef	MAXPATHLEN#define MAXPATHLEN	128#endiflong chmod_(name, mode, namlen, modlen)char	*name, *mode;long	namlen, modlen;{	char	nambuf[MAXPATHLEN];	char	modbuf[32];	int	retcode;	if (namlen >= sizeof nambuf || modlen >= sizeof modbuf)		return((long)(errno=F_ERARG));	g_char(name, namlen, nambuf);	g_char(mode, modlen, modbuf);	if (nambuf[0] == '\0')		return((long)(errno=ENOENT));	if (modbuf[0] == '\0')		return((long)(errno=F_ERARG));	if (fork())	{		if (wait(&retcode) == -1)			return((long)errno);		return((long)retcode);	}	else		execl("/bin/chmod", "chmod", modbuf, nambuf, (char *)0);}

⌨️ 快捷键说明

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