Location:
in_sock.h
class TSoInetIfQuery;
Interface query.
Used with interface query options:
Only GetOption for KSolInetIfQuery is supported. It returns information about the selected interface. The option name determines the input field in the TSoInetIfQuery, which is used as a key for locating the interface.
Returns, KErrNotFound, if interface is not found
Returns, KErrNone, if interface is located, and fills fields from the interface with following logic
iDstAddr: not touched, left as is
iSrcAddr is result of the Select Source Address algorithm for the interface using the iDstAddr as input. If there is no valid source address, the value will be KAFUnspec.
iIndex is loaded with the interface index of the interface
iName is loaded from the name of the interface
iIsUp is set 1, if interface has CNifIfBase pointer attached, and 0 otherwise.
For example, if QueryByDstAddr for specified destination address results iIsUp == 1, then there is an interface and route for that destination. iIsUp == 0, means that trying to connect to the address will most likely activate a netdial/interface link startup phase.
Defined in TSoInetIfQuery
:
iDstAddr
, iIndex
, iIsUp
, iName
, iSrcAddr
, iZone
TInetAddr iDstAddr;
Destination address.
input: If the option is KSoInetIfQueryByDstAddr
, select interface by finding a route for this address; otherwise, ignored.
output: not changed.
Note: On returning interface information, regardless of the option used, the content of this is used to select a matching
source address (iSrcAddr
).
TInetAddr iSrcAddr;
Source address.
input: If the option is KSoInetIfQueryBySrcAddr
, select interface by source address; otherwise, ignored.
output: The result of the source address selection algorithm based on the content of the iDstAddr
.
TUint32 iIndex;
Interface Index.
input: If the option is KSoInetIfQueryByIndex
, select interface by this interface index; otherwise, ignored.
output: The interface index the located interface. (always same as iZone[0] in 7.0s).
TName iName;
Interface name.
input: If the option is KSoInetIfQueryByName
, select interface by this name; otherwise, ignored.
output: The name of the located interface.
TUint iIsUp;
Flag that is set to 1 if the network interface is attached.
input: ignored
output: set as indicated.
TInetScopeIds iZone;
Scope Id Vector (iZone[0] = Interface Index, iZone[1] = IAP ID, iZone[15] = Network ID).
input: ignored
output: The scope id vector