usnic: don't use variadiatic macros

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
usnic: don't use unnamed unions

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
usnic: don't use 0-sized arrays

This type (struct usnic_ib_create_qp_resp) is not instantiated
directly -- it is only instantiated as a pointer, and therefore the
length of the resources array in the struct really doesn't matter.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>