projdbfinit 子例程
用途
设置句柄以使用 dbfile 指针中指定的本地项目数据库,并以指定方式打开文件。
库
libaacct.a 库。
语法
<sys/aacct.h>
projdbfinit(void *handle, char *file, int mode)描述
projdbfinit 子例程设置指定的 handle 以使用指定的项目定义文件。 该文件以指定方式打开。 随后,将通过文件系统原语引用由 handle 参数表示的项目数据库。
在调用此子例程之前,必须初始化项目数据库。 为此目的提供了例程 projd气球 和 projdbfinit 。 以指定方式打开指定的文件。 文件系统调用用于对这些类型的文件进行操作。 结构 projdb 填充如下:
projdb.type = PROJ_LOCAL
projdb.fdes = value returned from open() call.如果 file 参数为 NULL ,那么将打开系统项目数据库。
参数
| 项 | 描述 |
|---|---|
| 句柄 (handle) | 要处理的指针 |
| 文件 | 指示项目定义文件名 |
| 方式 | 指示打开文件的方式 |
安全性
仅适用于特权用户。 通过向用户授予 CAP_AACCT 功能,可以将特权扩展至非 root 用户。
返回值
| 项 | 描述 |
|---|---|
| 0 | 成功 |
| -1 | 失败 |
错误代码
| 项 | 描述 |
|---|---|
| EINVAL | 传递的句柄或文件无效 |