1 /* 2 * netlink/route/link/inet6.h INET6 Link Module 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation version 2.1 7 * of the License. 8 * 9 * Copyright (c) 2014 Dan Williams <dcbw@redhat.com> 10 */ 11 12 #ifndef NETLINK_LINK_INET6_H_ 13 #define NETLINK_LINK_INET6_H_ 14 15 #include <netlink/netlink.h> 16 17 #ifdef __cplusplus 18 extern "C" { 19 #endif 20 21 const char * rtnl_link_inet6_addrgenmode2str (uint8_t mode, 22 char *buf, 23 size_t len); 24 25 uint8_t rtnl_link_inet6_str2addrgenmode (const char *mode); 26 27 extern int rtnl_link_inet6_get_token(struct rtnl_link *, 28 struct nl_addr **); 29 30 extern int rtnl_link_inet6_set_token(struct rtnl_link *, 31 struct nl_addr *); 32 33 extern int rtnl_link_inet6_get_addr_gen_mode(struct rtnl_link *, 34 uint8_t *); 35 36 extern int rtnl_link_inet6_set_addr_gen_mode(struct rtnl_link *, 37 uint8_t); 38 39 extern int rtnl_link_inet6_get_flags(struct rtnl_link *, 40 uint32_t *); 41 42 extern int rtnl_link_inet6_set_flags(struct rtnl_link *, 43 uint32_t); 44 45 /* Link Flags Translations */ 46 extern char * rtnl_link_inet6_flags2str(int, char *, size_t); 47 extern int rtnl_link_inet6_str2flags(const char *); 48 49 #ifdef __cplusplus 50 } 51 #endif 52 53 #endif 54