RTA_PAYLOAD(tb[IFLA_PHYS_SWITCH_ID]),
b1, sizeof(b1)));
}
+
+ if (tb[IFLA_PARENT_DEV_BUS_NAME]) {
+ print_string(PRINT_ANY,
+ "parentbus",
+ "parentbus %s ",
+ rta_getattr_str(tb[IFLA_PARENT_DEV_BUS_NAME]));
+ }
+
+ if (tb[IFLA_PARENT_DEV_NAME]) {
+ print_string(PRINT_ANY,
+ "parentdev",
+ "parentdev %s ",
+ rta_getattr_str(tb[IFLA_PARENT_DEV_NAME]));
+ }
}
if ((do_link || show_details) && tb[IFLA_IFALIAS]) {
{
if (iplink_have_newlink()) {
fprintf(stderr,
- "Usage: ip link add [link DEV] [ name ] NAME\n"
+ "Usage: ip link add [link DEV | parentdev NAME] [ name ] NAME\n"
" [ txqueuelen PACKETS ]\n"
" [ address LLADDR ]\n"
" [ broadcast LLADDR ]\n"
*argv);
addattr32(&req->n, sizeof(*req),
IFLA_GSO_MAX_SEGS, max_segs);
+ } else if (strcmp(*argv, "parentdev") == 0) {
+ NEXT_ARG();
+ addattr_l(&req->n, sizeof(*req), IFLA_PARENT_DEV_NAME,
+ *argv, strlen(*argv) + 1);
} else {
if (matches(*argv, "help") == 0)
usage();