Class Dnsruby::Name::Label
In: lib/Dnsruby/name.rb
Parent: Object
ResolvError EncodeError OtherResolvError ServFail FormErr DecodeError NXRRSet YXDomain NotImp NXDomain VerifyError NotAuth YXRRSet NotZone Refused TsigError Message Update CodeMapper Types MetaTypes QTypes Nsec3HashAlgorithms Algorithms OpCode Classes ExtendedRCode RCode Modes Comparable Name RRSet Resolver SingleResolver StandardError TimeoutError ResolvTimeout DNS Dnssec Hosts SelectThread\n[lib/Dnsruby/select_thread.rb\nlib/Dnsruby/select_thread.rb.michael.rb] Recursor IPv6 IPv4 ZoneTransfer MessageDecoder MessageEncoder Question Header TheLog 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/DLV.rb\nlib/Dnsruby/resource/DNSKEY.rb\nlib/Dnsruby/resource/DS.rb\nlib/Dnsruby/resource/HINFO.rb\nlib/Dnsruby/resource/IN.rb\nlib/Dnsruby/resource/ISDN.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/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] ValidatorThread PacketSender ResolverRuby Config KeyCache Cache SingleVerifier Resolv Iana lib/Dnsruby/DNS.rb lib/Dnsruby/dnssec.rb lib/Dnsruby/Hosts.rb lib/Dnsruby/select_thread.rb.michael.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/name.rb lib/dnsruby.rb lib/Dnsruby/resource/TKEY.rb lib/Dnsruby/iana_ports.rb Dnsruby dot/m_56_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 375
375:       def initialize(string)
376:         if (string.length > @@max_length)
377:           raise ResolvError.new("Label too long (#{string.length}, max length=#{MaxLabelLength}). Label = #{string}")
378:         end
379:         @downcase = string.downcase
380:         @string = string
381:       end

[Source]

     # File lib/Dnsruby/name.rb, line 371
371:       def self.set_max_length(l)
372:         @@max_length=l
373:       end

Split a Name into its component Labels

[Source]

     # File lib/Dnsruby/name.rb, line 367
367:       def self.split(arg)
368:         return Name.split(arg)
369:       end

Public Instance methods

[Source]

     # File lib/Dnsruby/name.rb, line 396
396:       def <=>(other)
397:         return (@downcase <=> other.downcase)
398:       end

[Source]

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

[Source]

     # File lib/Dnsruby/name.rb, line 405
405:       def eql?(other)
406:         return self == other
407:       end

[Source]

     # File lib/Dnsruby/name.rb, line 409
409:       def hash
410:         return @downcase.hash
411:       end

[Source]

     # File lib/Dnsruby/name.rb, line 392
392:       def inspect
393:         return "#<#{self.class} #{self.to_s}>"
394:       end

[Source]

     # File lib/Dnsruby/name.rb, line 388
388:       def length
389:         return @string.length
390:       end

[Source]

     # File lib/Dnsruby/name.rb, line 384
384:       def to_s
385:         return @string.to_s # + "."
386:       end

[Validate]