[Pdns-users] 2.9.22-rc1 coming up!
bert hubert
bert.hubert at netherlabs.nl
Tue Nov 18 10:43:27 UTC 2008
On Tue, Nov 18, 2008 at 10:45:43AM +0100, Ton van Rosmalen wrote:
> I probably should have said that I'm using the following options in m
> config-file
> - setuid
> - setgid
>
> Which might explain the problem I saw before my hack. No problems have
> been seen after my modification.
Many thanks Ton!
I tested this, and applied your change in
http://wiki.powerdns.com/cgi-bin/trac.fcgi/changeset/1295
New snapshot is coming up on svn.powerdns.com/snapshots/1295 in a few
minutes.
Bert
>
> I've attached a patch-file which contains the changes as I made them. I
> hope it
> comes through to the list.
>
> Regards,
>
> Ton
>
> Ton van Rosmalen schreef:
>
> Hi again,
>
> Ton van Rosmalen schreef:
>
>
> I just downgraded the supermaster back to 2.9.21 and pdns_control
> functions as it should.
> It connects to the control-socket send the notify and exits.
>
> When shutting down using the pdns-initscript it hung on 'pdns_control
> ping', so all usage of the
> control socket seems to give me problems.
>
> Is there anything I can test to provide more info on this issue I'm
> seeing?
>
>
> After looking into the code and the diffs between 2.9.21 and the
> snapshot I found the only difference
> between the old and new in the manner in which the control-socket is
> set-up in the server.
>
> In 2.9.21 only the local unix socket existed and this was set-up.
> In 2.9.22 both the local unix socket and a tcp/ip socket exist for which
> a shared function
> is create b the name 'createSocketAndBind'.
>
> The problem seems to be that this function essentially does a bind() and
> listen() after which the gid and mode
> of the control-socket is changed.
>
> Before it did a bind(), change gid/mode and listen().
>
> I did a quick hack to change behaviour as it was in 2.9.21 and
> pdns_control does everything I want it to.
>
> At this time I'm getting a bit cloudy in my head ;-) so if I don't make
> sense please forgive me.
>
> If the hack I made is of interest to anyone please let me know and I'll
> post a diff against snapshot 1293 to the list.
>
> Regards,
>
> Ton
> _______________________________________________
> Pdns-users mailing list
> Pdns-users at mailman.powerdns.com
> http://mailman.powerdns.com/mailman/listinfo/pdns-users
>
>
> !DSPAM:49228ed5133604495314143!
> Index: dynlistener.cc
> ===================================================================
> --- dynlistener.cc (revision 1294)
> +++ dynlistener.cc (working copy)
> @@ -74,8 +74,6 @@
> L<<Logger::Critical<<"Binding to dynlistener: "<<strerror(errno)<<endl;
> exit(1);
> }
> -
> - listen(d_s,10);
> }
>
> void DynListener::listenOnUnixDomain(const string& fname)
> @@ -100,6 +98,7 @@
> L<<Logger::Error<<"Unable to change group access mode of controlsocket: "<<strerror(errno)<<endl;
> }
>
> + listen(d_s,10);
>
> L<<Logger::Warning<<"Listening on controlsocket in '"<<fname<<"'"<<endl;
> d_nonlocal=true;
> @@ -108,6 +107,7 @@
> void DynListener::listenOnTCP(const ComboAddress& local)
> {
> createSocketAndBind(AF_INET, (struct sockaddr*)& local, local.getSocklen());
> + listen(d_s,10);
> d_socketaddress=local;
> L<<Logger::Warning<<"Listening on controlsocket on '"<<local.toStringWithPort()<<"'"<<endl;
> d_nonlocal=true;
>
> !DSPAM:49228ed5133604495314143!
--
http://www.PowerDNS.com Open source, database driven DNS Software
http://netherlabs.nl Open and Closed source services
More information about the Pdns-users
mailing list