Class: Rex::Proto::DNS::Server::MockDnsClient

Inherits:
Object
  • Object
show all
Defined in:
lib/rex/proto/dns/server.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(host, port, sock) ⇒ MockDnsClient

Create mock DNS client

Parameters:

  • host (String)

    PeerHost IP address

  • port (Fixnum)

    PeerPort integer



19
20
21
22
23
# File 'lib/rex/proto/dns/server.rb', line 19

def initialize(host, port, sock)
  @peerhost = host
  @peerport = port
  @srvsock = sock
end

Instance Attribute Details

#peerhostObject (readonly)

Returns the value of attribute peerhost.



12
13
14
# File 'lib/rex/proto/dns/server.rb', line 12

def peerhost
  @peerhost
end

#peerportObject (readonly)

Returns the value of attribute peerport.



12
13
14
# File 'lib/rex/proto/dns/server.rb', line 12

def peerport
  @peerport
end

#srvsockObject (readonly)

Returns the value of attribute srvsock.



12
13
14
# File 'lib/rex/proto/dns/server.rb', line 12

def srvsock
  @srvsock
end

Instance Method Details

#mock_dns_client?Boolean

Test method to prevent GC/ObjectSpace abuse via class lookups

Returns:

  • (Boolean)


28
29
30
# File 'lib/rex/proto/dns/server.rb', line 28

def mock_dns_client?
  true
end

#write(data) ⇒ Object



32
33
34
# File 'lib/rex/proto/dns/server.rb', line 32

def write(data)
  srvsock.sendto(data, peerhost, peerport)
end