errlog_open 子例程

用途

打开错误日志并返回用于其他 liberrlog.a 函数的句柄。

语法

library liberrlog.a

#include <fcntl.h>
#include <sys/errlog.h>

int errlog_open(path, mode, magic, handle)
char            *path;
int              mode;
unsigned int     magic;
errlog_handle_t *handle;

描述

由路径参数指定的错误日志将使用方式打开。 由句柄参数指向的句柄必须与后续操作一起使用。

参数

此路径参数指定要打开的日志文件的路径。 如果路径为 NULL ,那么将打开缺省 errlog 文件。 方式的有效值与打开系统子例程的值相同。 它们可以在 fcntl.h 文件中找到。

魔法 自变量采用 LE_MAGIC 值,指示编译此应用程序所使用的 errlog_entry_t 结构的版本。

返回值

成功完成后, errlog_open 子例程返回 0 ,并将句柄指向的内存设置为后续 自由 操作所使用的句柄。

发生错误时, errlog_open 子例程将返回下列其中一项:

描述
_ERR_INVARG 检测到参数错误。
LE_ERR_NOFILE 该日志文件不存在。
_ERR_NOMEM 不能分配内存。
_ERR_IO 发生 I/O 错误。
_ERR_INVFILE 该文件不是有效的错误日志。