]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
SOLARIS: Avoid areq and auid conflict
authorAndrew Deason <adeason@sinenomine.net>
Fri, 4 Jan 2013 18:47:35 +0000 (13:47 -0500)
committerStephan Wiesand <stephan.wiesand@desy.de>
Thu, 10 Jan 2013 16:04:04 +0000 (08:04 -0800)
On new Solaris (11.1), nfs/auth.h #defines areq and auid to access
some elements inside the nfsauth_arg structure more easily. We have a
lot of functions that use those names as parameters, so the compiler
throws an error (since we have a decl like "struct vrequest
*areq_u.areq").

We cannot avoid including that header, since we need some NFS-related
headers for the NFS xlator, and they pull in nfs/auth.h
unconditionally. So, work around this by undefining areq and auid
afterwards.

Reviewed-on: http://gerrit.openafs.org/8873
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
(cherry picked from commit 936c2b02bf6fbeb3844c539665392ae89eb652fe)

Change-Id: I54da96a48d163b6aa57bb8525ff4c80f10d70fa1
Reviewed-on: http://gerrit.openafs.org/8889
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Paul Smeddle <paul.smeddle@gmail.com>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
src/afs/afs_nfsdisp.c

index 39b92c97b823fa19dce5111a76363b43700e6a81..02f494d1895e4f6a65db1bbda31f39f2392c6a42 100644 (file)
 #include "rpc/xdr.h"
 #include "rpc/svc.h"
 #include "nfs/nfs.h"
+
 #include "nfs/export.h"
+/* Solaris 11.1 defines areq to areq_u.areq (and auid to areq_u.auid), for
+ * shortcut accessors to the nfsauth_arg structure. Since we dare to use the
+ * names areq and auid as parameter names in a lot of functions, work around
+ * this by undefining it. */
+#ifdef areq
+# undef areq
+#endif
+#ifdef auid
+# undef auid
+#endif
+
 #include "nfs/nfs_clnt.h"
 #include "nfs/nfs_acl.h"
 #include "afs/afsincludes.h"