Steven Dake
1beb0c1fbd
Remove saHandleXXX and friends and use hdb instead.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2125 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-22 17:43:54 +00:00
Fabio M. Di Nitto
230b85044f
Kill all asserts from logsys and handle proper error return
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2121 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-22 09:14:23 +00:00
Steven Dake
8126cf7458
Reworking of include file dependencies.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2119 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-22 09:01:30 +00:00
Jim Meyering
d86737ac9c
remove empty lines at end-of-file
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2118 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-22 08:04:06 +00:00
Jim Meyering
904a10ed38
remove all trailing blanks
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2117 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-22 08:03:55 +00:00
Jim Meyering
5ac04efe9b
perf: avoid writing 1MB of zero bytes
...
Don't initialize the entire just-allocated buffer to all zeroes.
The very next lines initialize all members except "data".
* exec/totempg.c (assembly_ref): Initialize the first byte of
assembly->data to 0, just in case someone uses it as a string.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2116 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-22 07:28:25 +00:00
Steven Dake
cee464489f
Change shared memory to use mmap() system calls.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2115 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-22 05:41:30 +00:00
Steven Dake
75c4bc0d71
Zero copy feature for IPC transmits. Also integrated into CPG library
...
service.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2114 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 23:37:49 +00:00
Steven Dake
6951637ea5
Remove memory leak from new dispatch circular buffer mapped system.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2113 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 20:26:12 +00:00
Jim Meyering
283011c669
rename function: s/strstr_rs/strchr_rs/ to reflect new semantics
...
* exec/coroparse.c (parse_section):
* exec/util.c (strchr_rs, strstr_rs):
* exec/util.h (corosync_exit_error):
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2112 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 11:56:55 +00:00
Jim Meyering
89c6d6a1a1
rewrite strstr_rs not to use strdup
...
strstr_rs used strdup and didn't handle failure. This change removes
the use of strdup as well as the uses of strstr, since all callers
passed a string of length 1 as the second argument. This also changes
the prototype so that the 2nd parameter is a byte, not a string.
* util.h (strstr_rs): Adjust prototype.
* util.c (strstr_rs): Rewrite/simplify.
* sa-confdb.c (strstr_rs): Remove duplicate definition.
* coroparse.c (parse_section): Update callers.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2111 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 11:56:47 +00:00
Fabio M. Di Nitto
9579fa667f
Fix uid and gid determination
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2109 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 07:53:06 +00:00
Fabio M. Di Nitto
0112b685e7
Move include config.h at the top as it's supposed to be
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2108 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 07:34:05 +00:00
Jim Meyering
a5f7997f23
exce/main.c: handle strdup failure
...
* exec/main.c (main): Upon strdup failure, log the error and exit.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2107 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 07:28:26 +00:00
Jim Meyering
de3175bc69
remove useless if-before-free tests
...
* exec/coropoll.c (poll_destroy): Remove useless if.
* exec/main.c (main): Likewise.
* include/corosync/hdb.h (hdb_destroy): Likewise.
* lcr/lcr_ifact.c (scandir): Likewise.
* lib/sa-confdb.c (load_config): Likewise.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2106 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 07:28:18 +00:00
Fabio M. Di Nitto
58ea3f928e
Guarantee that all logging buffers are flushed before we die
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2104 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 04:40:01 +00:00
Fabio M. Di Nitto
c6a31d6145
Add logsys_flush logsys API call to signal the logging thread
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2103 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 04:38:49 +00:00
Fabio M. Di Nitto
c07b3bdc70
Add logging configuration backward compatibility layer
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2102 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 04:37:28 +00:00
Fabio M. Di Nitto
1ecaa01b80
Fix output filtering when debug is enabled
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2101 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-21 04:02:19 +00:00
Jim Meyering
7c312c6f62
schedwrk.c: avoid two int-pointer cast conversion warnings
...
* exec/schedwrk.c (void2handle, handle2void): New functions.
(schedwrk_do): Use void2handle rather than an unportable cast.
(schedwrk_create): Use handle2void rather than an unportable cast.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2098 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-20 15:50:23 +00:00
Fabio M. Di Nitto
0f942b2ed9
Improve logsys error handling in logsys_format_set
...
and logsys_config_file_set_unlocked.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2096 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-20 10:43:37 +00:00
Fabio M. Di Nitto
9b2dd8a43e
readd early log level check for performance reasons.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2093 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-20 07:08:42 +00:00
Steven Dake
74f6309dcb
throw away mode in totempg was operating as a global variable, when it
...
is possible for different nodes to be in different configurations of
throw away. This patch makes the variable instanced.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2092 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-20 04:45:46 +00:00
Fabio M. Di Nitto
c3c75acfd2
Add logsys v3
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2091 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-20 04:28:33 +00:00
Steven Dake
35b073a7f2
Add missing schedwrk files.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2090 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-18 14:42:09 +00:00
Steven Dake
221dddd0dd
add schedwrk_create and schedwrk_destroy coroapi functions.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2089 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-18 14:39:57 +00:00
Steven Dake
b71418f5e1
Add fatal error call to ipc initializations.y
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2083 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-18 07:37:15 +00:00
Steven Dake
ac597689df
Remove warnings about objdb that casts a const char * to a char *.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2081 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-18 07:21:35 +00:00
Steven Dake
f70605bec2
Remove warnings about typedefs in apidef.c.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2080 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-18 07:18:08 +00:00
Steven Dake
0969721db3
Rework how dispatch functions so service engines work properly.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2079 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-18 07:06:14 +00:00
Jim Meyering
afd8b7154c
vsf_ykd.c: Rename param to avoid shadowing global "ydk_state"
...
* exec/vsf_ykd.c (ykd_state_endian_convert): Rename param:
s/ydk_state/state/
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2076 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-15 19:13:20 +00:00
Jim Meyering
bf926d30f0
coroipcs.c: don't shadow functions read and write
...
* exec/coroipcs.c (req_setup_recv): rename locals:
s/read/n_read/; s/write/n_write.
Also declare param to be const.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2071 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-15 19:12:40 +00:00
Jim Meyering
15b59a1603
totemnet.c: don't shadow crypto.h type, "hmac_state"
...
* exec/totemnet.c (encrypt_and_sign_worker): Rename a local var:
s/hmac_state/hmac_st/
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2070 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-15 19:12:33 +00:00
Jim Meyering
abff1fc785
wthread.c: Rename file-scoped type to avoid shadows.
...
* exec/wthread.c (struct worker_thread_t): Rename from
struct worker_thread.
(start_worker_thread): Rename from function "worker_thread".
* exec/wthread.h (struct worker_thread_group) [threads]: Update
member type: s/struct worker_thread/struct worker_thread_t/
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2068 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-15 19:12:17 +00:00
Jim Meyering
88ee2815da
don't shadow the global type name, "timer_handle"
...
* exec/coropoll.c (poll_timer_delete): Rename locals and/or params.
* exec/timer.c (corosync_timer_delete): Likewise.
(corosync_timer_expire_time_get): Likewise.
* exec/tlist.h (timerlist_del, timerlist_expire_time): Likewise.
(timerlist_pre_dispatch, timerlist_post_dispatch): Likewise.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2067 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-15 19:12:10 +00:00
Jim Meyering
229cc5707b
totemsrp.c: more "const" propagation
...
* exec/totemsrp.c (message_handler_memb_commit_token): Don't cast away
const on "memb_commit_token". This exposed a const violation.
Fix that with minor rearrangement and an added memcpy.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2064 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-15 19:11:46 +00:00
Jim Meyering
0200fc95e9
totemsrp.c: avoid a const-correctness problem
...
* exec/totemsrp.c (message_handler_memb_merge_detect): Don't modify
the now-const "msg" parameter. Instead, use a local copy.
Patch by Steven Dake.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2063 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-15 07:48:47 +00:00
Jim Meyering
d45965ecae
totemrrp.h, totemsrp.h, totemnet.h: const+size_t
...
* exec/totemrrp.c (totemrrp_initialize):
* exec/totemrrp.h (totemrrp_initialize):
* exec/totemsrp.c (handler_functions, main_deliver_fn):
(main_iface_change_fn):
* exec/totemnet.c (totemnet_deliver_fn, totemnet_iface_change_fn):
(encrypt_and_sign_worker, ucast_sendmsg, mcast_sendmsg):
(totemnet_mcast_worker_fn, totemnet_initialize):
(totemnet_token_send, totemnet_mcast_flush_send):
(totemnet_mcast_noflush_send, totemnet_token_target_set):
* exec/totemnet.h (TOTEMNET_FLUSH):
* exec/totemrrp.c (totemrrp_deliver_fn, totemrrp_iface_change_fn):
(totemrrp_token_seqid_get, rrp_deliver_fn, rrp_iface_change_fn):
* exec/totemsrp.c (handler_functions, main_token_seqid_get):
(srp_addr_copy_endian_convert, message_handler_orf_token):
(message_handler_mcast, message_handler_memb_merge_detect):
(memb_join_endian_convert, memb_commit_token_endian_convert):
(orf_token_endian_convert, mcast_endian_convert):
(memb_merge_detect_endian_convert, message_handler_memb_join):
(message_handler_memb_commit_token):
(message_handler_token_hold_cancel, main_deliver_fn):
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2062 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-15 07:48:39 +00:00
Steven Dake
31e850ca71
Fix compile warning in main.c.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2057 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-10 03:17:17 +00:00
Steven Dake
0135d41ea1
Cast a const away in an iovector.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2056 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-10 03:10:24 +00:00
Steven Dake
7070e8ab6c
Remove warnings from wthread.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2055 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-10 03:08:17 +00:00
Steven Dake
9141188ee8
Add spin locks for critical sections in hdb api.
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2050 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-10 02:24:01 +00:00
Jim Meyering
e26aedf84f
coroapi.h: Make totem_mcast's *iovec param const.
...
* include/corosync/engine/coroapi.h (struct corosync_api_v1):
[totem_mcast]: Make *iovec param const.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2049 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-09 20:53:13 +00:00
Jim Meyering
8ef14f11eb
cpg.h, objdb.h, coroaph.h: more const/size_t
...
* include/corosync/cpg.h (cpg_callbacks_t):
* include/corosync/mar_cpg.h (marshall_to_mar_cpg_name_t):
* lib/cpg.c (cpg_join, cpg_leave):
* lib/cpg.c (cpg_mcast_joined): make iovec const.
* include/corosync/cpg.h (cpg_mcast_joined): update prototype
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2048 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-09 20:53:03 +00:00
Jim Meyering
e002172704
coroapi.h: change lib_handler_fn's *msg to be const
...
Make a tiny type change and watch it propagate.
* include/corosync/engine/coroapi.h
(struct corosync_lib_handler) [lib_handler_fn]: Change type
of 2nd parameter: s/void *msg/const void *msg/.
Propagate the above into cfg.c and votequorum.c:
* services/cfg.c (message_handler_req_lib_cfg_get_node_addrs):
Constification exposed a bug in this function whereby it mistakenly
modified storage through its now-const *msg parameter. Since it
did that solely to store a temporary result, we've changed it
to use a local variable instead.
* services/votequorum.c (message_handler_req_lib_votequorum_setvotes):
Likewise.
* exec/vsf_quorum.c: add const to msg param.
* services/evs.c: Likewise.
* services/pload.c: Likewise.
* services/cpg.c: Likewise.
* services/confdb.c: Likewise.
* exec/coroipcs.h: signature of coroipcs_handler_fn_lvalue must match
that of lib_handler_fn; noted via main.c.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2047 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-09 12:32:59 +00:00
Jim Meyering
3df307a36d
sync the rest of the code with previous header changes
...
* exec/coroipcs.c (coroipcs_response_send)
(coroipcs_dispatch_send):
* exec/coroipcs.h (handler_fn_get):
* include/corosync/cpg.h (cpg_deliver_fn_t, cpg_confchg_fn_t):
* test/cpgbench.c (cpg_bm_confchg_fn, cpg_bm_deliver_fn):
* test/testcpg.c (print_cpgname, DeliverCallback)
(ConfchgCallback):
* test/testcpg2.c (deliver, confch):
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2044 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-08 17:29:53 +00:00
Jim Meyering
00db317b82
sync the rest of the code with previous header changes
...
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2042 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-08 17:29:37 +00:00
Jim Meyering
62e71c31d6
coroapi.h, confdb.h, objdb.h: big s/int/size_t/ change
...
* exec/mainconfig.c (objdb_get_string, objdb_get_int):
* exec/totemconfig.c (objdb_get_string, objdb_get_int)
(totem_config_keyread, totem_key_change_notify):
* include/corosync/confdb.h (confdb_callbacks_t):
* include/corosync/engine/coroapi.h (group_len, object_len)
(key_len, validate_callback, object_key_change_notify_fn_t)
(object_create_notify_fn_t, object_destroy_notify_fn_t)
(object_notify_callback_fn_t, object_reload_notify_fn_t)
(object_create, object_key_create, object_find_create)
(object_key_get, object_key_replace, object_key_delete)
(object_iter, object_key_iter, object_name_get)
(object_key_iter_from, object_key_increment)
(object_key_decrement):
* include/corosync/engine/objdb.h (object_key_change_notify_fn_t)
(object_create_notify_fn_t, object_destroy_notify_fn_t)
(object_len, key_len, validate_callback, object_create)
(object_key_create, object_find_create, object_key_get)
(object_key_replace, object_key_delete, object_iter)
(object_key_iter, object_name_get, object_key_iter_from)
(object_key_increment, object_key_decrement):
* lib/confdb.c (confdb_object_create, confdb_key_create)
(confdb_key_delete, confdb_key_get, confdb_key_increment)
(confdb_key_decrement, confdb_key_replace, confdb_object_find)
(confdb_object_iter, confdb_key_iter):
* lib/sa-confdb.c (confdb_sa_object_create, confdb_sa_key_create)
(confdb_sa_key_delete, confdb_sa_key_get)
(confdb_sa_key_increment, confdb_sa_key_decrement)
(confdb_sa_key_replace, confdb_sa_object_find)
(confdb_sa_object_iter, confdb_sa_key_iter):
* lib/sa-confdb.h:
* services/confdb.c (message_handler_req_lib_confdb_key_replace):
* services/votequorum.c (objdb_get_string, objdb_get_int)
(quorum_key_change_notify, votequorum_objdb_reload_notify):
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2040 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-08 17:29:16 +00:00
Jim Meyering
66c168efee
totemconfig.c: don't hard-code "128"...
...
* exec/totemconfig.c (read_keyfile): Don't hard-code "128".
Use sizeof(...) instead.
Avoid duplicate "close(fd)" calls.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2039 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-08 17:29:07 +00:00
Jim Meyering
4995054ca2
totemconfig.c: don't let a key of length > 128 clobber memory
...
* exec/totemconfig.c (totem_config_keyread): Reject a key with length
greater than that of our private_key buffer.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2038 fd59a12c-fef9-0310-b244-a6a79926bd2f
2009-04-08 17:28:56 +00:00