⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cygwin.c

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 C
字号:
/* compatability layer for u9fs support on CYGWIN */#include <unistd.h>#include <errno.h>ssize_tpread(int fd, void *p, size_t n, off_t off){	off_t ooff;	int oerrno;	if ((ooff  = lseek(fd, off, SEEK_SET)) == -1)		return -1;	n = read(fd, p, n);	oerrno = errno;	lseek(fd, ooff, SEEK_SET);	errno = oerrno;	return n;}ssize_tpwrite(int fd, const void *p, size_t n, off_t off){	off_t ooff;	int oerrno;	if ((ooff  = lseek(fd, off, SEEK_SET)) == -1)		return -1;	n = write(fd, p, n);	oerrno = errno;	lseek(fd, ooff, SEEK_SET);	errno = oerrno;	return n;}intsetreuid(int ruid, int euid){	if (ruid != -1)		if (setuid(ruid) == -1)			return(-1);	if (euid != -1)		if (seteuid(euid) == -1)			return(-1);}intsetregid(int rgid, int egid){	if (rgid != -1)		if (setgid(rgid) == -1)			return(-1);	if (egid != -1)		if (setegid(egid) == -1)			return(-1);}

⌨️ 快捷键说明

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