Skip to content

Commit a347dee

Browse files
committed
Land rapid7#9150, fix broken and simplify unusual RuntimeError exceptions
2 parents c361846 + 90766ce commit a347dee

File tree

6 files changed

+14
-15
lines changed

6 files changed

+14
-15
lines changed

lib/msf/core/exploit/smtp_deliver.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ def connect_login(global = true)
111111
unless res[0..2] == '235'
112112
print_error("Authentication failed, quitting")
113113
disconnect(nsock)
114-
raise RuntimeError.new 'Could not authenticate to SMTP server'
114+
raise 'Could not authenticate to SMTP server'
115115
end
116116
else
117117
print_status("Server requested auth and no creds given, trying to continue anyway")
@@ -126,7 +126,7 @@ def connect_login(global = true)
126126
unless res[0..2] == '235'
127127
print_error("Authentication failed, quitting")
128128
disconnect(nsock)
129-
raise RuntimeError.new 'Could not authenticate to SMTP server'
129+
raise 'Could not authenticate to SMTP server'
130130
end
131131
else
132132
print_status("Server requested auth and no creds given, trying to continue anyway")

lib/msf/core/module/platform.rb

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,8 +143,7 @@ def self.find_portion(mod, str)
143143

144144
if (not mod.const_defined?('Names'))
145145
elog("Failed to instantiate the platform list for module #{mod}")
146-
raise RuntimeError.new("Failed to instantiate the platform list for module #{mod}")
147-
return nil
146+
raise "Failed to instantiate the platform list for module #{mod}"
148147
end
149148

150149
abbrev = mod.const_get('Abbrev')

lib/msf/core/post/windows/ldap.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ def query(filter, max_results, fields, domain=nil)
119119
domain ||= get_domain
120120

121121
if domain.blank?
122-
raise RuntimeError, "Unable to find the domain to query."
122+
raise "Unable to find the domain to query."
123123
end
124124

125125
if load_extapi
@@ -338,7 +338,7 @@ def bind_default_ldap_server(size_limit, domain=nil)
338338
init_result = wldap32.ldap_sslinitA(domain, 389, 0)
339339
session_handle = init_result['return']
340340
if session_handle == 0
341-
raise RuntimeError.new("Unable to initialize ldap server: #{init_result["ErrorMessage"]}")
341+
raise "Unable to initialize ldap server: #{init_result["ErrorMessage"]}"
342342
end
343343

344344
vprint_status("LDAP Handle: #{session_handle}")
@@ -352,7 +352,7 @@ def bind_default_ldap_server(size_limit, domain=nil)
352352
bind = bind_result['return']
353353
unless bind == 0
354354
wldap32.ldap_unbind(session_handle)
355-
raise RuntimeError.new("Unable to bind to ldap server: #{ERROR_CODE_TO_CONSTANT[bind]}")
355+
raise "Unable to bind to ldap server: #{ERROR_CODE_TO_CONSTANT[bind]}"
356356
end
357357

358358
if (block_given?)

lib/msf/core/post/windows/services.rb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ def open_sc_manager(opts={})
7878
# );
7979
manag = advapi32.OpenSCManagerA(machine_str,nil,access)
8080
if (manag["return"] == 0)
81-
raise RuntimeError.new("Unable to open service manager: #{manag["ErrorMessage"]}")
81+
raise "Unable to open service manager: #{manag["ErrorMessage"]}"
8282
end
8383

8484
if (block_given?)
@@ -115,7 +115,7 @@ def close_service_handle(handle)
115115
def open_service_handle(manager, name, access)
116116
handle = advapi32.OpenServiceA(manager, name, access)
117117
if (handle["return"] == 0)
118-
raise RuntimeError.new("Could not open service. OpenServiceA error: #{handle["ErrorMessage"]}")
118+
raise "Could not open service. OpenServiceA error: #{handle["ErrorMessage"]}"
119119
end
120120

121121
if (block_given?)
@@ -267,7 +267,7 @@ def service_change_startup(name, mode, server=nil)
267267
when "manual" then startup_number = START_TYPE_MANUAL
268268
when "disable" then startup_number = START_TYPE_DISABLED
269269
else
270-
raise RuntimeError, "Invalid Startup Mode: #{mode}"
270+
raise "Invalid Startup Mode: #{mode}"
271271
end
272272
end
273273

@@ -453,7 +453,7 @@ def service_status(name, server=nil)
453453
status = advapi32.QueryServiceStatus(service_handle,28)
454454

455455
if (status["return"] == 0)
456-
raise RuntimeError.new("Could not query service. QueryServiceStatus error: #{status["ErrorMessage"]}")
456+
raise "Could not query service. QueryServiceStatus error: #{status["ErrorMessage"]}"
457457
else
458458
ret = parse_service_status_struct(status['lpServiceStatus'])
459459
end
@@ -485,7 +485,7 @@ def service_restart(name, start_type=START_TYPE_AUTO, server=nil)
485485
vprint_good("[#{name}] Service started")
486486
return true
487487
else
488-
raise RuntimeError, status
488+
raise status
489489
end
490490
rescue RuntimeError => s
491491
if tried

lib/rex/ui/text/dispatcher_shell.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -464,7 +464,7 @@ def append_dispatcher(dispatcher)
464464
inst = dispatcher.new(self)
465465
self.dispatcher_stack.each { |disp|
466466
if (disp.name == inst.name)
467-
raise RuntimeError.new("Attempting to load already loaded dispatcher #{disp.name}")
467+
raise "Attempting to load already loaded dispatcher #{disp.name}"
468468
end
469469
}
470470
self.dispatcher_stack.push(inst)

scripts/meterpreter/search_dwld.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,15 +91,15 @@ def unsupported
9191
# Set the regexp
9292
if filter == 'free'
9393
if args[2].nil?
94-
raise RuntimeError.new("free filter requires pattern argument")
94+
raise "free filter requires pattern argument"
9595
end
9696
$motif = args[2]
9797
else
9898
$motif = $filters[filter]
9999
end
100100

101101
if $motif.nil?
102-
raise RuntimeError.new("Unrecognized filter")
102+
raise "Unrecognized filter"
103103
end
104104

105105
# Search and download

0 commit comments

Comments
 (0)