Available on Linux and crate feature
linux only.Expand description
Linux /dev/dvb/adapterN/caM CaDevice implementation (the linux
feature).
This is the one place the crate uses unsafe — the DVB CA ioctls
(CA_RESET, CA_GET_SLOT_INFO) via rustix::ioctl, confined to the
private ioctl submodule below, which exposes safe functions. The ioctl
request numbers are built by rustix::ioctl::opcode (the per-architecture
_IOC encoding — it differs between x86/arm and mips/powerpc/sparc) from
include/uapi/linux/dvb/ca.h’s group/number/type, not hard-coded magic.
Runtime behaviour requires a real DVB card with a CI slot; it is compile-checked in CI but exercised only on hardware.
Structs§
- Linux
CaDevice - A
CaDevicebacked by a Linux DVB CA character device. - Linux
CiData Device - A
CiDataDevicebacked by a Linux DVB CI TS data-plane device (/dev/dvb/adapterN/ciM). The host writes scrambled TS and reads the descrambled TS back; I/O is in whole 188-byte packets.