aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/netgraph/netgraph.h9
-rw-r--r--sys/netgraph/ng_base.c2
-rw-r--r--sys/netgraph/ng_bridge.c10
3 files changed, 15 insertions, 6 deletions
diff --git a/sys/netgraph/netgraph.h b/sys/netgraph/netgraph.h
index 7535472dc631..9cc298b38236 100644
--- a/sys/netgraph/netgraph.h
+++ b/sys/netgraph/netgraph.h
@@ -87,6 +87,13 @@ struct ng_item ;
typedef struct ng_item *item_p;
typedef struct ng_node *node_p;
typedef struct ng_hook *hook_p;
+typedef struct ng_item const *item_cp;
+typedef struct ng_hook const *hook_cp;
+#ifdef NETGRAPH_DEBUG
+typedef struct ng_node *node_cp; /* annotated during debug */
+#else /* NETGRAPH_DEBUG */
+typedef struct ng_node const *node_cp;
+#endif /* NETGRAPH_DEBUG */
/* node method definitions */
typedef int ng_constructor_t(node_p node);
@@ -1139,7 +1146,7 @@ int ng_make_node_common(struct ng_type *typep, node_p *nodep);
int ng_name_node(node_p node, const char *name);
node_p ng_name2noderef(node_p node, const char *name);
int ng_newtype(struct ng_type *tp);
-ng_ID_t ng_node2ID(node_p node);
+ng_ID_t ng_node2ID(node_cp node);
item_p ng_package_data(struct mbuf *m, int flags);
item_p ng_package_msg(struct ng_mesg *msg, int flags);
item_p ng_package_msg_self(node_p here, hook_p hook, struct ng_mesg *msg);
diff --git a/sys/netgraph/ng_base.c b/sys/netgraph/ng_base.c
index dadf86eb8dde..6ab39421b255 100644
--- a/sys/netgraph/ng_base.c
+++ b/sys/netgraph/ng_base.c
@@ -836,7 +836,7 @@ ng_ID2noderef(ng_ID_t ID)
}
ng_ID_t
-ng_node2ID(node_p node)
+ng_node2ID(node_cp node)
{
return (node ? NG_NODE_ID(node) : 0);
}
diff --git a/sys/netgraph/ng_bridge.c b/sys/netgraph/ng_bridge.c
index 4898a55f1463..d5b3b520a497 100644
--- a/sys/netgraph/ng_bridge.c
+++ b/sys/netgraph/ng_bridge.c
@@ -115,6 +115,7 @@ struct ng_bridge_link {
sendUnknown : 1;/* send unknown macs out */
struct ng_bridge_link_kernel_stats stats; /* link stats */
};
+typedef struct ng_bridge_link const *link_cp; /* read only access */
/* Per-node private data */
struct ng_bridge_private {
@@ -130,6 +131,7 @@ struct ng_bridge_private {
struct callout timer; /* one second periodic timer */
};
typedef struct ng_bridge_private *priv_p;
+typedef struct ng_bridge_private const *priv_cp; /* read only access */
/* Information about a host, stored in a hash table entry */
struct ng_bridge_hent {
@@ -149,12 +151,12 @@ static ng_rcvdata_t ng_bridge_rcvdata;
static ng_disconnect_t ng_bridge_disconnect;
/* Other internal functions */
-static struct ng_bridge_host *ng_bridge_get(priv_p priv, const u_char *addr);
+static struct ng_bridge_host *ng_bridge_get(priv_cp priv, const u_char *addr);
static int ng_bridge_put(priv_p priv, const u_char *addr, link_p link);
static void ng_bridge_rehash(priv_p priv);
static void ng_bridge_remove_hosts(priv_p priv, link_p link);
static void ng_bridge_timeout(node_p node, hook_p hook, void *arg1, int arg2);
-static const char *ng_bridge_nodename(node_p node);
+static const char *ng_bridge_nodename(node_cp node);
/* Ethernet broadcast */
static const u_char ng_bridge_bcast_addr[ETHER_ADDR_LEN] =
@@ -920,7 +922,7 @@ ng_bridge_disconnect(hook_p hook)
* Find a host entry in the table.
*/
static struct ng_bridge_host *
-ng_bridge_get(priv_p priv, const u_char *addr)
+ng_bridge_get(priv_cp priv, const u_char *addr)
{
const int bucket = HASH(addr, priv->hashMask);
struct ng_bridge_hent *hent;
@@ -1131,7 +1133,7 @@ ng_bridge_timeout(node_p node, hook_p hook, void *arg1, int arg2)
* Return node's "name", even if it doesn't have one.
*/
static const char *
-ng_bridge_nodename(node_p node)
+ng_bridge_nodename(node_cp node)
{
static char name[NG_NODESIZ];