author | April Chin <april.chin@oracle.com> |
Mon, 12 Mar 2012 15:17:08 -0700 | |
changeset 730 | 38f3620b2700 |
parent 672 | 92e2da956d23 |
permissions | -rw-r--r-- |
672
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
1 |
--- src/configure.in Tue Jan 10 16:13:35 2012 |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
2 |
+++ src/configure.in Fri Jan 13 14:10:21 2012 |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
3 |
@@ -3106,6 +3106,7 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
4 |
|
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
5 |
dnl Link with -lposix1e for ACL stuff; if not found, try -lacl for SGI |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
6 |
dnl when -lacl works, also try to use -lattr (required for Debian). |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
7 |
+dnl On Solaris, use the acl_get/set functions in libsec, if present. |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
8 |
AC_MSG_CHECKING(--disable-acl argument) |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
9 |
AC_ARG_ENABLE(acl, |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
10 |
[ --disable-acl Don't check for ACL support.], |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
11 |
@@ -3128,7 +3129,8 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
12 |
AC_MSG_RESULT(yes); AC_DEFINE(HAVE_POSIX_ACL), |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
13 |
AC_MSG_RESULT(no)) |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
14 |
|
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
15 |
-AC_MSG_CHECKING(for Solaris ACL support) |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
16 |
+AC_CHECK_LIB(sec, acl_get, [LIBS="$LIBS -lsec"; AC_DEFINE(HAVE_SOLARIS_ZFS_ACL)], |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
17 |
+AC_MSG_CHECKING(for Solaris ACL support) |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
18 |
AC_TRY_LINK([ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
19 |
#ifdef HAVE_SYS_ACL_H |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
20 |
# include <sys/acl.h> |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
21 |
@@ -3135,7 +3137,7 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
22 |
#endif], [acl("foo", GETACLCNT, 0, NULL); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
23 |
], |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
24 |
AC_MSG_RESULT(yes); AC_DEFINE(HAVE_SOLARIS_ACL), |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
25 |
- AC_MSG_RESULT(no)) |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
26 |
+ AC_MSG_RESULT(no))) |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
27 |
|
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
28 |
AC_MSG_CHECKING(for AIX ACL support) |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
29 |
AC_TRY_LINK([ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
30 |
--- src/config.h.in Fri Jan 13 13:29:05 2012 |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
31 |
+++ src/config.h.in Fri Jan 13 13:29:13 2012 |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
32 |
@@ -363,6 +363,7 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
33 |
|
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
34 |
/* Define if you want to add support for ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
35 |
#undef HAVE_POSIX_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
36 |
+#undef HAVE_SOLARIS_ZFS_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
37 |
#undef HAVE_SOLARIS_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
38 |
#undef HAVE_AIX_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
39 |
|
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
40 |
--- src/os_unix.c Tue Jan 10 16:13:35 2012 |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
41 |
+++ src/os_unix.c Fri Jan 13 15:57:08 2012 |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
42 |
@@ -2746,6 +2746,13 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
43 |
#ifdef HAVE_POSIX_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
44 |
ret = (vim_acl_T)acl_get_file((char *)fname, ACL_TYPE_ACCESS); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
45 |
#else |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
46 |
+#ifdef HAVE_SOLARIS_ZFS_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
47 |
+ acl_t *aclent; |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
48 |
+ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
49 |
+ if (acl_get((char *)fname, 0, &aclent) < 0) |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
50 |
+ return NULL; |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
51 |
+ ret = (vim_acl_T)aclent; |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
52 |
+#else |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
53 |
#ifdef HAVE_SOLARIS_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
54 |
vim_acl_solaris_T *aclent; |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
55 |
|
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
56 |
@@ -2791,6 +2798,7 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
57 |
ret = (vim_acl_T)aclent; |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
58 |
#endif /* HAVE_AIX_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
59 |
#endif /* HAVE_SOLARIS_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
60 |
+#endif /* HAVE_SOLARIS_ZFS_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
61 |
#endif /* HAVE_POSIX_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
62 |
return ret; |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
63 |
} |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
64 |
@@ -2808,6 +2816,9 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
65 |
#ifdef HAVE_POSIX_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
66 |
acl_set_file((char *)fname, ACL_TYPE_ACCESS, (acl_t)aclent); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
67 |
#else |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
68 |
+#ifdef HAVE_SOLARIS_ZFS_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
69 |
+ acl_set((char *)fname, (acl_t *)aclent); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
70 |
+#else |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
71 |
#ifdef HAVE_SOLARIS_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
72 |
acl((char *)fname, SETACL, ((vim_acl_solaris_T *)aclent)->acl_cnt, |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
73 |
((vim_acl_solaris_T *)aclent)->acl_entry); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
74 |
@@ -2816,6 +2827,7 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
75 |
chacl((char *)fname, aclent, ((struct acl *)aclent)->acl_len); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
76 |
#endif /* HAVE_AIX_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
77 |
#endif /* HAVE_SOLARIS_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
78 |
+#endif /* HAVE_SOLARIS_ZFS_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
79 |
#endif /* HAVE_POSIX_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
80 |
} |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
81 |
|
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
82 |
@@ -2828,6 +2840,9 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
83 |
#ifdef HAVE_POSIX_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
84 |
acl_free((acl_t)aclent); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
85 |
#else |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
86 |
+#ifdef HAVE_SOLARIS_ZFS_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
87 |
+ acl_free((acl_t *)aclent); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
88 |
+#else |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
89 |
#ifdef HAVE_SOLARIS_ACL |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
90 |
free(((vim_acl_solaris_T *)aclent)->acl_entry); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
91 |
free(aclent); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
92 |
@@ -2836,6 +2851,7 @@ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
93 |
free(aclent); |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
94 |
#endif /* HAVE_AIX_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
95 |
#endif /* HAVE_SOLARIS_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
96 |
+#endif /* HAVE_SOLARIS_ZFS_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
97 |
#endif /* HAVE_POSIX_ACL */ |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
98 |
} |
92e2da956d23
7085706 update vim to 7.3.421
Danek Duvall <danek.duvall@oracle.com>
parents:
diff
changeset
|
99 |
#endif |