Class Dnsruby::Name::Label
In: lib/Dnsruby/name.rb
Parent: Object
Message Update ResolvError EncodeError OtherResolvError ServFail FormErr DecodeError NXRRSet YXDomain NotImp NXDomain VerifyError NotAuth YXRRSet NotZone Refused TsigError CodeMapper Types MetaTypes QTypes Nsec3HashAlgorithms Algorithms OpCode Classes ExtendedRCode Modes RCode Comparable Name RRSet TsigNotSignedResponseError Resolver SingleResolver StandardError TimeoutError ResolvTimeout DNS Dnssec Hosts RR\n[lib/Dnsruby/resource/A.rb\nlib/Dnsruby/resource/AAAA.rb\nlib/Dnsruby/resource/AFSDB.rb\nlib/Dnsruby/resource/CERT.rb\nlib/Dnsruby/resource/DHCID.rb\nlib/Dnsruby/resource/DLV.rb\nlib/Dnsruby/resource/DNSKEY.rb\nlib/Dnsruby/resource/DS.rb\nlib/Dnsruby/resource/HINFO.rb\nlib/Dnsruby/resource/HIP.rb\nlib/Dnsruby/resource/IN.rb\nlib/Dnsruby/resource/IPSECKEY.rb\nlib/Dnsruby/resource/ISDN.rb\nlib/Dnsruby/resource/KX.rb\nlib/Dnsruby/resource/LOC.rb\nlib/Dnsruby/resource/MINFO.rb\nlib/Dnsruby/resource/MX.rb\nlib/Dnsruby/resource/NAPTR.rb\nlib/Dnsruby/resource/NSAP.rb\nlib/Dnsruby/resource/NSEC.rb\nlib/Dnsruby/resource/NSEC3.rb\nlib/Dnsruby/resource/NSEC3PARAM.rb\nlib/Dnsruby/resource/OPT.rb\nlib/Dnsruby/resource/PX.rb\nlib/Dnsruby/resource/RP.rb\nlib/Dnsruby/resource/RRSIG.rb\nlib/Dnsruby/resource/RT.rb\nlib/Dnsruby/resource/SOA.rb\nlib/Dnsruby/resource/SPF.rb\nlib/Dnsruby/resource/SRV.rb\nlib/Dnsruby/resource/SSHFP.rb\nlib/Dnsruby/resource/TKEY.rb\nlib/Dnsruby/resource/TSIG.rb\nlib/Dnsruby/resource/TXT.rb\nlib/Dnsruby/resource/X25.rb\nlib/Dnsruby/resource/domain_name.rb\nlib/Dnsruby/resource/generic.rb\nlib/Dnsruby/resource/resource.rb] Recursor IPv6 IPv4 ZoneTransfer MessageDecoder MessageEncoder Question Header TheLog ValidatorThread PacketSender ResolverRuby Config KeyCache Cache SingleVerifier SelectThread Resolv ZoneReader lib/Dnsruby/DNS.rb lib/Dnsruby/dnssec.rb lib/Dnsruby/Hosts.rb lib/Dnsruby/resource/PX.rb lib/Dnsruby/Recursor.rb lib/Dnsruby/update.rb lib/Dnsruby/ipv6.rb lib/Dnsruby/ipv4.rb lib/Dnsruby/code_mapper.rb lib/Dnsruby/zone_transfer.rb lib/Dnsruby/message.rb lib/Dnsruby/TheLog.rb lib/Dnsruby/resource/resource.rb lib/Dnsruby/validator_thread.rb lib/Dnsruby/PacketSender.rb lib/Dnsruby/Resolver.rb lib/Dnsruby/Config.rb lib/Dnsruby/key_cache.rb lib/Dnsruby/Cache.rb lib/Dnsruby/single_verifier.rb lib/Dnsruby/SingleResolver.rb lib/Dnsruby/select_thread.rb lib/Dnsruby/name.rb lib/dnsruby.rb lib/Dnsruby/resource/TKEY.rb lib/Dnsruby/zone_reader.rb Dnsruby dot/m_61_0.png

Dnsruby::Label class

(RFC1035, section 3.1)

Methods

<=>   ==   eql?   hash   inspect   length   new   set_max_length   split   to_s  

Included Modules

Comparable

Constants

MaxLabelLength = 63

Attributes

downcase  [R] 
string  [R] 

Public Class methods

[Source]

     # File lib/Dnsruby/name.rb, line 380
380:       def initialize(string)
381:         if (string.length > @@max_length)
382:           raise ResolvError.new("Label too long (#{string.length}, max length=#{MaxLabelLength}). Label = #{string}")
383:         end
384:         @downcase = string.downcase
385:         @string = string
386:         @string_length = string.length
387:       end

[Source]

     # File lib/Dnsruby/name.rb, line 376
376:       def self.set_max_length(l)
377:         @@max_length=l
378:       end

Split a Name into its component Labels

[Source]

     # File lib/Dnsruby/name.rb, line 372
372:       def self.split(arg)
373:         return Name.split(arg)
374:       end

Public Instance methods

[Source]

     # File lib/Dnsruby/name.rb, line 402
402:       def <=>(other)
403:         return (@downcase <=> other.downcase)
404:       end

[Source]

     # File lib/Dnsruby/name.rb, line 407
407:       def ==(other)
408:         return @downcase == other.downcase
409:       end

[Source]

     # File lib/Dnsruby/name.rb, line 411
411:       def eql?(other)
412:         return self == other
413:       end

[Source]

     # File lib/Dnsruby/name.rb, line 415
415:       def hash
416:         return @downcase.hash
417:       end

[Source]

     # File lib/Dnsruby/name.rb, line 398
398:       def inspect
399:         return "#<#{self.class} #{self.to_s}>"
400:       end

[Source]

     # File lib/Dnsruby/name.rb, line 394
394:       def length
395:         return @string_length
396:       end

[Source]

     # File lib/Dnsruby/name.rb, line 390
390:       def to_s
391:         return @string.to_s # + "."
392:       end

[Validate]