PadicoTM

Documentation

« back to PM2 home.
component: PSP_SocketFactory- PSP over SocketFactory.

Data Structures

struct  psp_sf_status_s
 

Functions

static void * psp_sf_instantiate (puk_instance_t i, puk_context_t context)
 
static void psp_sf_destroy (void *_status)
 
static void psp_sf_init (void *_status, uint32_t tag, const char *label, size_t *h_size, padico_psp_handler_t handler, void *key)
 
static void psp_sf_connect (void *_status, padico_topo_node_t node)
 
static padico_psp_connection_t psp_sf_new_message (void *_status, padico_topo_node_t node, void **sbuf)
 
static void psp_sf_pack (void *_status, padico_psp_connection_t conn, const char *bytes, size_t size)
 
static void psp_sf_end_message (void *_status, padico_psp_connection_t conn)
 
static int psp_socketfactory_module_init (void)
 @]
 
static void psp_socketfactory_module_finalize (void)
 
static void psp_sf_acceptor (void *_status, int fd, const struct sockaddr *addr, socklen_t addrlen)
 
static void psp_sf_connector (void *_status, int fd)
 
static void psp_sf_pump (void *_status, void *bytes, size_t size)
 
static int psp_sf_callback (int fd, void *_status)
 

Variables

static const struct puk_component_driver_s psp_sf_component_driver
 
static const struct padico_psp_driver_s psp_sf_psp_driver
 
padico_psp_slot_t psp_sf_status_s::slot
 
padico_topo_node_t psp_sf_status_s::peer
 
struct puk_receptacle_SocketFactory_s psp_sf_status_s::sf
 
int psp_sf_status_s::fd
 
void * psp_sf_status_s::sbuf
 
int psp_sf_status_s::h_sent
 
padico_sysio_t psp_sf_status_s::io
 
struct padico_psp_directory_s   directory 
 
pthread_mutex_t   lock 
 
pthread_cond_t   event 
 
puk_component_t   component 
 
struct { 
 
   struct padico_psp_directory_s   directory 
 
   pthread_mutex_t   lock 
 
   pthread_cond_t   event 
 
   puk_component_t   component 
 
} psp_sf 
 

Detailed Description

Function Documentation

◆ psp_sf_acceptor()

static void psp_sf_acceptor ( void *  _status,
int  fd,
const struct sockaddr *  addr,
socklen_t  addrlen 
)
static

Definition at line 161 of file psp-sf.c.

References done, fd, psp_sf_status_s::fd, and psp_sf.

Referenced by psp_sf_connect().

◆ psp_sf_callback()

◆ psp_sf_connect()

◆ psp_sf_connector()

static void psp_sf_connector ( void *  _status,
int  fd 
)
static

Definition at line 169 of file psp-sf.c.

References done, fd, psp_sf_status_s::fd, and psp_sf.

Referenced by psp_sf_connect().

◆ psp_sf_destroy()

static void psp_sf_destroy ( void *  _status)
static

◆ psp_sf_end_message()

◆ psp_sf_init()

◆ psp_sf_instantiate()

◆ psp_sf_new_message()

static padico_psp_connection_t psp_sf_new_message ( void *  _status,
padico_topo_node_t  node,
void **  sbuf 
)
static

◆ psp_sf_pack()

static void psp_sf_pack ( void *  _status,
padico_psp_connection_t  conn,
const char *  bytes,
size_t  size 
)
static

◆ psp_sf_pump()

static void psp_sf_pump ( void *  _status,
void *  bytes,
size_t  size 
)
static

Definition at line 178 of file psp-sf.c.

References psp_sf_status_s::fd, padico_sysio_in(), and size.

Referenced by psp_sf_callback().

◆ psp_socketfactory_module_finalize()

static void psp_socketfactory_module_finalize ( void  )
static

Definition at line 116 of file psp-sf.c.

References done, and psp_sf.

◆ psp_socketfactory_module_init()

static int psp_socketfactory_module_init ( void  )
static

Variable Documentation

◆ [] [1/2]

puk_component_t { ... } ::component

Definition at line 96 of file psp-sf.c.

◆ component [2/2]

puk_component_t component

Definition at line 96 of file psp-sf.c.

◆ directory [1/2]

Definition at line 93 of file psp-sf.c.

◆ [] [2/2]

struct padico_psp_directory_s { ... } ::directory

Definition at line 93 of file psp-sf.c.

◆ [] [1/2]

pthread_cond_t { ... } ::event

Definition at line 95 of file psp-sf.c.

◆ event [2/2]

Definition at line 95 of file psp-sf.c.

◆ fd

◆ h_sent

int psp_sf_status_s::h_sent

Definition at line 87 of file psp-sf.c.

Referenced by psp_sf_end_message(), psp_sf_new_message(), and psp_sf_pack().

◆ io

padico_sysio_t psp_sf_status_s::io

Definition at line 88 of file psp-sf.c.

Referenced by psp_sf_connect().

◆ lock [1/2]

Definition at line 94 of file psp-sf.c.

◆ [] [2/2]

pthread_mutex_t { ... } ::lock

Definition at line 94 of file psp-sf.c.

◆ peer

padico_topo_node_t psp_sf_status_s::peer

Definition at line 83 of file psp-sf.c.

Referenced by psp_sf_callback(), psp_sf_connect(), psp_sf_init(), and psp_sf_new_message().

◆ [struct]

◆ psp_sf_component_driver

const struct puk_component_driver_s psp_sf_component_driver
static
Initial value:
=
{
.instantiate = &psp_sf_instantiate,
.destroy = &psp_sf_destroy
}
static void psp_sf_destroy(void *_status)
Definition psp-sf.c:132
static void * psp_sf_instantiate(puk_instance_t i, puk_context_t context)
Definition psp-sf.c:123

Definition at line 64 of file psp-sf.c.

Referenced by psp_socketfactory_module_init().

◆ psp_sf_psp_driver

const struct padico_psp_driver_s psp_sf_psp_driver
static
Initial value:
=
{
.init = &psp_sf_init,
.listen = NULL,
.connect = &psp_sf_connect,
.new_message = &psp_sf_new_message,
.pack = &psp_sf_pack,
.end_message = &psp_sf_end_message
}
return NULL
Definition Shm.h:88
static void psp_sf_connect(void *_status, padico_topo_node_t node)
Definition psp-sf.c:202
static void psp_sf_init(void *_status, uint32_t tag, const char *label, size_t *h_size, padico_psp_handler_t handler, void *key)
Definition psp-sf.c:143
static padico_psp_connection_t psp_sf_new_message(void *_status, padico_topo_node_t node, void **sbuf)
Definition psp-sf.c:256
static void psp_sf_pack(void *_status, padico_psp_connection_t conn, const char *bytes, size_t size)
Definition psp-sf.c:268
static void psp_sf_end_message(void *_status, padico_psp_connection_t conn)
Definition psp-sf.c:280

Definition at line 70 of file psp-sf.c.

Referenced by psp_socketfactory_module_init().

◆ sbuf

void* psp_sf_status_s::sbuf

◆ sf

Definition at line 84 of file psp-sf.c.

Referenced by psp_sf_connect(), psp_sf_init(), and psp_sf_instantiate().

◆ slot