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

dmx-fread.rst (1796B)


      1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
      2.. c:namespace:: DTV.dmx
      3
      4.. _dmx_fread:
      5
      6=======================
      7Digital TV demux read()
      8=======================
      9
     10Name
     11----
     12
     13Digital TV demux read()
     14
     15Synopsis
     16--------
     17
     18.. c:function:: size_t read(int fd, void *buf, size_t count)
     19
     20Arguments
     21---------
     22
     23``fd``
     24  File descriptor returned by a previous call to :c:func:`open()`.
     25
     26 ``buf``
     27   Buffer to be filled
     28
     29``count``
     30   Max number of bytes to read
     31
     32Description
     33-----------
     34
     35This system call returns filtered data, which might be section or Packetized
     36Elementary Stream (PES) data. The filtered data is transferred from
     37the driver's internal circular buffer to ``buf``. The maximum amount of data
     38to be transferred is implied by count.
     39
     40.. note::
     41
     42   if a section filter created with
     43   :c:type:`DMX_CHECK_CRC <dmx_sct_filter_params>` flag set,
     44   data that fails on CRC check will be silently ignored.
     45
     46Return Value
     47------------
     48
     49On success 0 is returned.
     50
     51On error -1 is returned, and the ``errno`` variable is set
     52appropriately.
     53
     54.. tabularcolumns:: |p{2.5cm}|p{15.0cm}|
     55
     56.. flat-table::
     57    :header-rows:  0
     58    :stub-columns: 0
     59    :widths: 1 16
     60
     61    -  -  ``EWOULDBLOCK``
     62       -  No data to return and ``O_NONBLOCK`` was specified.
     63
     64    -  -  ``EOVERFLOW``
     65       -  The filtered data was not read from the buffer in due time,
     66	  resulting in non-read data being lost. The buffer is flushed.
     67
     68    -  -  ``ETIMEDOUT``
     69       -  The section was not loaded within the stated timeout period.
     70          See ioctl :ref:`DMX_SET_FILTER` for how to set a timeout.
     71
     72    -  -  ``EFAULT``
     73       -  The driver failed to write to the callers buffer due to an
     74          invalid \*buf pointer.
     75
     76The generic error codes are described at the
     77:ref:`Generic Error Codes <gen-errors>` chapter.