Infiniband.cc: In member function ‘int Infiniband::recv_msg(CephContext*, int, IBSYNMsg&)’:
Infiniband.cc:883:86: warning: format ‘%x’ expects argument of type ‘unsigned int*’, but argument 3 has type ‘uint16_t* {aka short unsigned int*}’ [-Wformat=]
sscanf(msg, "%x:%x:%x:%x:%s", &(im.lid), &(im.qpn), &(im.psn),
&(im.peer_qpn),gid);
Signed-off-by: Amir Vadai <amir@vadai.me>
ldout(cct, 1) << __func__ << " got bad length (" << r << "): " << cpp_strerror(errno) << dendl;
r = -EINVAL;
} else { // valid message
- sscanf(msg, "%x:%x:%x:%x:%s", &(im.lid), &(im.qpn), &(im.psn), &(im.peer_qpn),gid);
+ int tmp;
+
+ sscanf(msg, "%x:%x:%x:%x:%s", &tmp, &(im.qpn), &(im.psn), &(im.peer_qpn),gid);
+ im.lid = tmp;
wire_gid_to_gid(gid, &(im.gid));
ldout(cct, 5) << __func__ << " recevd: " << im.lid << ", " << im.qpn << ", " << im.psn << ", " << im.peer_qpn << ", " << gid << dendl;
}