epoc32/include/dns_qry.inl
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:27:01 +0100
branchSymbian2
changeset 3 e1b950c65cb4
parent 0 061f57f2323e
permissions -rw-r--r--
Attempt to represent the S^2->S^3 header reorganisation as a series of "hg rename" operations
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__