code:getf - ikarishinjieva/unixV6-code-analyze-chs GitHub Wiki
- 将 文件描述号 转换为 指向对应的struct file 的指针
- 共输入一个参数 f
- f : 文件描述号
- 返回值
- 若 f越界,则抛出错误,返回NULL
- 否则,返回对应的struct file指针
6611
6612 /*
6613 * Convert a user supplied
6614 * file descriptor into a pointer
6615 * to a file structure.
6616 * Only task is to check range
6617 * of the descriptor.
6618 */
6619 getf(f)
6620 {
6621 register *fp, rf;
6622
6623 rf = f;
6624 if(rf<0 || rf>=NOFILE)
6625 goto bad;
6626 fp = u.u_ofile[rf];
6627 if(fp != NULL)
6628 return(fp);
6629 bad:
6630 u.u_error = EBADF;
6631 return(NULL);
- 抛出错误,错误代码:EBADF
6632 }
6633 /* ------------------------- */