summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Stapp <mjs@voltanet.io>2018-08-06 16:19:45 -0400
committerMark Stapp <mjs@voltanet.io>2018-10-25 08:34:30 -0400
commit1bcea841b12f27b694da9b25c17c5a2d286404c3 (patch)
treea5efc64c231e2e0cc90174c1fcec2219dc4cbc07
parentfe2c53d4ea87c63762547fdee42ae49e1577a681 (diff)
zebra: netlink fuzzing path correction
Correct use of netlink_parse_info() in the netlink fuzzing path. Also clarify a couple of comments about pthreads. Signed-off-by: Mark Stapp <mjs@voltanet.io>
-rw-r--r--zebra/kernel_netlink.c8
-rw-r--r--zebra/zebra_dplane.c6
-rw-r--r--zebra/zebra_rib.c2
3 files changed, 12 insertions, 4 deletions
diff --git a/zebra/kernel_netlink.c b/zebra/kernel_netlink.c
index 08219924fb..0a58c2e262 100644
--- a/zebra/kernel_netlink.c
+++ b/zebra/kernel_netlink.c
@@ -314,11 +314,17 @@ bool netlink_read;
*/
void netlink_read_init(const char *fname)
{
+ struct zebra_dplane_info dp_info;
+
snprintf(netlink_fuzz_file, MAXPATHLEN, "%s", fname);
/* Creating this fake socket for testing purposes */
struct zebra_ns *zns = zebra_ns_lookup(NS_DEFAULT);
- netlink_parse_info(netlink_information_fetch, &zns->netlink, zns, 1, 0);
+ /* Capture key info from zns struct */
+ zebra_dplane_info_from_zns(&dp_info, zns, false);
+
+ netlink_parse_info(netlink_information_fetch, &zns->netlink,
+ &dp_info, 1, 0);
}
/**
diff --git a/zebra/zebra_dplane.c b/zebra/zebra_dplane.c
index 8fec9fbce7..7bc623fdf0 100644
--- a/zebra/zebra_dplane.c
+++ b/zebra/zebra_dplane.c
@@ -740,7 +740,7 @@ int dplane_provider_register(const char *name,
}
if (prio <= DPLANE_PRIO_NONE ||
- prio >= DPLANE_PRIO_LAST) {
+ prio > DPLANE_PRIO_LAST) {
ret = EINVAL;
goto done;
}
@@ -798,7 +798,9 @@ static void zebra_dplane_init_internal(struct zebra_t *zebra)
/* TODO -- register kernel 'provider' during init */
- /* TODO -- using zebra core event thread temporarily */
+ /* TODO -- start dataplane pthread. We're using the zebra
+ * core/main thread temporarily
+ */
zdplane_g.dg_master = zebra->master;
}
diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c
index b89d285118..964885f47e 100644
--- a/zebra/zebra_rib.c
+++ b/zebra/zebra_rib.c
@@ -3305,7 +3305,7 @@ static int rib_process_dplane_results(struct thread *thread)
/*
* Results are returned from the dataplane subsystem, in the context of
- * the dataplane thread. We enqueue the results here for processing by
+ * the dataplane pthread. We enqueue the results here for processing by
* the main thread later.
*/
static int rib_dplane_results(dplane_ctx_h ctx)