equal
deleted
inserted
replaced
29 #endif |
29 #endif |
30 |
30 |
31 #if !defined(__NIFVAR_H__) |
31 #if !defined(__NIFVAR_H__) |
32 #include <nifvar.h> |
32 #include <nifvar.h> |
33 #endif |
33 #endif |
34 |
34 #include <in6_if.h> |
35 // Feature Flags |
35 // Feature Flags |
36 |
36 |
37 /** |
37 /** |
38 Is a loopback interface |
38 Is a loopback interface |
39 @internalAll |
39 @internalAll |
146 /** Retrieve IAP and NID information |
146 /** Retrieve IAP and NID information |
147 * |
147 * |
148 * @internalTechnology |
148 * @internalTechnology |
149 */ |
149 */ |
150 const TUint KSoIfGetConnectionInfo = 0xf001; // Retrieve IAP and NID information |
150 const TUint KSoIfGetConnectionInfo = 0xf001; // Retrieve IAP and NID information |
151 |
|
152 /** |
|
153 @internalComponent |
|
154 */ |
|
155 const TUint KMaxInterfaceName=32; |
|
156 |
|
157 /** |
|
158 * Holds the name of a network interface. |
|
159 * |
|
160 * This is used in TSoIfInfo. |
|
161 * |
|
162 * @internalTechnology |
|
163 */ |
|
164 typedef TBuf<KMaxInterfaceName> TInterfaceName; |
|
165 |
151 |
166 class TInetIfConfig |
152 class TInetIfConfig |
167 // Information which allows IP to enter route table entries |
153 // Information which allows IP to enter route table entries |
168 /** |
154 /** |
169 * Describes the IP routing options for a network interface. |
155 * Describes the IP routing options for a network interface. |
186 TInetAddr iNameSer1; |
172 TInetAddr iNameSer1; |
187 /** IP secondary name server (if any). */ |
173 /** IP secondary name server (if any). */ |
188 TInetAddr iNameSer2; |
174 TInetAddr iNameSer2; |
189 }; |
175 }; |
190 |
176 |
191 class TSoIfInfo |
|
192 // Socket option structure for KSoIfInfo |
|
193 /** |
|
194 * Current network interface operation parameters. |
|
195 * |
|
196 * It is returned by RSocket::GetOpt(), when that function is called with anOptionLevel |
|
197 * set to KSOLInterface and anOptionName set to KSoIfInfo. |
|
198 * |
|
199 * @internalTechnology |
|
200 */ |
|
201 { |
|
202 public: |
|
203 /** Feature flags. Possible values are defined in in_iface.h. */ |
|
204 TUint iFeatures; // Feature flags |
|
205 /** Maximum transmission unit. */ |
|
206 TInt iMtu; // Max frame size |
|
207 /** An approximation of the interface speed in Kbps. */ |
|
208 TInt iSpeedMetric; // Indication of performance, approx to Kbps |
|
209 /** Interface protocol name, ipcp::\<port\>. */ |
|
210 TInterfaceName iName; |
|
211 }; |
|
212 |
|
213 class TSoIfHardwareAddr |
177 class TSoIfHardwareAddr |
214 // Socket option structure for KSoIfHardwareAddr |
178 // Socket option structure for KSoIfHardwareAddr |
215 /** |
179 /** |
216 * An interface's local hardware address. |
180 * An interface's local hardware address. |
217 * |
181 * |
223 public: |
187 public: |
224 /** Local hardware address. */ |
188 /** Local hardware address. */ |
225 TSockAddr iHardwareAddr; |
189 TSockAddr iHardwareAddr; |
226 }; |
190 }; |
227 |
191 |
228 class TSoIfConfigBase |
|
229 /** |
|
230 * Base class for TSoInetIfConfig, which simply identifies the protocol family |
|
231 * using the interface. |
|
232 * |
|
233 * @internalComponent |
|
234 */ |
|
235 { |
|
236 public: |
|
237 /** The protocol family, e.g. KAfInet. */ |
|
238 TUint iFamily; |
|
239 }; |
|
240 |
|
241 class TSoInetIfConfig : public TSoIfConfigBase |
192 class TSoInetIfConfig : public TSoIfConfigBase |
242 /** |
193 /** |
243 * Describes the current interface routing configuration. |
194 * Describes the current interface routing configuration. |
244 * |
195 * |
245 * It is returned by RSocket::GetOpt(), when this function is called with anOptionLevel |
196 * It is returned by RSocket::GetOpt(), when this function is called with anOptionLevel |