diff options
author | glebius <glebius@FreeBSD.org> | 2007-06-01 09:20:57 +0000 |
---|---|---|
committer | glebius <glebius@FreeBSD.org> | 2007-06-01 09:20:57 +0000 |
commit | 4623bf3eb19a3fc2581cc6506b9754427f5e3687 (patch) | |
tree | 0e90706106b12711f067d4a319e21922eaad453e | |
parent | a91466a709280533170342b8610ce73dde7de9ac (diff) | |
download | FreeBSD-src-4623bf3eb19a3fc2581cc6506b9754427f5e3687.zip FreeBSD-src-4623bf3eb19a3fc2581cc6506b9754427f5e3687.tar.gz |
Partially back out rev. 1.127, to restore broken functionality. This
should be redesigned, but better enter RELENG_7 with a working ngctl(8).
Agreed by: julian
-rw-r--r-- | sys/netgraph/ng_base.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sys/netgraph/ng_base.c b/sys/netgraph/ng_base.c index 0fe31f9..ebcc488 100644 --- a/sys/netgraph/ng_base.c +++ b/sys/netgraph/ng_base.c @@ -192,7 +192,7 @@ static ng_ID_t ng_decodeidname(const char *name); static int ngb_mod_event(module_t mod, int event, void *data); static void ng_worklist_remove(node_p node); static void ngintr(void); -static void ng_apply_item(node_p node, item_p item, int rw); +static int ng_apply_item(node_p node, item_p item, int rw); static void ng_flush_input_queue(struct ng_queue * ngq); static void ng_setisr(node_p node); static node_p ng_ID2noderef(ng_ID_t ID); @@ -2386,8 +2386,7 @@ ng_snd_item(item_p item, int flags) NGI_GET_NODE(item, node); /* zaps stored node */ - /* Don't report any errors. act as if it had been queued */ - ng_apply_item(node, item, rw); /* drops r/w lock when done */ + error = ng_apply_item(node, item, rw); /* drops r/w lock when done */ /* * If the node goes away when we remove the reference, @@ -2411,7 +2410,7 @@ ng_snd_item(item_p item, int flags) * It should contain all the information needed * to run it on the appropriate node/hook. */ -static void +static int ng_apply_item(node_p node, item_p item, int rw) { hook_p hook; @@ -2557,7 +2556,7 @@ ng_apply_item(node_p node, item_p item, int rw) if (apply != NULL) (*apply)(context, error); - return; + return (error); } /*********************************************************************** |