th euser forgets to add a trailing slash to the name: eg
./configure --with-socket-dir=/var/run
then the socket is created as /var/runcorosync.ipc
This patch adds the slash into the name generation printf.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1910 fd59a12c-fef9-0310-b244-a6a79926bd2f
* coroipc.c (cslib_service_connect): Upon shmget failure
loop only when errno == EEXIST. Any other error now translates
to res_setup.error.
Likewise for semget.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1899 fd59a12c-fef9-0310-b244-a6a79926bd2f
- services/Makefile.am: add include search paths for config.h
- include/corosync/cs_config.h.in exports LCRSODIR and SOCKETDIR
- tools/Makefile.am: drop -D defines for dirs that are now in
cs_config.h or config.h
- configure.ac: sanitize prefix and exec_prefix paths. Export DIRS in
*config.h
- lib/Makefile.am: : drop -D defines for dirs that are now in
cs_config.h or config.h. Add rule to build lcr_ifact.o or building from
lib/ fails miserably
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1877 fd59a12c-fef9-0310-b244-a6a79926bd2f
report install failures) and it's just overhead since $(INSTALL) can do
the same.
2) make sure to create our directories with $(INSTALL). Not sure I did
catch them all yet, but at least a good bunch. This also fix the
corosync.conf install error I introduced in the previous commit.
3) Handle SONAME automatically. This is the most intrusive change across
the board:
* configure.in now defines the system wide SOMAJOR, SOMINOR, SOMICRO
and SONAME and exports them to the Makefile.
* exec/Makefile.am, lib/Makefile.am are now updated to use those vars
rather than hardcoded version.
4) Bump the SOMAJOR to 3 as agreed since we did change both API and ABI.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1835 fd59a12c-fef9-0310-b244-a6a79926bd2f
all of them.
In particular, cfg_try_shutdown asks all applications that are
registered for callbacks if they approve the shutdown. This caused a bit
of a re-entrancy problem because it also asked the process that called
for the shutdown! The patch causes cfg to only ask OTHER applications in
the assumption that any application that calls
corosync_cfg_tryshutdown() will approve of the action :-)
In addition it adds the response to cfg_replyto_shutdown which was
missing (it couldn't be used with the old system but is mandatory now),
and removes a double-free in the library finalise code.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1794 fd59a12c-fef9-0310-b244-a6a79926bd2f
adds a couple of new features:
- When total_votes exceeds the expected_votes value then expected_votes
is increased to that value.
- A callback can be sent to a client whenever expected_votes is changed
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1784 fd59a12c-fef9-0310-b244-a6a79926bd2f
is a bit of a nightmare to manage and provides no useful functionality
that I can see. Making keys unique has been discussed on IRC several
times and there seem to be no objections...so here is the patch:
Note that I have removed some now-useless parameters from the objdb API
too.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1783 fd59a12c-fef9-0310-b244-a6a79926bd2f
The objdb occurred because object_find_destroy wasn't implemented!
The one in confdb occurred because object_find_destroy wasn't called if
object_find_next returned an error the first time it was invoked (ie
there were no subobjects).
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1741 fd59a12c-fef9-0310-b244-a6a79926bd2f
CID: 9
Checker: OVERRUN_STATIC (help)
File: lib/cfg.c
Function: corosync_cfg_service_unload
Description: Overrun of static array
"&(req_lib_cfg_serviceunload).service_name" of size 1024 bytes by
passing it to a function which indexes it with argument "1023" at byte
position 4088
The main problem here is the way the service_name is defined:
- char *service_name[256] __attribute__((aligned(8)));
+ char service_name[256] __attribute__((aligned(8)));
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1718 fd59a12c-fef9-0310-b244-a6a79926bd2f
defaults in services.c) and can load another module to do the quorum
work (eg YKD which I've made more compliant too). All the quorum code
has been removed from sync.c. quorum.c is simply a shim later for the
coroapi, the main module is in vsf_quorum.c
There are coroapi calls to query quorate status and also to get
notifications when it changes.
I've included the testquorum.lcrso module in this patch because I think
it's really helpful for testing. It sets the quorum state based on an
objdb variable, this can be set or cleared using corosync-cfgtool
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1704 fd59a12c-fef9-0310-b244-a6a79926bd2f
If we don't care about the return value then typecase the return
value to void.
Else do something useful with the return value.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1693 fd59a12c-fef9-0310-b244-a6a79926bd2f