author | William Roberts <williamr@symbian.org> |
Wed, 31 Mar 2010 12:27:01 +0100 | |
branch | Symbian2 |
changeset 3 | e1b950c65cb4 |
parent 0 | 061f57f2323e |
permissions | -rw-r--r-- |
williamr@2 | 1 |
/** |
williamr@2 | 2 |
* Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). |
williamr@2 | 3 |
* All rights reserved. |
williamr@2 | 4 |
* This component and the accompanying materials are made available |
williamr@2 | 5 |
* under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members |
williamr@2 | 6 |
* which accompanies this distribution, and is available |
williamr@2 | 7 |
* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". |
williamr@2 | 8 |
* |
williamr@2 | 9 |
* Initial Contributors: |
williamr@2 | 10 |
* Nokia Corporation - initial contribution. |
williamr@2 | 11 |
* |
williamr@2 | 12 |
* Contributors: |
williamr@2 | 13 |
* |
williamr@2 | 14 |
* Description: |
williamr@2 | 15 |
* DNS queries and results classes inline functions implementation |
williamr@2 | 16 |
* |
williamr@2 | 17 |
* |
williamr@2 | 18 |
*/ |
williamr@2 | 19 |
|
williamr@2 | 20 |
|
williamr@2 | 21 |
|
williamr@2 | 22 |
|
williamr@2 | 23 |
|
williamr@2 | 24 |
/** |
williamr@2 | 25 |
@file dns_qry.inl |
williamr@2 | 26 |
*/ |
williamr@2 | 27 |
|
williamr@2 | 28 |
#ifndef __DNS_QRY_INL__ |
williamr@2 | 29 |
#define __DNS_QRY_INL__ |
williamr@2 | 30 |
|
williamr@2 | 31 |
|
williamr@2 | 32 |
inline TDnsQuery::TDnsQuery() |
williamr@2 | 33 |
/** |
williamr@2 | 34 |
Default constructor |
williamr@2 | 35 |
*/ |
williamr@2 | 36 |
{ |
williamr@2 | 37 |
iQryType = KDnsRRTypeInvalid; |
williamr@2 | 38 |
iQryClass = KDnsRRClassIN; // Internet class, default value |
williamr@2 | 39 |
} |
williamr@2 | 40 |
|
williamr@2 | 41 |
inline TDnsQuery::TDnsQuery(const TDesC8& aQryDomainName, TUint16 aType, TUint16 aClass/*=KDnsRRClassIN*/) |
williamr@2 | 42 |
/** |
williamr@2 | 43 |
Constructor |
williamr@2 | 44 |
|
williamr@2 | 45 |
@param aQryDomainName DNS query data (buffer) |
williamr@2 | 46 |
@param aType DNS query code |
williamr@2 | 47 |
@param aClass Internet class |
williamr@2 | 48 |
*/ |
williamr@2 | 49 |
{ |
williamr@2 | 50 |
iQryType = aType; |
williamr@2 | 51 |
iQryClass = aClass; // Internet class, default value |
williamr@2 | 52 |
iQryData.Copy(aQryDomainName); |
williamr@2 | 53 |
} |
williamr@2 | 54 |
|
williamr@2 | 55 |
inline TUint16 TDnsQuery::Type() const |
williamr@2 | 56 |
/** |
williamr@2 | 57 |
@return DNS RR type |
williamr@2 | 58 |
*/ |
williamr@2 | 59 |
{ |
williamr@2 | 60 |
return iQryType; |
williamr@2 | 61 |
} |
williamr@2 | 62 |
|
williamr@2 | 63 |
inline TUint16 TDnsQuery::Class() const |
williamr@2 | 64 |
/** |
williamr@2 | 65 |
@return DNS RR class |
williamr@2 | 66 |
*/ |
williamr@2 | 67 |
{ |
williamr@2 | 68 |
return iQryClass; |
williamr@2 | 69 |
} |
williamr@2 | 70 |
|
williamr@2 | 71 |
inline const TDesC8& TDnsQuery::Data() const |
williamr@2 | 72 |
/** |
williamr@2 | 73 |
@return const reference to the DNS query data |
williamr@2 | 74 |
*/ |
williamr@2 | 75 |
{ |
williamr@2 | 76 |
return iQryData; |
williamr@2 | 77 |
} |
williamr@2 | 78 |
|
williamr@2 | 79 |
inline void TDnsQuery::SetType(TUint16 aType) |
williamr@2 | 80 |
/** |
williamr@2 | 81 |
Sets the value of DNS RR type |
williamr@2 | 82 |
@param aType DNS RR type |
williamr@2 | 83 |
*/ |
williamr@2 | 84 |
{ |
williamr@2 | 85 |
iQryType = aType; |
williamr@2 | 86 |
} |
williamr@2 | 87 |
|
williamr@2 | 88 |
inline void TDnsQuery::SetClass(TUint16 aClass) |
williamr@2 | 89 |
/** |
williamr@2 | 90 |
Sets the value of DNS RR class |
williamr@2 | 91 |
@param aClass DNS RR class |
williamr@2 | 92 |
*/ |
williamr@2 | 93 |
{ |
williamr@2 | 94 |
iQryClass = aClass; |
williamr@2 | 95 |
} |
williamr@2 | 96 |
|
williamr@2 | 97 |
inline void TDnsQuery::SetData(const TDesC8& aData) |
williamr@2 | 98 |
/** |
williamr@2 | 99 |
Sets the value of the DNS query data |
williamr@2 | 100 |
@param aData const reference to the DNS query data |
williamr@2 | 101 |
*/ |
williamr@2 | 102 |
{ |
williamr@2 | 103 |
iQryData.Copy(aData); |
williamr@2 | 104 |
} |
williamr@2 | 105 |
|
williamr@2 | 106 |
|
williamr@2 | 107 |
//------------------------------------------------------------------------------------- |
williamr@2 | 108 |
|
williamr@2 | 109 |
inline TDnsQryRespBase::TDnsQryRespBase(TUint16 aRespType, TUint16 aRespClass) |
williamr@2 | 110 |
: iRespType(aRespType), iRespClass(aRespClass) |
williamr@2 | 111 |
/** |
williamr@2 | 112 |
Constructor |
williamr@2 | 113 |
|
williamr@2 | 114 |
@param aRespType RR type |
williamr@2 | 115 |
@param aRespClass RR Class |
williamr@2 | 116 |
*/ |
williamr@2 | 117 |
{ |
williamr@2 | 118 |
iRespTtl = 0; |
williamr@2 | 119 |
} |
williamr@2 | 120 |
|
williamr@2 | 121 |
inline TUint16 TDnsQryRespBase::RRType() const |
williamr@2 | 122 |
/** |
williamr@2 | 123 |
@return RR type from DNS response message |
williamr@2 | 124 |
*/ |
williamr@2 | 125 |
{ |
williamr@2 | 126 |
return iRespType; |
williamr@2 | 127 |
} |
williamr@2 | 128 |
|
williamr@2 | 129 |
inline TUint16 TDnsQryRespBase::RRClass() const |
williamr@2 | 130 |
/** |
williamr@2 | 131 |
@return RR class from DNS response message |
williamr@2 | 132 |
*/ |
williamr@2 | 133 |
{ |
williamr@2 | 134 |
return iRespClass; |
williamr@2 | 135 |
} |
williamr@2 | 136 |
|
williamr@2 | 137 |
inline TUint32 TDnsQryRespBase::RRTtl() const |
williamr@2 | 138 |
/** |
williamr@2 | 139 |
@return RR TTL from DNS response message |
williamr@2 | 140 |
*/ |
williamr@2 | 141 |
{ |
williamr@2 | 142 |
return iRespTtl; |
williamr@2 | 143 |
} |
williamr@2 | 144 |
|
williamr@2 | 145 |
inline void TDnsQryRespBase::SetRRTtl(TUint32 aRRTtl) |
williamr@2 | 146 |
/** |
williamr@2 | 147 |
Sets the value of RR TTL in the DNS response message |
williamr@2 | 148 |
@param aRRTtl RR TTL |
williamr@2 | 149 |
*/ |
williamr@2 | 150 |
{ |
williamr@2 | 151 |
iRespTtl = aRRTtl; |
williamr@2 | 152 |
} |
williamr@2 | 153 |
|
williamr@2 | 154 |
inline TDnsRespSRV::TDnsRespSRV() |
williamr@2 | 155 |
:TDnsQryRespBase(KDnsRRTypeSRV, KDnsRRClassIN) |
williamr@2 | 156 |
/** |
williamr@2 | 157 |
Constructor |
williamr@2 | 158 |
*/ |
williamr@2 | 159 |
{ |
williamr@2 | 160 |
iPriority = 0; |
williamr@2 | 161 |
iWeight = 0; |
williamr@2 | 162 |
iPort = 0; |
williamr@2 | 163 |
} |
williamr@2 | 164 |
|
williamr@2 | 165 |
inline const TDesC8& TDnsRespSRV::Target() const |
williamr@2 | 166 |
/** |
williamr@2 | 167 |
@return domain name of the target host. |
williamr@2 | 168 |
*/ |
williamr@2 | 169 |
{ |
williamr@2 | 170 |
return iTarget; |
williamr@2 | 171 |
} |
williamr@2 | 172 |
|
williamr@2 | 173 |
inline TUint16 TDnsRespSRV::Priority() const |
williamr@2 | 174 |
/** |
williamr@2 | 175 |
@return The priority of this target host |
williamr@2 | 176 |
*/ |
williamr@2 | 177 |
{ |
williamr@2 | 178 |
return iPriority; |
williamr@2 | 179 |
} |
williamr@2 | 180 |
|
williamr@2 | 181 |
inline TUint16 TDnsRespSRV::Weight() const |
williamr@2 | 182 |
/** |
williamr@2 | 183 |
@return the value of the weight field |
williamr@2 | 184 |
*/ |
williamr@2 | 185 |
{ |
williamr@2 | 186 |
return iWeight; |
williamr@2 | 187 |
} |
williamr@2 | 188 |
|
williamr@2 | 189 |
inline TUint16 TDnsRespSRV::Port() const |
williamr@2 | 190 |
/** |
williamr@2 | 191 |
@return port number |
williamr@2 | 192 |
*/ |
williamr@2 | 193 |
{ |
williamr@2 | 194 |
return iPort; |
williamr@2 | 195 |
} |
williamr@2 | 196 |
|
williamr@2 | 197 |
inline void TDnsRespSRV::SetTarget(const TDesC8& aTarget) |
williamr@2 | 198 |
/** |
williamr@2 | 199 |
Sets the domain name of the target host. |
williamr@2 | 200 |
@param aTarget Domain name of the target host. |
williamr@2 | 201 |
*/ |
williamr@2 | 202 |
{ |
williamr@2 | 203 |
iTarget.Copy(aTarget); |
williamr@2 | 204 |
} |
williamr@2 | 205 |
|
williamr@2 | 206 |
inline void TDnsRespSRV::SetPriority(TUint16 aPriority) |
williamr@2 | 207 |
/** |
williamr@2 | 208 |
Sets The priority of this target host |
williamr@2 | 209 |
@param aPriority The priority of this target host |
williamr@2 | 210 |
*/ |
williamr@2 | 211 |
{ |
williamr@2 | 212 |
iPriority = aPriority; |
williamr@2 | 213 |
} |
williamr@2 | 214 |
|
williamr@2 | 215 |
inline void TDnsRespSRV::SetWeight(TUint16 aWeight) |
williamr@2 | 216 |
/** |
williamr@2 | 217 |
Sets the value of the weight field |
williamr@2 | 218 |
@param aWeight The value of the weight field |
williamr@2 | 219 |
*/ |
williamr@2 | 220 |
{ |
williamr@2 | 221 |
iWeight = aWeight; |
williamr@2 | 222 |
} |
williamr@2 | 223 |
|
williamr@2 | 224 |
inline void TDnsRespSRV::SetPort(TUint16 aPort) |
williamr@2 | 225 |
/** |
williamr@2 | 226 |
Sets the value of the port number |
williamr@2 | 227 |
@param aPort port number |
williamr@2 | 228 |
*/ |
williamr@2 | 229 |
{ |
williamr@2 | 230 |
iPort = aPort; |
williamr@2 | 231 |
} |
williamr@2 | 232 |
|
williamr@2 | 233 |
//------------------------------------------------------------------------------------- |
williamr@2 | 234 |
|
williamr@2 | 235 |
inline const TInetAddr& TDnsRespA::HostAddress() const |
williamr@2 | 236 |
/** |
williamr@2 | 237 |
@return Resolved Host Address |
williamr@2 | 238 |
*/ |
williamr@2 | 239 |
{ |
williamr@2 | 240 |
return iInetAddr; |
williamr@2 | 241 |
} |
williamr@2 | 242 |
|
williamr@2 | 243 |
inline void TDnsRespA::SetHostAddress(const TInetAddr& aInetAddr) |
williamr@2 | 244 |
/** |
williamr@2 | 245 |
Sets the value of the resolved Host Address |
williamr@2 | 246 |
@param aInetAddr The resolved Host Address |
williamr@2 | 247 |
*/ |
williamr@2 | 248 |
{ |
williamr@2 | 249 |
iInetAddr = aInetAddr; |
williamr@2 | 250 |
} |
williamr@2 | 251 |
|
williamr@2 | 252 |
inline const TInetAddr& TDnsRespAAAA::HostAddress() const |
williamr@2 | 253 |
/** |
williamr@2 | 254 |
@return Resolved Host Address |
williamr@2 | 255 |
*/ |
williamr@2 | 256 |
{ |
williamr@2 | 257 |
return iInetAddr; |
williamr@2 | 258 |
} |
williamr@2 | 259 |
|
williamr@2 | 260 |
inline void TDnsRespAAAA::SetHostAddress(const TInetAddr& aInetAddr) |
williamr@2 | 261 |
/** |
williamr@2 | 262 |
Sets the value of the resolved Host Address |
williamr@2 | 263 |
@param aInetAddr The resolved Host Address |
williamr@2 | 264 |
*/ |
williamr@2 | 265 |
{ |
williamr@2 | 266 |
iInetAddr = aInetAddr; |
williamr@2 | 267 |
} |
williamr@2 | 268 |
|
williamr@2 | 269 |
inline const TDesC8& TDnsRespPTR::HostName() const |
williamr@2 | 270 |
/** |
williamr@2 | 271 |
@return The domain name string descriptor |
williamr@2 | 272 |
*/ |
williamr@2 | 273 |
{ |
williamr@2 | 274 |
return iName; |
williamr@2 | 275 |
} |
williamr@2 | 276 |
|
williamr@2 | 277 |
inline void TDnsRespPTR::SetHostName(const TDesC8& aHostName) |
williamr@2 | 278 |
/** |
williamr@2 | 279 |
Sets the value of the domain name |
williamr@2 | 280 |
@param aHostName The domain name string descriptor |
williamr@2 | 281 |
*/ |
williamr@2 | 282 |
{ |
williamr@2 | 283 |
iName.Copy(aHostName); |
williamr@2 | 284 |
} |
williamr@2 | 285 |
|
williamr@2 | 286 |
inline TDnsRespNAPTR::TDnsRespNAPTR() |
williamr@2 | 287 |
: TDnsQryRespBase(KDnsRRTypeNAPTR, KDnsRRClassIN) |
williamr@2 | 288 |
/** |
williamr@2 | 289 |
Constructor |
williamr@2 | 290 |
*/ |
williamr@2 | 291 |
{ |
williamr@2 | 292 |
iOrder = 0; |
williamr@2 | 293 |
iPref = 0; |
williamr@2 | 294 |
} |
williamr@2 | 295 |
|
williamr@2 | 296 |
inline TUint16 TDnsRespNAPTR::Order() const |
williamr@2 | 297 |
/** |
williamr@2 | 298 |
@return Order field value |
williamr@2 | 299 |
*/ |
williamr@2 | 300 |
{ |
williamr@2 | 301 |
return iOrder; |
williamr@2 | 302 |
} |
williamr@2 | 303 |
|
williamr@2 | 304 |
inline TUint16 TDnsRespNAPTR::Pref() const |
williamr@2 | 305 |
/** |
williamr@2 | 306 |
@return Preference field value |
williamr@2 | 307 |
*/ |
williamr@2 | 308 |
{ |
williamr@2 | 309 |
return iPref; |
williamr@2 | 310 |
} |
williamr@2 | 311 |
|
williamr@2 | 312 |
inline const TDesC8& TDnsRespNAPTR::Flags() const |
williamr@2 | 313 |
/** |
williamr@2 | 314 |
@return Flags string descriptor |
williamr@2 | 315 |
*/ |
williamr@2 | 316 |
{ |
williamr@2 | 317 |
return iFlags; |
williamr@2 | 318 |
} |
williamr@2 | 319 |
|
williamr@2 | 320 |
inline const TDesC8& TDnsRespNAPTR::Service() const |
williamr@2 | 321 |
/** |
williamr@2 | 322 |
@return service name(s) available down this rewrite path. |
williamr@2 | 323 |
*/ |
williamr@2 | 324 |
{ |
williamr@2 | 325 |
return iService; |
williamr@2 | 326 |
} |
williamr@2 | 327 |
|
williamr@2 | 328 |
inline const TDesC8& TDnsRespNAPTR::Regexp() const |
williamr@2 | 329 |
/** |
williamr@2 | 330 |
@return Regexp field |
williamr@2 | 331 |
*/ |
williamr@2 | 332 |
{ |
williamr@2 | 333 |
return iRegexp; |
williamr@2 | 334 |
} |
williamr@2 | 335 |
|
williamr@2 | 336 |
inline const TDesC8& TDnsRespNAPTR::Replacement() const |
williamr@2 | 337 |
/** |
williamr@2 | 338 |
@return Replacement field |
williamr@2 | 339 |
*/ |
williamr@2 | 340 |
{ |
williamr@2 | 341 |
return iReplacement; |
williamr@2 | 342 |
} |
williamr@2 | 343 |
|
williamr@2 | 344 |
inline void TDnsRespNAPTR::SetOrder(TUint16 aOrder) |
williamr@2 | 345 |
/** |
williamr@2 | 346 |
Sets the value of Order field |
williamr@2 | 347 |
@param aOrder Order field value |
williamr@2 | 348 |
*/ |
williamr@2 | 349 |
{ |
williamr@2 | 350 |
iOrder = aOrder; |
williamr@2 | 351 |
} |
williamr@2 | 352 |
|
williamr@2 | 353 |
inline void TDnsRespNAPTR::SetPref(TUint16 aPref) |
williamr@2 | 354 |
/** |
williamr@2 | 355 |
Sets the value of Preference field |
williamr@2 | 356 |
@param aPref Preference field value |
williamr@2 | 357 |
*/ |
williamr@2 | 358 |
{ |
williamr@2 | 359 |
iPref = aPref; |
williamr@2 | 360 |
} |
williamr@2 | 361 |
|
williamr@2 | 362 |
inline void TDnsRespNAPTR::SetFlags(const TDesC8& aFlags) |
williamr@2 | 363 |
/** |
williamr@2 | 364 |
Sets the value of Flags string |
williamr@2 | 365 |
@param aFlags Flags string |
williamr@2 | 366 |
*/ |
williamr@2 | 367 |
{ |
williamr@2 | 368 |
iFlags = aFlags; |
williamr@2 | 369 |
} |
williamr@2 | 370 |
|
williamr@2 | 371 |
inline void TDnsRespNAPTR::SetService(const TDesC8& aService) |
williamr@2 | 372 |
/** |
williamr@2 | 373 |
Sets the value of service name(s) available |
williamr@2 | 374 |
@param aService service name(s) available |
williamr@2 | 375 |
*/ |
williamr@2 | 376 |
{ |
williamr@2 | 377 |
iService = aService; |
williamr@2 | 378 |
} |
williamr@2 | 379 |
|
williamr@2 | 380 |
inline void TDnsRespNAPTR::SetRegexp(const TDesC8& aRegexp) |
williamr@2 | 381 |
/** |
williamr@2 | 382 |
Sets the value of Regexp field |
williamr@2 | 383 |
@param aRegexp Regexp field value |
williamr@2 | 384 |
*/ |
williamr@2 | 385 |
{ |
williamr@2 | 386 |
iRegexp = aRegexp; |
williamr@2 | 387 |
} |
williamr@2 | 388 |
|
williamr@2 | 389 |
inline void TDnsRespNAPTR::SetReplacement(const TDesC8& aReplacement) |
williamr@2 | 390 |
/** |
williamr@2 | 391 |
Sets the value of Replacement field |
williamr@2 | 392 |
@param aReplacement Replacement field value |
williamr@2 | 393 |
*/ |
williamr@2 | 394 |
{ |
williamr@2 | 395 |
iReplacement = aReplacement; |
williamr@2 | 396 |
} |
williamr@2 | 397 |
|
williamr@2 | 398 |
inline TUint16 TDnsRespMX::Pref() const |
williamr@2 | 399 |
/** |
williamr@2 | 400 |
@return Preference field value |
williamr@2 | 401 |
*/ |
williamr@2 | 402 |
{ |
williamr@2 | 403 |
return iPref; |
williamr@2 | 404 |
} |
williamr@2 | 405 |
|
williamr@2 | 406 |
inline const TDesC8& TDnsRespMX::HostName() const |
williamr@2 | 407 |
/** |
williamr@2 | 408 |
@return Host name descriptor |
williamr@2 | 409 |
*/ |
williamr@2 | 410 |
{ |
williamr@2 | 411 |
return iHostName; |
williamr@2 | 412 |
} |
williamr@2 | 413 |
|
williamr@2 | 414 |
inline void TDnsRespMX::SetPref(TUint16 aPref) |
williamr@2 | 415 |
/** |
williamr@2 | 416 |
Sets the value of Preference field |
williamr@2 | 417 |
@param aPref Preference field value |
williamr@2 | 418 |
*/ |
williamr@2 | 419 |
{ |
williamr@2 | 420 |
iPref = aPref; |
williamr@2 | 421 |
} |
williamr@2 | 422 |
|
williamr@2 | 423 |
inline void TDnsRespMX::SetHostName(const TDesC8& aHostName) |
williamr@2 | 424 |
/** |
williamr@2 | 425 |
Sets the value of Host name. |
williamr@2 | 426 |
@param aHostName Host name. |
williamr@2 | 427 |
*/ |
williamr@2 | 428 |
{ |
williamr@2 | 429 |
iHostName = aHostName; |
williamr@2 | 430 |
} |
williamr@2 | 431 |
|
williamr@2 | 432 |
#endif //__DNS_QRY_INL__ |