svn commit: samba r14113 - in trunk/source: . smbd
jpeach at samba.org
jpeach at samba.org
Thu Mar 9 22:37:11 GMT 2006
Author: jpeach
Date: 2006-03-09 22:37:10 +0000 (Thu, 09 Mar 2006)
New Revision: 14113
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=14113
Log:
svn merge -r 14110:14111 ../branches/SAMBA_3_0
Work around additional typedefs in the gamin implementation
of the FAM API.
Modified:
trunk/source/configure.in
trunk/source/smbd/notify_fam.c
Changeset:
Modified: trunk/source/configure.in
===================================================================
--- trunk/source/configure.in 2006-03-09 22:31:37 UTC (rev 14112)
+++ trunk/source/configure.in 2006-03-09 22:37:10 UTC (rev 14113)
@@ -2272,6 +2272,11 @@
if test x"$samba_cv_HAVE_LIBFAM" = x"yes" ; then
AC_DEFINE(HAVE_FAM_CHANGE_NOTIFY, 1,
[Whether FAM is file notifications are available])
+ AC_TRY_COMPILE([#include <fam.h>],
+ [FAMCodes code = FAMChanged;],
+ AC_DEFINE(HAVE_FAM_H_FAMCODES_TYPEDEF, 1,
+ [Whether fam.h contains a typedef for enum FAMCodes]),
+ [])
fi
AC_CACHE_CHECK([for kernel share modes],samba_cv_HAVE_KERNEL_SHARE_MODES,[
Modified: trunk/source/smbd/notify_fam.c
===================================================================
--- trunk/source/smbd/notify_fam.c 2006-03-09 22:31:37 UTC (rev 14112)
+++ trunk/source/smbd/notify_fam.c 2006-03-09 22:37:10 UTC (rev 14113)
@@ -24,6 +24,13 @@
#include <fam.h>
+#if !defined(HAVE_FAM_H_FAMCODES_TYPEDEF)
+/* Gamin provides this typedef which means we can't use 'enum FAMCodes' as per
+ * every other FAM implementation. Phooey.
+ */
+typedef enum FAMCodes FAMCodes;
+#endif
+
/* NOTE: There are multiple versions of FAM floating around the net, each with
* slight differences from the original SGI FAM implementation. In this file,
* we rely only on the SGI features and do not assume any extensions. For
@@ -40,7 +47,7 @@
{
FAMRequest req;
int generation;
- enum FAMCodes code;
+ FAMCodes code;
enum
{
/* We are waiting for an event. */
@@ -91,9 +98,9 @@
* because that might not work across all flavours of FAM.
*/
static const char *
-fam_event_str(enum FAMCodes code)
+fam_event_str(FAMCodes code)
{
- static struct { enum FAMCodes code; const char * name; } evstr[] =
+ static const struct { FAMCodes code; const char * name; } evstr[] =
{
{ FAMChanged, "FAMChanged"},
{ FAMDeleted, "FAMDeleted"},
@@ -188,7 +195,7 @@
}
static BOOL
-fam_handle_event(enum FAMCodes code, uint32 flags)
+fam_handle_event(const FAMCodes code, uint32 flags)
{
#define F_CHANGE_MASK (FILE_NOTIFY_CHANGE_FILE | \
FILE_NOTIFY_CHANGE_ATTRIBUTES | \
More information about the samba-cvs
mailing list