[OpenSIPS-Devel] [OpenSIPS/opensips] 496e2d: mid_registrar: Fix a tm callback race condition

Liviu Chircu liviu at opensips.org
Thu Aug 31 06:20:24 EDT 2017


  Branch: refs/heads/master
  Home:   https://github.com/OpenSIPS/opensips
  Commit: 496e2dcc2745829cc0895bca09400267c23ad7f2
      https://github.com/OpenSIPS/opensips/commit/496e2dcc2745829cc0895bca09400267c23ad7f2
  Author: Liviu Chircu <liviu at opensips.org>
  Date:   2017-08-31 (Thu, 31 Aug 2017)

  Changed paths:
    M modules/mid_registrar/mid_registrar.c
    M modules/mid_registrar/mid_registrar.h
    M modules/mid_registrar/save.c

  Log Message:
  -----------
  mid_registrar: Fix a tm callback race condition

Commit f522b0ef089 is incomplete, since the tm's TMCB_RESPONSE_IN callbacks
are actually not mutually exclusive. We fix this by protecting the
tm parameter read/overwriting with an SHM'ized rw lock.

Reported by Chad Attermann <attermann at gmail.com>


  Commit: 4b9f34d6b1a0fa59c495cc8eec695cc49772c222
      https://github.com/OpenSIPS/opensips/commit/4b9f34d6b1a0fa59c495cc8eec695cc49772c222
  Author: Liviu Chircu <liviu at opensips.org>
  Date:   2017-08-31 (Thu, 31 Aug 2017)

  Changed paths:
    M modules/mid_registrar/mid_registrar.c
    M modules/mid_registrar/save.c

  Log Message:
  -----------
  mid_registrar: Avoid some memory leaks on parsing errors

Also improve mri_free(): avoid redundant checks on non-NULL fields.

Suggested by Chad Attermann <attermann at gmail.com>


Compare: https://github.com/OpenSIPS/opensips/compare/12ab75ad950a...4b9f34d6b1a0


More information about the Devel mailing list