• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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