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

📄 dirread.c

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 C
字号:
#include <u.h>#include <libc.h>#include <auth.h>#include <fcall.h>#include <thread.h>#include <9p.h>voiddirread9p(Req *r, Dirgen *gen, void *aux){	int start;	uchar *p, *ep;	uint rv;	Dir d;	if(r->ifcall.offset == 0)		start = 0;	else		start = r->fid->dirindex;	p = (uchar*)r->ofcall.data;	ep = p+r->ifcall.count;	while(p < ep){		memset(&d, 0, sizeof d);		if((*gen)(start, &d, aux) < 0)			break;		rv = convD2M(&d, p, ep-p);		free(d.name);		free(d.muid);		free(d.uid);		free(d.gid);		if(rv <= BIT16SZ)			break;		p += rv;		start++;	}	r->fid->dirindex = start;	r->ofcall.count = p - (uchar*)r->ofcall.data;}

⌨️ 快捷键说明

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