gcc -I. -I. -I./zlib -I./popt -g -O2 -DHAVE_CONFIG_H -Wall -W -c acls.c -o acls.o In file included from acls.c:23:0: lib/sysacls.h:118:13: error: array type has incomplete element type 'struct acl' struct acl acl[1]; ^~~ acls.c: In function 'unpack_smb_acl': lib/sysacls.h:108:26: error: 'USER_OBJ' undeclared (first use in this function); did you mean 'ACL_USER_OBJ'? #define SMB_ACL_USER_OBJ USER_OBJ ^ acls.c:286:8: note: in expansion of macro 'SMB_ACL_USER_OBJ' case SMB_ACL_USER_OBJ: ^~~~~~~~~~~~~~~~ lib/sysacls.h:108:26: note: each undeclared identifier is reported only once for each function it appears in #define SMB_ACL_USER_OBJ USER_OBJ ^ acls.c:286:8: note: in expansion of macro 'SMB_ACL_USER_OBJ' case SMB_ACL_USER_OBJ: ^~~~~~~~~~~~~~~~ lib/sysacls.h:110:27: error: 'GROUP_OBJ' undeclared (first use in this function); did you mean 'ACL_GROUP_OBJ'? #define SMB_ACL_GROUP_OBJ GROUP_OBJ ^ acls.c:292:8: note: in expansion of macro 'SMB_ACL_GROUP_OBJ' case SMB_ACL_GROUP_OBJ: ^~~~~~~~~~~~~~~~~ lib/sysacls.h:112:23: error: 'CLASS_OBJ' undeclared (first use in this function) #define SMB_ACL_MASK CLASS_OBJ ^ acls.c:298:8: note: in expansion of macro 'SMB_ACL_MASK' case SMB_ACL_MASK: ^~~~~~~~~~~~ lib/sysacls.h:111:24: error: 'OTHER_OBJ' undeclared (first use in this function); did you mean 'USER_OBJ'? #define SMB_ACL_OTHER OTHER_OBJ ^ acls.c:304:8: note: in expansion of macro 'SMB_ACL_OTHER' case SMB_ACL_OTHER: ^~~~~~~~~~~~~ lib/sysacls.h:107:23: error: 'USER' undeclared (first use in this function); did you mean 'EUSERS'? #define SMB_ACL_USER USER ^ acls.c:311:8: note: in expansion of macro 'SMB_ACL_USER' case SMB_ACL_USER: ^~~~~~~~~~~~ lib/sysacls.h:109:24: error: 'GROUP' undeclared (first use in this function); did you mean 'NGROUPS'? #define SMB_ACL_GROUP GROUP ^ acls.c:314:8: note: in expansion of macro 'SMB_ACL_GROUP' case SMB_ACL_GROUP: ^~~~~~~~~~~~~ acls.c: In function 'pack_smb_acl': lib/sysacls.h:108:26: error: 'USER_OBJ' undeclared (first use in this function); did you mean 'ACL_USER_OBJ'? #define SMB_ACL_USER_OBJ USER_OBJ ^ acls.c:358:12: note: in definition of macro 'CALL_OR_ERROR' if (func args) { \ ^~~~ acls.c:397:2: note: in expansion of macro 'COE' COE( sys_acl_set_info,(entry, SMB_ACL_USER_OBJ, racl->user_obj & ~NO_ENTRY, 0) ); ^~~ acls.c:397:32: note: in expansion of macro 'SMB_ACL_USER_OBJ' COE( sys_acl_set_info,(entry, SMB_ACL_USER_OBJ, racl->user_obj & ~NO_ENTRY, 0) ); ^~~~~~~~~~~~~~~~ lib/sysacls.h:107:23: error: 'USER' undeclared (first use in this function); did you mean 'EUSERS'? #define SMB_ACL_USER USER ^ acls.c:358:12: note: in definition of macro 'CALL_OR_ERROR' if (func args) { \ ^~~~ acls.c:406:3: note: in expansion of macro 'COE' COE( sys_acl_set_info, ^~~ acls.c:408:37: note: in expansion of macro 'SMB_ACL_USER' ida->access & NAME_IS_USER ? SMB_ACL_USER : SMB_ACL_GROUP, ^~~~~~~~~~~~ lib/sysacls.h:109:24: error: 'GROUP' undeclared (first use in this function); did you mean 'NGROUPS'? #define SMB_ACL_GROUP GROUP ^ acls.c:358:12: note: in definition of macro 'CALL_OR_ERROR' if (func args) { \ ^~~~ acls.c:406:3: note: in expansion of macro 'COE' COE( sys_acl_set_info, ^~~ acls.c:408:52: note: in expansion of macro 'SMB_ACL_GROUP' ida->access & NAME_IS_USER ? SMB_ACL_USER : SMB_ACL_GROUP, ^~~~~~~~~~~~~ lib/sysacls.h:110:27: error: 'GROUP_OBJ' undeclared (first use in this function); did you mean 'GROUP'? #define SMB_ACL_GROUP_OBJ GROUP_OBJ ^ acls.c:358:12: note: in definition of macro 'CALL_OR_ERROR' if (func args) { \ ^~~~ acls.c:414:2: note: in expansion of macro 'COE' COE( sys_acl_set_info,(entry, SMB_ACL_GROUP_OBJ, racl->group_obj & ~NO_ENTRY, 0) ); ^~~ acls.c:414:32: note: in expansion of macro 'SMB_ACL_GROUP_OBJ' COE( sys_acl_set_info,(entry, SMB_ACL_GROUP_OBJ, racl->group_obj & ~NO_ENTRY, 0) ); ^~~~~~~~~~~~~~~~~ lib/sysacls.h:112:23: error: 'CLASS_OBJ' undeclared (first use in this function) #define SMB_ACL_MASK CLASS_OBJ ^ acls.c:358:12: note: in definition of macro 'CALL_OR_ERROR' if (func args) { \ ^~~~ acls.c:426:2: note: in expansion of macro 'COE' COE( sys_acl_set_info,(entry, SMB_ACL_MASK, mask_bits, 0) ); ^~~ acls.c:426:32: note: in expansion of macro 'SMB_ACL_MASK' COE( sys_acl_set_info,(entry, SMB_ACL_MASK, mask_bits, 0) ); ^~~~~~~~~~~~ lib/sysacls.h:111:24: error: 'OTHER_OBJ' undeclared (first use in this function); did you mean 'USER_OBJ'? #define SMB_ACL_OTHER OTHER_OBJ ^ acls.c:358:12: note: in definition of macro 'CALL_OR_ERROR' if (func args) { \ ^~~~ acls.c:435:2: note: in expansion of macro 'COE' COE( sys_acl_set_info,(entry, SMB_ACL_OTHER, racl->other_obj & ~NO_ENTRY, 0) ); ^~~ acls.c:435:32: note: in expansion of macro 'SMB_ACL_OTHER' COE( sys_acl_set_info,(entry, SMB_ACL_OTHER, racl->other_obj & ~NO_ENTRY, 0) ); ^~~~~~~~~~~~~ In file included from acls.c:23:0: acls.c: In function 'change_sacl_perms': lib/sysacls.h:108:26: error: 'USER_OBJ' undeclared (first use in this function); did you mean 'ACL_USER_OBJ'? #define SMB_ACL_USER_OBJ USER_OBJ ^ acls.c:902:8: note: in expansion of macro 'SMB_ACL_USER_OBJ' case SMB_ACL_USER_OBJ: ^~~~~~~~~~~~~~~~ lib/sysacls.h:110:27: error: 'GROUP_OBJ' undeclared (first use in this function); did you mean 'ACL_GROUP_OBJ'? #define SMB_ACL_GROUP_OBJ GROUP_OBJ ^ acls.c:905:8: note: in expansion of macro 'SMB_ACL_GROUP_OBJ' case SMB_ACL_GROUP_OBJ: ^~~~~~~~~~~~~~~~~ lib/sysacls.h:112:23: error: 'CLASS_OBJ' undeclared (first use in this function) #define SMB_ACL_MASK CLASS_OBJ ^ acls.c:911:8: note: in expansion of macro 'SMB_ACL_MASK' case SMB_ACL_MASK: ^~~~~~~~~~~~ lib/sysacls.h:111:24: error: 'OTHER_OBJ' undeclared (first use in this function); did you mean 'USER_OBJ'? #define SMB_ACL_OTHER OTHER_OBJ ^ acls.c:921:8: note: in expansion of macro 'SMB_ACL_OTHER' case SMB_ACL_OTHER: ^~~~~~~~~~~~~ acls.c: In function 'default_perms_for_dir': acls.c:1121:7: warning: this statement may fall through [-Wimplicit-fallthrough=] if (dry_run) { ^ acls.c:1127:3: note: here default: ^~~~~~~ make: *** [Makefile:63: acls.o] Error 1