Add a function to access the Target Address field of Neighbor Advertisements.
Signed-off-by: Beniamino Galvani bgalvani@redhat.com --- include/ndp.h | 1 + libndp/libndp.c | 13 +++++++++++++ 2 files changed, 14 insertions(+)
diff --git a/include/ndp.h b/include/ndp.h index c3e04df..c41cacd 100644 --- a/include/ndp.h +++ b/include/ndp.h @@ -114,6 +114,7 @@ void ndp_msgna_flag_solicited_set(struct ndp_msgna *msgna, bool flag_solicited); bool ndp_msgna_flag_override(struct ndp_msgna *msgna); void ndp_msgna_flag_override_set(struct ndp_msgna *msgna, bool flag_override); +struct in6_addr *ndp_msgna_target_address(struct ndp_msgna *msgna);
enum ndp_msg_opt_type { NDP_MSG_OPT_SLLADDR, /* Source Link-layer Address */ diff --git a/libndp/libndp.c b/libndp/libndp.c index 8d75ad1..c7273f2 100644 --- a/libndp/libndp.c +++ b/libndp/libndp.c @@ -1210,6 +1210,19 @@ void ndp_msgna_flag_override_set(struct ndp_msgna *msgna, bool flag_override) msgna->na->nd_na_flags_reserved &= ~ND_NA_FLAG_OVERRIDE; }
+/** + * ndp_msgna_target_address: + * @msgna: NA message structure + * + * Get the Target Address. + * + * Returns: the target address. + **/ +NDP_EXPORT +struct in6_addr *ndp_msgna_target_address(struct ndp_msgna *msgna) +{ + return &msgna->na->nd_na_target; +}
/** * SECTION: msg_opt infrastructure