On one hand, there are only a limited number of SIDs shorter than the normal
user/group SIDs, on the other hand there are no deny aclent_t entries, so we
should be fine with 32K aclbuf_t buffers provided by the caller. */
-#define MIN_ACL_ENTRIES (3) // minimal acl entries from GETACLCNT
-#define MAX_ACL_ENTRIES (2730) // max entries of each type
+#define MIN_ACL_ENTRIES (3) /* minimal acl entries from GETACLCNT */
+#define MAX_ACL_ENTRIES (2730) /* max entries of each type */
-// Return values of aclcheck(3) in case of error */
+/* Return values of aclcheck(3) in case of error */
#define GRP_ERROR (0x1)
#define USER_ERROR (0x2)
#define CLASS_ERROR (0x3)
#define OTHER_ERROR (0x4)
#define DUPLICATE_ERROR (0x5)
#define ENTRY_ERROR (0x6)
-#define MISS_ERROR (0x7) // which = -1
-#define MEM_ERROR (0x8) // which = -1
+#define MISS_ERROR (0x7) /* which = -1 */
+#define MEM_ERROR (0x8) /* which = -1 */
-// Values for entry type of struct acl
-#define USER_OBJ (0x0001) // owner
-#define USER (0x0002) // additional user
-#define GROUP_OBJ (0x0004) // owning group
-#define GROUP (0x0008) // additional group
-#define CLASS_OBJ (0x0010) // mask entry
-#define OTHER_OBJ (0x0020) // others
-#define ACL_DEFAULT (0x1000) // default flag
-#define DEF_USER_OBJ (ACL_DEFAULT|USER_OBJ) // default owner
-#define DEF_USER (ACL_DEFAULT|USER) // default additional user
-#define DEF_GROUP_OBJ (ACL_DEFAULT|GROUP_OBJ) // default owning group
-#define DEF_GROUP (ACL_DEFAULT|GROUP) // default additional group
-#define DEF_CLASS_OBJ (ACL_DEFAULT|CLASS_OBJ) // default mask entry
-#define DEF_OTHER_OBJ (ACL_DEFAULT|OTHER_OBJ) // default others
-// Values with equivalent meanings
+/* Values for entry type of struct acl */
+#define USER_OBJ (0x0001) /* owner */
+#define USER (0x0002) /* additional user */
+#define GROUP_OBJ (0x0004) /* owning group */
+#define GROUP (0x0008) /* additional group */
+#define CLASS_OBJ (0x0010) /* mask entry */
+#define OTHER_OBJ (0x0020) /* others */
+#define ACL_DEFAULT (0x1000) /* default flag */
+#define DEF_USER_OBJ (ACL_DEFAULT|USER_OBJ) /* default owner */
+#define DEF_USER (ACL_DEFAULT|USER) /* default additional user */
+#define DEF_GROUP_OBJ (ACL_DEFAULT|GROUP_OBJ) /* default owning group */
+#define DEF_GROUP (ACL_DEFAULT|GROUP) /* default additional group */
+#define DEF_CLASS_OBJ (ACL_DEFAULT|CLASS_OBJ) /* default mask entry */
+#define DEF_OTHER_OBJ (ACL_DEFAULT|OTHER_OBJ) /* default others */
+/* Values with equivalent meanings */
#define USER_OWNER USER_OBJ
#define GROUP_OWNER GROUP_OBJ
#define MASK CLASS_OBJ
#define OTHER OTHER_OBJ
typedef struct acl {
- int a_type; /* entry type */
- uid_t a_id; /* UID | GID */
+ int a_type; /* entry type */
+ id_t a_id; /* UID | GID */
mode_t a_perm; /* permissions */
} aclent_t;
#ifndef __INSIDE_CYGWIN__
-int _EXFUN(acl,(const char *path, int cmd, int nentries, aclent_t *aclbufp));
-int _EXFUN(facl,(int fd, int cmd, int nentries, aclent_t *aclbufp));
-int _EXFUN(aclcheck,(aclent_t *aclbufp, int nentries, int *which));
-int _EXFUN(aclsort,(int nentries, int calclass, aclent_t *aclbufp));
-int _EXFUN(acltomode,(aclent_t *aclbufp, int nentries, mode_t *modep));
-int _EXFUN(aclfrommode,(aclent_t *aclbufp, int nentries, mode_t *modep));
-int _EXFUN(acltopbits,(aclent_t *aclbufp, int nentries, mode_t *pbitsp));
-int _EXFUN(aclfrompbits,(aclent_t *aclbufp, int nentries, mode_t *pbitsp));
-char *_EXFUN(acltotext,(aclent_t *aclbufp, int aclcnt));
-aclent_t *_EXFUN(aclfromtext,(char *acltextp, int *aclcnt));
+extern int acl (const char *__path, int __cmd, int __nentries,
+ aclent_t *__aclbufp);
+extern int facl (int __fd, int __cmd, int __nentries,
+ aclent_t *__aclbufp);
+extern int aclcheck (aclent_t *__aclbufp, int __nentries, int *__which);
+extern int aclsort (int __nentries, int __calclass, aclent_t *__aclbufp);
+extern int acltomode (aclent_t *__aclbufp, int __nentries,
+ mode_t *__modep);
+extern int aclfrommode (aclent_t *__aclbufp, int __nentries,
+ mode_t *__modep);
+extern int acltopbits (aclent_t *__aclbufp, int __nentries,
+ mode_t *__pbitsp);
+extern int aclfrompbits (aclent_t *__aclbufp, int __nentries,
+ mode_t *__pbitsp);
+extern char *acltotext (aclent_t *__aclbufp, int __aclcnt);
+extern aclent_t *aclfromtext (char *__acltextp, int *__aclcnt);
#endif
#ifdef __cplusplus