12 #include <netinet/in.h>
16 #if defined(__cplusplus)
19 #if defined(__dummy_close_bracket_to_cheat_emacs_auto_indent)
24 #ifndef __nsm2_typedef_context__
25 #define __nsm2_typedef_context__
30 #ifndef __nsm2_typedef_parse__
31 #define __nsm2_typedef_parse__
36 #define NSMSYS_NAME_SIZ 31
38 #define NSMLIB_MAX_RETRY 30
39 #define NSMLIB_WAIT_RETRY 2
40 #define NSMLIB_MAX_CALLBACK 1024
44 typedef enum NSMfunctype_enum {
62 struct NSMrecvqueue_struct;
80 struct sockaddr_in sa;
81 char nodename[NSMSYS_NAME_SIZ + 1];
105 struct NSMrecvqueue_struct* recvqueue;
116 void nsmlib_logflush();
117 FILE* nsmlib_logging(FILE* logfp);
118 void nsmlib_checkpoint(
NSMcontext* nsmc,
int val);
119 int nsmlib_debuglevel(
int val);
120 int nsmlib_addincpath(
const char* path);
121 const char* nsmlib_nodename(
NSMcontext* nsmc,
int nodeid);
122 int nsmlib_nodeid(
NSMcontext* nsmc,
const char* nodename);
123 int nsmlib_nodepid(
NSMcontext* nsmc,
const char* nodename);
124 int nsmlib_nodeproc(
NSMcontext* nsmc,
const char* nodename);
126 int nsmlib_reqid(
NSMcontext* nsmc,
const char* reqname);
127 const char* nsmlib_reqname(
NSMcontext* nsmc,
int reqid);
128 const char* nsmlib_strerror(
NSMcontext* nsmc);
129 int nsmlib_callback(
NSMcontext* nsmc,
const char* name,
130 NSMcallback_t callback, NSMfunctype functype);
131 int nsmlib_readmem(
NSMcontext* nsmc,
void* buf,
132 const char* dat,
const char* fmt,
int rev);
134 const char* dat,
char* fmtbuf,
int bufsiz);
136 const char* dat,
const char* fmt,
int rev);
138 const char* dat,
const char* fmt,
int rev,
float cycle);
140 const void* ptr,
int siz);
142 const char* node,
const char* req,
143 uint npar,
int* pars,
int len,
const char* datap);
144 int nsmlib_register_request(
NSMcontext* nsmc,
const char* name);
145 NSMcontext* nsmlib_init(
const char* nodename,
const char* host,
146 int port,
int shmkey);
148 void nsmlib_usesig(
NSMcontext* nsmc,
int usesig);
149 NSMcontext* nsmlib_selectc(
int usesig,
unsigned int msec);
151 NSMparse* nsmlib_parsefile(
const char* datname,
int revision,
152 const char* incpath,
char* fmtstr,
int* revisionp);
154 #if defined(__dummy_open_bracket_to_cheat_emacs_auto_indent)
155 __dummy_open_bracket_to_cheat_emacs_auto_indent {
157 #if defined(__cplusplus)