lynx-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Lynx-dev] unkillable hanging connections


From: Thorsten Glaser
Subject: [Lynx-dev] unkillable hanging connections
Date: Fri, 15 Jan 2016 00:20:32 +0000 (UTC)

Hi,

I’ve occasionally got unkillable (with z or ^G) hanging connections,
which is quite annoying because if I kill lynx I don’t get my
cookies.txt file updated and lose other state.

I now found out a few things:

• even during normal operation, a zombie is kept around:

address@hidden:~ $ ps ax|fgrep lynx
 7106 p9  ZW+     0:00.00 (lynx)
 3343 p9  I+      0:52.49 lynx

• during the hanging event, a TCP connection is open:

address@hidden:~ $ ps ax|fgrep lynx
 4269 p9  ZW+     0:00.00 (lynx)
 3343 p9  I+      0:52.09 lynx
16864 pa  I+      0:00.01 fgrep lynx
address@hidden:~ $ netstat -anp|fgrep -e 4269 -e 3343
netstat: option requires an argument -- p
usage: netstat [-Aan] [-f address_family] [-M core] [-N system]
       netstat [-bdgilmnqrSstu] [-f address_family] [-M core] [-N system]
       netstat [-bdn] [-I interface] [-M core] [-N system] [-w wait]
       netstat [-s] [-M core] [-N system] [-p protocol]
       netstat [-a] [-f address_family] [-i | -I interface]
1|address@hidden:~ $ man fstat
[…]
address@hidden:~ $ fstat -p 4269
USER     CMD          PID   FD MOUNT      INUM MODE       R/W    DV|SZ
address@hidden:~ $ fstat -p 3343
USER     CMD          PID   FD MOUNT      INUM MODE       R/W    DV|SZ
tg       lynx        3343   wd /        2514177 drwx------   r     1536
tg       lynx        3343    0 /        1818857 crw-------  rw    ttyp9
tg       lynx        3343    1 /        1818857 crw-------  rw    ttyp9
tg       lynx        3343    2 /        1818857 crw-------  rw    ttyp9
tg       lynx        3343    3* internet stream tcp 0xe8da897c 
192.168.0.225:47056 --> 63.251.163.200:443
address@hidden:~ $ tcpdrop
usage: tcpdrop laddr lport faddr fport
1|address@hidden:~ $ tcpdrop 192.168.0.225 47056  63.251.163.200 443
tcpdrop: 192.168.0.225 47056 63.251.163.200 443: Operation not permitted
1|address@hidden:~ $ doch
192.168.0.225 47056 63.251.163.200 443: dropped

Et voilà, lynx reacts again. The tcpdrop(8) tool is a rather
recent OpenBSD invention and just kills a connection kernel-side:
https://www.mirbsd.org/man8/tcpdrop (may be down for a while,
the server has got hardware issues I’ll ask the hoster to look
at tomorrow).

Any idea?

configure options: --prefix=/usr --sysconfdir=/etc --enable-echo
--enable-vertrace --enable-warnings --disable-nls --disable-full-paths
--with-ssl --without-gnutls --without-socks --without-socks5
--without-pkg-config --enable-ipv6 --with-screen=ncursesw
--enable-widec --enable-color-style --disable-htmlized-cfg
--enable-locale-charset --disable-sessions --disable-session-cache
--enable-addrlist-page --enable-cjk --enable-japanese-utf8
--enable-default-colors --enable-kbd-layout --enable-nested-tables
--enable-ascii-ctypes --disable-idna --enable-justify-elts
--enable-progressbar --disable-scrollbar --enable-charset-choice
--enable-externs --enable-internal-links --enable-nsl-fork
--enable-underlines --without-bzlib --with-zlib --without-x
--disable-rpath-hack --build=i386-ecce-mirbsd10
--host=i386-ecce-mirbsd10 --srcdir=/usr/src/gnu/usr.bin/lynx

OS: MirBSD (synchronous DNS, IIRC, which is probably the
cause for the zombie due to --enable-nsl-fork though adding
a wait* syscall at some good place might fix that)

bye,
//mirabilos
-- 
Stéphane, I actually don’t block Googlemail, they’re just too utterly
stupid to successfully deliver to me (or anyone else using Greylisting
and not whitelisting their ranges). Same for a few other providers such
as Hotmail. Some spammers (Yahoo) I do block.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]