LCOV - code coverage report
Current view: top level - waltz/aio - fd_aio.c (source / functions) Hit Total Coverage
Test: cov.lcov Lines: 50 50 100.0 %
Date: 2024-11-13 11:58:15 Functions: 7 7 100.0 %

          Line data    Source code
       1             : #include "fd_aio.h"
       2             : 
       3             : /* These are currently stubs in anticipation of future AIO
       4             :    functionality. */
       5             : 
       6             : ulong
       7           6 : fd_aio_align( void ) {
       8           6 :   return FD_AIO_ALIGN;
       9           6 : }
      10             : 
      11             : ulong
      12           6 : fd_aio_footprint( void ) {
      13           6 :   return FD_AIO_FOOTPRINT;
      14           6 : }
      15             : 
      16             : void *
      17             : fd_aio_new( void *             shmem,
      18             :             void *             ctx,
      19        3333 :             fd_aio_send_func_t send_func ) {
      20        3333 :   if( FD_UNLIKELY( !shmem ) ) {
      21           3 :     FD_LOG_WARNING(( "NULL shmem" ));
      22           3 :     return NULL;
      23           3 :   }
      24             : 
      25        3330 :   if( FD_UNLIKELY( !send_func ) ) {
      26           3 :     FD_LOG_WARNING(( "NULL send_func" ));
      27           3 :     return NULL;
      28           3 :   }
      29             : 
      30        3327 :   fd_aio_t * aio = (fd_aio_t *)shmem;
      31             : 
      32        3327 :   aio->ctx       = ctx;
      33        3327 :   aio->send_func = send_func;
      34             : 
      35        3327 :   return (void *)aio;
      36        3330 : }
      37             : 
      38             : fd_aio_t *
      39        3297 : fd_aio_join( void * shaio ) {
      40        3297 :   if( FD_UNLIKELY( !shaio ) ) {
      41           3 :     FD_LOG_WARNING(( "NULL shaio" ));
      42           3 :     return NULL;
      43           3 :   }
      44        3294 :   return (fd_aio_t *)shaio;
      45        3297 : }
      46             : 
      47             : void *
      48        2100 : fd_aio_leave( fd_aio_t * aio ) {
      49        2100 :   if( FD_UNLIKELY( !aio ) ) {
      50           3 :     FD_LOG_WARNING(( "NULL aio" ));
      51           3 :     return NULL;
      52           3 :   }
      53        2097 :   return (void *)aio;
      54        2100 : }
      55             : 
      56             : void *
      57        2106 : fd_aio_delete( void * shaio ) {
      58        2106 :   if( FD_UNLIKELY( !shaio ) ) {
      59           3 :     FD_LOG_WARNING(( "NULL shaio" ));
      60           3 :     return NULL;
      61           3 :   }
      62        2103 :   return shaio;
      63        2106 : }
      64             : 
      65             : char const *
      66          12 : fd_aio_strerror( int err ) {
      67          12 :   switch( err ) {
      68           3 :   case FD_AIO_SUCCESS:   return "success";
      69           3 :   case FD_AIO_ERR_INVAL: return "bad input arguments";
      70           3 :   case FD_AIO_ERR_AGAIN: return "try again later";
      71           3 :   default: break;
      72          12 :   }
      73           3 :   return "unknown";
      74          12 : }
      75             : 

Generated by: LCOV version 1.14