• Home
  • Raw
  • Download

Lines Matching refs:link

41 static int veth_parse(struct rtnl_link *link, struct nlattr *data,  in veth_parse()  argument
46 struct rtnl_link *peer = link->l_info; in veth_parse()
84 static void veth_dump_line(struct rtnl_link *link, struct nl_dump_params *p) in veth_dump_line() argument
88 static void veth_dump_details(struct rtnl_link *link, struct nl_dump_params *p) in veth_dump_details() argument
90 struct rtnl_link *peer = link->l_info; in veth_dump_details()
118 static int veth_put_attrs(struct nl_msg *msg, struct rtnl_link *link) in veth_put_attrs() argument
120 struct rtnl_link *peer = link->l_info; in veth_put_attrs()
144 static int veth_alloc(struct rtnl_link *link) in veth_alloc() argument
150 if (link->l_info) in veth_alloc()
159 peer->l_info = link; in veth_alloc()
165 link->l_info = peer; in veth_alloc()
169 static void veth_free(struct rtnl_link *link) in veth_free() argument
171 struct rtnl_link *peer = link->l_info; in veth_free()
173 link->l_info = NULL; in veth_free()
196 #define IS_VETH_LINK_ASSERT(link) \ argument
197 if ((link)->l_info_ops != &veth_info_ops) { \
215 struct rtnl_link *link; in rtnl_link_veth_alloc() local
218 if (!(link = rtnl_link_alloc())) in rtnl_link_veth_alloc()
220 if ((err = rtnl_link_set_type(link, "veth")) < 0) { in rtnl_link_veth_alloc()
221 rtnl_link_put(link); in rtnl_link_veth_alloc()
225 return link; in rtnl_link_veth_alloc()
233 struct rtnl_link *rtnl_link_veth_get_peer(struct rtnl_link *link) in rtnl_link_veth_get_peer() argument
235 IS_VETH_LINK_ASSERT(link); in rtnl_link_veth_get_peer()
236 nl_object_get(OBJ_CAST(link->l_info)); in rtnl_link_veth_get_peer()
237 return link->l_info; in rtnl_link_veth_get_peer()
244 void rtnl_link_veth_release(struct rtnl_link *link) in rtnl_link_veth_release() argument
246 veth_free(link); in rtnl_link_veth_release()
247 rtnl_link_put(link); in rtnl_link_veth_release()
256 int rtnl_link_is_veth(struct rtnl_link *link) in rtnl_link_is_veth() argument
258 return link->l_info_ops && !strcmp(link->l_info_ops->io_name, "veth"); in rtnl_link_is_veth()
278 struct rtnl_link *link, *peer; in rtnl_link_veth_add() local
281 if (!(link = rtnl_link_veth_alloc())) in rtnl_link_veth_add()
283 peer = link->l_info; in rtnl_link_veth_add()
286 rtnl_link_set_name(link, name); in rtnl_link_veth_add()
291 err = rtnl_link_add(sock, link, NLM_F_CREATE | NLM_F_EXCL); in rtnl_link_veth_add()
293 rtnl_link_put(link); in rtnl_link_veth_add()