Re: Crashing parent GnuGK while attempting additive registration from child

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

 



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


------------------------------------------------------------------------------
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