tripathysagar/man_text huggingface dataset:
# ibv_import_pd

## NAME



           ibv_import_pd - import a PD from a given ibv_context
    
           ibv_unimport_pd - unimport a PD
    


## SYNOPSIS



                  #include <infiniband/verbs.h>
    
                  struct ibv_pd *ibv_import_pd(struct ibv_context *context, uint32_t pd_handle);
                  void ibv_unimport_pd(struct ibv_pd *pd)
    


## DESCRIPTION



           **ibv_import_pd()** returns a protection domain (PD) that is
           associated with the given _pd_handle_ in the given _context_.
    
           The input _pd_handle_ value must be a valid kernel handle for a PD
           object in the given _context_.  It can be achieved from the original
           PD by getting its ibv_pd->handle member value.
    
           The returned _ibv_pd_ can be used in all verbs that get a protection
           domain.
    
           **ibv_unimport_pd()** unimport the PD.  Once the PD usage has been
           ended ibv_dealloc_pd() or ibv_unimport_pd() should be called.  The
           first one will go to the kernel to destroy the object once the
           second one way cleanup what ever is needed/opposite of the import
           without calling the kernel.
    
           This is the responsibility of the application to coordinate
           between all ibv_context(s) that use this PD.  Once destroy is done
           no other process can touch the object except for unimport.  All
           users of the context must collaborate to ensure this.
    


## RETURN VALUE



           **ibv_import_pd()** returns a pointer to the allocated PD, or NULL if
           the request fails.
    


* * *
# pmsprintf

## NAME



           **pmsprintf** - formatted string conversion
    


## C SYNOPSIS



           **#include <pcp/pmapi.h>**
    
           **int pmsprintf(char ***_str_**, size_t** _size_**, const char ***_fmt_**,**
                         **... /***_args_***/);**
    
           **cc ... -lpcp**
    


## DESCRIPTION



           Safe string formatting interface that wraps the vsnprintf(3) call.
    
           It  differs primarily in that **pmsprintf** guarantees that the output
           buffer _str_ will be null-terminated even when the  provided  buffer
           _size_  is  insufficient  to  contain the formatted string.  In this
           case a null-terminated truncated string will be returned in _str_.
    
           In the case of a failure in the underlying _vsnprintf_ interface,  a
           null-terminated  empty string will be returned in _str_ , and the re‐
           turn value will be zero.
    


## DIAGNOSTICS



           On successful completion, **pmsprintf** returns the number of  charac‐
           ters written to the supplied buffer, not including the null termi‐
           nator.
    
           The return code is always zero or more, never negative.
    


* * *
# function::tcpmib_local_port

## NAME



           function::tcpmib_local_port - Get the local port
    


## SYNOPSIS



               tcpmib_local_port:long(sk:long)
    


## ARGUMENTS



           _sk_
               pointer to a struct inet_sock
    


## DESCRIPTION



           Returns the sport from a struct inet_sock in host order.
    


* * *
# gnutls_x509_crt_set_activation_time

## NAME



           gnutls_x509_crt_set_activation_time - API function
    


## SYNOPSIS



           **#include <gnutls/x509.h>**
    
           **int gnutls_x509_crt_set_activation_time(gnutls_x509_crt_t** _cert_**,**
           **time_t** _act_time_**);**
    


## ARGUMENTS



           gnutls_x509_crt_t cert
                       a certificate of type **gnutls_x509_crt_t**
    
           time_t act_time
                       The actual time
    


## DESCRIPTION



           This function will set the time this certificate was or will be
           activated.
    


## RETURNS



           On success, **GNUTLS_E_SUCCESS**(0) is returned, otherwise a negative
           error value.
    


* * *
# _tolower

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           _tolower — transliterate uppercase characters to lowercase
    


## SYNOPSIS



           #include <ctype.h>
    
           int _tolower(int _c_);
    


## DESCRIPTION



           The __tolower_() macro shall be equivalent to _tolower_(_c_) except that
           the application shall ensure that the argument _c_ is an uppercase
           letter.
    


## RETURN VALUE



           Upon successful completion, __tolower_() shall return the lowercase
           letter corresponding to the argument passed.
    


## ERRORS



           No errors are defined.
    
           _The following sections are informative._
    


## EXAMPLES



           None.
    


## APPLICATION USAGE



           Applications should use the _tolower_() function instead of the
           obsolescent __tolower_() function.
    


## RATIONALE



           None.
    


## FUTURE DIRECTIONS



           The __tolower_() function may be removed in a future version.
    


* * *
# ibv_create_ah_from_wc

## NAME



           ibv_init_ah_from_wc, ibv_create_ah_from_wc - initialize or create
           an address handle (AH) from a work completion
    


## SYNOPSIS



           **#include <infiniband/verbs.h>**
    
           **int ibv_init_ah_from_wc(struct ibv_context** _*context_**, uint8_t** _port_num_**,**
                                   **struct ibv_wc** _*wc_**, struct ibv_grh** _*grh_**,**
                                   **struct ibv_ah_attr** _*ah_attr_**);**
    
           **struct ibv_ah *ibv_create_ah_from_wc(struct ibv_pd** _*pd_**,**
                                                **struct ibv_wc** _*wc_**,**
                                                **struct ibv_grh** _*grh_**,**
                                                **uint8_t** _port_num_**);**
    


## DESCRIPTION



           **ibv_init_ah_from_wc()** initializes the address handle (AH)
           attribute structure _ah_attr_ for the RDMA device context _context_
           using the port number _port_num_ , using attributes from the work
           completion _wc_ and the Global Routing Header (GRH) structure _grh_.
    
           **ibv_create_ah_from_wc()** creates an AH associated with the
           protection domain _pd_ using the port number _port_num_ , using
           attributes from the work completion _wc_ and the Global Routing
           Header (GRH) structure _grh_.
    


## RETURN VALUE



           **ibv_init_ah_from_wc()** returns 0 on success, and -1 on error.
    
           **ibv_create_ah_from_wc()** returns a pointer to the created AH, or
           NULL if the request fails.
    


## NOTES



           The filled structure _ah_attr_ returned from **ibv_init_ah_from_wc()**
           can be used to create a new AH using **ibv_create_ah()**.
    


* * *
# gnutls_reauth

## NAME



           gnutls_reauth - API function
    


## SYNOPSIS



           **#include <gnutls/gnutls.h>**
    
           **int gnutls_reauth(gnutls_session_t** _session_**, unsigned int** _flags_**);**
    


## ARGUMENTS



           gnutls_session_t session
                       is a **gnutls_session_t** type.
    
           unsigned int flags
                       must be zero
    


## DESCRIPTION



           This function performs the post-handshake authentication for TLS
           1.3. The post-handshake authentication is initiated by the server
           by calling this function. Clients respond when
           **GNUTLS_E_REAUTH_REQUEST** has been seen while receiving data.
    
           The non-fatal errors expected by this function are:
           **GNUTLS_E_INTERRUPTED** , **GNUTLS_E_AGAIN** , as well as
           **GNUTLS_E_GOT_APPLICATION_DATA** when called on server side.
    
           The former two interrupt the authentication procedure due to the
           transport layer being interrupted, and the latter because there
           were pending data prior to peer initiating the re-authentication.
           The server should read/process that data as unauthenticated and
           retry calling **gnutls_reauth()**.
    
           When this function is called under TLS1.2 or earlier or the peer
           didn't advertise post-handshake auth, it always fails with
           **GNUTLS_E_INVALID_REQUEST**. The verification of the received peers
           certificate is delegated to the session or credentials
           verification callbacks. A server can check whether post handshake
           authentication is supported by the client by checking the session
           flags with **gnutls_session_get_flags()**.
    
           Prior to calling this function in server side, the function
           **gnutls_certificate_server_set_request()** must be called setting
           expectations for the received certificate (request or require). If
           none are set this function will return with
           **GNUTLS_E_INVALID_REQUEST**.
    
           Note that post handshake authentication is available irrespective
           of the initial negotiation type (PSK or certificate). In all cases
           however, certificate credentials must be set to the session prior
           to calling this function.
    


## RETURNS



           **GNUTLS_E_SUCCESS** on a successful authentication, otherwise a
           negative error code.
    


* * *
# function::jiffies

## NAME



           function::jiffies - Kernel jiffies count
    


## SYNOPSIS



               jiffies:long()
    


## ARGUMENTS



           None
    


## DESCRIPTION



           This function returns the value of the kernel jiffies variable.
           This value is incremented periodically by timer interrupts, and
           may wrap around a 32-bit or 64-bit boundary. See **HZ**.
    


* * *
# audit_syscall_to_name

## NAME



           audit_syscall_to_name - Convert the numeric syscall value to the
           syscall name
    


## SYNOPSIS



           **#include <libaudit.h>**
    
           **const char *audit_syscall_to_name(int** _sc_**, int** _machine_**);**
    


## DESCRIPTION



           **audit_syscall_to_name**() converts the numeric syscall value to the
           syscall name.  _sc_ is the numeric syscall value.  _machine_ is the
           enum value of the machine type defined in machine_t.  _machine_ can
           be obtained by calling audit_detect_machine(3).
    


## RETURN VALUE



           Returns NULL if an error occurs; otherwise, the return value is
           the syscall name.
    


* * *
# probe::socket.write_iter

## NAME



           probe::socket.write_iter - Message send via **sock_write_iter**
    


## SYNOPSIS



           socket.write_iter
    


## VALUES



           _family_
               Protocol family value
    
           _name_
               Name of this probe
    
           _protocol_
               Protocol value
    
           _size_
               Message size in bytes
    
           _state_
               Socket state value
    
           _type_
               Socket type value
    
           _flags_
               Socket flags value
    


## CONTEXT



           The message sender
    


## DESCRIPTION



           Fires at the beginning of sending a message on a socket via the
           **sock_write_iter** function
    


* * *
# memmove

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           memmove — copy bytes in memory with overlapping areas
    


## SYNOPSIS



           #include <string.h>
    
           void *memmove(void *_s1_ , const void *_s2_ , size_t _n_);
    


## DESCRIPTION



           The functionality described on this reference page is aligned with
           the ISO C standard. Any conflict between the requirements
           described here and the ISO C standard is unintentional. This
           volume of POSIX.1‐2017 defers to the ISO C standard.
    
           The _memmove_() function shall copy _n_ bytes from the object pointed
           to by _s2_ into the object pointed to by _s1_.  Copying takes place as
           if the _n_ bytes from the object pointed to by _s2_ are first copied
           into a temporary array of _n_ bytes that does not overlap the
           objects pointed to by _s1_ and _s2_ , and then the _n_ bytes from the
           temporary array are copied into the object pointed to by _s1_.
    


## RETURN VALUE



           The _memmove_() function shall return _s1_ ; no return value is
           reserved to indicate an error.
    


## ERRORS



           No errors are defined.
    
           _The following sections are informative._
    


## EXAMPLES



           None.
    


## APPLICATION USAGE



           None.
    


## RATIONALE



           None.
    


## FUTURE DIRECTIONS



           None.
    


* * *
# intro

## NAME



           intro - introduction to library functions
    


## DESCRIPTION



           Section 3 of the manual describes all library functions excluding
           the library functions (system call wrappers) described in Section
           2, which implement system calls.
    
           Many of the functions described in the section are part of the
           Standard C Library (_libc_).  Some functions are part of other
           libraries (e.g., the math library, _libm_ , or the real-time library,
           _librt_) in which case the manual page will indicate the linker
           option needed to link against the required library (e.g., _-lm_ and
           _-lrt_ , respectively, for the aforementioned libraries).
    
           In some cases, the programmer must define a feature test macro in
           order to obtain the declaration of a function from the header file
           specified in the man page SYNOPSIS section.  (Where required,
           these _feature test macros_ must be defined before including _any_
           header files.)  In such cases, the required macro is described in
           the man page.  For further information on feature test macros, see
           feature_test_macros(7).
    
       **Subsections**
           Section 3 of this manual is organized into subsections that
           reflect the complex structure of the standard C library and its
           many implementations:
    
           •  3const
    
           •  3head
    
           •  3type
    
           This difficult history frequently makes it a poor example to
           follow in design, implementation, and presentation.
    
           Ideally, a library for the C language is designed such that each
           header file presents the interface to a coherent software module.
           It provides a small number of function declarations and exposes
           only data types and constants that are required for use of those
           functions.  Together, these are termed an API or _application_
           _program interface_.  Types and constants to be shared among
           multiple APIs should be placed in header files that declare no
           functions.  This organization permits a C library module to be
           documented concisely with one header file per manual page.  Such
           an approach improves the readability and accessibility of library
           documentation, and thereby the usability of the software.
    


## STANDARDS



           Certain terms and abbreviations are used to indicate UNIX variants
           and standards to which calls in this section conform.  See
           standards(7).
    


## NOTES



       **Authors and copyright conditions**
           Look at the header of the manual page source for the author(s) and
           copyright conditions.  Note that these can be different from page
           to page!
    


* * *
# gnutls_ocsp_req_randomize_nonce

## NAME



           gnutls_ocsp_req_randomize_nonce - API function
    


## SYNOPSIS



           **#include <gnutls/ocsp.h>**
    
           **int gnutls_ocsp_req_randomize_nonce(gnutls_ocsp_req_t** _req_**);**
    


## ARGUMENTS



           gnutls_ocsp_req_t req
                       should contain a **gnutls_ocsp_req_t** type
    


## DESCRIPTION



           This function will add or update an nonce extension to the OCSP
           request with a newly generated random value.
    


## RETURNS



           On success, **GNUTLS_E_SUCCESS**(0) is returned, otherwise a negative
           error code is returned.
    


* * *
# io_uring_buf_ring_mask

## NAME



           io_uring_buf_ring_mask - Calculate buffer ring mask size
    


## SYNOPSIS



           **#include <liburing.h>**
    
           **int io_uring_buf_ring_mask(__u32** _ring_entries_**);**
    


## DESCRIPTION



           io_uring_buf_ring_mask(3) calculates the appropriate size mask for
           a buffer ring.  _ring_entries_ is the ring entries as specified in
           io_uring_register_buf_ring(3).
    


## RETURN VALUE



           Size mask for the buffer ring.
    


* * *
# gnutls_digest_set_secure

## NAME



           gnutls_digest_set_secure - API function
    


## SYNOPSIS



           **#include <gnutls/gnutls.h>**
    
           **int gnutls_digest_set_secure(gnutls_digest_algorithm_t** _dig_**,**
           **unsigned int** _secure_**);**
    


## ARGUMENTS



           gnutls_digest_algorithm_t dig
                       is a digest algorithm
    
           unsigned int secure
                       whether to mark the digest algorithm secure
    


## DESCRIPTION



           Modify the previous system wide setting that marked  _dig_ as secure
           or insecure. This only has effect when the algorithm is enabled
           through the allowlisting mode in the configuration file, or when
           the setting is modified with a prior call to this function.
    


## SINCE



           3.7.3
    


* * *
# pthread_mutexattr_setprotocol

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           pthread_mutexattr_setprotocol — set the protocol attribute of the
           mutex attributes object (**REALTIME THREADS**)
    


## SYNOPSIS



           #include <pthread.h>
    
           int pthread_mutexattr_setprotocol(pthread_mutexattr_t *_attr_ ,
               int _protocol_);
    


## DESCRIPTION



           Refer to pthread_mutexattr_getprotocol(3p).
    


* * *
# pthread_setspecific

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           pthread_setspecific — thread-specific data management
    


## SYNOPSIS



           #include <pthread.h>
    
           int pthread_setspecific(pthread_key_t _key_ , const void *_value_);
    


## DESCRIPTION



           Refer to pthread_getspecific(3p).
    


* * *
# libpfm_arm_ac57

## NAME



           libpfm_arm_ac57 - support for Arm Cortex A57 PMU
    


## SYNOPSIS



           **#include <perfmon/pfmlib.h>**
    
           **PMU name: arm_ac57**
           **PMU desc: ARM Cortex A57**
    


## DESCRIPTION



           The library supports the ARM Cortex A57 core PMU.
    
           This PMU supports 6 counters and privilege levels filtering.  It
           can operate in both 32 and 64 bit modes.
    


## MODIFIERS



           The following modifiers are supported on ARM Cortex A57:
    
           **u** Measure at the user level. This corresponds to **PFM_PLM3**.
                  This is a boolean modifier.
    
           **k** Measure at the kernel level. This corresponds to **PFM_PLM0**.
                  This is a boolean modifier.
    
           **hv** Measure at the hypervisor level. This corresponds to
                  **PFM_PLMH**.  This is a boolean modifier.
    


* * *
# function::isdigit

## NAME



           function::isdigit - Checks for a digit
    


## SYNOPSIS



               isdigit:long(str:string)
    


## ARGUMENTS



           _str_
               string to check
    


## DESCRIPTION



           Checks for a digit (0 through 9) as the first character of a
           string. Returns non-zero if true, and a zero if false.
    


* * *
# gnutls_record_discard_queued

## NAME



           gnutls_record_discard_queued - API function
    


## SYNOPSIS



           **#include <gnutls/gnutls.h>**
    
           **size_t gnutls_record_discard_queued(gnutls_session_t** _session_**);**
    


## ARGUMENTS



           gnutls_session_t session
                       is a **gnutls_session_t** type.
    


## DESCRIPTION



           This function discards all queued to be sent packets in a DTLS
           session.  These are the packets queued after an interrupted
           **gnutls_record_send()**.
    
           This function can only be used with transports where **send()** is an
           all-or-nothing operation (e.g., UDP). When partial writes are
           allowed this function will cause session errors.
    


## RETURNS



           The number of bytes discarded.
    


## SINCE



           3.4.0
    


* * *
# wmemcpy

## NAME



           wmemcpy - copy an array of wide-characters
    


## LIBRARY



           Standard C library (_libc_ , _-lc_)
    


## SYNOPSIS



           **#include <wchar.h>**
    
           **wchar_t *wmemcpy(** size_t n;
                            **wchar_t** _dest_**[restrict** _n_**],**
                            **const wchar_t** _src_**[restrict** _n_**],**
                            **size_t** _n_**);**
    


## DESCRIPTION



           The **wmemcpy**() function is the wide-character equivalent of the
           memcpy(3) function.  It copies _n_ wide characters from the array
           starting at _src_ to the array starting at _dest_.
    
           The arrays may not overlap; use wmemmove(3) to copy between
           overlapping arrays.
    
           The programmer must ensure that there is room for at least _n_ wide
           characters at _dest_.
    


## RETURN VALUE



           **wmemcpy**() returns _dest_.
    


## ATTRIBUTES



           For an explanation of the terms used in this section, see
           attributes(7).
           ┌──────────────────────────────────────┬───────────────┬─────────┐
           │ **Interface** │ **Attribute** │ **Value** │
           ├──────────────────────────────────────┼───────────────┼─────────┤
           │ **wmemcpy**()                            │ Thread safety │ MT-Safe │
           └──────────────────────────────────────┴───────────────┴─────────┘
    


## STANDARDS



           C11, POSIX.1-2008.
    


* * *
# gnutls_x509_crl_set_crt_serial

## NAME



           gnutls_x509_crl_set_crt_serial - API function
    


## SYNOPSIS



           **#include <gnutls/x509.h>**
    
           **int gnutls_x509_crl_set_crt_serial(gnutls_x509_crl_t** _crl_**, const**
           **void ***_serial_**, size_t** _serial_size_**, time_t** _revocation_time_**);**
    


## ARGUMENTS



           gnutls_x509_crl_t crl
                       should contain a gnutls_x509_crl_t type
    
           const void * serial
                       The revoked certificate's serial number
    
           size_t serial_size
                       Holds the size of the serial field.
    
           time_t revocation_time
                       The time this certificate was revoked
    


## DESCRIPTION



           This function will set a revoked certificate's serial number to
           the CRL.
    


## RETURNS



           On success, **GNUTLS_E_SUCCESS**(0) is returned, otherwise a negative
           error value.
    


* * *
# probe::nfsd.rename

## NAME



           probe::nfsd.rename - NFS server renaming a file for client
    


## SYNOPSIS



           nfsd.rename
    


## VALUES



           _filename_
               old file name
    
           _fh_
               file handler of old path
    
           _tlen_
               length of new file name
    
           _tfh_
               file handler of new path
    
           _tname_
               new file name
    
           _flen_
               length of old file name
    
           _client_ip_
               the ip address of client
    


* * *
# function::set_kernel_int

## NAME



           function::set_kernel_int - Writes an int value to kernel memory
    


## SYNOPSIS



               set_kernel_int(addr:long,val:long)
    


## ARGUMENTS



           _addr_
               The kernel address to write the int to
    
           _val_
               The int which is to be written
    


## DESCRIPTION



           Writes the int value to a given kernel memory address. Reports an
           error when writing to the given address fails. Requires the use of
           guru mode (-g).
    


* * *
# gnutls_ocsp_req_print

## NAME



           gnutls_ocsp_req_print - API function
    


## SYNOPSIS



           **#include <gnutls/ocsp.h>**
    
           **int gnutls_ocsp_req_print(gnutls_ocsp_req_const_t** _req_**,**
           **gnutls_ocsp_print_formats_t** _format_**, gnutls_datum_t ***_out_**);**
    


## ARGUMENTS



           gnutls_ocsp_req_const_t req
                       The data to be printed
    
           gnutls_ocsp_print_formats_t format
                       Indicate the format to use
    
           gnutls_datum_t * out
                       Newly allocated datum with (0) terminated string.
    


## DESCRIPTION



           This function will pretty print a OCSP request, suitable for
           display to a human.
    
           If the format is **GNUTLS_OCSP_PRINT_FULL** then all fields of the
           request will be output, on multiple lines.
    
           The output  _out_ ->data needs to be deallocate using **gnutls_free()**.
    


## RETURNS



           On success, **GNUTLS_E_SUCCESS**(0) is returned, otherwise a negative
           error value.
    


* * *
# tapset::queue_stats

## NAME



           tapset::queue_stats - systemtap queue_stats tapset
    


## DESCRIPTION



           **qs_wait**
                  Function to record enqueue requests
    
                  See function::qs_wait(3stap)
                   for details.
    
           **qs_run** Function to record being moved from wait queue to being
                  serviced
    
                  See function::qs_run(3stap)
                   for details.
    
           **qs_done**
                  Function to record finishing request
    
                  See function::qs_done(3stap)
                   for details.
    
           **qsq_start**
                  Function to reset the stats for a queue
    
                  See function::qsq_start(3stap)
                   for details.
    
           **qsq_utilization**
                  Fraction of time that any request was being serviced
    
                  See function::qsq_utilization(3stap)
                   for details.
    
           **qsq_blocked**
                  Returns the time reqest was on the wait queue
    
                  See function::qsq_blocked(3stap)
                   for details.
    
           **qsq_wait_queue_length**
                  length of wait queue
    
                  See function::qsq_wait_queue_length(3stap)
                   for details.
    
           **qsq_service_time**
                  Amount of time per request service
    
                  See function::qsq_service_time(3stap)
                   for details.
    
           **qsq_wait_time**
                  Amount of time in queue + service per request
    
                  See function::qsq_wait_time(3stap)
                   for details.
    
           **qsq_throughput**
                  Number of requests served per unit time
    
                  See function::qsq_throughput(3stap)
                   for details.
    
           **qsq_print**
                  Prints a line of statistics for the given queue
    
                  See function::qsq_print(3stap)
                   for details.
    


* * *
# mlx5dv_reserved_qpn_alloc

## NAME



           mlx5dv_reserved_qpn_alloc - Allocate a reserved QP number from
           device
    
           mlx5dv_reserved_qpn_dealloc - Release the reserved QP number
    


## SYNOPSIS



                  #include <infiniband/mlx5dv.h>
    
                  int mlx5dv_reserved_qpn_alloc(struct ibv_context *ctx, uint32_t *qpn);
    
                  int mlx5dv_reserved_qpn_dealloc(struct ibv_context *ctx, uint32_t qpn);
    


## DESCRIPTION



           When work with RDMA_CM RDMA_TCP_PS + external QP support, a client
           node needs GUID level unique QP numbers to comply with the CM’s
           timewait logic.
    
           If a real unique QP is not allocated, a device global QPN value is
           required and can be allocated via this interface.
    
           The mlx5 DCI QP is such an example, which could connect to the
           remote DCT’s multiple times as long as the application provides
           unique QPN for each new RDMA_CM connection.
    
           These 2 APIs provide the allocation/deallocation of a unique QP
           number from/to device.  This qpn can be used with DC QPN in
           RDMA_CM connection establishment, which will comply with the CM
           timewait kernel logic.
    


## ARGUMENTS



           _ctx_    The device context to issue the action on.
    
           _qpn_    The allocated QP number (for alloc API), or the QP number
                  to be deallocated (for dealloc API).
    


## RETURN VALUE



           0 on success; EOPNOTSUPP if not supported, or other errno value on
           other failures.
    


* * *
# function::caller

## NAME



           function::caller - Return name and address of calling function
    


## SYNOPSIS



               caller:string()
    


## ARGUMENTS



           None
    


## DESCRIPTION



           This function returns the address and name of the calling
           function. This is equivalent to calling: sprintf("**s** 0x**x** ",
           symname(**caller_addr**), **caller_addr**)
    


* * *
# function::long_to_fp

## NAME



           function::long_to_fp - Convert long int to 64 bit floating point
    


## SYNOPSIS



               long_to_fp:long(input:long)
    


## ARGUMENTS



           _input_
               a long integer
    


## DESCRIPTION



           Convert from a long to a 64 bit softfloat floating point.
    


* * *
# iconv_close

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           iconv_close — codeset conversion deallocation function
    


## SYNOPSIS



           #include <iconv.h>
    
           int iconv_close(iconv_t _cd_);
    


## DESCRIPTION



           The _iconv_close_() function shall deallocate the conversion
           descriptor _cd_ and all other associated resources allocated by
           _iconv_open_().
    
           If a file descriptor is used to implement the type **iconv_t** , that
           file descriptor shall be closed.
    


## RETURN VALUE



           Upon successful completion, 0 shall be returned; otherwise, -1
           shall be returned and _errno_ set to indicate the error.
    


## ERRORS



           The _iconv_close_() function may fail if:
    
           **EBADF** The conversion descriptor is invalid.
    
           _The following sections are informative._
    


## EXAMPLES



           None.
    


## APPLICATION USAGE



           None.
    


## RATIONALE



           None.
    


## FUTURE DIRECTIONS



           None.
    


* * *
# gnutls_pcert_list_import_x509_raw

## NAME



           gnutls_pcert_list_import_x509_raw - API function
    


## SYNOPSIS



           **#include <gnutls/abstract.h>**
    
           **int gnutls_pcert_list_import_x509_raw(gnutls_pcert_st ***
           _pcert_list_**, unsigned int ***_pcert_list_size_**, const gnutls_datum_t ***
           _data_**, gnutls_x509_crt_fmt_t** _format_**, unsigned int** _flags_**);**
    


## ARGUMENTS



           gnutls_pcert_st * pcert_list
                       The structures to store the certificates; must not
                       contain initialized **gnutls_pcert_st** structures.
    
           unsigned int * pcert_list_size
                       Initially must hold the maximum number of certs. It
                       will be updated with the number of certs available.
    
           const gnutls_datum_t * data
                       The certificates.
    
           gnutls_x509_crt_fmt_t format
                       One of DER or PEM.
    
           unsigned int flags
                       must be (0) or an OR'd sequence of
                       gnutls_certificate_import_flags.
    


## DESCRIPTION



           This function will import the provided DER or PEM encoded
           certificates to an already allocated set of **gnutls_pcert_st**
           structures. The structures must be deinitialized afterwards using
           **gnutls_pcert_deinit()**.  _pcert_list_ should contain space for at
           least  _pcert_list_size_ elements.
    
           If the Certificate is PEM encoded it should have a header of "X509
           CERTIFICATE", or "CERTIFICATE".
    


## RETURNS



           On success, **GNUTLS_E_SUCCESS**(0) is returned, otherwise a negative
           error value; if the  _pcert_ list doesn't have enough space
           **GNUTLS_E_SHORT_MEMORY_BUFFER** will be returned.
    


## SINCE



           3.0
    


* * *
# gnutls_db_set_store_function

## NAME



           gnutls_db_set_store_function - API function
    


## SYNOPSIS



           **#include <gnutls/gnutls.h>**
    
           **void gnutls_db_set_store_function(gnutls_session_t** _session_**,**
           **gnutls_db_store_func** _store_func_**);**
    


## ARGUMENTS



           gnutls_session_t session
                       is a **gnutls_session_t** type.
    
           gnutls_db_store_func store_func
                       is the function
    


## DESCRIPTION



           Sets the function that will be used to store data in the resumed
           sessions database. This function must return 0 on success.
    
           The first argument to  _store_func_ will be null unless
           **gnutls_db_set_ptr()** has been called.
    


* * *
# posix_trace_attr_setname

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           posix_trace_attr_setname — retrieve and set information about a
           trace stream (**TRACING**)
    


## SYNOPSIS



           #include <trace.h>
    
           int posix_trace_attr_setname(trace_attr_t *_attr_ ,
               const char *_tracename_);
    


## DESCRIPTION



           Refer to posix_trace_attr_getclockres(3p).
    


* * *
# mlx5dv_flow_action_esp

## NAME



           mlx5dv_flow_action_esp - Flow action esp for mlx5 provider
    


## SYNOPSIS



                  #include <infiniband/mlx5/mlx5dv.h>
    
                  struct ibv_flow_action *
                  mlx5dv_create_flow_action_esp(struct ibv_context *ctx,
                                    struct ibv_flow_action_esp_attr *esp,
                                    struct mlx5dv_flow_action_esp *mlx5_attr);
    


## DESCRIPTION



           Create an IPSEC ESP flow steering action.
           This verb is identical to _ibv_create_flow_action_esp_ verb, but
           allows mlx5 specific flags.
    


## ARGUMENTS



           Please see _ibv_flow_action_esp(3)_ man page for _ctx_ and _esp_.
    
       _**mlx5_attr** _argument
                  struct mlx5dv_flow_action_esp {
                      uint64_t comp_mask;  /* Use enum mlx5dv_flow_action_esp_mask */
                      uint32_t action_flags; /* Use enum mlx5dv_flow_action_flags */
                  };
    
           _comp_mask_
                  Bitmask specifying what fields in the structure are valid
                  (_enum mlx5dv_flow_action_esp_mask_).
    
           _action_flags_
                  A bitwise OR of the various values described below.
    
                  _MLX5DV_FLOW_ACTION_FLAGS_REQUIRE_METADATA_ :
                  Each received and transmitted packet using offload is
                  expected to carry metadata in the form of a L2 header
                  with ethernet type 0x8CE4, followed by 6 bytes of data and
                  the original packet ethertype.
    


## NOTE



           The ESN is expected to be placed in the IV field for egress
           packets.
           The 64 bit sequence number is written in big-endian over the 64
           bit IV field.
           There is no need to call modify to update the ESN window on egress
           when this DV is used.
    


* * *
# memchr

## NAME



           memchr, memrchr, rawmemchr - scan memory for a character
    


## LIBRARY



           Standard C library (_libc_ , _-lc_)
    


## SYNOPSIS



           **#include <string.h>**
    
           **void *memchr(** size_t n;
                        **const void** _s_**[**_n_**], int** _c_**, size_t** _n_**);**
           **void *memrchr(** size_t n;
                        **const void** _s_**[**_n_**], int** _c_**, size_t** _n_**);**
    
           **[[deprecated]] void *rawmemchr(const void ***_s_**, int** _c_**);**
    
       Feature Test Macro Requirements for glibc (see
       feature_test_macros(7)):
    
           **memrchr**(), **rawmemchr**():
               _GNU_SOURCE
    


## DESCRIPTION



           The **memchr**() function scans the initial _n_ bytes of the memory area
           pointed to by _s_ for the first instance of _c_.  Both _c_ and the bytes
           of the memory area pointed to by _s_ are interpreted as _unsigned_
           _char_.
    
           The **memrchr**() function is like the **memchr**() function, except that
           it searches backward from the end of the _n_ bytes pointed to by _s_
           instead of forward from the beginning.
    
           The **rawmemchr**() function is similar to **memchr**(), but it assumes
           (i.e., the programmer knows for certain) that an instance of _c_
           lies somewhere in the memory area starting at the location pointed
           to by _s_.  If an instance of _c_ is not found, the behavior is
           undefined.  Use either strlen(3) or memchr(3) instead.
    


## RETURN VALUE



           The **memchr**() and **memrchr**() functions return a pointer to the
           matching byte or NULL if the character does not occur in the given
           memory area.
    
           The **rawmemchr**() function returns a pointer to the matching byte.
    


## ATTRIBUTES



           For an explanation of the terms used in this section, see
           attributes(7).
           ┌──────────────────────────────────────┬───────────────┬─────────┐
           │ **Interface** │ **Attribute** │ **Value** │
           ├──────────────────────────────────────┼───────────────┼─────────┤
           │ **memchr**(), **memrchr**(), **rawmemchr**()     │ Thread safety │ MT-Safe │
           └──────────────────────────────────────┴───────────────┴─────────┘
    


## STANDARDS



           **memchr**()
                  C11, POSIX.1-2008.
    
           **memrchr**()
           **rawmemchr**()
                  GNU.
    


* * *
# vwprintf

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           vwprintf — wide-character formatted output of a stdarg argument
           list
    


## SYNOPSIS



           #include <stdarg.h>
           #include <stdio.h>
           #include <wchar.h>
    
           int vwprintf(const wchar_t *restrict _format_ , va_list _arg_);
    


## DESCRIPTION



           Refer to vfwprintf(3p).
    


* * *
# sd_bus_get_name_machine_id

## NAME



           sd_bus_get_name_machine_id - Retrieve a bus client's machine
           identity
    


## SYNOPSIS



           **#include <systemd/sd-bus.h>**
    
           **int sd_bus_get_name_machine_id(sd_bus ***_bus_**, const char ***_name_**,**
                                          **sd_id128_t ***_machine_**);**
    


## DESCRIPTION



           **sd_bus_get_name_machine_id()** retrieves the D-Bus machine identity
           of the machine that the bus client identified by _name_ is running
           on. Internally, it calls the **GetMachineId** method of the
           **org.freedesktop.DBus.Peer** interface. The D-Bus machine identity is
           a 128-bit UUID. On Linux systems running systemd, this corresponds
           to the contents of /etc/machine-id. On success, the machine
           identity is stored in _machine_.
    


## RETURN VALUE



           On success, this function returns a non-negative integer. On
           failure, it returns a negative errno-style error code.
    
       **Errors**
           Returned errors may indicate the following problems:
    
           **-EINVAL**
               An argument is invalid.
    
           **-ENOPKG**
               The bus cannot be resolved.
    
           **-ECHILD**
               The bus was created in a different process, library or module
               instance.
    
           **-ENOMEM**
               Memory allocation failed.
    


## NOTES



           Functions described here are available as a shared library, which
           can be compiled against and linked to with the
           **libsystemd pkg-config**(1) file.
    
           The code described here uses getenv(3), which is declared to be
           not multi-thread-safe. This means that the code calling the
           functions described here must not call setenv(3) from a parallel
           thread. It is recommended to only do calls to **setenv()** from an
           early phase of the program when no other threads have been
           started.
    


* * *
# gnutls_x509_crt_set_key_usage

## NAME



           gnutls_x509_crt_set_key_usage - API function
    


## SYNOPSIS



           **#include <gnutls/x509.h>**
    
           **int gnutls_x509_crt_set_key_usage(gnutls_x509_crt_t** _crt_**, unsigned**
           **int** _usage_**);**
    


## ARGUMENTS



           gnutls_x509_crt_t crt
                       a certificate of type **gnutls_x509_crt_t**
    
           unsigned int usage
                       an ORed sequence of the GNUTLS_KEY_* elements.
    


## DESCRIPTION



           This function will set the keyUsage certificate extension.
    


## RETURNS



           On success, **GNUTLS_E_SUCCESS**(0) is returned, otherwise a negative
           error value.
    


* * *
# gnutls_psk_set_server_credentials_file

## NAME



           gnutls_psk_set_server_credentials_file - API function
    


## SYNOPSIS



           **#include <gnutls/gnutls.h>**
    
           **int**
           **gnutls_psk_set_server_credentials_file(gnutls_psk_server_credentials_t**
           _res_**, const char ***_password_file_**);**
    


## ARGUMENTS



           gnutls_psk_server_credentials_t res
                       is a **gnutls_psk_server_credentials_t** type.
    
           const char * password_file
                       is the PSK password file (passwd.psk)
    


## DESCRIPTION



           This function sets the password file, in a
           **gnutls_psk_server_credentials_t** type.  This password file holds
           usernames and keys and will be used for PSK authentication.
    
           Each entry in the file consists of a username, followed by a colon
           (':') and a hex-encoded key.  If the username contains a colon or
           any other special character, it can be hex-encoded preceded by a
    


## RETURNS



           On success, **GNUTLS_E_SUCCESS**(0) is returned, otherwise an error
           code is returned.
    


* * *
# gnutls_sign_set_secure

## NAME



           gnutls_sign_set_secure - API function
    


## SYNOPSIS



           **#include <gnutls/gnutls.h>**
    
           **int gnutls_sign_set_secure(gnutls_sign_algorithm_t** _sign_**, unsigned**
           **int** _secure_**);**
    


## ARGUMENTS



           gnutls_sign_algorithm_t sign
                       the sign algorithm
    
           unsigned int secure
                       whether to mark the sign algorithm secure
    


## DESCRIPTION



           Modify the previous system wide setting that marked  _sign_ as
           secure or insecure.  Calling this function is allowed only if
           allowlisting mode is set in the configuration file, and only if
           the system-wide TLS priority string has not been initialized yet.
           The intended usage is to provide applications with a way to
           expressly deviate from the distribution or site defaults inherited
           from the configuration file.  The modification is composable with
           further modifications performed through the priority string
           mechanism.
    
           This function is not thread-safe and is intended to be called in
           the main thread at the beginning of the process execution.
    
           Even when  _secure_ is true,  _sign_ is not marked as secure for the
           use in certificates.  Use **gnutls_sign_set_secure_for_certs()** to
           mark it secure as well for certificates.
    


## RETURNS



           0 on success or negative error code otherwise.
    


## SINCE



           3.7.3
    


* * *
# gnutls_x509_crt_equals

## NAME



           gnutls_x509_crt_equals - This function compares two
           gnutls_x509_crt_t certificates
    


## SYNOPSIS



           **#include <gnutls/x509.h>**
    
           **unsigned gnutls_x509_crt_equals(gnutls_x509_crt_t** _cert1_**,**
           **gnutls_x509_crt_t** _cert2_**);**
    


## ARGUMENTS



           gnutls_x509_crt_t cert1
                       The first certificate
    
           gnutls_x509_crt_t cert2
                       The second certificate
    


## DESCRIPTION



           This function will compare two X.509 certificate structures.
    


## RETURNS



           On equality non-zero is returned, otherwise zero.
    


## SINCE



           3.5.0
    


* * *
# hnsdv_is_supported

## NAME



           hnsdv_is_supported - Check whether an RDMA device implemented by
           the hns provider
    


## SYNOPSIS



                  #include <infiniband/hnsdv.h>
    
                  bool hnsdv_is_supported(struct ibv_device *device);
    


## DESCRIPTION



           hnsdv functions may be called only if this function returns true
           for the RDMA device.
    


## ARGUMENTS



           _device_ RDMA device to check.
    


## RETURN VALUE



           Returns true if device is implemented by hns provider.
    


* * *