Re: [PATCH] Kannel bug #0000032 otherwise known as kannel's list function naming clashes with latest mysql list function naming

Davy Chan <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Message-ID <[email protected]>
**>Date: Thu, 06 Jan 2005 20:55:09 +0100
**>From: Stipe Tolj <[email protected]>
**>Organization: The Kannel Group
**>To: Davy Chan <[email protected]>
**>In-Reply-To: <[email protected]>
**>Subject: Re: [PATCH] Kannel bug #0000032 otherwise known as kannel's list function naming clashes with latest mysql list function naming
**>
**>Davy Chan wrote:
**>
**>>I've submitted a patch for bug #0000032 to the Mantis bug tracking
**>>system.  It's 381K in size.  Should I submit it also to the devel
**>>mailing list?
**>>
**>>This patch does not have the renaming of all "List" structures to
**>>"gw_List". If the "list_XXX" to "gw_list_XXX" patch is accepted,
**>>then I'll also do the "List" structures patch.
**>
**>yes, please provide the patch in unified diff format as attachement, not 
**>inlined.
**>
**>Mark it via the [PATCH] subject line prefix so developers can review it. 
**>Since it's quite big, a gziped version may be prefered I guess. ;)
**>
**>Please explain also what you do inside the patch. Consider those 
**>explanations as 'helping hand' to those that take time to review your patch 
**>and vote for commiting. Thanks in advance.
**>
**>Stipe

Attached is the patch for bug #0000032. This bug manifests itself
during compilation with the MySQL v4.1 libraries.

The problem is function name clash between MySQL's list_XXX
functions and Kannel's list_XXX functions.

The solution was to go through the entire source tree and rename
all non-static list_XXX functions of gateway/gwlib/list.c
from list_XXX to gw_list_XXX. This solution will also prevent
Kannel's List functions from clashing with libraries we might
link with in the future.

The following files are affected by the function renaming:

  gateway/checks/check_list.c
  gateway/gw/bb_alog.c
  gateway/gw/bb_boxc.c
  gateway/gw/bb_http.c
  gateway/gw/bb_smscconn.c
  gateway/gw/bb_store.c
  gateway/gw/bb_udp.c
  gateway/gw/bearerbox.c
  gateway/gw/dlr_mem.c
  gateway/gw/dlr_mysql.c
  gateway/gw/dlr_oracle.c
  gateway/gw/dlr_pgsql.c
  gateway/gw/dlr_sdb.c
  gateway/gw/heartbeat.c
  gateway/gw/mime_decompiler.c
  gateway/gw/msg.h
  gateway/gw/numhash.c
  gateway/gw/sms.c
  gateway/gw/smsbox.c
  gateway/gw/smscconn.c
  gateway/gw/urltrans.c
  gateway/gw/wap-appl.c
  gateway/gw/wap-maps.c
  gateway/gw/wap_push_ota.c
  gateway/gw/wap_push_pap_mime.c
  gateway/gw/wap_push_ppg.c
  gateway/gw/wap_push_ppg_pushuser.c
  gateway/gw/wapbox.c
  gateway/gw/wml_compiler.c
  gateway/gw/xml_shared.c
  gateway/gw/smsc/smsc_at.c
  gateway/gw/smsc/smsc_cgw.c
  gateway/gw/smsc/smsc_cimd2.c
  gateway/gw/smsc/smsc_fake.c
  gateway/gw/smsc/smsc_http.c
  gateway/gw/smsc/smsc_oisd.c
  gateway/gw/smsc/smsc_smasi.c
  gateway/gw/smsc/smsc_smpp.c
  gateway/gw/smsc/smsc_soap.c
  gateway/gw/smsc/smsc_wrapper.c
  gateway/gwlib/accesslog.c
  gateway/gwlib/cfg.c
  gateway/gwlib/dbpool.c
  gateway/gwlib/dbpool_oracle.c
  gateway/gwlib/dbpool_pgsql.c
  gateway/gwlib/dict.c
  gateway/gwlib/fdset.c
  gateway/gwlib/gw-rwlock.c
  gateway/gwlib/gwthread-pthread.c
  gateway/gwlib/http.c
  gateway/gwlib/list.c
  gateway/gwlib/list.h
  gateway/gwlib/log.c
  gateway/gwlib/mime.c
  gateway/gwlib/octstr.c
  gateway/gwlib/octstr.h
  gateway/gwlib/parse.c
  gateway/gwlib/semaphore.c
  gateway/gwlib/utils.c
  gateway/gwlib/xmlrpc.c
  gateway/test/drive_wapbox.c
  gateway/test/fakesmsc.c
  gateway/test/test_cimd2.c
  gateway/test/test_dbpool.c
  gateway/test/test_headers.c
  gateway/test/test_http.c
  gateway/test/test_http_server.c
  gateway/test/test_mime.c
  gateway/test/test_ppg.c
  gateway/test/test_smsc.c
  gateway/test/test_xmlrpc.c
  gateway/test/wapproxy.c
  gateway/utils/mtbatch.c
  gateway/wap/cookies.c
  gateway/wap/timers.c
  gateway/wap/wap.c
  gateway/wap/wsp_caps.c
  gateway/wap/wsp_headers.c
  gateway/wap/wsp_push_client.c
  gateway/wap/wsp_push_client_states.def
  gateway/wap/wsp_server_method_states.def
  gateway/wap/wsp_server_push_states.def
  gateway/wap/wsp_server_session_states.def
  gateway/wap/wsp_session.c
  gateway/wap/wsp_unit.c
  gateway/wap/wtls-secmgr.c
  gateway/wap/wtls.c
  gateway/wap/wtls_pdu.c
  gateway/wap/wtls_pdusupport.c
  gateway/wap/wtls_statesupport.c
  gateway/wap/wtp.c
  gateway/wap/wtp_init.c
  gateway/wap/wtp_pdu.c
  gateway/wap/wtp_resp.c
  gateway/wap/wtp_tid.c

The following function names were changed:

  list_create              -> gw_list_create
  list_create_real         -> gw_list_create_real
  list_destroy             -> gw_list_destroy
  list_len                 -> gw_list_len
  list_append              -> gw_list_append
  list_append_unique       -> gw_list_append_unique
  list_insert              -> gw_list_insert
  list_delete              -> gw_list_delete
  list_delete_matching     -> gw_list_delete_matching
  list_delete_equal        -> gw_list_delete_equal
  list_get                 -> gw_list_get
  list_extract_first       -> gw_list_extract_first
  list_extract_matching    -> gw_list_extract_matching
  list_lock                -> gw_list_lock
  list_unlock              -> gw_list_unlock
  list_wait_until_nonempty -> gw_list_wait_until_nonempty
  list_add_producer        -> gw_list_add_producer
  list_producer_count      -> gw_list_producer_count
  list_remove_producer     -> gw_list_remove_producer
  list_produce             -> gw_list_produce
  list_consume             -> gw_list_consume
  list_search              -> gw_list_search
  list_search_all          -> gw_list_search_all
  list_sort                -> gw_list_sort

See ya...

d.c.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.