-- 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: 38ae526407c4a0da3f75f783e99f3d43ba04fa98: path_to: revision_to:
commit 38ae526407c4a0da3f75f783e99f3d43ba04fa98 Author: root <root@localhost.(none)> Date: Thu Jan 8 05:07:56 2015 +0000 [urcd] bugfix: kill zombie cryptoserv, send EOF to child diff --git a/src/cryptoserv.c b/src/cryptoserv.c
--- a/src/cryptoserv.c +++ b/src/cryptoserv.c @@ -59,7 +59,7 @@ main(int argc, char *argv[]) exit(1); } - struct passwd *urcd = getpwnam("urcd"); + struct passwd *urcd = getpwnam("urcd"); struct sockaddr_un s; struct dirent *file; struct stat stats; @@ -150,7 +150,7 @@ main(int argc, char *argv[]) memcpy(buffer2+2+12+4+8,":CryptoServ!URCD@service NOTICE ",32); if (EXPIRY) { - memcpy(path,"urcsigndb/",10); + memcpy(path,"urcsigndb/",10); if (!(directory=opendir("urcsigndb/"))) exit(5); while ((file=readdir(directory))) { @@ -161,7 +161,7 @@ main(int argc, char *argv[]) if (time((long *)0) - stats.st_atime >= EXPIRY) remove(path); } closedir(directory); - memcpy(path,"urccryptoboxdir/",16); + memcpy(path,"urccryptoboxdir/",16); if (!(directory=opendir("urccryptoboxdir/"))) exit(6); while ((file=readdir(directory))) { @@ -172,7 +172,7 @@ main(int argc, char *argv[]) if (time((long *)0) - stats.st_atime >= EXPIRY) remove(path); } closedir(directory); /* - memcpy(path,"urccryptoboxpfs/",16); + memcpy(path,"urccryptoboxpfs/",16); if (!(directory=opendir("urccryptoboxpfs/"))) exit(6); while ((file=readdir(directory))) { @@ -430,7 +430,7 @@ main(int argc, char *argv[]) } if (write(1,buffer0,i)<=0) exit(14); if ((i>=4)&&(!memcmp("quit",buffer1,4))) { - write(1,"",0); // send EOF + write(1,"",0); // send EOF exit(15); } } diff --git a/src/urcd.pyx b/src/urcd.pyx
--- a/src/urcd.pyx +++ b/src/urcd.pyx @@ -199,6 +199,10 @@ def sock_close(sn,sf): db['Mask'] = Mask db['Src'] = Src db.close() + try: os.write(0,"") ### send EOF ### + except: pass + try: os.write(wr,"") + except: pass sys.exit(sn&255) signal.signal(signal.SIGHUP,sock_close)
-----END OF PAGE-----
-- Response ended
-- Page fetched on Sun Jun 2 18:42:37 2024