On Wed, May 26, 2010 at 11:01:38AM +0200, Stephane Bortzmeyer wrote:
> [BTW, it would be better to do so on a ticketing system but I cannot
> find a way to create a new ticket in the PowerDNS Trac.]

There is some anti-spam trickery:
TO FILE BUGS, OR CHANGE THE WIKI, CLICK 'LOGIN' ABOVE, USERNAME anon
PASSWORD "No Spam" without quotes or the space in between '

So the password is NoSpam 

> > Could you split line 1508 as follows:
> > 
> > NetmaskGroup* oldAllowFrom = t_allowFrom;
> > NetmaskGroup* allowFrom = new NetmaskGroup;
> 
> (gdb) run
> Starting program: 
> /home/stephane/Programmation/DNS/pdns-recursor-3.2/pdns_recursor 
> May 26 10:59:56 PowerDNS recursor 3.2 (C) 2001-2010 PowerDNS.COM BV (May 26 
> 2010, 10:58:27, gcc 4.1.3 20080704 prerelease (NetBSD nb2 20081120)) starting 
> up
> May 26 10:59:56 PowerDNS comes with ABSOLUTELY NO WARRANTY. This is free 
> software, and you are welcome to redistribute it according to the terms of 
> the GPL version 2.
> May 26 10:59:56 Operating in 32 bits mode
> May 26 10:59:56 Reading random entropy from '/dev/urandom'
> 
> Program received signal SIGSEGV, Segmentation fault.
> parseACLs () at pdns_recursor.cc:1508
> 1508      NetmaskGroup* oldAllowFrom = t_allowFrom;

We could probably boil this issue down to a tiny testcase that would crash
on NetBSD. This could then lead to a bugreport to NetBSD.

Can you try to compile this (g++ t.cc -o t):
#include <stdio.h>


class Bogo
{
public:

  explicit Bogo(char a)
  {
    d_a = a;
  }

  char d_a;
};

__thread Bogo* t_a;

int main()
{
  t_a = new Bogo('a');
  
  Bogo* b = t_a;
  
  printf("%c\n", b->d_a);
}

It is unlikely that PowerDNS will remove the __thread variables since they
work very well on all other relevant platforms ;-(

        Bert
_______________________________________________
Pdns-users mailing list
Pdns-users@mailman.powerdns.com
http://mailman.powerdns.com/mailman/listinfo/pdns-users

Reply via email to