4 #include "build_check.h"
9 * The API side NAL declarations
12 #include <portals/types.h>
18 typedef struct nal_t nal_t;
24 int *timeout; /* for libp30api users */
25 int (*forward) (nal_t * nal, int index, /* Function ID */
26 void *args, size_t arg_len, void *ret, size_t ret_len);
28 int (*shutdown) (nal_t * nal, int interface);
30 int (*validate) (nal_t * nal, void *base, size_t extent);
32 int (*yield) (nal_t * nal, unsigned long *flags, int milliseconds);
34 void (*lock) (nal_t * nal, unsigned long *flags);
36 void (*unlock) (nal_t * nal, unsigned long *flags);
39 typedef nal_t *(ptl_interface_t) (int, ptl_pt_index_t, ptl_ac_index_t, ptl_pid_t requested_pid);
40 extern nal_t *PTL_IFACE_IP(int, ptl_pt_index_t, ptl_ac_index_t, ptl_pid_t requested_pid);
41 extern nal_t *PTL_IFACE_MYR(int, ptl_pt_index_t, ptl_ac_index_t, ptl_pid_t requested_pid);
43 extern nal_t *ptl_hndl2nal(ptl_handle_any_t * any);
45 #ifndef PTL_IFACE_DEFAULT
46 #define PTL_IFACE_DEFAULT (PTL_IFACE_IP)