I am trying to build 4.6.0rc1 on a Solaris 10 i386 box. The make fails with: [1529/3763] Compiling source3/lib/messages_dgm.c ../source3/lib/messages_dgm.c: In function 'messaging_dgm_sendmsg': ../source3/lib/messages_dgm.c:363:30: error: 'MSG_NOSIGNAL' undeclared (first use in this function) I have verified that Fedora Core 19 defines MSG_NOSIGNAL in /usr/include/bits/socket.h but Solaris 10 does not define it anywhere.
Created attachment 12803 [details] WIP patch for master
https://stackoverflow.com/questions/108183/how-to-prevent-sigpipes-or-handle-them-properly#108192 has a discussion entry that describes how to do this properly on Solaris. Shall we do that?
(In reply to Volker Lendecke from comment #2) Blocking the signal? To do this properly, I guess we'd have to save the current signal mask, block SIGPIPE and then restore the mask. That's quite some overhead. Can't we just delegate this to the user of the messaging subsystem? As mentioned, must already do block SIGPIPE anyway.
The patch in attachment 12803 [details] fixes the error. I have not yet tried to run it.
The patch is not in 4.6.0. So 4.6.0 fails to compile on Solaris.
The patch is not in 4.6.2. So 4.6.2 fails to compile on Solaris.
I am retiring, so I will not be able to do any testing in the future.
(In reply to Tom Schulz from comment #7) Thanks for all your useful bug reports and testing in the past! Enjoy your free time! metze
(In reply to Tom Schulz from comment #7) Tom, we will really miss you and your help with Samba. Enjoy your retirement !
I encountered this same error and failed to compile Samba 4.6.3 on SmartOS. Using the patch in attachment 12803 [details], I was able to compile without this error. I have not tested my build, and encountered other errors trying to compile with --enable-selftest.
*** Bug 12812 has been marked as a duplicate of this bug. ***
4.6.6 on Solaris 10 needed that patch to build.