Bug#274333: libgnomeprint 2.8.0 breaks gpdf
Loïc Minier
Loïc Minier ,
274333-quiet@bugs.debian.org
Wed, 6 Oct 2004 18:14:04 +0200
Loïc Minier <lool@dooz.org> - Wed, Oct 06, 2004:
> bee# netstat -anp | grep 631
> tcp 0 0 0.0.0.0:631 0.0.0.0:* =
LISTEN 2993/rpc.statd
Could people reading this and experiencing the problem check wether
they have something listening on TCP port 631?
If they do, what is it? cupsd? rpc.statd? something else?
If there's nothing listening there, does the gpdf freeze still happen?
Conclusions:
I think I am experiencing the first type of bug, which can be described
as:
if something is listening on TCP port 631 (a simple netcat for
example), and you use gpdf, some lib it uses will contact TCP port 631
and timeout.
This should be fixed by finding the culprit and telling it not to
contact port 631 if it has no clue that a CUPS server might run there.
This is only happening if you don't have cupsys on your system.
Another possible bug I am not experiencing is that:
cupsd is running and listening on TCP port 631, but is not responding
(in a timely manner or not responding correctly or not repsonding at
all) to a request made on port 631 by a lib used by gpdf.
The same fix as above applies, but we also need to fix a bug in CUPS
for such requests.
This can only happen if you have cupsys on your system.
Or the bug also happens when nothing listens on TCP port 631, and this
is a completely different bug than mine, but mine still has to be
resolved.
This can only happen wether you have cupsys on your system or not.
> I have no idea why rpc.statd uses 631, right now I suggest stopping NF=
S
> as a workaround.
For your information, rpc.statd contacts portmap to get a port
assigned. portmap uses svctcp_create to create such a socket.
svctcp_create is implemented in libc6 which calls bindresvport to get a
socket on a priviledged port. The port is choosen between 600 and
1023, starting with port = (__getpid () % 424) + 600, then checking
each port until an unused port is found (it wraps around at 1023).
Regards,
--
Loïc Minier <lool@dooz.org>