Class: RubySMB::Nbss::NetbiosName
- Inherits:
 - 
      BinData::Primitive
      
        
- Object
 - BinData::Primitive
 - RubySMB::Nbss::NetbiosName
 
 
- Defined in:
 - lib/ruby_smb/nbss/netbios_name.rb
 
Overview
Representation of the NetBIOS Name as defined in 4.1. NAME FORMAT and 14. REPRESENTATION OF NETBIOS NAMES and Domain name representation and compression
Instance Method Summary collapse
- #get ⇒ Object
 - #nb_name_decode(encoded_name) ⇒ Object
 - #nb_name_encode(name) ⇒ Object
 - #set(label) ⇒ Object
 
Instance Method Details
#get ⇒ Object
      37 38 39  | 
    
      # File 'lib/ruby_smb/nbss/netbios_name.rb', line 37 def get nb_name_decode(label) end  | 
  
#nb_name_decode(encoded_name) ⇒ Object
      27 28 29 30 31 32 33 34 35  | 
    
      # File 'lib/ruby_smb/nbss/netbios_name.rb', line 27 def nb_name_decode(encoded_name) name = encoded_name.scan(/../).map do |char_pair| first_half = char_pair[0]; second_half = char_pair[1] char = ((first_half.ord - 'A'.ord) << 4) + (second_half.ord - 'A'.ord) char.chr end name.join end  | 
  
#nb_name_encode(name) ⇒ Object
      16 17 18 19 20 21 22 23 24 25  | 
    
      # File 'lib/ruby_smb/nbss/netbios_name.rb', line 16 def nb_name_encode(name) encoded_name = '' name.each_byte do |char| first_half = (char >> 4) + 'A'.ord second_half = (char & 0xF) + 'A'.ord encoded_name << first_half.chr encoded_name << second_half.chr end encoded_name end  | 
  
#set(label) ⇒ Object
      41 42 43 44  | 
    
      # File 'lib/ruby_smb/nbss/netbios_name.rb', line 41 def set(label) self.label = nb_name_encode(label) self.label_length = self.label.length end  |