Source: rdma-core
Maintainer: Linux RDMA Mailing List <linux-rdma@vger.kernel.org>
Uploaders: Benjamin Drung <bdrung@ubuntu.com>,
           Talat Batheesh <talatb@mellanox.com>
Section: net
Priority: optional
Build-Depends: debhelper (>= 10),
               dh-python,
               dpkg-dev (>= 1.17),
               cmake (>= 2.8.11),
               cython3:native,
               libnl-3-dev,
               libnl-route-3-dev,
               libpython3-dev,
               libsystemd-dev,
               libudev-dev,
               ninja-build,
               pandoc,
               pkg-config,
               python3-dev:native,
               python3-docutils,
               valgrind [amd64 arm64 armhf i386 mips mips64el mipsel powerpc ppc64 ppc64el s390x]
Standards-Version: 4.7.0
Vcs-Git: https://github.com/linux-rdma/rdma-core.git
Vcs-Browser: https://github.com/linux-rdma/rdma-core
Homepage: https://github.com/linux-rdma/rdma-core

Package: rdma-core
Architecture: linux-any
Depends: udev,
         ${misc:Depends},
         ${perl:Depends},
         ${python3:Depends},
         ${shlibs:Depends}
Pre-Depends: ${misc:Pre-Depends}
Recommends: dmidecode, ethtool, iproute2
Breaks: infiniband-diags (<< 2.0.0)
Replaces: infiniband-diags (<< 2.0.0)
Description: RDMA core userspace infrastructure and documentation
 This package provides the basic boot time support for systems that use the
 Linux kernel's remote direct memory access (RDMA) subystem which includes
 InfiniBand, iWARP, and RDMA over Converged Ethernet (RoCE).
 .
 Several kernel RDMA support daemons are included:
  - The rdma-ndd daemon which watches for RDMA device changes and/or hostname
    changes and updates the Node Description of the RDMA devices based on
    those changes.
  - The iWARP Port Mapper Daemon (iwpmd) which provides a kernel support
    service in userspace for iWARP drivers to claim TCP ports through the
    standard socket interface.

Package: ibacm
Architecture: linux-any
Depends: rdma-core (>= 15), ${misc:Depends}, ${shlibs:Depends}
Description: InfiniBand Communication Manager Assistant (ACM)
 The IB ACM implements and provides a framework for name, address, and
 route (path) resolution services over InfiniBand.
 It is intended to address connection setup scalability issues running
 MPI applications on large clusters.  The IB ACM provides information
 needed to establish a connection, but does not implement the CM protocol.
 A primary user of the ibacm service is the librdmacm library.

Package: ibverbs-providers
Architecture: linux-any
Multi-Arch: same
Depends: ${misc:Depends}, ${shlibs:Depends}
Provides: libefa1, libipathverbs1, libmana1, libmlx4-1, libmlx5-1, libmthca1
Replaces: libipathverbs1 (<< 15),
          libmlx4-1 (<< 15),
          libmlx5-1 (<< 15),
          libmthca1 (<< 15)
Breaks: libipathverbs1 (<< 15),
        libmlx4-1 (<< 15),
        libmlx5-1 (<< 15),
        libmthca1 (<< 15)
Description: User space provider drivers for libibverbs
 libibverbs is a library that allows userspace processes to use RDMA
 "verbs" as described in the InfiniBand Architecture Specification and
 the RDMA Protocol Verbs Specification.  iWARP ethernet NICs support
 RDMA over hardware-offloaded TCP/IP, while InfiniBand is a
 high-throughput, low-latency networking technology.  InfiniBand host
 channel adapters (HCAs) and iWARP NICs commonly support direct
 hardware access from userspace (kernel bypass), and libibverbs
 supports this when available.
 .
 An RDMA driver consists of a kernel portion and a user space portion.
 This package contains the user space verbs drivers:
 .
  - bnxt_re: Broadcom NetXtreme-E RoCE HCAs
  - cxgb4: Chelsio T4 iWARP HCAs
  - efa: Amazon Elastic Fabric Adapter
  - erdma: Alibaba Elastic RDMA (iWarp) Adapter
  - hfi1verbs: Intel Omni-Path HFI
  - hns: HiSilicon Hip06 SoC
  - ionic: AMD Pensando Distributed Services Card (DSC) RDMA/RoCE Support
  - ipathverbs: QLogic InfiniPath HCAs
  - irdma: Intel Ethernet Connection RDMA
  - mana: Microsoft Azure Network Adapter
  - mlx4: Mellanox ConnectX-3 InfiniBand HCAs
  - mlx5: Mellanox Connect-IB/X-4+ InfiniBand HCAs
  - mthca: Mellanox InfiniBand HCAs
  - ocrdma: Emulex OneConnect RDMA/RoCE device
  - qedr: QLogic QL4xxx RoCE HCAs
  - rxe: A software implementation of the RoCE protocol
  - siw: A software implementation of the iWarp protocol
  - vmw_pvrdma: VMware paravirtual RDMA device

Package: ibverbs-utils
Architecture: linux-any
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: Examples for the libibverbs library
 libibverbs is a library that allows userspace processes to use RDMA
 "verbs" as described in the InfiniBand Architecture Specification and
 the RDMA Protocol Verbs Specification.  iWARP ethernet NICs support
 RDMA over hardware-offloaded TCP/IP, while InfiniBand is a
 high-throughput, low-latency networking technology.  InfiniBand host
 channel adapters (HCAs) and iWARP NICs commonly support direct
 hardware access from userspace (kernel bypass), and libibverbs
 supports this when available.
 .
 This package contains useful libibverbs1 example programs such as
 ibv_devinfo, which displays information about InfiniBand devices.

Package: libibverbs-dev
Section: libdevel
Architecture: linux-any
Multi-Arch: same
Depends: ibverbs-providers (= ${binary:Version}),
         libibverbs1 (= ${binary:Version}),
         libnl-3-dev,
         libnl-route-3-dev,
         ${misc:Depends}
Description: Development files for the libibverbs library
 libibverbs is a library that allows userspace processes to use RDMA
 "verbs" as described in the InfiniBand Architecture Specification and
 the RDMA Protocol Verbs Specification.  iWARP ethernet NICs support
 RDMA over hardware-offloaded TCP/IP, while InfiniBand is a
 high-throughput, low-latency networking technology.  InfiniBand host
 channel adapters (HCAs) and iWARP NICs commonly support direct
 hardware access from userspace (kernel bypass), and libibverbs
 supports this when available.
 .
 This package is needed to compile programs against libibverbs1.
 It contains the header files and static libraries (optionally)
 needed for compiling.

Package: libibverbs1
Architecture: linux-any
Multi-Arch: same
Section: libs
Pre-Depends: ${misc:Pre-Depends}
Depends: adduser, ${misc:Depends}, ${shlibs:Depends}
Recommends: ibverbs-providers
Breaks: ibverbs-providers (<< 64~)
Description: Library for direct userspace use of RDMA (InfiniBand/iWARP)
 libibverbs is a library that allows userspace processes to use RDMA
 "verbs" as described in the InfiniBand Architecture Specification and
 the RDMA Protocol Verbs Specification.  iWARP ethernet NICs support
 RDMA over hardware-offloaded TCP/IP, while InfiniBand is a
 high-throughput, low-latency networking technology.  InfiniBand host
 channel adapters (HCAs) and iWARP NICs commonly support direct
 hardware access from userspace (kernel bypass), and libibverbs
 supports this when available.
 .
 For this library to be useful, a device-specific plug-in module
 should also be installed.
 .
 This package contains the shared library.

Package: libibumad-dev
Section: libdevel
Architecture: linux-any
Multi-Arch: same
Depends: libibumad3 (= ${binary:Version}), ${misc:Depends}
Description: Development files for libibumad
 libibumad provides userspace Infiniband Management Datagram (uMAD)
 functions which sit on top of the uMAD modules in the kernel.
 These are used by InfiniBand diagnostic and management tools.
 .
 This package is needed to compile programs against libibumad.
 It contains the header files and static libraries (optionally)
 needed for compiling.

Package: libibumad3
Architecture: linux-any
Multi-Arch: same
Section: libs
Pre-Depends: ${misc:Pre-Depends}
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: InfiniBand Userspace Management Datagram (uMAD) library
 libibumad provides userspace Infiniband Management Datagram (uMAD)
 functions which sit on top of the uMAD modules in the kernel.
 These are used by InfiniBand diagnostic and management tools.
 .
 This package contains the shared library.

Package: librdmacm-dev
Section: libdevel
Architecture: linux-any
Multi-Arch: same
Depends: libibverbs-dev, librdmacm1 (= ${binary:Version}), ${misc:Depends}
Description: Development files for the librdmacm library
 librdmacm is a library that allows applications to set up reliable
 connected and unreliable datagram transfers when using RDMA adapters.
 It provides a transport-neutral interface in the sense that the same
 code can be used for both InfiniBand and iWARP adapters.  The
 interface is based on sockets, but adapted for queue pair (QP) based
 semantics: communication must use a specific RDMA device, and data
 transfers are message-based.
 .
 librdmacm only provides communication management (connection setup
 and tear-down) and works in conjunction with the verbs interface
 provided by libibverbs, which provides the interface used to actually
 transfer data.
 .
 This package is needed to compile programs against librdmacm.
 It contains the header files and static libraries (optionally)
 needed for compiling.

Package: librdmacm1
Architecture: linux-any
Multi-Arch: same
Section: libs
Pre-Depends: ${misc:Pre-Depends}
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: Library for managing RDMA connections
 librdmacm is a library that allows applications to set up reliable
 connected and unreliable datagram transfers when using RDMA adapters.
 It provides a transport-neutral interface in the sense that the same
 code can be used for both InfiniBand and iWARP adapters.  The
 interface is based on sockets, but adapted for queue pair (QP) based
 semantics: communication must use a specific RDMA device, and data
 transfers are message-based.
 .
 librdmacm only provides communication management (connection setup
 and tear-down) and works in conjunction with the verbs interface
 provided by libibverbs, which provides the interface used to actually
 transfer data.
 .
 This package contains the shared library.

Package: rdmacm-utils
Architecture: linux-any
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: Examples for the librdmacm library
 librdmacm is a library that allows applications to set up reliable
 connected and unreliable datagram transfers when using RDMA adapters.
 It provides a transport-neutral interface in the sense that the same
 code can be used for both InfiniBand and iWARP adapters.  The
 interface is based on sockets, but adapted for queue pair (QP) based
 semantics: communication must use a specific RDMA device, and data
 transfers are message-based.
 .
 librdmacm only provides communication management (connection setup
 and tear-down) and works in conjunction with the verbs interface
 provided by libibverbs, which provides the interface used to actually
 transfer data.
 .
 This package contains useful librdmacm example programs such as
 rping and udaddy.

Package: srptools
Architecture: linux-any
Depends: rdma-core (>= 15), udev, ${misc:Depends}, ${shlibs:Depends}
Pre-Depends: ${misc:Pre-Depends}
Description: Tools for Infiniband attached storage (SRP)
 In conjunction with the kernel ib_srp driver, srptools allows you to
 discover and use Infiniband attached storage devices which use the
 SCSI RDMA Protocol (SRP).

Package: python3-pyverbs
Section: python
Architecture: linux-any
Depends: rdma-core (>= 21),
         ${misc:Depends},
         ${python3:Depends},
         ${shlibs:Depends}
Provides: ${python3:Provides}
Description: Python bindings for rdma-core
 Pyverbs provides a Python API over rdma-core, the Linux userspace C API for
 the remote direct memory access (RDMA) stack.
 .
 One goal is to provide easier access to RDMA: RDMA has a steep learning curve
 as is and the C interface requires the user to initialize multiple structs
 before having usable objects. Pyverbs attempts to remove much of this overhead
 and provide a smoother user experience.

Package: infiniband-diags
Architecture: linux-any
Depends: libibnetdisc5 (= ${binary:Version}),
         ${misc:Depends},
         ${perl:Depends},
         ${shlibs:Depends}
Description: InfiniBand diagnostic programs
 InfiniBand is a switched fabric communications link used in
 high-performance computing and enterprise data centers. Its features
 include high throughput, low latency, quality of service and
 failover, and it is designed to be scalable.
 .
 This package provides diagnostic programs and scripts needed to
 diagnose an InfiniBand subnet.

Package: libibmad5
Section: libs
Architecture: linux-any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: Infiniband Management Datagram (MAD) library
 libibmad provides low layer InfiniBand functions for use by the
 Infiniband diagnostic and management programs. These include
 Management Datagrams (MAD), Subnet Administration (SA), Subnet
 Management Packets (SMP) and other basic functions.
 .
 This package contains the shared library.

Package: libibmad-dev
Section: libdevel
Architecture: linux-any
Multi-Arch: same
Depends: libibmad5 (= ${binary:Version}), ${misc:Depends}
Description: Development files for libibmad
 libibmad provides low layer Infiniband functions for use by the
 InfiniBand diagnostic and management programs. These include
 Management Datagrams (MAD), Subnet Administration (SA), Subnet
 Management Packets (SMP) and other basic functions.
 .
 This package is needed to compile programs against libibmad5.
 It contains the header files and static libraries (optionally)
 needed for compiling.

Package: libibnetdisc5
Section: libs
Architecture: linux-any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: InfiniBand diagnostics library
 InfiniBand is a switched fabric communications link used in
 high-performance computing and enterprise data centers. Its features
 include high throughput, low latency, quality of service and
 failover, and it is designed to be scalable.
 .
 This package provides libraries required by the InfiniBand
 diagnostic programs.

Package: libibnetdisc-dev
Section: libdevel
Architecture: linux-any
Multi-Arch: same
Depends: libibnetdisc5 (= ${binary:Version}), ${misc:Depends}
Breaks: infiniband-diags (<< 2.0.0)
Replaces: infiniband-diags (<< 2.0.0)
Description: InfiniBand diagnostics library headers
 InfiniBand is a switched fabric communications link used in
 high-performance computing and enterprise data centers. Its features
 include high throughput, low latency, quality of service and
 failover, and it is designed to be scalable.
 .
 This package provides development files required to build
 applications against the libibnetdisc InfiniBand diagnostic
 libraries.
