4.2.1. 数字电视 CA open()

4.2.1.1. 名称

数字电视 CA open()

4.2.1.2. 概要

int open(const char *name, int flags)

4.2.1.3. 参数

name

特定数字电视 CA 设备的名称。

flags

以下标志的按位或

O_RDONLY

只读访问

O_RDWR

读/写访问

O_NONBLOCK

以非阻塞模式打开(阻塞模式是默认模式)

4.2.1.4. 描述

此系统调用打开一个命名的 ca 设备(例如 /dev/dvb/adapter?/ca?),以供后续使用。

open() 调用成功时,该设备将准备好使用。阻塞或非阻塞模式的意义在文档中描述,其中存在差异。它不影响 open() 调用本身的语义。使用 fcntl 系统调用的 F_SETFL 命令,可以将以阻塞模式打开的设备稍后置于非阻塞模式(反之亦然)。这是一个标准系统调用,记录在 fcntl 的 Linux 手册页中。只有一位用户可以在 O_RDWR 模式下打开 CA 设备。所有其他以该模式打开设备的尝试都将失败,并且将返回一个错误代码。

4.2.1.5. 返回值

成功时返回 0。

出错时返回 -1,并且 errno 变量将设置为适当的值。

通用错误代码在 通用错误代码 章节中描述。