Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
rte_security_driver.h(3)	     DPDK	      rte_security_driver.h(3)

NAME
       rte_security_driver.h

SYNOPSIS
       #include	<rte_compat.h>
       #include	'rte_security.h'

   Data	Structures
       struct rte_security_ctx
       struct rte_security_ops

   Macros
       #define SECURITY_GET_SESS_PRIV(s)       ((void *)(((struct
	   rte_security_session	*)s)->driver_priv_data))

   Typedefs
       typedef int(* security_session_create_t)	(void *device, struct
	   rte_security_session_conf *conf, struct rte_security_session	*sess)
       typedef int(* security_session_destroy_t) (void *device,	struct
	   rte_security_session	*sess)
       typedef int(* security_session_update_t)	(void *device, struct
	   rte_security_session	*sess, struct rte_security_session_conf	*conf)
       typedef int(* security_macsec_sc_create_t) (void	*device, struct
	   rte_security_macsec_sc *conf)
       typedef int(* security_macsec_sc_destroy_t) (void *device, uint16_t
	   sc_id, enum rte_security_macsec_direction dir)
       typedef int(* security_macsec_sa_create_t) (void	*device, struct
	   rte_security_macsec_sa *conf)
       typedef int(* security_macsec_sa_destroy_t) (void *device, uint16_t
	   sa_id, enum rte_security_macsec_direction dir)
       typedef unsigned	int(* security_session_get_size) (void *device)
       typedef int(* security_session_stats_get_t) (void *device, struct
	   rte_security_session	*sess, struct rte_security_stats *stats)
       typedef int(* security_macsec_sc_stats_get_t) (void *device, uint16_t
	   sc_id, enum rte_security_macsec_direction dir, struct
	   rte_security_macsec_sc_stats	*stats)
       typedef int(* security_macsec_sa_stats_get_t) (void *device, uint16_t
	   sa_id, enum rte_security_macsec_direction dir, struct
	   rte_security_macsec_sa_stats	*stats)
       typedef int(* security_set_pkt_metadata_t) (void	*device, struct
	   rte_security_session	*sess, struct rte_mbuf *mb, void *params)
       typedef const struct rte_security_capability *(*
	   security_capabilities_get_t)	(void *device)
       typedef int(* security_rx_inject_configure) (void *device, uint16_t
	   port_id, bool enable)
       typedef uint16_t(* security_inb_pkt_rx_inject) (void *device, struct
	   rte_mbuf **pkts, struct rte_security_session	**sess,	uint16_t
	   nb_pkts)

Detailed Description
       RTE Security Common Definitions

       Definition in file rte_security_driver.h.

Macro Definition Documentation
   #define SECURITY_GET_SESS_PRIV(s)	   ((void *)(((struct
       rte_security_session *)s)->driver_priv_data))
       Helper macro to get driver private data

       Definition at line 66 of	file rte_security_driver.h.

Typedef	Documentation
   typedef int(* security_session_create_t) (void *device, struct
       rte_security_session_conf *conf,	struct rte_security_session *sess)
       Configure a security session on a device.

       Parameters
	   device Crypto/eth device pointer
	   conf	Security session configuration
	   sess	Pointer	to Security private session structure

       Returns

	    Returns   0  if  private  session	structure  have	 been  created
	     successfully.

	    Returns -EINVAL if	input parameters are invalid.

	    Returns -ENOTSUP if crypto	device does  not  support  the	crypto
	     transform.

       Definition at line 83 of	file rte_security_driver.h.

   typedef    int(*    security_session_destroy_t)   (void   *device,	struct
       rte_security_session *sess)
       Free driver private session data.

       Parameters
	   device Crypto/eth device pointer
	   sess	Security session structure

       Definition at line 93 of	file rte_security_driver.h.

   typedef   int(*   security_session_update_t)	   (void    *device,	struct
       rte_security_session *sess, struct rte_security_session_conf *conf)
       Update driver private session data.

       Parameters
	   device Crypto/eth device pointer
	   sess	Pointer	to Security private session structure
	   conf	Security session configuration

       Returns

	    Returns   0  if  private  session	structure  have	 been  updated
	     successfully.

	    Returns -EINVAL if	input parameters are invalid.

	    Returns -ENOTSUP if crypto	device does  not  support  the	crypto
	     transform.

       Definition at line 108 of file rte_security_driver.h.

   typedef    int(*   security_macsec_sc_create_t)   (void   *device,	struct
       rte_security_macsec_sc *conf)
       Configure a MACsec secure channel (SC) on a device.

       Parameters
	   device Crypto/eth device pointer
	   conf	MACsec SC configuration	params

       Returns

	    positive sc_id if SC is created successfully.

	    -EINVAL if	input parameters are invalid.

	    -ENOTSUP if device	does not support MACsec.

	    -ENOMEM if	the SC cannot be created.

       Definition at line 124 of file rte_security_driver.h.

   typedef int(* security_macsec_sc_destroy_t) (void *device, uint16_t	sc_id,
       enum rte_security_macsec_direction dir)
       Free MACsec secure channel (SC).

       Parameters
	   device Crypto/eth device pointer
	   sc_id MACsec	SC ID
	   dir Direction of SC

       Definition at line 133 of file rte_security_driver.h.

   typedef    int(*   security_macsec_sa_create_t)   (void   *device,	struct
       rte_security_macsec_sa *conf)
       Configure a MACsec security Association (SA) on a device.

       Parameters
	   device Crypto/eth device pointer
	   conf	MACsec SA configuration	params

       Returns

	    positive sa_id if SA is created successfully.

	    -EINVAL if	input parameters are invalid.

	    -ENOTSUP if device	does not support MACsec.

	    -ENOMEM if	the SA cannot be created.

       Definition at line 148 of file rte_security_driver.h.

   typedef int(* security_macsec_sa_destroy_t) (void *device, uint16_t	sa_id,
       enum rte_security_macsec_direction dir)
       Free MACsec security association	(SA).

       Parameters
	   device Crypto/eth device pointer
	   sa_id MACsec	SA ID
	   dir Direction of SA

       Definition at line 157 of file rte_security_driver.h.

   typedef unsigned int(* security_session_get_size) (void *device)
       Get the size of a security session

       Parameters
	   device Crypto/eth device pointer

       Returns

	    On	success	returns	the size of the	session	structure for device

	    On	failure	returns	0

       Definition at line 169 of file rte_security_driver.h.

   typedef   int(*   security_session_stats_get_t)   (void   *device,	struct
       rte_security_session *sess, struct rte_security_stats *stats)
       Get stats from the PMD.

       Parameters
	   device Crypto/eth device pointer
	   sess	Pointer	to Security private session structure
	   stats Security stats	of the driver

       Returns

	    Returns  0	 if  private  session  structure  have	been   updated
	     successfully.

	    Returns -EINVAL if	session	parameters are invalid.

       Definition at line 182 of file rte_security_driver.h.

   typedef   int(*  security_macsec_sc_stats_get_t)  (void  *device,  uint16_t
       sc_id,	  enum	   rte_security_macsec_direction      dir,	struct
       rte_security_macsec_sc_stats *stats)
       Get MACsec secure channel stats from the	PMD.

       Parameters
	   device Crypto/eth device pointer
	   sc_id secure	channel	ID created by rte_security_macsec_sc_create()
	   dir direction of SC
	   stats SC stats of the driver

       Returns

	    0 if success.

	    -EINVAL if	sc_id or device	is invalid.

       Definition at line 198 of file rte_security_driver.h.

   typedef   int(*  security_macsec_sa_stats_get_t)  (void  *device,  uint16_t
       sa_id,	  enum	   rte_security_macsec_direction      dir,	struct
       rte_security_macsec_sa_stats *stats)
       Get MACsec SA stats from	the PMD.

       Parameters
	   device Crypto/eth device pointer
	   sa_id secure	channel	ID created by rte_security_macsec_sc_create()
	   dir direction of SA
	   stats SC stats of the driver

       Returns

	    0 if success.

	    -EINVAL if	sa_id or device	is invalid.

       Definition at line 214 of file rte_security_driver.h.

   typedef    int(*   security_set_pkt_metadata_t)   (void   *device,	struct
       rte_security_session *sess, struct rte_mbuf *mb,	void *params)
       Update the mbuf with provided metadata.

       Parameters
	   device Crypto/eth device pointer
	   sess	Security session structure
	   mb Packet buffer
	   params Metadata

       Returns

	    Returns 0 if metadata updated successfully.

	    Returns -ve value for errors.

       Definition at line 243 of file rte_security_driver.h.

   typedef	 const	      struct	    rte_security_capability	   *(*
       security_capabilities_get_t) (void *device)
       Get security capabilities of the	device.

       Parameters
	   device crypto/eth device pointer

       Returns

	    Returns rte_security_capability pointer on	success.

	    Returns NULL on error.

       Definition at line 243 of file rte_security_driver.h.

   typedef   int(*   security_rx_inject_configure)   (void  *device,  uint16_t
       port_id,	bool enable)
       Configure security device to inject packets to an ethdev	port.

       Parameters
	   device Crypto/eth device pointer
	   port_id Port	identifier of the ethernet  device  to	which  packets
	   need	to be injected.
	   enable  Flag	 to  enable  and disable connection between a security
	   device and an ethdev	port.

       Returns

	    0 if successful.

	    -EINVAL if	context	NULL or	port_id	is invalid.

	    -EBUSY if devices are not in stopped state.

	    -ENOTSUP if security device does not  support  injecting  to  the
	     ethdev port.

       Definition at line 273 of file rte_security_driver.h.

   typedef   uint16_t(*	  security_inb_pkt_rx_inject)  (void  *device,	struct
       rte_mbuf	**pkts,	struct rte_security_session **sess, uint16_t nb_pkts)
       Perform security	processing of packets and inject the processed	packet
       to ethdev Rx.

       Rx  inject  would  behave  similarly  to	 ethdev	 loopback but with the
       additional security processing.

       Parameters
	   device Crypto/eth device pointer
	   pkts	The address of	an  array  of  nb_pkts	pointers  to  rte_mbuf
	   structures which contain the	packets.
	   sess	  The	address	  of   an   array   of	 nb_pkts  pointers  to
	   rte_security_session	structures corresponding to each packet.
	   nb_pkts The maximum number of packets to process.

       Returns
	   The number of packets  successfully	injected  to  ethdev  Rx.  The
	   return  value  can  be less than the	value of the nb_pkts parameter
	   when	the PMD	internal queues	have been filled up.

       Definition at line 295 of file rte_security_driver.h.

Author
       Generated automatically by Doxygen for DPDK from	the source code.

Version	25.11.0			Thu Jun	11 2026	      rte_security_driver.h(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=SECURITY_GET_SESS_PRIV&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help