Class: Gem::Resolv::DNS::Resource::CAA
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
|
|
Instance Chain:
|
|
Inherits: |
Gem::Resolv::DNS::Resource
|
Defined in: | lib/rubygems/vendor/resolv/lib/resolv.rb |
Overview
CAA
resource record defined in RFC 8659
These records identify certificate authority allowed to issue certificates for the given domain.
Constant Summary
-
TypeValue =
# File 'lib/rubygems/vendor/resolv/lib/resolv.rb', line 2558257
::Gem::Resolv::DNS::Resource
- Inherited
Class Method Summary
- .new(flags, tag, value) ⇒ CAA constructor
- .decode_rdata(msg) Internal use only
::Gem::Resolv::DNS::Resource
- Inherited
::Gem::Resolv::DNS::Query
- Inherited
Instance Attribute Summary
-
#critical? ⇒ Boolean
readonly
Whether the critical flag is set on this property.
-
#flags
readonly
Flags for this proprty: - Bit 0 : 0 = not critical, 1 = critical.
-
#tag
readonly
Property tag (“issue”, “issuewild”, “iodef”…).
-
#value
readonly
Property value.
::Gem::Resolv::DNS::Resource
- Inherited
#ttl | Remaining Time To Live for this |
Instance Method Summary
- #encode_rdata(msg) Internal use only
::Gem::Resolv::DNS::Resource
- Inherited
::Gem::Resolv::DNS::Query
- Inherited
Constructor Details
.new(flags, tag, value) ⇒ CAA
[ GitHub ]
# File 'lib/rubygems/vendor/resolv/lib/resolv.rb', line 2563
def initialize(flags, tag, value) unless (0..255) === flags raise ArgumentError.new('flags must be an Integer between 0 and 255') end unless (1..15) === tag.bytesize raise ArgumentError.new('length of tag must be between 1 and 15') end @flags = flags @tag = tag @value = value end
Class Method Details
.decode_rdata(msg)
This method is for internal use only.
[ GitHub ]
Instance Attribute Details
#critical? ⇒ Boolean
(readonly)
Whether the critical flag is set on this property.
# File 'lib/rubygems/vendor/resolv/lib/resolv.rb', line 2595
def critical? flags & 0x80 != 0 end
#flags (readonly)
Flags for this proprty:
-
Bit 0 : 0 = not critical, 1 = critical
# File 'lib/rubygems/vendor/resolv/lib/resolv.rb', line 2580
attr_reader :flags
#tag (readonly)
Property tag (“issue”, “issuewild”, “iodef”…).
# File 'lib/rubygems/vendor/resolv/lib/resolv.rb', line 2585
attr_reader :tag
#value (readonly)
Property value.
# File 'lib/rubygems/vendor/resolv/lib/resolv.rb', line 2590
attr_reader :value
Instance Method Details
#encode_rdata(msg)
This method is for internal use only.
[ GitHub ]
# File 'lib/rubygems/vendor/resolv/lib/resolv.rb', line 2599
def encode_rdata(msg) # :nodoc: msg.put_pack('C', @flags) msg.put_string(@tag) msg.put_bytes(@value) end