19 #ifndef __GENERIC_RPC_H__
20 #define __GENERIC_RPC_H__
33 #define generic_rpc_argp_header "Generic RPC Server Options"
108 int is_owner,
void *data);
162 char *filename,
int max_size);
164 #define __SAFE_IO(fn,fns,fd,buf,buflen,rc) { \
169 _p = (char *)(buf); \
173 _rc = fn((fd),_p,_left); \
175 if (errno != EINTR) { \
176 vwarn(fns "(%d,%d): %s\n", \
177 fd,buflen,strerror(errno)); \
181 verror(fns "(%d,%d): %s\n", \
182 fd,buflen,strerror(errno)); \
185 else if (_rc == 0) { \
int( generic_rpc_listener_notifier_t)(struct generic_rpc_listener *l, int is_owner, void *data)
void generic_rpc_register_svctype(rpc_svctype_t svctype)
void generic_rpc_fini(void)
void generic_rpc_unregister_svctype(rpc_svctype_t svctype)
int generic_rpc_bind_listener_objid(rpc_svctype_t svctype, int listener_id, int objid, int owns)
int generic_rpc_handle_request(struct soap *soap)
int generic_rpc_listener_notify_all(rpc_svctype_t svctype, int objid, generic_rpc_listener_notifier_t *notifier, void *data)
int generic_rpc_unbind_all_listeners_objid(rpc_svctype_t svctype, int objid)
int generic_rpc_unbind_listener_objid(rpc_svctype_t svctype, int listener_id, int objid)
int generic_rpc_insert_listener(rpc_svctype_t svctype, char *url)
int generic_rpc_unbind_dynlistener_objid(rpc_svctype_t svctype, char *listener_url, int objid)
struct generic_rpc_listener * generic_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 xsd__hexBinary * generic_rpc_read_file_into_hexBinary(struct soap *soap, char *filename, int max_size)
int generic_rpc_remove_listener(rpc_svctype_t svctype, int listener_id)
int generic_rpc_serve(struct generic_rpc_config *cfg)
int generic_rpc_bind_dynlistener_objid(rpc_svctype_t svctype, char *listener_url, int objid, int owns)
int generic_rpc_count_listeners(rpc_svctype_t svctype, int objid)
int(* handle_request)(struct soap *soap)
struct argp generic_rpc_argp
char * GENERIC_RPC_TMPDIR
void generic_rpc_init(void)