[sr-dev] [kamailio/kamailio] Add kam_rand() macro for portability (#701)

sjthomason notifications at github.com
Fri Jul 8 02:30:13 CEST 2016


Many platforms with 4 byte integers define RAND_MAX as INT_MAX but some (Solaris and derivatives for example), RAND_MAX is only 32767 but INT_MAX is 2147483647.  This change allows falling back to the posix random() and srandom() variants with casts to int if both int and long are 4 bytes, then defining a consistent KAM_RAND_MAX of 2147483647.  If both INT_MAX and RAND_MAX are 2 bytes, then we are stuck with ANSI rand().
You can view, comment on, or merge this pull request online at:

  https://github.com/kamailio/kamailio/pull/701

-- Commit Summary --

  * core: add portable rand() macros
  * ims_charging: update to use kam_rand()
  * auth: update to use kam_rand()
  * carrierroute: update to use kam_rand()
  * cdp: update to use kam_rand()
  * cfgutils: update to use kam_rand()
  * dialog: update to use kam_rand()
  * dispatcher: update to use kam_rand()
  * drouting: update to use kam_rand()
  * ims_auth: update to use kam_rand()
  * ims_dialog: update to use kam_rand()
  * ims_registrar_scscf: update to use kam_rand()
  * iptrtpproxy: update to use kam_rand()
  * lcr: update to use kam_rand()
  * nat_traversal: update to use kam_rand()
  * nsq: update to use kam_rand()
  * pipelimit: update to use kam_rand()
  * presence: update to use kam_rand()
  * registrar: update to use kam_rand()
  * rls: update to use kam_rand()
  * sipcapture: update to use kam_rand()
  * tm: update to use kam_rand()
  * tsilo: update to use kam_rand()
  * usrloc: update to use kam_rand()
  * xmpp: update to use kam_rand()
  * xprint: update to use kam_rand()
  * core: update to use kam_rand()

-- File Changes --

    M main.c (9)
    M modules/auth/auth_mod.c (5)
    M modules/carrierroute/cr_func.c (3)
    M modules/carrierroute/prime_hash.c (4)
    M modules/cdp/peermanager.c (6)
    M modules/cdp/session.c (4)
    M modules/cdp/utils.h (1)
    M modules/cfgutils/cfgutils.c (5)
    M modules/dialog/dlg_hash.c (3)
    M modules/dispatcher/dispatch.c (6)
    M modules/dispatcher/dispatch.h (1)
    M modules/dispatcher/dispatcher.c (2)
    M modules/drouting/drouting.c (11)
    M modules/ims_auth/authorize.c (5)
    M modules/ims_charging/ro_session_hash.c (2)
    M modules/ims_charging/ro_session_hash.h (1)
    M modules/ims_dialog/dlg_hash.c (3)
    M modules/ims_registrar_scscf/reg_mod.h (1)
    M modules/ims_registrar_scscf/registrar_notify.c (2)
    M modules/ims_registrar_scscf/save.c (2)
    M modules/ims_registrar_scscf/sip_msg.c (2)
    M modules/iptrtpproxy/iptrtpproxy.c (3)
    M modules/lcr/lcr_mod.c (3)
    M modules/nat_traversal/nat_traversal.c (9)
    M modules/nsq/reader.c (5)
    M modules/pipelimit/pipelimit.c (3)
    M modules/presence/presence.c (3)
    M modules/registrar/sip_msg.c (3)
    M modules/rls/notify.c (5)
    M modules/sipcapture/sipcapture.c (5)
    M modules/tm/callid.c (7)
    M modules/tm/h_table.c (5)
    M modules/tm/uac.c (3)
    M modules/tsilo/ts_hash.c (3)
    M modules/usrloc/ul_mi.c (3)
    M modules/xmpp/util.c (4)
    M modules/xprint/xp_lib.c (5)
    M msg_translator.c (3)
    M pt.c (13)
    A rand/kam_rand.h (35)
    M select_core.c (5)

-- Patch Links --

https://github.com/kamailio/kamailio/pull/701.patch
https://github.com/kamailio/kamailio/pull/701.diff

---
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/701
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20160707/20a78189/attachment.html>


More information about the sr-dev mailing list