-- Leo's gemini proxy
-- Connecting to git.thebackupbox.net:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini
repo: urcd action: commit revision: path_from: revision_from: 220d846e2424b5880d791aa86f803bf07dcd2ff7: path_to: revision_to:
commit 220d846e2424b5880d791aa86f803bf07dcd2ff7 Author: root <root@d3v11.ano> Date: Sat Jan 5 22:59:01 2013 +0000 [urcd, urc2sd] no DoS through encoding expansion (EMSGSIZE) diff --git a/src/urc2sd.pyx b/src/urc2sd.pyx
--- a/src/urc2sd.pyx +++ b/src/urc2sd.pyx @@ -167,13 +167,16 @@ while 1: if re.search('^:['+RE+']+!['+RE+']+@['+RE+'.]+ ((PRIVMSG)|(NOTICE)|(TOPIC)) #['+RE+']+ :.*$',buffer.upper()): - src = buffer[1:].split('!',1)[0] + '> ' - cmd = buffer.split(' ',3)[1].upper() dst = buffer.split(' ',3)[2].lower() - msg = buffer.split(':',2)[2] if dst in channels: - os.write(wr,cmd+' '+dst+' :'+src+msg+'\n') - continue + + src = buffer[1:].split('!',1)[0] + '> ' + cmd = buffer.split(' ',3)[1].upper() + msg = buffer.split(':',2)[2] + buffer = cmd + ' ' + dst + ' :' + src + msg + '\n' + + if len(buffer)<=1024: + os.write(wr,buffer) sock_close(0,0) diff --git a/src/urcd.pyx b/src/urcd.pyx
--- a/src/urcd.pyx +++ b/src/urcd.pyx @@ -256,7 +256,7 @@ while 1: buffer = re.sub('[\x02\x0f]','',buffer) buffer = re.sub('\x01(ACTION )?','*',buffer) buffer = re.sub('\x03[0-9][0-9]?(,[0-9][0-9]?)?','',buffer) - buffer = str({str():buffer})[6:][:len(str({str():buffer})[6:])-4]+'\n' + buffer = str({str():buffer})[6:][:len(str({str():buffer})[6:])-4] + '\n' buffer = buffer.replace("\\'","'") buffer = buffer.replace('\\\\','\\') @@ -264,8 +264,7 @@ while 1: dst = buffer.split(' ',3)[2].lower() - if dst == nick.lower() or dst in channels: + if (dst == nick.lower() or dst in channels) and len(buffer)<=1024: os.write(wr,buffer) - continue sock_close(0,0)
-----END OF PAGE-----
-- Response ended
-- Page fetched on Sun Jun 2 15:07:23 2024