During the last days I compiled the current trunk of libqb with gcc 4.4 in OpenIndiana.
I checked the binaries with the current trunk of corosync and pacemaker.
The change is compatible with Solaris and Illumos based OS like OpenIndiana, SmartOS,
Nexenta, OmniOS.
A pull request is waiting in
https://github.com/ClusterLabs/libqb/pulls.
IMHO the first change in ipc_socket.c :
+#if !(defined(QB_LINUX) || defined(QB_CYGWIN))
+ res = unlink(local_address.sun_path);
+#endif
Is advisable for all OS.
Nevertheless I used #ifdefs.
Obviously there are no problems in Linux with binding against existing files although this
must throw an error.
Greetings
Andreas