@@ -1365,6 +1365,109 @@ static abi_long freebsd_syscall(CPUArchState *env, int num, abi_long arg1,
ret = do_freebsd_sysarch(env, arg1, arg2);
break;
+ /*
+ * extended attributes and ACL system calls
+ */
+ case TARGET_FREEBSD_NR_extattrctl: /* extattrctl() */
+ ret = do_freebsd_extattrctl(arg1, arg2, arg3, arg4, arg5);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_set_file: /* extattr_set_file(2) */
+ ret = do_freebsd_extattr_set_file(arg1, arg2, arg3, arg4, arg4);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_get_file: /* extattr_get_file(2) */
+ ret = do_freebsd_extattr_get_file(arg1, arg2, arg3, arg4, arg4);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_delete_file: /* extattr_delete_file(2) */
+ ret = do_freebsd_extattr_delete_file(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_set_fd: /* extattr_set_fd(2) */
+ ret = do_freebsd_extattr_set_fd(arg1, arg2, arg3, arg4, arg5);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_get_fd: /* extattr_get_fd(2) */
+ ret = do_freebsd_extattr_get_fd(arg1, arg2, arg3, arg4, arg5);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_delete_fd: /* extattr_delete_fd(2) */
+ ret = do_freebsd_extattr_delete_fd(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_get_link: /* extattr_get_link(2) */
+ ret = do_freebsd_extattr_get_link(arg1, arg2, arg3, arg4, arg4);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_set_link: /* extattr_set_link(2) */
+ ret = do_freebsd_extattr_set_link(arg1, arg2, arg3, arg4, arg4);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_delete_link: /* extattr_delete_link(2) */
+ ret = do_freebsd_extattr_delete_link(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_list_fd: /* extattr_list_fd(2) */
+ ret = do_freebsd_extattr_list_fd(arg1, arg2, arg3, arg4);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_list_file: /* extattr_list_file(2) */
+ ret = do_freebsd_extattr_list_file(arg1, arg2, arg3, arg4);
+ break;
+
+ case TARGET_FREEBSD_NR_extattr_list_link: /* extattr_list_link(2) */
+ ret = do_freebsd_extattr_list_link(arg1, arg2, arg3, arg4);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_aclcheck_fd: /* __acl_aclcheck_fd() */
+ ret = do_freebsd__acl_aclcheck_fd(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_aclcheck_file: /* __acl_aclcheck_file() */
+ ret = do_freebsd__acl_aclcheck_file(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_aclcheck_link: /* __acl_aclcheck_link() */
+ ret = do_freebsd__acl_aclcheck_link(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_delete_fd: /* __acl_delete_fd() */
+ ret = do_freebsd__acl_delete_fd(arg1, arg2);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_delete_file: /* __acl_delete_file() */
+ ret = do_freebsd__acl_delete_file(arg1, arg2);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_delete_link: /* __acl_delete_link() */
+ ret = do_freebsd__acl_delete_link(arg1, arg2);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_get_fd: /* __acl_get_fd() */
+ ret = do_freebsd__acl_get_fd(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_get_file: /* __acl_get_file() */
+ ret = do_freebsd__acl_get_file(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_get_link: /* __acl_get_link() */
+ ret = do_freebsd__acl_get_link(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_set_fd: /* __acl_get_fd() */
+ ret = do_freebsd__acl_set_fd(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_set_file: /* __acl_set_file() */
+ ret = do_freebsd__acl_set_file(arg1, arg2, arg3);
+ break;
+
+ case TARGET_FREEBSD_NR___acl_set_link: /* __acl_set_link() */
+ ret = do_freebsd__acl_set_link(arg1, arg2, arg3);
+ break;
+
default:
qemu_log_mask(LOG_UNIMP, "Unsupported syscall: %d\n", num);
ret = -TARGET_ENOSYS;