summaryrefslogtreecommitdiffstats
path: root/wordlists
diff options
context:
space:
mode:
authordusoleil <howcansocksbereal@gmail.com>2021-09-07 02:36:54 -0400
committerdusoleil <howcansocksbereal@gmail.com>2021-09-07 02:36:54 -0400
commitc43b676086f26edb1ea989b255e0eaf356c8ad5a (patch)
tree82bdc597f1466989e831dd2dcd9d15f49ce8bfbd /wordlists
parent159eb86f979716b2e0c6d819b1ca598441c9ddf9 (diff)
downloadlib-des-gnux-c43b676086f26edb1ea989b255e0eaf356c8ad5a.tar.gz
lib-des-gnux-c43b676086f26edb1ea989b255e0eaf356c8ad5a.zip
Manually run garbage collection after exec
Apparently python won't run garbage collection on stuff owned by the exec context if you define a function in the exec. This can lead to random leaks, but it is most impactful in daemon mode. If the globals dictionary given to exec isn't cleaned up, there will be a random reference to comm that still exists. This holds a reference to the Pipes object which prevents it from getting cleaned up before we try to make a new one. Making a new one needs the fifos to have been cleaned up, so it relies on the fact that the old one was supposed to be cleaned up. The most straightforward and non-intrusive way I could think to fix this was to just manually run the garbage collector after exec. This is able to find the leaked references and clean it all up. Signed-off-by: dusoleil <howcansocksbereal@gmail.com>
Diffstat (limited to 'wordlists')
0 files changed, 0 insertions, 0 deletions