src/server/public/nsapi.h

changeset 59
ab25c0a231d0
parent 58
66c22e54aa90
child 61
c858850f3d3a
equal deleted inserted replaced
58:66c22e54aa90 59:ab25c0a231d0
999 /* 3.0 ACL list pointer */ 999 /* 3.0 ACL list pointer */
1000 ACLListHandle *acllist; 1000 ACLListHandle *acllist;
1001 uint32_t aclreqaccess; /* new - required access rights */ 1001 uint32_t aclreqaccess; /* new - required access rights */
1002 1002
1003 VFS *vfs; /* new - virtual file system */ 1003 VFS *vfs; /* new - virtual file system */
1004
1005 void *davCollection;
1004 1006
1005 int request_is_cacheable; /* */ 1007 int request_is_cacheable; /* */
1006 int directive_is_cacheable; /* set by SAFs with no external side effects that make decisions based solely on URI and path */ 1008 int directive_is_cacheable; /* set by SAFs with no external side effects that make decisions based solely on URI and path */
1007 1009
1008 char *cached_headers; /* OBSOLETE */ 1010 char *cached_headers; /* OBSOLETE */
1081 #define ISMCOPY(r) ((r)->method_num == METHOD_COPY) 1083 #define ISMCOPY(r) ((r)->method_num == METHOD_COPY)
1082 #define ISMTRACE(r) ((r)->method_num == METHOD_TRACE) 1084 #define ISMTRACE(r) ((r)->method_num == METHOD_TRACE)
1083 #define ISMOPTIONS(r) ((r)->method_num == METHOD_OPTIONS) 1085 #define ISMOPTIONS(r) ((r)->method_num == METHOD_OPTIONS)
1084 1086
1085 1087
1088 // new type
1089 typedef struct _thread_pool threadpool_t;
1090 typedef struct _threadpool_job threadpool_job;
1091 typedef void*(*job_callback_f)(void *data);
1092
1086 /* --- End type definitions --- */ 1093 /* --- End type definitions --- */
1087 1094
1088 /* --- Begin dispatch vector table definition --- */ 1095 /* --- Begin dispatch vector table definition --- */
1089 /* --- End dispatch vector table definition --- */ 1096 /* --- End dispatch vector table definition --- */
1090 1097
1257 #define pblock_dup INTpblock_dup 1264 #define pblock_dup INTpblock_dup
1258 #define pblock_pb2env INTpblock_pb2env 1265 #define pblock_pb2env INTpblock_pb2env
1259 #define pblock_fr INTpblock_fr 1266 #define pblock_fr INTpblock_fr
1260 #define pblock_replace INTpblock_replace 1267 #define pblock_replace INTpblock_replace
1261 1268
1269
1270 // pool
1271 NSAPI_PUBLIC pool_handle_t *INTpool_create(void);
1272
1273 NSAPI_PUBLIC void *INTpool_mark(pool_handle_t *pool_handle);
1274
1275 NSAPI_PUBLIC void INTpool_recycle(pool_handle_t *pool_handle, void *mark);
1276
1277 NSAPI_PUBLIC void INTpool_destroy(pool_handle_t *pool_handle);
1278
1279 NSAPI_PUBLIC int INTpool_enabled(void);
1280
1281 NSAPI_PUBLIC void *INTpool_malloc(pool_handle_t *pool_handle, size_t size );
1282
1283 NSAPI_PUBLIC void INTpool_free(pool_handle_t *pool_handle, void *ptr );
1284
1285 NSAPI_PUBLIC
1286 void *INTpool_calloc(pool_handle_t *pool_handle, size_t nelem, size_t elsize);
1287
1288 NSAPI_PUBLIC
1289 void *INTpool_realloc(pool_handle_t *pool_handle, void *ptr, size_t size );
1290
1291 NSAPI_PUBLIC
1292 char *INTpool_strdup(pool_handle_t *pool_handle, const char *orig_str );
1293
1294 #define pool_create INTpool_create
1295 #define pool_mark INTpool_mark
1296 #define pool_recycle INTpool_recycle
1297 #define pool_destroy INTpool_destroy
1298 #define pool_enabled INTpool_enabled
1299 #define pool_malloc INTpool_malloc
1300 #define pool_free INTpool_free
1301 #define pool_calloc INTpool_calloc
1302 #define pool_realloc INTpool_realloc
1303 #define pool_strdup INTpool_strdup
1304
1262 // func util functions 1305 // func util functions
1263 FuncStruct* func_resolve(pblock *pb, Session *sn, Request *rq); 1306 FuncStruct* func_resolve(pblock *pb, Session *sn, Request *rq);
1264 int func_exec (pblock *pb, Session *sn, Request *rq); 1307 int func_exec (pblock *pb, Session *sn, Request *rq);
1265 1308
1266 1309
1321 NSAPI_PUBLIC int system_fclose(SYS_FILE fd); 1364 NSAPI_PUBLIC int system_fclose(SYS_FILE fd);
1322 1365
1323 NSAPI_PUBLIC int util_errno2status(int errno_value); 1366 NSAPI_PUBLIC int util_errno2status(int errno_value);
1324 #define util_errno2status util_errno2status 1367 #define util_errno2status util_errno2status
1325 1368
1369
1370 // threadpool
1371 threadpool_t* threadpool_new(int n);
1372 void* threadpool_func(void *data);
1373 threadpool_job* threadpool_get_job(threadpool_t *pool);
1374 void threadpool_run(threadpool_t *pool, job_callback_f func, void *data);
1326 1375
1327 /* end new macro and function definitions */ 1376 /* end new macro and function definitions */
1328 1377
1329 #define SYS_STDERR STDERR_FILENO 1378 #define SYS_STDERR STDERR_FILENO
1330 1379

mercurial