class Array

Public Instance Methods

to_ber(id = 0;) click to toggle source

to_ber_appsequence An application-specific sequence usually gets assigned a tag that is meaningful to the particular protocol being used. This is different from the universal sequence, which usually gets a tag value of 16. Now here’s an interesting thing: We’re adding the X.690 “application constructed” code at the top of the tag byte (0x60), but some clients, notably ldapsearch, send “context-specific constructed” (0xA0). The latter would appear to violate RFC-1777, but what do I know? We may need to change this.

# File lib/net/ber.rb, line 280
def to_ber                 id = 0; to_ber_seq_internal( 0x30 + id ); end
to_ber_appsequence(id = 0;) click to toggle source
# File lib/net/ber.rb, line 283
def to_ber_appsequence     id = 0; to_ber_seq_internal( 0x60 + id ); end
to_ber_contextspecific(id = 0;) click to toggle source
# File lib/net/ber.rb, line 284
def to_ber_contextspecific id = 0; to_ber_seq_internal( 0xA0 + id ); end
to_ber_sequence(id = 0;) click to toggle source
# File lib/net/ber.rb, line 282
def to_ber_sequence        id = 0; to_ber_seq_internal( 0x30 + id ); end
to_ber_set(id = 0;) click to toggle source
# File lib/net/ber.rb, line 281
def to_ber_set             id = 0; to_ber_seq_internal( 0x31 + id ); end

Private Instance Methods

to_ber_seq_internal(code) click to toggle source
# File lib/net/ber.rb, line 287
def to_ber_seq_internal code
  s = self.to_s
  [code].pack('C') + s.length.to_ber_length_encoding + s
end