icmap: Allow multiple icmap instances

Patch adds reentrant version of most of functions (with exception of RO
flags support and tracking) to allow multiple icmap instances existence
inside corosync.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
Reviewed-by: Christine Caulfield <ccaulfie@redhat.com>
icmap: Add function to return global icmap

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
Reviewed-by: Christine Caulfield <ccaulfie@redhat.com>
icmap: Fix value len checking for strings

Implementation should allow pass only parts of string (shorten string)
and must prohibit reading of uninitialized memory.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
Reviewed-by: Christine Caulfield <ccaulfie@redhat.com>
icmap: Add function to return item data pointer

icmap_get_r is now implemented using this function. Function is not very
safe tho defined as static.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
Reviewed-by: Christine Caulfield <ccaulfie@redhat.com>
icmap: Add map copy function

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
Reviewed-by: Christine Caulfield <ccaulfie@redhat.com>
Start of reload code

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Print space before error number
Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Use config.reload_in_progress to signal a reload.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Misc fixes and stuff

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Don't delete EVERYTHING that's not in corosync.conf!
Atomically reload totem and nodelist
minor fixes
Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Merge branch 'topic-reload' of https://github.com/corosync/corosync into topic-reload

Conflicts:
	exec/cfg.c
	exec/totemconfig.c
	tools/corosync-cfgtool.c
Don't lose local_node_pos

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>