Add ib_resolve_noderecord_via wrapper similar to ib_resolve_portid_str_via
Signed-off-by: Sarat Kakarla <sarat.kaka...@oracle.com> --- include/infiniband/mad.h 2009-11-01 16:17:12.000000000 -0800 +++ ../libibmad-1.3.3.wrapper/include/infiniband/mad.h 2013-02-07 10:32:05.000000000 -0800 @@ -934,6 +934,8 @@ DEPRECATED; MAD_EXPORT int ib_resolve_self(ib_portid_t * portid, int *portnum, ibmad_gid_t * gid) DEPRECATED; +MAD_EXPORT int ib_resolve_noderecord_via(char *addr_str, + const struct ibmad_port *srcport); /* resolve.c new interface */ MAD_EXPORT int ib_resolve_smlid_via(ib_portid_t * sm_id, int timeout, --- src/libibmad.map 2009-10-29 18:18:01.000000000 -0700 +++ ../libibmad-1.3.3.wrapper/src/libibmad.map 2013-02-11 10:47:13.000000000 -0800 @@ -105,6 +105,7 @@ ib_resolve_gid_via; ib_resolve_portid_str_via; ib_resolve_self_via; + ib_resolve_noderecord_via; mad_field_name; bm_call_via; local: *; --- src/resolve.c 2009-11-01 16:17:12.000000000 -0800 +++ ../libibmad-1.3.3.wrapper/src/resolve.c 2013-02-11 10:46:10.000000000 -0800 @@ -226,3 +226,21 @@ { return ib_resolve_self_via(portid, portnum, gid, ibmp); } + +int ib_resolve_noderecord_via(char *addr_str, const struct ibmad_port *srcport) +{ + uint64_t guid; + ib_portid_t sm_id; + char buf[IB_SA_DATA_SIZE] = { 0 }; + + if (!(guid = strtoull(addr_str, 0, 0))) + return -1; + + if (ib_resolve_smlid_via(&sm_id, MAD_DEF_TIMEOUT_MS, srcport) < 0) + return -1; + + return ib_node_query_via(srcport, guid, &sm_id, buf); +} + + -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html