cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

ca-fopen.rst (1698B)


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