Class: Net::SSH::Kerberos::Drivers::GSS::API::GssOID
- Inherits:
-
Object
- Object
- Net::SSH::Kerberos::Drivers::GSS::API::GssOID
- Defined in:
- lib/net/ssh/kerberos/drivers/gss.rb
Constant Summary collapse
- PACK =
(RUBY_PLATFORM =~ /darwin/ ? 'I' : "I@#{DL.sizeof('P')}")+'P'
- ELEMENTS_OFFSET =
DL.sizeof(RUBY_PLATFORM =~ /darwin/ ? 'I' : 'P')
- STRUCT_SIZE =
ELEMENTS_OFFSET + DL.sizeof('P')
Class Method Summary collapse
Instance Method Summary collapse
- #==(oid) ⇒ Object
- #elements ⇒ Object (also: #to_s)
- #eql?(oid) ⇒ Boolean
-
#initialize(ptr) ⇒ GssOID
constructor
A new instance of GssOID.
- #inspect ⇒ Object
- #length ⇒ Object
- #ptr ⇒ Object (also: #to_ptr)
Constructor Details
#initialize(ptr) ⇒ GssOID
Returns a new instance of GssOID.
76 77 78 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 76 def initialize(ptr) @ptr = ptr end |
Class Method Details
.create(bytes) ⇒ Object
80 81 82 83 84 85 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 80 def self.create(bytes) v = [bytes.length, bytes] o = new v.pack(PACK).to_ptr o.instance_variable_set :@unpack, v o end |
.size ⇒ Object
97 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 97 def self.size; STRUCT_SIZE end |
Instance Method Details
#==(oid) ⇒ Object
92 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 92 def ==(oid) !oid.nil? && length==oid.length && to_s==oid.to_s end |
#elements ⇒ Object Also known as: to_s
88 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 88 def elements; unpack[1] end |
#eql?(oid) ⇒ Boolean
91 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 91 def eql?(oid) !oid.nil? && length==oid.length && to_s==oid.to_s end |
#inspect ⇒ Object
93 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 93 def inspect; 'OID: ' + (to_s.unpack("H2" * length).join(' ')) end |
#length ⇒ Object
87 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 87 def length; unpack[0] end |
#ptr ⇒ Object Also known as: to_ptr
94 |
# File 'lib/net/ssh/kerberos/drivers/gss.rb', line 94 def ptr; @ptr end |