Class: Rex::Proto::Kerberos::KerberosReadableTextPresenter

Inherits:
Object
  • Object
show all
Defined in:
lib/rex/proto/kerberos/kerberos_readable_text_presenter.rb

Overview

Presenter for formatting Kerberos data structures as human-readable text

Constant Summary collapse

READABLE_TEXT_LABELS =
{
  'pvno' => 'Protocol Version',
  'msg_type' => 'Message Type',
  'pa_data' => 'Pre-Authentication Data',
  'req_body' => 'Request Body',
  'crealm' => 'Client Realm',
  'cname' => 'Client Name',
  'realm' => 'Realm',
  'sname' => 'Server Name',
  'enc_part' => 'Encrypted Part',
  'etype' => 'Encryption Type',
  'name_type' => 'Name Type',
  'name_string' => 'Name String',
  'error_code' => 'Error Code',
  'e_data' => 'Error Data',
  'etext' => 'Error Text',
  'stime' => 'Server Time',
  'ctime' => 'Client Time',
  'susec' => 'Server Microseconds',
  'cusec' => 'Client Microseconds',
  'ap_options' => 'AP Options',
  'kdc_options' => 'KDC Options',
  'ticket' => 'Ticket',
  'tkt_vno' => 'Ticket Version Number',
  'kvno' => 'Key Version Number',
  'flags' => 'Flags'
}.freeze

Instance Method Summary collapse

Instance Method Details

#present(serialized_message) ⇒ Object



36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/rex/proto/kerberos/kerberos_readable_text_presenter.rb', line 36

def present(serialized_message)
  lines = []
  case serialized_message
  when Hash
    append_hash(lines, serialized_message, indent: 0)
  when Array
    append_array(lines, serialized_message, indent: 0)
  else
    lines << serialized_message.to_s
  end
  lines.join("\n")
end