module RubySMB::Client::Winreg

Public Instance Methods

connect_to_winreg(host) { |named_pipe| ... } click to toggle source
# File lib/ruby_smb/client/winreg.rb, line 5
def connect_to_winreg(host)
  share = "\\\\#{host}\\IPC$"
  tree = @tree_connects.find {|tree| tree.share == share}
  tree = tree_connect(share) unless tree
  named_pipe = tree.open_pipe(filename: "winreg", write: true, read: true)
  if block_given?
    res = yield named_pipe
    named_pipe.close
    res
  else
    named_pipe
  end
end
enum_registry_key(host, key) click to toggle source
# File lib/ruby_smb/client/winreg.rb, line 31
def enum_registry_key(host, key)
  connect_to_winreg(host) do |named_pipe|
    named_pipe.enum_registry_key(key)
  end
end
enum_registry_values(host, key) click to toggle source
# File lib/ruby_smb/client/winreg.rb, line 37
def enum_registry_values(host, key)
  connect_to_winreg(host) do |named_pipe|
    named_pipe.enum_registry_values(key)
  end
end
has_registry_key?(host, key) click to toggle source
# File lib/ruby_smb/client/winreg.rb, line 19
def has_registry_key?(host, key)
  connect_to_winreg(host) do |named_pipe|
    named_pipe.has_registry_key?(key)
  end
end
read_registry_key_value(host, key, value_name) click to toggle source
# File lib/ruby_smb/client/winreg.rb, line 25
def read_registry_key_value(host, key, value_name)
  connect_to_winreg(host) do |named_pipe|
    named_pipe.read_registry_key_value(key, value_name)
  end
end