Re: Porting Bind
Please find the parts of the source code that are making these calls and
give us some more detail about what they are doing. This is a general
request to anyone doing porting of miscellaneous code to the Hurd--posting
that program's error output alone does not make it very easy for us to help
you figure out the problem.
setrlimit fails with ENOSYS with you try to set the hard limit (since we
have no enforced limits). Most programs only try to lower the soft limit,
but named might have a good reason to want to set the hard limit (e.g. to
constrain when a child process run under a non-root uid can do).
Probably the right solution is to change setrlimit to claim success for
setting hard limits in most cases. But I'd like to see how this is used
before deciding about that.
As to SO_REUSEADDR, that certainly ought to be there. Please double-check
the exact usage of the call in named and show it to us here. Also, run
named under gdb do:
when each one hits do "finish" and tell us what you see. i.e., whether the
socket_setopt RPC call being made, with what arguments, and what value it
returns. If all looks kosher on that end, the problem is in pfinet (this
is the most likely situation, I would guess).