Stackdb
Stackdb is a stackable, multi-target and -level source debugger and memory forensics library.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Data Structures | Macros | Functions | Variables
generic_rpc.c File Reference
#include <stdsoap2.h>
#include <pthread.h>
#include <sys/prctl.h>
#include <signal.h>
#include <glib.h>
#include <stdlib.h>
#include <sys/time.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include "log.h"
#include "alist.h"
#include "waitpipe.h"
#include "generic_rpc.h"
#include "util.h"
#include "xsdcStub.h"
Include dependency graph for generic_rpc.c:

Go to the source code of this file.

Data Structures

struct  svctype_info
 
struct  generic_rpc_handler_state
 

Macros

#define __DEFAULT_GENERIC_RPC_TMPDIR   "/var/tmp"
 

Functions

void _generic_rpc_unregister_svctype (rpc_svctype_t svctype, int no_hash_delete)
 
void generic_rpc_init (void)
 
void generic_rpc_fini (void)
 
struct svctype_info__get_si (rpc_svctype_t svctype)
 
void generic_rpc_register_svctype (rpc_svctype_t svctype)
 
void generic_rpc_unregister_svctype (rpc_svctype_t svctype)
 
error_t generic_rpc_argp_parse_opt (int key, char *arg, struct argp_state *state)
 
int generic_rpc_handle_request (struct soap *soap)
 
int generic_rpc_serve (struct generic_rpc_config *cfg)
 
struct generic_rpc_listener_generic_rpc_lookup_listener_url (rpc_svctype_t svctype, char *url)
 
struct generic_rpc_listenergeneric_rpc_lookup_listener_url (rpc_svctype_t svctype, char *url)
 
struct generic_rpc_listener_generic_rpc_lookup_listener_id (rpc_svctype_t svctype, int listener_id)
 
struct generic_rpc_listenergeneric_rpc_lookup_listener_id (rpc_svctype_t svctype, int listener_id)
 
int _generic_rpc_insert_listener (rpc_svctype_t svctype, char *url)
 
int generic_rpc_insert_listener (rpc_svctype_t svctype, char *url)
 
int _generic_rpc_remove_listener (rpc_svctype_t svctype, int listener_id, int no_objid_deletes)
 
int generic_rpc_remove_listener (rpc_svctype_t svctype, int listener_id)
 
struct generic_rpc_listener_generic_rpc_listener_lookup_owner (rpc_svctype_t svctype, int objid)
 
int _generic_rpc_unbind_listener_objid (rpc_svctype_t svctype, int listener_id, int objid)
 
int generic_rpc_unbind_listener_objid (rpc_svctype_t svctype, int listener_id, int objid)
 
int _generic_rpc_unbind_all_listeners_objid (rpc_svctype_t svctype, int objid)
 
int generic_rpc_unbind_all_listeners_objid (rpc_svctype_t svctype, int objid)
 
int generic_rpc_bind_listener_objid (rpc_svctype_t svctype, int listener_id, int objid, int owns)
 
int generic_rpc_bind_dynlistener_objid (rpc_svctype_t svctype, char *listener_url, int objid, int owns)
 
int generic_rpc_unbind_dynlistener_objid (rpc_svctype_t svctype, char *listener_url, int objid)
 
int generic_rpc_count_listeners (rpc_svctype_t svctype, int objid)
 
int generic_rpc_listener_notify_all (rpc_svctype_t svctype, int objid, generic_rpc_listener_notifier_t *notifier, void *data)
 
struct xsd__hexBinarygeneric_rpc_read_file_into_hexBinary (struct soap *soap, char *filename, int max_size)
 

Variables

char * GENERIC_RPC_TMPDIR
 
struct argp_option generic_rpc_argp_opts []
 
const struct argp_child generic_rpc_argp_children [2]
 
struct argp generic_rpc_argp
 

Macro Definition Documentation

#define __DEFAULT_GENERIC_RPC_TMPDIR   "/var/tmp"

Definition at line 50 of file generic_rpc.c.

Function Documentation

struct svctype_info* __get_si ( rpc_svctype_t  svctype)

Definition at line 131 of file generic_rpc.c.

int _generic_rpc_insert_listener ( rpc_svctype_t  svctype,
char *  url 
)

Definition at line 498 of file generic_rpc.c.

struct generic_rpc_listener* _generic_rpc_listener_lookup_owner ( rpc_svctype_t  svctype,
int  objid 
)

Definition at line 619 of file generic_rpc.c.

struct generic_rpc_listener* _generic_rpc_lookup_listener_id ( rpc_svctype_t  svctype,
int  listener_id 
)

Definition at line 478 of file generic_rpc.c.

struct generic_rpc_listener* _generic_rpc_lookup_listener_url ( rpc_svctype_t  svctype,
char *  url 
)

Generic RPC listener stuff.

Definition at line 457 of file generic_rpc.c.

int _generic_rpc_remove_listener ( rpc_svctype_t  svctype,
int  listener_id,
int  no_objid_deletes 
)

Definition at line 559 of file generic_rpc.c.

int _generic_rpc_unbind_all_listeners_objid ( rpc_svctype_t  svctype,
int  objid 
)

Definition at line 691 of file generic_rpc.c.

int _generic_rpc_unbind_listener_objid ( rpc_svctype_t  svctype,
int  listener_id,
int  objid 
)

Definition at line 630 of file generic_rpc.c.

void _generic_rpc_unregister_svctype ( rpc_svctype_t  svctype,
int  no_hash_delete 
)

Definition at line 163 of file generic_rpc.c.

error_t generic_rpc_argp_parse_opt ( int  key,
char *  arg,
struct argp_state *  state 
)

Definition at line 218 of file generic_rpc.c.

int generic_rpc_bind_dynlistener_objid ( rpc_svctype_t  svctype,
char *  listener_url,
int  objid,
int  owns 
)

Definition at line 804 of file generic_rpc.c.

int generic_rpc_bind_listener_objid ( rpc_svctype_t  svctype,
int  listener_id,
int  objid,
int  owns 
)

Definition at line 743 of file generic_rpc.c.

int generic_rpc_count_listeners ( rpc_svctype_t  svctype,
int  objid 
)

Definition at line 880 of file generic_rpc.c.

void generic_rpc_fini ( void  )

Definition at line 104 of file generic_rpc.c.

int generic_rpc_handle_request ( struct soap *  soap)

Definition at line 266 of file generic_rpc.c.

void generic_rpc_init ( void  )

Module init/fini stuff.

Definition at line 69 of file generic_rpc.c.

int generic_rpc_insert_listener ( rpc_svctype_t  svctype,
char *  url 
)

Definition at line 535 of file generic_rpc.c.

int generic_rpc_listener_notify_all ( rpc_svctype_t  svctype,
int  objid,
generic_rpc_listener_notifier_t notifier,
void *  data 
)

Definition at line 902 of file generic_rpc.c.

struct generic_rpc_listener* generic_rpc_lookup_listener_id ( rpc_svctype_t  svctype,
int  listener_id 
)

Definition at line 488 of file generic_rpc.c.

struct generic_rpc_listener* generic_rpc_lookup_listener_url ( rpc_svctype_t  svctype,
char *  url 
)

Definition at line 467 of file generic_rpc.c.

struct xsd__hexBinary* generic_rpc_read_file_into_hexBinary ( struct soap *  soap,
char *  filename,
int  max_size 
)

Definition at line 981 of file generic_rpc.c.

void generic_rpc_register_svctype ( rpc_svctype_t  svctype)

Service type registration stuff.

Definition at line 139 of file generic_rpc.c.

int generic_rpc_remove_listener ( rpc_svctype_t  svctype,
int  listener_id 
)

Definition at line 608 of file generic_rpc.c.

int generic_rpc_serve ( struct generic_rpc_config cfg)

Definition at line 349 of file generic_rpc.c.

int generic_rpc_unbind_all_listeners_objid ( rpc_svctype_t  svctype,
int  objid 
)

Definition at line 733 of file generic_rpc.c.

int generic_rpc_unbind_dynlistener_objid ( rpc_svctype_t  svctype,
char *  listener_url,
int  objid 
)

Definition at line 864 of file generic_rpc.c.

int generic_rpc_unbind_listener_objid ( rpc_svctype_t  svctype,
int  listener_id,
int  objid 
)

Definition at line 680 of file generic_rpc.c.

void generic_rpc_unregister_svctype ( rpc_svctype_t  svctype)

Definition at line 195 of file generic_rpc.c.

Variable Documentation

struct argp generic_rpc_argp
Initial value:
= {
}
const struct argp_child generic_rpc_argp_children[2]
Definition: generic_rpc.c:256
#define generic_rpc_argp_header
Definition: generic_rpc.h:33
struct argp_option generic_rpc_argp_opts[]
Definition: generic_rpc.c:210
error_t generic_rpc_argp_parse_opt(int key, char *arg, struct argp_state *state)
Definition: generic_rpc.c:218

Definition at line 261 of file generic_rpc.c.

const struct argp_child generic_rpc_argp_children[2]
Initial value:
= {
{ NULL,0,NULL,0 },
}
#define log_argp_header
Definition: log.h:28
struct argp log_argp
Definition: log.c:413

Definition at line 256 of file generic_rpc.c.

struct argp_option generic_rpc_argp_opts[]
Initial value:
= {
{ "port",'p',"PORT",0,
"Set the RPC server's port; if unspecified, uses stdin.",0 },
{ "tmpdir",'T',"DIR",0,
"Set the RPC server's tmpdir; if unspecified, $TMP, then /var/tmp.",0 },
{ 0,0,0,0,0,0 }
}

Definition at line 210 of file generic_rpc.c.

char* GENERIC_RPC_TMPDIR

Definition at line 52 of file generic_rpc.c.