Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Nov 2004 23:49:59 +0000
From:      Matt Mills <matt_mills@btopenworld.com>
To:        Andrey Slusar <anray@inet.ua>
Cc:        ports@FreeBSD.org
Subject:   Re: pdnsd Error in udp send: Invalid argument
Message-ID:  <41A3CCA7.5000501@btopenworld.com>
In-Reply-To: <86ekil7nh1.fsf@santinel.home.ua>
References:  <419F3CDB.40207@btopenworld.com> <41A09BAF.8050508@btopenworld.com> <41A2034B.90500@btopenworld.com> <86ekil7nh1.fsf@santinel.home.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
Andrey Slusar wrote:
> Mon, 22 Nov 2004 15:18:35 +0000, Matt Mills wrote:
[...]
>> The maintainer of the pdnsd port is apparently ports@oven.org. I 
>> sent an email to this address with details of the problem and 
>> solution, but just got a delivery failure notice.
>> 
>> Where do I go from here to get this solved?
> 
> See the PR ports/73296 - this is a update to version 1.2. This bug is
>  reproduced on the version 1.2?

Yes, the bug is still existent in v1.2.

Just for clarity, the reply I had from the author of pdnsd which
confirmed a workaround can be found below.

<snip>
Based on the information you have given me, I have traced the source of
the error message to the sendmsg() call in the function
udp_answer_thread() in the file dns_answer.c. It seems to me that
something in the kernel is complaining about the way the "struct msghdr
*msg" argument is set up. My guess is that the kernel doesn't like the
control message given via the msg_control field of the struct msghdr.

To test this, I suggest that you recompile pdnsd after running configure
  with the --disable-src-addr-disc option. This will set the msg_control
field to NULL, so if this really was the problematic part of the data
structure, the sendmsg() call should be able to work normally.

Of course with the --disable-src-addr-disc, UDP source address discovery
will be disabled. I don't know how important this is to you.
The control message necessary for UDP source address discovery is very
platform dependent and rather obscure. Unfortunately, I don't have any
experience with FreeBSD systems, so we will need input from someone with
the necessary expertise to get this fixed properly.
</snip>

Shall I commit a PR, or does anyone have further insights?

-- 
Matt



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41A3CCA7.5000501>