The first commit in this series re-factors the code which iterates through the system interfaces. The code used the ioctl SIOCGIFCONF, which only returns "running" interfaces. Restricting the enumeration to only "running" interfaces poses several problems. The problems are not solved by the first commit, but the third commit, "ibacm: Unable to resurrect an interface". As such, the first commit does not alter any functionality. The second commit is small fix in a debug print. The third commit is the new implementation of https://patchwork.kernel.org/patch/10748357, which was NAKed. This commit is now based on the netlink re-factoring from commit one. The forth commit aligns the use of interface names vs. interface aliases (label) with how the ip utility works. v1 -> v2: * Added r-b for 2nd and 4th commit * Incorporated review comments from Jason and Ira * Minor nits fixed by the author v2 -> v3: * Added Ira's r-b Håkon Bugge (4): ibacm: Replace ioctl with netlink ibacm: Print correct pkey ibacm: Unable to resurrect an interface ibacm: Use alias name when possible ibacm/CMakeLists.txt | 4 + ibacm/src/acm.c | 9 +- ibacm/src/acm_util.c | 244 +++++++++++++++++++++++-------------------- ibacm/src/acm_util.h | 5 +- 4 files changed, 149 insertions(+), 113 deletions(-) -- 2.20.1