Lines Matching refs:hook
95 typedef int ng_newhook_t(node_p node, hook_p hook, const char *name);
97 typedef int ng_connect_t(hook_p hook);
99 typedef int ng_rcvdata_t(hook_p hook, item_p item);
100 typedef int ng_disconnect_t(hook_p hook);
101 typedef int ng_rcvitem (node_p node, hook_p hook, item_p item);
140 void ng_unref_hook(hook_p hook); /* don't move this */
141 #define _NG_HOOK_REF(hook) refcount_acquire(&(hook)->hk_refs) argument
142 #define _NG_HOOK_NAME(hook) ((hook)->hk_name) argument
143 #define _NG_HOOK_UNREF(hook) ng_unref_hook(hook) argument
144 #define _NG_HOOK_SET_PRIVATE(hook, val) do {(hook)->hk_private = val;} while (0) argument
145 #define _NG_HOOK_SET_RCVMSG(hook, val) do {(hook)->hk_rcvmsg = val;} while (0) argument
146 #define _NG_HOOK_SET_RCVDATA(hook, val) do {(hook)->hk_rcvdata = val;} while (0) argument
147 #define _NG_HOOK_PRIVATE(hook) ((hook)->hk_private) argument
148 #define _NG_HOOK_NOT_VALID(hook) ((hook)->hk_flags & HK_INVALID) argument
149 #define _NG_HOOK_IS_VALID(hook) (!((hook)->hk_flags & HK_INVALID)) argument
150 #define _NG_HOOK_NODE(hook) ((hook)->hk_node) /* only rvalue! */ argument
151 #define _NG_HOOK_PEER(hook) ((hook)->hk_peer) /* only rvalue! */ argument
152 #define _NG_HOOK_FORCE_WRITER(hook) \ argument
153 do { hook->hk_flags |= HK_FORCE_WRITER; } while (0)
154 #define _NG_HOOK_FORCE_QUEUE(hook) do { hook->hk_flags |= HK_QUEUE; } while (0) argument
155 #define _NG_HOOK_SET_TO_INBOUND(hook) \ argument
156 do { hook->hk_flags |= HK_TO_INBOUND; } while (0)
157 #define _NG_HOOK_HI_STACK(hook) do { hook->hk_flags |= HK_HI_STACK; } while (0) argument
160 #define NG_PEER_NODE(hook) NG_HOOK_NODE(NG_HOOK_PEER(hook)) argument
161 #define NG_PEER_HOOK_NAME(hook) NG_HOOK_NAME(NG_HOOK_PEER(hook)) argument
162 #define NG_PEER_NODE_NAME(hook) NG_NODE_NAME(NG_PEER_NODE(hook)) argument
166 void dumphook (hook_p hook, char *file, int line);
167 static __inline void _chkhook(hook_p hook, char *file, int line);
168 static __inline void _ng_hook_ref(hook_p hook, char * file, int line);
169 static __inline char * _ng_hook_name(hook_p hook, char * file, int line);
170 static __inline void _ng_hook_unref(hook_p hook, char * file, int line);
171 static __inline void _ng_hook_set_private(hook_p hook,
173 static __inline void _ng_hook_set_rcvmsg(hook_p hook,
175 static __inline void _ng_hook_set_rcvdata(hook_p hook,
177 static __inline void * _ng_hook_private(hook_p hook, char * file, int line);
178 static __inline int _ng_hook_not_valid(hook_p hook, char * file, int line);
179 static __inline int _ng_hook_is_valid(hook_p hook, char * file, int line);
180 static __inline node_p _ng_hook_node(hook_p hook, char * file, int line);
181 static __inline hook_p _ng_hook_peer(hook_p hook, char * file, int line);
182 static __inline void _ng_hook_force_writer(hook_p hook, char * file,
184 static __inline void _ng_hook_force_queue(hook_p hook, char * file,
186 static __inline void _ng_hook_set_to_inbound(hook_p hook, char * file,
190 _chkhook(hook_p hook, char *file, int line) in _chkhook() argument
192 if (hook->hk_magic != HK_MAGIC) { in _chkhook()
194 dumphook(hook, file, line); in _chkhook()
196 hook->lastline = line; in _chkhook()
197 hook->lastfile = file; in _chkhook()
201 _ng_hook_ref(hook_p hook, char * file, int line) in _ng_hook_ref() argument
203 _chkhook(hook, file, line); in _ng_hook_ref()
204 _NG_HOOK_REF(hook); in _ng_hook_ref()
208 _ng_hook_name(hook_p hook, char * file, int line) in _ng_hook_name() argument
210 _chkhook(hook, file, line); in _ng_hook_name()
211 return (_NG_HOOK_NAME(hook)); in _ng_hook_name()
215 _ng_hook_unref(hook_p hook, char * file, int line) in _ng_hook_unref() argument
217 _chkhook(hook, file, line); in _ng_hook_unref()
218 _NG_HOOK_UNREF(hook); in _ng_hook_unref()
222 _ng_hook_set_private(hook_p hook, void *val, char * file, int line) in _ng_hook_set_private() argument
224 _chkhook(hook, file, line); in _ng_hook_set_private()
225 _NG_HOOK_SET_PRIVATE(hook, val); in _ng_hook_set_private()
229 _ng_hook_set_rcvmsg(hook_p hook, ng_rcvmsg_t *val, char * file, int line) in _ng_hook_set_rcvmsg() argument
231 _chkhook(hook, file, line); in _ng_hook_set_rcvmsg()
232 _NG_HOOK_SET_RCVMSG(hook, val); in _ng_hook_set_rcvmsg()
236 _ng_hook_set_rcvdata(hook_p hook, ng_rcvdata_t *val, char * file, int line) in _ng_hook_set_rcvdata() argument
238 _chkhook(hook, file, line); in _ng_hook_set_rcvdata()
239 _NG_HOOK_SET_RCVDATA(hook, val); in _ng_hook_set_rcvdata()
243 _ng_hook_private(hook_p hook, char * file, int line) in _ng_hook_private() argument
245 _chkhook(hook, file, line); in _ng_hook_private()
246 return (_NG_HOOK_PRIVATE(hook)); in _ng_hook_private()
250 _ng_hook_not_valid(hook_p hook, char * file, int line) in _ng_hook_not_valid() argument
252 _chkhook(hook, file, line); in _ng_hook_not_valid()
253 return (_NG_HOOK_NOT_VALID(hook)); in _ng_hook_not_valid()
257 _ng_hook_is_valid(hook_p hook, char * file, int line) in _ng_hook_is_valid() argument
259 _chkhook(hook, file, line); in _ng_hook_is_valid()
260 return (_NG_HOOK_IS_VALID(hook)); in _ng_hook_is_valid()
264 _ng_hook_node(hook_p hook, char * file, int line) in _ng_hook_node() argument
266 _chkhook(hook, file, line); in _ng_hook_node()
267 return (_NG_HOOK_NODE(hook)); in _ng_hook_node()
271 _ng_hook_peer(hook_p hook, char * file, int line) in _ng_hook_peer() argument
273 _chkhook(hook, file, line); in _ng_hook_peer()
274 return (_NG_HOOK_PEER(hook)); in _ng_hook_peer()
278 _ng_hook_force_writer(hook_p hook, char * file, int line) in _ng_hook_force_writer() argument
280 _chkhook(hook, file, line); in _ng_hook_force_writer()
281 _NG_HOOK_FORCE_WRITER(hook); in _ng_hook_force_writer()
285 _ng_hook_force_queue(hook_p hook, char * file, int line) in _ng_hook_force_queue() argument
287 _chkhook(hook, file, line); in _ng_hook_force_queue()
288 _NG_HOOK_FORCE_QUEUE(hook); in _ng_hook_force_queue()
292 _ng_hook_set_to_inbound(hook_p hook, char * file, int line) in _ng_hook_set_to_inbound() argument
294 _chkhook(hook, file, line); in _ng_hook_set_to_inbound()
295 _NG_HOOK_SET_TO_INBOUND(hook); in _ng_hook_set_to_inbound()
299 _ng_hook_hi_stack(hook_p hook, char * file, int line) in _ng_hook_hi_stack() argument
301 _chkhook(hook, file, line); in _ng_hook_hi_stack()
302 _NG_HOOK_HI_STACK(hook); in _ng_hook_hi_stack()
305 #define NG_HOOK_REF(hook) _ng_hook_ref(hook, _NN_) argument
306 #define NG_HOOK_NAME(hook) _ng_hook_name(hook, _NN_) argument
307 #define NG_HOOK_UNREF(hook) _ng_hook_unref(hook, _NN_) argument
308 #define NG_HOOK_SET_PRIVATE(hook, val) _ng_hook_set_private(hook, val, _NN_) argument
309 #define NG_HOOK_SET_RCVMSG(hook, val) _ng_hook_set_rcvmsg(hook, val, _NN_) argument
310 #define NG_HOOK_SET_RCVDATA(hook, val) _ng_hook_set_rcvdata(hook, val, _NN_) argument
311 #define NG_HOOK_PRIVATE(hook) _ng_hook_private(hook, _NN_) argument
312 #define NG_HOOK_NOT_VALID(hook) _ng_hook_not_valid(hook, _NN_) argument
313 #define NG_HOOK_IS_VALID(hook) _ng_hook_is_valid(hook, _NN_) argument
314 #define NG_HOOK_NODE(hook) _ng_hook_node(hook, _NN_) argument
315 #define NG_HOOK_PEER(hook) _ng_hook_peer(hook, _NN_) argument
316 #define NG_HOOK_FORCE_WRITER(hook) _ng_hook_force_writer(hook, _NN_) argument
317 #define NG_HOOK_FORCE_QUEUE(hook) _ng_hook_force_queue(hook, _NN_) argument
318 #define NG_HOOK_SET_TO_INBOUND(hook) _ng_hook_set_to_inbound(hook, _NN_) argument
319 #define NG_HOOK_HI_STACK(hook) _ng_hook_hi_stack(hook, _NN_) argument
323 #define NG_HOOK_REF(hook) _NG_HOOK_REF(hook) argument
324 #define NG_HOOK_NAME(hook) _NG_HOOK_NAME(hook) argument
325 #define NG_HOOK_UNREF(hook) _NG_HOOK_UNREF(hook) argument
326 #define NG_HOOK_SET_PRIVATE(hook, val) _NG_HOOK_SET_PRIVATE(hook, val) argument
327 #define NG_HOOK_SET_RCVMSG(hook, val) _NG_HOOK_SET_RCVMSG(hook, val) argument
328 #define NG_HOOK_SET_RCVDATA(hook, val) _NG_HOOK_SET_RCVDATA(hook, val) argument
329 #define NG_HOOK_PRIVATE(hook) _NG_HOOK_PRIVATE(hook) argument
330 #define NG_HOOK_NOT_VALID(hook) _NG_HOOK_NOT_VALID(hook) argument
331 #define NG_HOOK_IS_VALID(hook) _NG_HOOK_IS_VALID(hook) argument
332 #define NG_HOOK_NODE(hook) _NG_HOOK_NODE(hook) argument
333 #define NG_HOOK_PEER(hook) _NG_HOOK_PEER(hook) argument
334 #define NG_HOOK_FORCE_WRITER(hook) _NG_HOOK_FORCE_WRITER(hook) argument
335 #define NG_HOOK_FORCE_QUEUE(hook) _NG_HOOK_FORCE_QUEUE(hook) argument
336 #define NG_HOOK_SET_TO_INBOUND(hook) _NG_HOOK_SET_TO_INBOUND(hook) argument
337 #define NG_HOOK_HI_STACK(hook) _NG_HOOK_HI_STACK(hook) argument
424 typedef int ng_fn_eachhook(hook_p hook, void* arg);
569 hook_p hook; in _ng_node_foreach_hook() local
571 _NG_NODE_FOREACH_HOOK(node, fn, arg, hook); in _ng_node_foreach_hook()
572 return (hook); in _ng_node_foreach_hook()
619 typedef void ng_item_fn(node_p node, hook_p hook, void *arg1, int arg2);
620 typedef int ng_item_fn2(node_p node, struct ng_item *item, hook_p hook);
881 #define NG_FWD_ITEM_HOOK_FLAGS(error, item, hook, flags) \ argument
884 ng_address_hook(NULL, (item), (hook), NG_NOFLAGS); \
891 #define NG_FWD_ITEM_HOOK(error, item, hook) \ argument
892 NG_FWD_ITEM_HOOK_FLAGS(error, item, hook, NG_NOFLAGS)
901 #define NG_FWD_NEW_DATA_FLAGS(error, item, hook, m, flags) \ argument
905 NG_FWD_ITEM_HOOK_FLAGS(error, item, hook, flags); \
907 #define NG_FWD_NEW_DATA(error, item, hook, m) \ argument
908 NG_FWD_NEW_DATA_FLAGS(error, item, hook, m, NG_NOFLAGS)
914 #define NG_SEND_DATA_FLAGS(error, hook, m, flags) \ argument
918 NG_FWD_ITEM_HOOK_FLAGS(error, _item, hook, flags);\
925 #define NG_SEND_DATA_ONLY(error, hook, m) \ argument
926 NG_SEND_DATA_FLAGS(error, hook, m, NG_NOFLAGS)
928 #define NG_SEND_DATA(error, hook, m, x) \ argument
929 NG_SEND_DATA_FLAGS(error, hook, m, NG_NOFLAGS)
951 #define NG_SEND_MSG_HOOK(error, here, msg, hook, retaddr) \ argument
960 (hook), (retaddr))) == 0) { \
1004 #define NG_FWD_MSG_HOOK(error, here, item, hook, retaddr) \ argument
1007 (hook), (retaddr))) == 0) { \
1133 int ng_address_hook(node_p here, item_p item, hook_p hook, ng_ID_t retaddr);
1145 item_p ng_package_msg_self(node_p here, hook_p hook, struct ng_mesg *msg);
1147 int ng_rmhook_self(hook_p hook); /* if a node wants to kill a hook */
1151 int ng_send_fn(node_p node, hook_p hook, ng_item_fn *fn, void *arg1,
1153 int ng_send_fn1(node_p node, hook_p hook, ng_item_fn *fn, void *arg1,
1155 int ng_send_fn2(node_p node, hook_p hook, item_p pitem, ng_item_fn2 *fn,
1158 int ng_callout(struct callout *c, node_p node, hook_p hook, int ticks,