1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2 3.. _ca_fopen: 4 5==================== 6Digital TV CA open() 7==================== 8 9Name 10---- 11 12Digital TV CA open() 13 14 15Synopsis 16-------- 17 18.. c:function:: int open(const char *name, int flags) 19 :name: dvb-ca-open 20 21 22Arguments 23--------- 24 25``name`` 26 Name of specific Digital TV CA device. 27 28``flags`` 29 A bit-wise OR of the following flags: 30 31.. tabularcolumns:: |p{2.5cm}|p{15.0cm}| 32 33.. flat-table:: 34 :header-rows: 0 35 :stub-columns: 0 36 :widths: 1 16 37 38 - - ``O_RDONLY`` 39 - read-only access 40 41 - - ``O_RDWR`` 42 - read/write access 43 44 - - ``O_NONBLOCK`` 45 - open in non-blocking mode 46 (blocking mode is the default) 47 48 49Description 50----------- 51 52This system call opens a named ca device (e.g. ``/dev/dvb/adapter?/ca?``) 53for subsequent use. 54 55When an ``open()`` call has succeeded, the device will be ready for use. The 56significance of blocking or non-blocking mode is described in the 57documentation for functions where there is a difference. It does not 58affect the semantics of the ``open()`` call itself. A device opened in 59blocking mode can later be put into non-blocking mode (and vice versa) 60using the ``F_SETFL`` command of the ``fcntl`` system call. This is a 61standard system call, documented in the Linux manual page for fcntl. 62Only one user can open the CA Device in ``O_RDWR`` mode. All other 63attempts to open the device in this mode will fail, and an error code 64will be returned. 65 66 67Return Value 68------------ 69 70 71On success 0 is returned. 72 73On error -1 is returned, and the ``errno`` variable is set 74appropriately. 75 76Generic error codes are described at the 77:ref:`Generic Error Codes <gen-errors>` chapter. 78