Re: Crashing parent GnuGK while attempting additive registration from child

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

it seems Simon has already rewritten exactly that method (SetAliases)
for GnuGk 3.3. Did you try if the issue still happens with the latest
CVS ?

Regards,
Jan

Abes Dabir wrote:
> Simon, Jan,
> 
> Here is the backtrace:
> 
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> Core was generated by `/opt/magor/gnugk/bin/gnugk --config 
> /opt/magor/conf/gatekeeper.ini --pid /var/r'.
> Program terminated with signal 11, Segmentation fault.
> #0  0x000000000087d497 in PASN_Choice::operator= (this=0x0, other=...) 
> at ptclib/asner.cxx:1795
> 1795    ptclib/asner.cxx: No such file or directory.
> (gdb)
> (gdb) bt
> #0  0x000000000087d497 in PASN_Choice::operator= (this=0x0, other=...) 
> at ptclib/asner.cxx:1795
> #1  0x0000000000472b71 in H225_AliasAddress::operator= (this=0x0) at 
> /home/abes/Downloads/test/h323plus/include/h225.h:500
> #2  0x0000000000453b04 in EndpointRec::SetAliases (this=0x7f3cc8003cc0, 
> a=..., additive=true) at RasTbl.cxx:660
> #3  0x00000000004e543f in 
> RegistrationRequestPDU::HandleAdditiveRegistration (this=0x17f7960, 
> ep=...) at RasSrv.cxx:2577
> #4  0x00000000004e26a7 in RegistrationRequestPDU::Process 
> (this=0x17f7960) at RasSrv.cxx:2055
> #5  0x00000000004d9094 in RasMsg::Exec (this=0x17f7960) at RasSrv.cxx:382
> #6  0x000000000040c9b9 in Jobs::Run (this=0x17f7990) at job.cxx:409
> #7  0x000000000040b9de in Worker::Main (this=0x17f57a0) at job.cxx:182
> #8  0x00000000008d979d in PThread::PX_ThreadStart (arg=0x17f57a0) at 
> ptlib/unix/tlibthrd.cxx:491
> #9  0x00007f3ced2a2e9a in start_thread () from 
> /lib/x86_64-linux-gnu/libpthread.so.0
> #10 0x00007f3cebe59cbd in clone () from /lib/x86_64-linux-gnu/libc.so.6
> #11 0x0000000000000000 in ?? ()
> 
> 
> I was using the binaries before.  The above is from a fresh compilation 
> as per the chap 14 instructions.  Details:
> 
> Gatekeeper(GNU) Version(3.2.0) 
> Ext(pthreads=1,radius=1,mysql=0,pgsql=0,firebird=0,odbc=0,sqlite=0,large_fdset=0,crypto/ssl=1,h46018=0,h46023=1,ldap=0,ssh=0,ipv6=0,h235media=0,lua=0,h46017=1,snmp=1) 
> H323Plu
> s(1.25.0) PTLib(2.10.9) Build(Feb 22 2013, 14:10:06) Sys(Linux x86_64 
> 3.2.0-36-generic)
> 
> 
> Cheers,
> Abes
> 
> On 13-02-22 08:24 AM, Jan Willamowius wrote:
> > Hi Abes,
> >
> > could you please provide a stacktrace of the crash as explained in
> > chapter 14.3 of the manual ?
> > http://www.gnugk.org/gnugk-manual-14.html#ss14.3
> >
> > Please make sure you do a "make clean" before the compile.
> >
> > Thanks,
> > Jan
> >
> > Abes Dabir wrote:
> >> Hi,
> >>
> >> I've got a small test network setup with a parent GnuGk, and 2 child
> >> GnuGks.  I've upgraded the parent and one of the children to 3.2 and I'm
> >> trying to get additive registrations to work on the two upgraded
> >> systems.  I'm going to ignore the other child that is still running 3.1
> >> for now.  Basically, an endpoint behind the child, 6820, tries
> >> registering with the child, which sends the registration to the parent,
> >> at which point, the parent GnuGk crashes.
> >>
> >> Each of the two GnuGk instances is straddling a NAT.  Here is a crude
> >> representation of the network setup:
> >>
> >> endpoint(6820)[172.22.0.100] --------
> >> [172.22.0.10]GnuGk-Child[10.111.0.4] --------
> >> [10.111.0.1]GnuGk-Parent[192.168.217.119]
> >>
> >>
> >> I'd appreciate any help in getting this setup to work.
> >>
> >>
> >> Last lines of logging (Trace 5) on the parent before it dies:
> >> -----------------------------------------------------------------------------
> >>
> >> 2013/02/21 18:08:00.855    4          RasSrv.cxx(241)    RAS Receiving
> >> on 10.111.0.1:1719(U)
> >> 2013/02/21 18:08:00.856    2          RasSrv.cxx(176)    RAS    Read
> >> from 10.111.0.4:1719
> >> 2013/02/21 18:08:00.856    3          RasSrv.cxx(250)    RAS
> >> registrationRequest {
> >>       requestSeqNum = 4
> >>       protocolIdentifier = 0.0.8.2250.0.2
> >>       nonStandardData = {
> >>         nonStandardIdentifier = h221NonStandard {
> >>           t35CountryCode = 138
> >>           t35Extension = 2
> >>           manufacturerCode = 2
> >>         }
> >>         data =  13 octets {
> >>           49 50 3d 31 30 2e 31 31  31 2e 30 2e 34 IP=10.111.0.4
> >>         }
> >>       }
> >>       discoveryComplete = true
> >>       callSignalAddress = 1 entries {
> >>         [0]=ipAddress {
> >>           ip =  4 octets {
> >>             0a 6f 00 04                                        .o..
> >>           }
> >>           port = 1720
> >>         }
> >>       }
> >>       rasAddress = 1 entries {
> >>         [0]=ipAddress {
> >>           ip =  4 octets {
> >>             0a 6f 00 04                                        .o..
> >>           }
> >>           port = 1719
> >>         }
> >>       }
> >>       terminalType = {
> >>         mc = false
> >>         undefinedNode = false
> >>       }
> >>       terminalAlias = 2 entries {
> >>         [0]=dialedDigits "6820"
> >>         [1]=h323_ID  9 characters {
> >>           0068 0033 0032 0033 003a 0036 0038 0032   h323:682
> >>           0030                                      0
> >>         }
> >>       }
> >>       gatekeeperIdentifier =  11 characters {
> >>         004d 0061 0067 006f 0072 0048 0033 0032   MagorH32
> >>         0033 0047 004b                            3GK
> >>       }
> >>       endpointVendor = {
> >>         vendor = {
> >>           t35CountryCode = 0
> >>           t35Extension = 0
> >>           manufacturerCode = 0
> >>         }
> >>       }
> >>       keepAlive = true
> >>       endpointIdentifier =  9 characters {
> >>         0032 0036 0038 0039 005f 0065 006e 0064   2689_end
> >>         0070                                      p
> >>       }
> >>       willSupplyUUIEs = false
> >>       maintainConnection = false
> >>       additiveRegistration = <<null>>
> >>       supportsAltGK = <<null>>
> >>       supportsAssignedGK = false
> >>     }
> >> 2013/02/21 18:08:00.856    5             job.cxx(338)    JOB Worker
> >> threads: 7 total - 6 busy, 1 idle
> >> 2013/02/21 18:08:00.856    5             job.cxx(180)    JOB Starting
> >> Job RRQ at Worker thread 140337482516224
> >> 2013/02/21 18:08:00.856    1          RasSrv.cxx(381)    RAS    RRQ
> >> Received from 10.111.0.4:1719
> >> 2013/02/21 18:08:00.856    0          assert.cxx(112)    PWLib Assertion
> >> fail: Invalid array element, file /root/ptlib/include/ptlib/array.h,
> >> line 1063
> >>
> >>
> >>
> >> Log (Trace 3) from the child when it receives the RRQ from the endpoint
> >> behind it, and sends it to the parent:
> >> --------------------------------------------------------------------------------------------------------------------------------------------------
> >>
> >> 2013/02/21 18:08:00.854 2             RasSrv.cxx(176)   RAS     Read
> >> from 172.22.0.100:1719
> >> 2013/02/21 18:08:00.854 3             RasSrv.cxx(250)   RAS
> >> registrationRequest {
> >>       requestSeqNum = 42361
> >>       protocolIdentifier = 0.0.8.2250.0.6
> >>       discoveryComplete = false
> >>       callSignalAddress = 1 entries {
> >>         [0]=ipAddress {
> >>           ip =  4 octets {
> >>             ac 16 00 64                                        ...d
> >>           }
> >>           port = 1720
> >>         }
> >>       }
> >>       rasAddress = 1 entries {
> >>         [0]=ipAddress {
> >>           ip =  4 octets {
> >>             ac 16 00 64                                        ...d
> >>           }
> >>           port = 1719
> >>         }
> >>       }
> >>       terminalType = {
> >>         vendor = {
> >>           vendor = {
> >>             t35CountryCode = 9
> >>             t35Extension = 0
> >>             manufacturerCode = 61
> >>           }
> >>           productId =  21 octets {
> >>             46 72 65 65 53 57 49 54  43 48 20 6d 6f 64 5f 68 FreeSWITCH mod_h
> >>             33 32 33 00 00                                     323..
> >>           }
> >>           versionId =  30 octets {
> >>             31 2e 30 61 6c 70 68 61  31 20 28 48 33 32 33 70 1.0alpha1 (H323p
> >>             6c 75 73 20 76 31 2e 32  34 2e 30 29 00 00         lus v1.24.0)..
> >>           }
> >>         }
> >>         terminal = {
> >>         }
> >>         mc = false
> >>         undefinedNode = false
> >>       }
> >>       terminalAlias = 2 entries {
> >>         [0]=dialedDigits "6820"
> >>         [1]=h323_ID  9 characters {
> >>           0068 0033 0032 0033 003a 0036 0038 0032   h323:682
> >>           0030                                      0
> >>         }
> >>       }
> >>       gatekeeperIdentifier =  15 characters {
> >>         0050 0068 006f 0065 006e 0069 0078 002d   Phoenix-
> >>         0043 0068 0069 006c 0064 0047 004b        ChildGK
> >>       }
> >>       endpointVendor = {
> >>         vendor = {
> >>           t35CountryCode = 9
> >>           t35Extension = 0
> >>           manufacturerCode = 61
> >>         }
> >>         productId =  21 octets {
> >>           46 72 65 65 53 57 49 54  43 48 20 6d 6f 64 5f 68 FreeSWITCH mod_h
> >>           33 32 33 00 00                                     323..
> >>         }
> >>         versionId =  30 octets {
> >>           31 2e 30 61 6c 70 68 61  31 20 28 48 33 32 33 70   1.0alpha1 (H323p
> >>           6c 75 73 20 76 31 2e 32  34 2e 30 29 00 00         lus v1.24.0)..
> >>         }
> >>       }
> >>       timeToLive = 30
> >>       keepAlive = false
> >>       endpointIdentifier =  9 characters {
> >>         0038 0035 0038 0036 005f 0065 006e 0064   8586_end
> >>         0070                                      p
> >>       }
> >>       willSupplyUUIEs = true
> >>       maintainConnection = false
> >>       supportsAltGK = <<null>>
> >>       usageReportingCapability = {
> >>         nonStandardUsageTypes = 0 entries {
> >>         }
> >>         startTime = <<null>>
> >>         endTime = <<null>>
> >>         terminationCause = <<null>>
> >>       }
> >>       callCreditCapability = {
> >>         canEnforceDurationLimit = true
> >>       }
> >>     }
> >> 2013/02/21 18:08:00.855 1             RasSrv.cxx(381)   RAS     RRQ
> >> Received from 172.22.0.100:1719
> >> 2013/02/21 18:08:00.855 3             RasSrv.cxx(262)   RAS     Send to
> >> 10.111.0.1:1719
> >> registrationRequest {
> >>       requestSeqNum = 4
> >>       protocolIdentifier = 0.0.8.2250.0.2
> >>       nonStandardData = {
> >>         nonStandardIdentifier = h221NonStandard {
> >>           t35CountryCode = 138
> >>           t35Extension = 2
> >>           manufacturerCode = 2
> >>         }
> >>         data =  13 octets {
> >>           49 50 3d 31 30 2e 31 31  31 2e 30 2e 34 IP=10.111.0.4
> >>         }
> >>       }
> >>       discoveryComplete = true
> >>       callSignalAddress = 1 entries {
> >>         [0]=ipAddress {
> >>           ip =  4 octets {
> >>             0a 6f 00 04                                        .o..
> >>           }
> >>           port = 1720
> >>         }
> >>       }
> >>       rasAddress = 1 entries {
> >>         [0]=ipAddress {
> >>           ip =  4 octets {
> >>             0a 6f 00 04                                        .o..
> >>           }
> >>           port = 1719
> >>         }
> >>       }
> >>       terminalType = {
> >>         mc = false
> >>         undefinedNode = false
> >>       }
> >>       terminalAlias = 2 entries {
> >>         [0]=dialedDigits "6820"
> >>         [1]=h323_ID  9 characters {
> >>           0068 0033 0032 0033 003a 0036 0038 0032   h323:682
> >>           0030                                      0
> >>         }
> >>       }
> >>       gatekeeperIdentifier =  11 characters {
> >>         004d 0061 0067 006f 0072 0048 0033 0032   MagorH32
> >>         0033 0047 004b                            3GK
> >>       }
> >>       endpointVendor = {
> >>         vendor = {
> >>           t35CountryCode = 0
> >>           t35Extension = 0
> >>           manufacturerCode = 0
> >>         }
> >>       }
> >>       keepAlive = true
> >>       endpointIdentifier =  9 characters {
> >>         0032 0036 0038 0039 005f 0065 006e 0064   2689_end
> >>         0070                                      p
> >>       }
> >>       willSupplyUUIEs = false
> >>       maintainConnection = false
> >>       additiveRegistration = <<null>>
> >>       supportsAltGK = <<null>>
> >>       supportsAssignedGK = false
> >>     }
> >>
> >>
> >> Configuration on the parent:
> >> --------------------------------------
> >>
> >> [Gatekeeper::Main]
> >> Fourtytwo = 42
> >> Name = MagorH323GK
> >> TimeToLive = 100
> >> StatusPort = 7000
> >> TraceLevel = 5
> >> Home = 10.111.0.1,192.168.217.119,127.0.0.1
> >> ExternalIP = 192.168.217.119
> >>
> >> [RoutedMode]
> >> GKRouted = 1
> >> H245Routed = 1
> >> AcceptUnregisteredCalls = 1
> >> AcceptNeighborsCalls = 1
> >> CallSignalPort = 1720
> >> CallSignalHandlerNumber = 1
> >> RemoveH245AddressOnTunneling = 1
> >> DropCallsByReleaseComplete = 1
> >> SupportNATedEndpoints = 1
> >> SupportCallingNATedEndpoints = 1
> >> Q931PortRange = 30000-30099
> >> H245PortRange = 31000-31099
> >> SendReleaseCompleteOnDRQ = 1
> >>
> >> [Proxy]
> >> Enable = 1
> >> InternalNetwork = 10.111.0.1/255.255.0.0
> >> T120PortRange = 32000-41999
> >> RTPPortRange = 32000-41999
> >> ProxyForNAT = 1
> >> ProxyForSameNAT = 0
> >> ProxyAlways = 1
> >>
> >> [RasSrv::LRQFeatures]
> >> NeighborTimeout = 6
> >> ForwardHopCount = 8
> >> AlwaysForwardLRQ = 1
> >> IncludeDestinationInfoInLCF = 1
> >> CiscoGKCompatible = 1
> >>
> >> [RasSrv::RRQFeatures]
> >> EnableAdditiveRegistration=1
> >>
> >> [RoutingPolicy]
> >> default = explicit,internal,enum,srv,dns
> >>
> >> [GkStatus::Auth]
> >> rule = explicit
> >> DelayReject = 5
> >> 127.0.0.1 = allow
> >>
> >> [LogFile]
> >> Rotate = Weekly
> >> RotateDay = Sun
> >> RotateTime = 00:59
> >> Filename = /var/log/magor/gnugk/gnugk.log
> >>
> >> [PortNotifications]
> >> Q931PortOpen =
> >> /opt/magor/util/scripts/firewall/gnugk/open-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> Q931PortClose =
> >> /opt/magor/util/scripts/firewall/gnugk/close-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> H245PortOpen =
> >> /opt/magor/util/scripts/firewall/gnugk/open-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> H245PortClose =
> >> /opt/magor/util/scripts/firewall/gnugk/close-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> RTPPortOpen =
> >> /opt/magor/util/scripts/firewall/gnugk/open-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> RTPPortClose =
> >> /opt/magor/util/scripts/firewall/gnugk/close-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >>
> >>
> >>
> >>
> >> Configuration on the child:
> >> -----------------------------------
> >>
> >> [Gatekeeper::Main]
> >> Fourtytwo = 42
> >> Name = Phoenix-ChildGK
> >> TimeToLive = 100
> >> StatusPort = 7000
> >> TraceLevel = 3
> >> Home = 172.22.0.10,10.111.0.4,127.0.0.1
> >> ExternalIP = 10.111.0.4
> >>
> >> [RoutedMode]
> >> GKRouted = 1
> >> H245Routed = 1
> >> AcceptUnregisteredCalls = 1
> >> AcceptNeighborsCalls = 1
> >> CallSignalPort = 1720
> >> CallSignalHandlerNumber = 1
> >> RemoveH245AddressOnTunneling = 1
> >> DropCallsByReleaseComplete = 1
> >> SupportNATedEndpoints = 1
> >> SupportCallingNATedEndpoints = 1
> >> Q931PortRange = 30000-30099
> >> H245PortRange = 31000-31099
> >> SendReleaseCompleteOnDRQ = 1
> >>
> >> [Proxy]
> >> Enable = 1
> >> InternalNetwork = 172.22.0.10/255.255.255.0
> >> T120PortRange = 32000-41999
> >> RTPPortRange = 32000-41999
> >> ProxyForNAT = 1
> >> ProxyForSameNAT = 0
> >> ProxyAlways = 1
> >>
> >> [RasSrv::LRQFeatures]
> >> NeighborTimeout = 6
> >> ForwardHopCount = 8
> >> AlwaysForwardLRQ = 1
> >> IncludeDestinationInfoInLCF = 1
> >> CiscoGKCompatible = 1
> >>
> >> [RasSrv::RRQFeatures]
> >> EnableAdditiveRegistration=1
> >>
> >> [RoutingPolicy]
> >> default = explicit,internal,parent
> >>
> >> [GkStatus::Auth]
> >> rule = explicit
> >> DelayReject = 5
> >> 127.0.0.1 = allow
> >>
> >> [LogFile]
> >> Rotate = Weekly
> >> RotateDay = Sun
> >> RotateTime = 00:59
> >> Filename = /var/log/magor/gnugk/gnugk.log
> >>
> >> [PortNotifications]
> >> Q931PortOpen =
> >> /opt/magor/util/scripts/firewall/gnugk/open-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> Q931PortClose =
> >> /opt/magor/util/scripts/firewall/gnugk/close-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> H245PortOpen =
> >> /opt/magor/util/scripts/firewall/gnugk/open-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> H245PortClose =
> >> /opt/magor/util/scripts/firewall/gnugk/close-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> RTPPortOpen =
> >> /opt/magor/util/scripts/firewall/gnugk/open-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >> RTPPortClose =
> >> /opt/magor/util/scripts/firewall/gnugk/close-pinhole-inbound-gnugk.sh %p
> >> %n %i
> >>
> >> [Endpoint]
> >> Gatekeeper = 10.111.0.1
> >> EnableAdditiveRegistration=1
> >>
> >>
> >>
> >>
> >> Thanks,
> >> Abes Dabir

-- 
Jan Willamowius, jan@xxxxxxxxxxxxxx, http://www.gnugk.org/

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________________

Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_name=openh323gk-users
Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users
Homepage: http://www.gnugk.org/


[Index of Archives]     [SIP]     [Open H.323]     [Gnu Gatekeeper]     [Asterisk PBX]     [ISDN Cause Codes]     [Yosemite News]

  Powered by Linux