Switch to the new fiber relay manager

This commit is contained in:
Spencer McIntyre
2025-11-04 17:51:21 -05:00
parent 3908fd4829
commit dcd3a62e88
5 changed files with 9 additions and 27 deletions
+3 -3
View File
@@ -231,7 +231,7 @@ GEM
irb (~> 1.10)
reline (>= 0.3.8)
diff-lcs (1.6.2)
dnsruby (1.73.0)
dnsruby (1.73.1)
base64 (>= 0.2)
logger (~> 1.6)
simpleidn (~> 0.2.1)
@@ -494,7 +494,7 @@ GEM
rex-core
rex-struct2
rex-text
rex-core (0.1.34)
rex-core (0.1.35)
rex-encoder (0.1.8)
metasm
rex-arch
@@ -528,7 +528,7 @@ GEM
metasm
rex-core
rex-text
rex-socket (0.1.62)
rex-socket (0.1.64)
dnsruby
rex-core
rex-sslscan (0.1.13)
@@ -47,12 +47,6 @@ module Rex
end
end
def close
super
channel.cleanup_abstraction
channel.close
end
attr_accessor :channel
end
end
@@ -80,15 +80,6 @@ class StreamPool < Rex::Post::Meterpreter::Channels::Pool
end
end
#
# Closes the local half of the pool stream.
#
def dio_close_handler(packet)
rsock.close
return super(packet)
end
#
# Cleans up resources used by the channel.
#
@@ -76,15 +76,6 @@ module SocketAbstraction
end
end
#
# Performs a close operation on the right side of the local stream.
#
def dio_close_handler(packet)
rsock.close
return super(packet)
end
#
# Cleans up the stream abstraction.
#
@@ -89,6 +89,12 @@ class TcpClientChannel < Rex::Post::Meterpreter::Stream
rsock.synchronize_access { rsock.initsock(@params) }
end
def monitor_rsock(name = 'MonitorRemote')
# call #close on exit instead of #close_write because this is triggered in response to lsock.close
# lsock.close -> rsock EOF -> #close -> Meterpreter close
monitor_sock(rsock, sink: self, name: name, on_exit: method(:close))
end
#
# Closes the write half of the connection.
#