Parent

Methods

Class/Module Index [+]

Quicksearch

Rex::Proto::DRDA::ACCSEC_DDM

The ACCSEC DDM is responsible for picking the security mechanism (SECMEC) which, in our case, will always be plain text username and password. It also sets the relational database name (RDBNAM), if specified. You need one to login, but not to probe.

Public Class Methods

new(args={}) click to toggle source
# File lib/rex/proto/drda/packet.rb, line 88
def initialize(args={})
        self[:magic] = 0xd0
        self[:format] = args[:format] || 0x01
        self[:correlid] = 2
        self[:codepoint] = Constants::ACCSEC
        self[:secmec] = SECMEC_PARAM.new.to_s
        if args[:dbname] # Include a database name if we're given one.
                self[:rdbnam] = RDBNAM_PARAM.new(:payload => args[:dbname]).to_s
        end
        self[:length] =  10 + self[:secmec].to_s.size + self[:rdbnam].to_s.size
        self[:length2] = self[:length]-6
end

Public Instance Methods

dbname=(str) click to toggle source
# File lib/rex/proto/drda/packet.rb, line 100
def dbname=(str)
        self[:rdbnam] = RDBNAM_PARAM.new(:payload => args[:dbname]).to_s
end
to_s() click to toggle source
# File lib/rex/proto/drda/packet.rb, line 103
def to_s
        packstr = "nCCnnna6"
        packstr += "a22" if self[:rdbnam]
        self.to_a.pack(packstr)
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.