 FUNCTION: ssize_t acl_copy_ext_native ( void* buf_p, acl_t acl, ssize_t size ) ;
 FUNCTION: acl_t acl_copy_int ( void* buf_p ) ;
 FUNCTION: acl_t acl_copy_int_native ( void* buf_p ) ;
-FUNCTION: acl_t acl_from_text ( char* buf_p ) ;
+FUNCTION: acl_t acl_from_text ( c-string buf_p ) ;
 FUNCTION: ssize_t acl_size ( acl_t acl ) ;
-FUNCTION: char* acl_to_text ( acl_t acl, ssize_t* len_p ) ;
+FUNCTION: c-string acl_to_text ( acl_t acl, ssize_t* len_p ) ;
 FUNCTION: int acl_valid ( acl_t acl ) ;
 FUNCTION: int acl_add_perm ( acl_permset_t permset_d, acl_perm_t perm ) ;
 FUNCTION: int acl_delete_perm ( acl_permset_t permset_d, acl_perm_t perm ) ;

    acl_add_perm acl-error ;

: acl-entry>permset ( acl_entry_t -- acl_permset )
    acl_permset_t <struct> [ acl_get_permset acl-error ] keep ;

: filter-strings ( obj strings -- string )
   [ [ 1 = ] dip f ? ] 2map sift "," join ;

    acl-flag-names filter-strings ;

: acl-entry>flagset ( acl-entry -- flagset )
    f acl_flagset_t <ref> [ acl_get_flagset_np acl-error ] keep ;

: acl-entry>flag-names ( acl-entry -- strings )
    acl-entry>flagset flagset>strings ;
