文件接口节点适配
此为路一节点宿主之[文件接口](../../../豫言操作系统接口/文件/规范.文言.md)适配。目录权惟出于启时之宿主选项:--授权目录 名=路径(可读可写)、--授权只读目录 名=路径;取得已授目录 以名取之,未授之名得 未获授权。
- 路之式:以
/分之相对路;空、首斜、空段、.、..、零字节、非 UTF-8 者皆输入无效;于 Windows,段中有\或:者亦然(待办事项:诸平台是否并拒,以求三台全同)。 - 防越界:宿主先求其真径,验其仍在所授目录之内(符号链指外则
输入无效),而后开之。求径与开文之间犹有隙,待办事项:逐段以O_NOFOLLOW开之。 打开只读文件以读开,打开可写文件以写开已存之文,皆不造不截;不存者资源不存在,非常文者输入无效,只读之目录求写者未获授权。读取文件读至多上限之字(每次不逾值桥之限十六兆字节);尽则文件读尽,上限为零得空字,为负得输入无效。写入文件返实写之数,空入返零,暂不可写则资源暂不可用。- 读写分向:只读之柄求写、可写之柄求读,皆
未获授权。关闭文件之后无论成败柄皆失效,再用得资源已失效;伪号亦然。
新增宿主原语(外调名):豫言_节点_文件取得目录、豫言_节点_文件打开、豫言_节点_文件读取、豫言_节点_文件写入、豫言_节点_文件关闭,实于 豫言操作系统/宿主/节点/应用宿主.mjs,返(码,…):零成;一至七依次为未获授权、资源暂不可用、资源已失效、资源不存在、资源已存在、资源配额已尽、输入无效;八为宿主操作失败而附辞;读时九为读尽。此适配依基础接口之 错误 模,节点模式之构建器并绑之。