+/**
+ * adj_glean_update_rewrite
+ */
+void
+adj_glean_update_rewrite (adj_index_t adj_index)
+{
+ ip_adjacency_t *adj;
+
+ ASSERT(ADJ_INDEX_INVALID != adj_index);
+
+ adj = adj_get(adj_index);
+
+ vnet_rewrite_for_sw_interface(vnet_get_main(),
+ adj_fib_proto_2_nd(adj->ia_nh_proto),
+ adj->rewrite_header.sw_if_index,
+ adj_get_glean_node(adj->ia_nh_proto)->index,
+ VNET_REWRITE_FOR_SW_INTERFACE_ADDRESS_BROADCAST,
+ &adj->rewrite_header,
+ sizeof (adj->rewrite_data));
+}
+
+adj_index_t
+adj_glean_get (fib_protocol_t proto,
+ u32 sw_if_index)
+{
+ if (sw_if_index < vec_len(adj_gleans[proto]))
+ {
+ return (adj_gleans[proto][sw_if_index]);
+ }
+ return (ADJ_INDEX_INVALID);
+}
+