ibacm: Record index for source and destination addresses
When processing a resolve route message, record what
index the source and destination addresses were located
at directly into the message. This replaces returning
pointers to the source and destination address that must
then be passed around.
When provider plug-in support is added in subsequent
patches, this will avoid pointer exchanges between the
core and provider code.
Fix a minor issue where the src_out field may be
uninitialized (value read from client message). Src_out
now becomes a boolean value, rather than an index. The
actual location for the output is specified as an index.
This change cleanups the call to acm_svr_select_src,
which selects a source address. It is only called when
a source is needed, which is explicitly determined by
seeing if src_out is set, rather than relying on a zero
src type field.