Commit Graph

52 Commits

Author SHA1 Message Date
Jaap Keuter 036661ed3d Somewhat improve heuristic when SIP is encapsulated in another protocol.
svn path=/trunk/; revision=18531
2006-06-21 17:57:10 +00:00
Anders Broman 581f2e92aa From Martin Mathieson:
This version of the patch won't look for the authentication scheme (it 
just skips that part for Authentication-Info headers).  I tested it 
using the enclosed file (pasted from the RFC and fed through 
od/text2pcap, then messed around with so I could test the other new 
parameters, even if they don't really belong in that header...).

svn path=/trunk/; revision=18244
2006-05-29 18:13:55 +00:00
Ronnie Sahlberg feab79e328 change a whole bunch of ethereal into wireshark
svn path=/trunk/; revision=18196
2006-05-21 04:49:01 +00:00
Anders Broman e4f01d2051 From Martin Mathieson:
> > This patch adds a hidden 'sip.auth' field, that will be present 
> > whenever one of the authenticiation/authorization headers is 
> > present.
> >
> > I believe this is one place where hidden fields are justified:
> > - it is a substring of several sip.auth.* fields, so its reassuring 
> > to see the field turn green as you're typing in one of the visible 
> > fields
> > - it lets you quickly find all of the frames with any of these fields
> > (there are 4 different SIP headers that can contain the auth fields)

svn path=/trunk/; revision=17766
2006-03-30 05:02:06 +00:00
Lars Roland e810b7a424 - dissect sip headers properly when they are extended over multiple lines
- skip white space characters, including CR and LF on various places (not complete yet, but better than before)

svn path=/trunk/; revision=17665
2006-03-18 20:28:40 +00:00
Lars Roland 87e4a20bbb Make some string comparisons case insensitive in the sip dissector
svn path=/trunk/; revision=17662
2006-03-18 04:40:11 +00:00
Lars Roland fc81794dc9 based on a patch from Martin Mathieson:
- dissection of SIP headers containing credentials and challenges.

from me:
- add filter fields for some missing related parameters from RFC 3261
- improve calculation of parameter length.

This implements enhancement request (bug id 812)

svn path=/trunk/; revision=17660
2006-03-18 03:23:26 +00:00
Guy Harris 11d6f896b8 Squelch a compiler warning.
svn path=/trunk/; revision=17455
2006-03-03 10:14:27 +00:00
Anders Broman 2d6b49599e From Martin Mathieson:
This patch adds the SIP History-Info header from RFC4244.

svn path=/trunk/; revision=17429
2006-02-28 17:40:01 +00:00
Jaap Keuter 32dfb9b404 Fix bounds error.
svn path=/trunk/; revision=17412
2006-02-25 13:54:00 +00:00
Anders Broman aeb971fa5d From Martin Mathieson:
This patch further tightens up testing for resent packets.
It now always compares the method.  I've seen examples where the called 
party hangs up, and chooses the same CSeq for the BYE as the calling 
party chose for the INVITE.

svn path=/trunk/; revision=17408
2006-02-25 09:23:10 +00:00
Luis Ontanon 009b5f7d29 From ENDOH Akira:
Add heuristic dissection of XML to SIP bodies with unknown media_type.


svn path=/trunk/; revision=17247
2006-02-11 00:13:23 +00:00
Anders Broman 098fcb0d2b Use dissect_sip_tcp_heur for TCP to make re-assembly work on hueristics.
svn path=/trunk/; revision=16379
2005-11-02 20:24:42 +00:00
Ronnie Sahlberg a3ddb4994a remove a strcpy
svn path=/trunk/; revision=16335
2005-10-27 09:14:07 +00:00
Ulf Lamping 9a42ef9536 fix #480: Change defaults for all reassembling settings to ON
I've changed all settings I could find to TRUE. It might be reasonable to change some protocol settings back to FALSE, if reassembling fails very often.

svn path=/trunk/; revision=16048
2005-09-28 22:15:38 +00:00
Ulf Lamping 853067c739 bugfix: break out of an endless loop, if dissect_sip_common() returns 0 or -2, found in a file send to me by david martin in an attempt to fix #372
svn path=/trunk/; revision=15926
2005-09-21 10:22:14 +00:00
Guy Harris c4b2c971fc In "dissect_sip()", return 0 if "dissect_sip_common()" returns a
negative value, so we reject the packet as "not SIP".

Add a "dissect_sip_tcp_heur()" that's heuristic - it'll return FALSE if
the first packet doesn't look like SIP, but once it's dissected one
packet it'll just treat subsequent SIP packets as continuations if they
don't look right.

Clean up indentation a bit.

svn path=/trunk/; revision=15752
2005-09-10 19:39:56 +00:00
Tomas Kukosa cd88fb82d8 SIP reassembly using req_resp_hdrs_do_reassembly()
svn path=/trunk/; revision=15709
2005-09-07 10:08:13 +00:00
Tomas Kukosa 92015a695f reassembly improvements
svn path=/trunk/; revision=15699
2005-09-06 10:38:25 +00:00
Guy Harris 459327da14 Include "packet-tcp.h" to declare tcp_dissect_pdus().
svn path=/trunk/; revision=15692
2005-09-05 21:21:29 +00:00
Tomas Kukosa 03a6f6286b the first attempt at SIP reassembly
svn path=/trunk/; revision=15685
2005-09-05 13:25:49 +00:00
Ronnie Sahlberg 9e7dbe202b ememify sip and at the same plug a memleak
every single time the sip dissector was called   a 32byte or larger blob was g_malloced and never freed.
this not only leaks 32+ bytes + g_malloc bookkeeping overhead  but also fragments memory so the real leak of memory is likely much bigger.


fix  bad memleak


svn path=/trunk/; revision=15354
2005-08-14 06:00:20 +00:00
Ronnie Sahlberg 3f0f7e1d3f gmemchunk -> se_alloc() improvements
svn path=/trunk/; revision=15318
2005-08-12 21:29:06 +00:00
Ronnie Sahlberg ec3ab9ec3e rename ep_tvb_get_string() to tvb_get_ephemeral_string() asnd update the documentation in README.developer
svn path=/trunk/; revision=15270
2005-08-10 13:41:13 +00:00
Jörg Mayer 69dcb66cd9 More char -> const char warning fixes
svn path=/trunk/; revision=15218
2005-08-05 00:23:22 +00:00
Jörg Mayer 7b2ff03d8c Fix more "no previous declaration" warnings
svn path=/trunk/; revision=15169
2005-08-02 04:31:42 +00:00
Anders Broman fbb92df9f4 Get rid of an unused variable.
svn path=/trunk/; revision=15082
2005-07-26 09:25:46 +00:00
Luis Ontanon 60ae91aa5e Avoid leaking tap info by using emem allocators
svn path=/trunk/; revision=15075
2005-07-25 23:54:02 +00:00
Guy Harris 38c139dce3 Squelch a compiler warning (GCC 4.0's data flow analysis is
interprocedural, so it knows "sip_parse_line()" doesn't always set
"*token_1_len", but it doesn't know that if it doesn't return OTHER_LINE
it *does* always set it, so it's safe not to set it as long as it's
never used if the return value is OTHER_LINE).

svn path=/trunk/; revision=14355
2005-05-12 02:55:59 +00:00
Lars Roland 9a47db0c3d Add another sanity check to the new SIP URI parser.
Just to be sure.

svn path=/trunk/; revision=14335
2005-05-09 01:21:41 +00:00
Lars Roland 74328742ed Some fixes for the new SIP contact header parser.
svn path=/trunk/; revision=14334
2005-05-09 01:15:45 +00:00
Lars Roland 5f092fe201 Mark a function parameter as unused
svn path=/trunk/; revision=14332
2005-05-08 23:29:55 +00:00
Lars Roland 01f10ccd00 When saying that I remove the trailing white spaces I should do it, too.
So I do it now and do some more reindentation, too.

svn path=/trunk/; revision=14331
2005-05-08 22:39:38 +00:00
Lars Roland e5134e2f2d Improve dissection of SIP contact header and counting of bindings in REGISTER messages.
Introduce a function for disseting a sip uri in general

TODO: 
- add dissection of contact and uri parameters
- simplify the ugly code for dissecting "to" and "from" headers
      by using the new function for uri dissection

svn path=/trunk/; revision=14330
2005-05-08 22:19:18 +00:00
Lars Roland 429d72c457 Reindent dissect_sip_common() and remove trailing white spaces from packet-sip.c.
svn path=/trunk/; revision=14329
2005-05-08 21:17:37 +00:00
Lars Roland cac06c58a1 Reindent some parts of the sip dissector with tabs, as most parts of the dissector already use tabs. Remove also trailing white spaces.
svn path=/trunk/; revision=14196
2005-04-26 23:38:16 +00:00
Lars Roland ca97aa1849 From Martin Mathieson:
Fix dissection of the SIP Method in the CSeq header.

svn path=/trunk/; revision=14179
2005-04-24 17:59:18 +00:00
Gilbert Ramirez 5176d29243 Avoid a buffer overflow in the cseq_method field, a fixed-length character array.
svn path=/trunk/; revision=14155
2005-04-20 20:23:07 +00:00
Ronnie Sahlberg 088f70bb53 From Martin Mathieson
small update for SIP request/response matching.



svn path=/trunk/; revision=14010
2005-04-04 04:51:47 +00:00
Lars Roland 197ceddab1 From Alejandro Vaquero:
h323 taps support up to 5 messages per packet now.

VoIP call analysis:
      - Collect ISUP, SIP and H323 calls from a capture and show them in window with the following info:
      - Start and Stop time of the call
      - Init

svn path=/trunk/; revision=13225
2005-02-01 12:12:35 +00:00
Guy Harris 9f3573430b From Chris Maynard: catch a case where a string allocated with
"tvb_get_string()" wasn't freed.  (It appears there can also be leaks if
an exception is thrown while dissecting.)

svn path=/trunk/; revision=12965
2005-01-05 11:00:11 +00:00
Guy Harris caf46302c8 Don't assign the const pointers passed to hash routines to non-const
pointers.

svn path=/trunk/; revision=12890
2004-12-31 02:08:01 +00:00
Ulf Lamping 78ff68d4b5 a lot of warnings removed, most of them about pointer to int casts without using the appropriate GLib macros
svn path=/trunk/; revision=12832
2004-12-25 13:49:30 +00:00
Anders Broman 81a790ca83 If message for SIP port starts with F8 it's a SIGCOMP message - decode it.
svn path=/trunk/; revision=12565
2004-11-21 21:47:51 +00:00
Anders Broman 384cbd6977 From Nils Ohlmeier : patch for packet-sip.c which looks if the
Contact header in the REGISTER reply contains more then one binding.  
Details: up to now each Contact header was counted as one binding. But that 
is not correct, because several Contact headers (as several other SIP headers 
as well) can be written in one line separated by commatas.

svn path=/trunk/; revision=12507
2004-11-10 22:15:58 +00:00
Anders Broman f4035c429a Add SIP headers from: http://www.ietf.org/internet-drafts/draft-ietf-sip-resource-priority-05.txt
svn path=/trunk/; revision=12485
2004-11-03 22:16:20 +00:00
Anders Broman 8df4148db6 Update some SIP headers from http://www.iana.org/assignments/sip-parameters.
svn path=/trunk/; revision=12331
2004-10-17 21:57:04 +00:00
Guy Harris 6472876ab3 Move the tap infrastructure to the epan directory.
svn path=/trunk/; revision=12128
2004-09-29 00:06:36 +00:00
Guy Harris bbe7f89742 Move prefs.c and prefs.h into the epan subdirectory.
svn path=/trunk/; revision=12115
2004-09-27 22:55:15 +00:00
Guy Harris 463ea07dde Clean up white space.
"dissect_sip()" returns a "gint", so it has to be registered with
"new_register_dissector()".

svn path=/trunk/; revision=11839
2004-08-26 22:03:47 +00:00