]> git.proxmox.com Git - mirror_frr.git/blobdiff - zebra/if_netlink.h
Merge pull request #5789 from donaldsharp/bgp_ebgp_reason
[mirror_frr.git] / zebra / if_netlink.h
index 6fa39ccab24ee9b53b5a184797d8f94a5983167e..29fd2aca354dd045c230b15fbd836f84feba8bca 100644 (file)
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License
- * along with GNU Zebra; see the file COPYING.  If not, write to the Free
- * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
- * 02111-1307, USA.
+ * You should have received a copy of the GNU General Public License along
+ * with this program; see the file COPYING; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
 #ifndef _ZEBRA_IF_NETLINK_H
 
 #ifdef HAVE_NETLINK
 
-extern int netlink_interface_addr (struct sockaddr_nl *snl,
-                                   struct nlmsghdr *h, ns_id_t ns_id, int startup);
-extern int netlink_link_change (struct sockaddr_nl *snl, struct nlmsghdr *h,
-                                ns_id_t ns_id, int startup);
-extern int interface_lookup_netlink (struct zebra_ns *zns);
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern int netlink_interface_addr(struct nlmsghdr *h, ns_id_t ns_id,
+                                 int startup);
+extern int netlink_link_change(struct nlmsghdr *h, ns_id_t ns_id, int startup);
+extern int interface_lookup_netlink(struct zebra_ns *zns);
+
+/*
+ * Set protodown status of interface.
+ *
+ * ifp
+ *    Interface to set protodown on.
+ *
+ * down
+ *    If true, set protodown on. If false, set protodown off.
+ *
+ * Returns:
+ *    0
+ */
+int netlink_protodown(struct interface *ifp, bool down);
+
+#ifdef __cplusplus
+}
+#endif
 
 #endif /* HAVE_NETLINK */