diff options
author | Stephen Hemminger <stephen@networkplumber.org> | 2018-11-15 14:36:24 -0800 |
---|---|---|
committer | Stephen Hemminger <stephen@networkplumber.org> | 2018-11-19 11:42:44 -0800 |
commit | 13530c46b5a8f3f1db64f10be49b40cc2a30e9b7 (patch) | |
tree | b9f201a604fd384d0b7015732bae716226eef5a9 | |
parent | 1d2fac4145047d4b16b4aedda14427d9699ac835 (diff) |
genl: remove dead code
The function genl_ctrl_resolve_family is defined but never used
in current code.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
-rw-r--r-- | genl/ctrl.c | 71 | ||||
-rw-r--r-- | genl/genl_utils.h | 2 |
2 files changed, 0 insertions, 73 deletions
diff --git a/genl/ctrl.c b/genl/ctrl.c index 6133336a..0fb464b0 100644 --- a/genl/ctrl.c +++ b/genl/ctrl.c @@ -38,77 +38,6 @@ static int usage(void) return -1; } -int genl_ctrl_resolve_family(const char *family) -{ - struct rtnl_handle rth; - int ret = 0; - struct { - struct nlmsghdr n; - struct genlmsghdr g; - char buf[4096]; - } req = { - .n.nlmsg_len = NLMSG_LENGTH(GENL_HDRLEN), - .n.nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK, - .n.nlmsg_type = GENL_ID_CTRL, - .g.cmd = CTRL_CMD_GETFAMILY, - }; - struct nlmsghdr *nlh = &req.n; - struct genlmsghdr *ghdr = &req.g; - struct nlmsghdr *answer = NULL; - - if (rtnl_open_byproto(&rth, 0, NETLINK_GENERIC) < 0) { - fprintf(stderr, "Cannot open generic netlink socket\n"); - exit(1); - } - - addattr_l(nlh, 128, CTRL_ATTR_FAMILY_NAME, family, strlen(family) + 1); - - if (rtnl_talk(&rth, nlh, &answer) < 0) { - fprintf(stderr, "Error talking to the kernel\n"); - goto errout; - } - - { - struct rtattr *tb[CTRL_ATTR_MAX + 1]; - int len = answer->nlmsg_len; - struct rtattr *attrs; - - if (answer->nlmsg_type != GENL_ID_CTRL) { - fprintf(stderr, "Not a controller message, nlmsg_len=%d " - "nlmsg_type=0x%x\n", answer->nlmsg_len, answer->nlmsg_type); - goto errout; - } - - if (ghdr->cmd != CTRL_CMD_NEWFAMILY) { - fprintf(stderr, "Unknown controller command %d\n", ghdr->cmd); - goto errout; - } - - len -= NLMSG_LENGTH(GENL_HDRLEN); - - if (len < 0) { - fprintf(stderr, "wrong controller message len %d\n", len); - free(answer); - return -1; - } - - attrs = (struct rtattr *) ((char *) answer + NLMSG_LENGTH(GENL_HDRLEN)); - parse_rtattr(tb, CTRL_ATTR_MAX, attrs, len); - - if (tb[CTRL_ATTR_FAMILY_ID] == NULL) { - fprintf(stderr, "Missing family id TLV\n"); - goto errout; - } - - ret = rta_getattr_u16(tb[CTRL_ATTR_FAMILY_ID]); - } - -errout: - free(answer); - rtnl_close(&rth); - return ret; -} - static void print_ctrl_cmd_flags(FILE *fp, __u32 fl) { fprintf(fp, "\n\t\tCapabilities (0x%x):\n ", fl); diff --git a/genl/genl_utils.h b/genl/genl_utils.h index cc1f3fb7..a8d433a9 100644 --- a/genl/genl_utils.h +++ b/genl/genl_utils.h @@ -13,6 +13,4 @@ struct genl_util int (*print_genlopt)(struct nlmsghdr *n, void *arg); }; -int genl_ctrl_resolve_family(const char *family); - #endif |