summaryrefslogtreecommitdiff
path: root/lib/chef/util/windows/net_use.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chef/util/windows/net_use.rb')
-rw-r--r--lib/chef/util/windows/net_use.rb15
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/chef/util/windows/net_use.rb b/lib/chef/util/windows/net_use.rb
index 62d7e169dc..34835b6d3d 100644
--- a/lib/chef/util/windows/net_use.rb
+++ b/lib/chef/util/windows/net_use.rb
@@ -21,6 +21,7 @@
#see also cmd.exe: net use /?
require 'chef/util/windows'
+require 'chef/win32/net'
class Chef::Util::Windows::NetUse < Chef::Util::Windows
@@ -76,6 +77,7 @@ class Chef::Util::Windows::NetUse < Chef::Util::Windows
def initialize(localname)
@localname = localname
@name = multi_to_wide(localname)
+ @use_name = localname
end
def add(args)
@@ -111,11 +113,16 @@ class Chef::Util::Windows::NetUse < Chef::Util::Windows
def device
get_info()[:remote]
end
- #XXX should we use some FORCE here?
+
def delete
- rc = NetUseDel.call(nil, @name, USE_NOFORCE)
- if rc != NERR_Success
- raise ArgumentError, get_last_error(rc)
+ begin
+ Chef::ReservedNames::Win32::Net.net_use_del(nil, use_name, :use_noforce)
+ rescue Chef::Exceptions::Win32APIError => e
+ raise ArgumentError, e
end
end
+
+ def use_name
+ @use_name
+ end
end