Re: GNU GK 2.2.7-3 crashes on receiving SETUP from unregistered Cisco Voice Gateway

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

 



Hi Dennis,

its crashing inside the H.450.2 call transfer emulator. You can disable
the emulator by removing EnableH450.2=1 or compiling against OpenH323
Atlas.

I've checked in a missing check for the m_call member for GnuGk 2.2.8,
but I'm not sure thats all it takes. If you have a chance to try
2.2.8CVS, that would be great.

Regards,
Jan

Denis Kochmashev "Enforta" wrote:
> Hello!
> 
> PTLib: 2.0.1-4
> H323Plus: 1.20-beta3 (CVS 2008-04-14)
> GNU GK: 2.2.7-3
> 
> GNU GK crashes on receiving SETUP from Cisco Voice Gateway which is not
> registered and not listed in permanent endpoints:
> 
> 2008/07/02 11:23:02.308 5           yasocket.cxx(783)   TCPSrv  1 sockets
> selected from 6, total 6/0
> 2008/07/02 11:23:02.308 4           yasocket.cxx(905)   TCPSrv  Accept
> request on 172.24.34.6:1720
> 2008/07/02 11:23:02.308 6           yasocket.cxx(933)   TCPSrv  Accepted new
> connection on 172.24.34.6:1720 from 10.34.77.2:52894
> 2008/07/02 11:23:02.308 5                job.cxx(363)   JOB     Worker
> threads: 25 total - 23 busy, 2 idle
> 2008/07/02 11:23:02.308 5                job.cxx(189)   JOB     Starting Job
> Acceptor at Worker thread 3078269872
> 2008/07/02 11:23:02.313 5       ProxyChannel.cxx(623)   Q931s   Reading from
> 10.34.77.2:52894
> 2008/07/02 11:23:02.313 3       ProxyChannel.cxx(899)   Q931s   Received:
> Setup CRV=7 from 10.34.77.2:52894
> 2008/07/02 11:23:02.314 4       ProxyChannel.cxx(842)   Q931    Received: {
>   q931pdu = {
>     protocolDiscriminator = 8
>     callReference = 7
>     from = originator
>     messageType = Setup
>     IE: Bearer-Capability = {
>       80 90 a3                                           ...
>     }
>     IE: Display = {
>       31 39 35 36 37                                     19567
>     }
>     IE: Calling-Party-Number = {
>       80 32 36 32 32 32 30                               .262220
>     }
>     IE: Called-Party-Number = {
>       80 32 39 39 35 38 30                               .299580
>     }
>     IE: User-User = {
>       20 80 06 00 08 91 4a 00  04 28 00 b5 00 00 12 40    .....J..(.....@
>       01 3c 05 01 00 00 83 6b  37 56 47 3e 11 dd 92 70   .<.....k7VG>...p
>       d6 9b 3c 20 e3 3d 00 cd  1d 82 00 07 00 0a 22 4d   ..< .=........"M
>       02 ce 9e 11 00 83 6b 37  56 47 3e 11 dd 92 72 d6   ......k7VG>...r.
>       9b 3c 20 e3 3d 34 02 13  00 00 00 0c 20 13 80 0b   .< .=4...... ...
>       05 00 01 00 0a 22 4d 02  42 c1 80 1e 40 00 00 06   ....."M.B...@...
>       04 01 00 4c 20 13 80 12  15 00 01 00 0a 22 4d 02   ...L ........"M.
>       42 c0 00 0a 22 4d 02 42  c1 80 01 00 01 00 01 80   B..."M.B........
>       01 80 01 00 11 a8 10 01  0e 60 00 01 10 00 37 00   .........`....7.
>       01 55 04 43 00 00 00 01  80 52 01 40 b5 00 00 12   .U.C.....R.@....
>       4b e0 01 12 00 01 1c 3b  1c 39 9e 01 00 03 67 74   K......;.9....gt
>       64 00 00 00 2e 49 41 4d  2c 0d 0a 47 43 49 2c 38   d....IAM,..GCI,8
>       33 36 62 33 37 35 36 34  37 33 65 31 31 64 64 39   36b3756473e11dd9
>       32 37 30 64 36 39 62 33  63 32 30 65 33 33 64 0d   270d69b3c20e33d.
>       0a 0d 0a 0a 80 06 00 04  00 00 00 03 35 02 04 67   ............5..g
>       74 64 01 2e 49 41 4d 2c  0d 0a 47 43 49 2c 38 33   td..IAM,..GCI,83
>       36 62 33 37 35 36 34 37  33 65 31 31 64 64 39 32   6b3756473e11dd92
>       37 30 64 36 39 62 33 63  32 30 65 33 33 64 0d 0a   70d69b3c20e33d..
>       0d 0a                                              ..
>     }
>   }
>   h225pdu = {
>     h323_uu_pdu = {
>       h323_message_body = setup {
>         protocolIdentifier = 0.0.8.2250.0.4
>         sourceInfo = {
>           vendor = {
>             vendor = {
>               t35CountryCode = 181
>               t35Extension = 0
>               manufacturerCode = 18
>             }
>           }
>           gateway = {
>             protocol = 1 entries {
>               [0]=voice {
>                 supportedPrefixes = 0 entries {
>                 }
>               }
>             }
>           }
>           mc = FALSE
>           undefinedNode = FALSE
>         }
>         activeMC = FALSE
>         conferenceID =  16 octets {
>           83 6b 37 56 47 3e 11 dd  92 70 d6 9b 3c 20 e3 3d   .k7VG>...p..<
> .=
>         }
>         conferenceGoal = create <<null>>
>         callType = pointToPoint <<null>>
>         sourceCallSignalAddress = ipAddress {
>           ip =  4 octets {
>             0a 22 4d 02                                        ."M.
>           }
>           port = 52894
>         }
>         callIdentifier = {
>           guid =  16 octets {
>             83 6b 37 56 47 3e 11 dd  92 72 d6 9b 3c 20 e3 3d   .k7VG>...r..<
> .=
>           }
>         }
>         fastStart = 2 entries {
>           [0]= 19 octets {
>             00 00 00 0c 20 13 80 0b  05 00 01 00 0a 22 4d 02   ....
> ........"M.
>             42 c1 80                                           B..
>           }
>           [1]= 30 octets {
>             40 00 00 06 04 01 00 4c  20 13 80 12 15 00 01 00   @......L
> .......
>             0a 22 4d 02 42 c0 00 0a  22 4d 02 42 c1 80
> ."M.B..."M.B..
>           }
>         }
>         mediaWaitForConnect = FALSE
>         canOverlapSend = FALSE
>         multipleCalls = TRUE
>         maintainConnection = TRUE
>         symmetricOperationRequired = <<null>>
>       }
>       h4501SupplementaryService = 1 entries {
>         [0]= 14 octets {
>           60 00 01 10 00 37 00 01  55 04 43 00 00 00         `....7..U.C...
>         }
>       }
>       h245Tunneling = TRUE
>       nonStandardControl = 1 entries {
>         [0]={
>           nonStandardIdentifier = h221NonStandard {
>             t35CountryCode = 181
>             t35Extension = 0
>             manufacturerCode = 18
>           }
>           data =  75 octets {
>             e0 01 12 00 01 1c 3b 1c  39 9e 01 00 03 67 74 64
> ......;.9....gtd
>             00 00 00 2e 49 41 4d 2c  0d 0a 47 43 49 2c 38 33
> ....IAM,..GCI,83
>             36 62 33 37 35 36 34 37  33 65 31 31 64 64 39 32
> 6b3756473e11dd92
>             37 30 64 36 39 62 33 63  32 30 65 33 33 64 0d 0a
> 70d69b3c20e33d..
>             0d 0a 0a 80 06 00 04 00  00 00 03                  ...........
>           }
>         }
>       }
>       tunnelledSignallingMessage = {
>         tunnelledProtocolID = {
>           id = tunnelledProtocolAlternateID {
>             protocolType = "gtd"
>           }
>         }
>         messageContent = 1 entries {
>           [0]= 46 octets {
>             49 41 4d 2c 0d 0a 47 43  49 2c 38 33 36 62 33 37
> IAM,..GCI,836b37
>             35 36 34 37 33 65 31 31  64 64 39 32 37 30 64 36
> 56473e11dd9270d6
>             39 62 33 63 32 30 65 33  33 64 0d 0a 0d 0a
> 9b3c20e33d....
>           }
>         }
>       }
>     }
>   }
> }
> 
> GDB shows the following:
> 
> [mmsvc@xxxxxxxxx tmp]$ gdb -c core.32070 ~/bin/gnugk-debug
> GNU gdb Red Hat Linux (6.3.0.0-1.132.EL4rh)
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db
> library "/lib/tls/libthread_db.so.1".
> 
> 
> warning: core file may not match specified executable file.
> Core was generated by `/usr/local/mmsvc/bin/gnugk -tttttt -u mmsvc -c
> /usr/local/mmsvc/etc/gk.ini -o /'.
> Program terminated with signal 11, Segmentation fault.
> Reading symbols from
> /usr/local/mmsvc/lib/libh323_linux_x86_d.so.1.20-beta3...done.
> Loaded symbols for /usr/local/mmsvc/lib/libh323_linux_x86_d.so.1.20-beta3
> Reading symbols from /usr/local/mmsvc/lib/libpt_linux_x86_d.so.2.0.1...done.
> Loaded symbols for /usr/local/mmsvc/lib/libpt_linux_x86_d.so.2.0.1
> Reading symbols from /usr/lib/libldap-2.2.so.7...done.
> Loaded symbols for /usr/lib/libldap-2.2.so.7
> Reading symbols from /usr/lib/liblber-2.2.so.7...done.
> Loaded symbols for /usr/lib/liblber-2.2.so.7
> Reading symbols from /usr/lib/libldap_r-2.2.so.7...done.
> Loaded symbols for /usr/lib/libldap_r-2.2.so.7
> Reading symbols from /lib/tls/libpthread.so.0...done.
> Loaded symbols for /lib/tls/libpthread.so.0
> Reading symbols from /usr/lib/libsasl2.so.2...done.
> Loaded symbols for /usr/lib/libsasl2.so.2
> Reading symbols from /lib/libssl.so.4...done.
> Loaded symbols for /lib/libssl.so.4
> Reading symbols from /lib/libcrypto.so.4...done.
> Loaded symbols for /lib/libcrypto.so.4
> Reading symbols from /usr/lib/libexpat.so.0...done.
> Loaded symbols for /usr/lib/libexpat.so.0
> Reading symbols from /lib/libresolv.so.2...done.
> Loaded symbols for /lib/libresolv.so.2
> Reading symbols from /lib/libdl.so.2...done.
> Loaded symbols for /lib/libdl.so.2
> Reading symbols from /usr/lib/libstdc++.so.6...done.
> Loaded symbols for /usr/lib/libstdc++.so.6
> Reading symbols from /lib/tls/libm.so.6...done.
> Loaded symbols for /lib/tls/libm.so.6
> Reading symbols from /lib/libgcc_s.so.1...done.
> Loaded symbols for /lib/libgcc_s.so.1
> Reading symbols from /lib/tls/libc.so.6...done.
> Loaded symbols for /lib/tls/libc.so.6
> Reading symbols from /lib/ld-linux.so.2...done.
> Loaded symbols for /lib/ld-linux.so.2
> Reading symbols from /lib/libcrypt.so.1...done.
> Loaded symbols for /lib/libcrypt.so.1
> Reading symbols from /usr/lib/libgssapi_krb5.so.2...done.
> Loaded symbols for /usr/lib/libgssapi_krb5.so.2
> Reading symbols from /usr/lib/libkrb5.so.3...done.
> Loaded symbols for /usr/lib/libkrb5.so.3
> Reading symbols from /lib/libcom_err.so.2...done.
> Loaded symbols for /lib/libcom_err.so.2
> Reading symbols from /usr/lib/libk5crypto.so.3...done.
> Loaded symbols for /usr/lib/libk5crypto.so.3
> Reading symbols from /usr/lib/libz.so.1...done.
> Loaded symbols for /usr/lib/libz.so.1
> Reading symbols from
> /usr/local/mmsvc/lib/ptlib/devices/videoinput/v4l2_pwplugin.so...done.
> Loaded symbols for
> /usr/local/mmsvc/lib/ptlib/devices/videoinput/v4l2_pwplugin.so
> Reading symbols from
> /usr/local/mmsvc/lib/ptlib/devices/videoinput/v4l_pwplugin.so...done.
> Loaded symbols for
> /usr/local/mmsvc/lib/ptlib/devices/videoinput/v4l_pwplugin.so
> Reading symbols from /lib/libnss_files.so.2...done.
> Loaded symbols for /lib/libnss_files.so.2
> #0  CallSignalSocket::ReceiveData (this=0x9f932d0) at RasTbl.h:44
> 44              SmartPtr(const SmartPtr<T> & p) : pt(p.pt) { Inc(); }
> (gdb) bt full
> #0  CallSignalSocket::ReceiveData (this=0x9f932d0) at RasTbl.h:44
>         ep = {pt = 0x0}
> #1  0x0810a37c in CallSignalSocket::Dispatch (this=0x9f932d0) at
> ProxyChannel.cxx:2990
>         lock = {mutex = @0x8172f60}
>         channelStart = {<PObject> = {_vptr.PObject = 0x816ef68}, theTime =
> 1214983382, microseconds = 308419}
>         timeout = 5000
> #2  0x08066a3c in Worker::Main (this=0xb7d196d0) at job.cxx:191
>         timedout = 4
> #3  0x00e2781f in PThread::PX_ThreadStart (arg=0xb7d196d0) at
> tlibthrd.cxx:1361
>         _buffer = {__routine = 0xe27840 <PThread::PX_ThreadEnd(void*)>,
> __arg = 0xb7d196d0, __canceltype = 1, __prev = 0x0}
>         thread = (PThread *) 0xb7d196d0
> #4  0x0018b371 in start_thread () from /lib/tls/libpthread.so.0
> No symbol table info available.
> #5  0x0103cffe in clone () from /lib/tls/libc.so.6
> No symbol table info available.


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

-------------------------------------------------------------------------
Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
Studies have shown that voting for your favorite open source project,
along with a healthy diet, reduces your potential for chronic lameness
and boredom. Vote Now at http://www.sourceforge.net/community/cca08
_______________________________________________________

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