This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ANNOUNCEMENT] TEST RELEASE: Cygwin 2.5.0-0.1


On 1/24/2016 6:56 AM, Corinna Vinschen wrote:
Hi Cygwin friends and users,


I released a new Cygwin TEST version 2.5.0-0.1.

This release introduces a major change addressing developers only, so
as a user you can skip this test release.

tl;dr: Cygwin 2.5.0 switches Cygwin from the Solaris ACL API to the
        POSIX.1e ACL API.

Since the year 2000, Cygwin supports a POSIXoid ACL emulation.  This
emulation is based on the Solaris API, which is only marginally
comparable to the POSIX ACL API defined in the withdrawn draft
POSIX.1e(*).

At about the same time SGI started to implement POSIX.1e which
eventually became libacl in 2001.  Libacl is the POSIX ACL
implementation used on Linux.

With Cygwin 2.4.0, Cygwin introduced a major revamp of the POSIX ACL
emulation.  This new emulation is complete in the sense that the ACL
handling covers all of POSIX.1e quirks.  This in turn allows to use
the POSIX.1e API.

The Solaris API is the base implementation and stays available.  The
POSIX.1e API is implemented in terms of the Solaris types and mainly
a slim layer on top of the Solaris API.

Changes for developers:

- The full set of POSIX.1e functions is now available.

- Most of the libacl extensions are available as well.  The only
   exceptions right now are the two functions perm_copy_file and
   perm_copy_fd.  These can be added later.  Somebody just has to do it :)

- The <sys/acl.h> header now *only* exposes the POSIX.1e API.

- To get access to the Solaris API, you will have to include
   <cygwin/acl.h> now.

- There's a new header <acl/libacl.h> which exposes the libacl extension
   functions.

Please give this new POSIX.1e ACL implementation a test.  If you have
a project or maintain a package utilizing ACLs, please make sure that
your project picks up the new POSIX.1e API and that it works as desired.

Projects like emacs, vim, coreutils come to mind...

Hi Corinna,

emacs builds and passes its test suite. Here are the configure results related to ACLs:

TESTS FOR FUNCTIONS
===================
Yes:

acl_delete_def_file
acl_entries
acl_extended_file
acl_free
acl_from_mode
acl_from_text
acl_get_fd
acl_get_file
acl_set_fd
acl_set_file

No:

acl_copy_ext_native
acl_create_entry_np
acl_delete_fd_np
acl_delete_file_np
acl_free_text
acl_to_short_text

TESTS FOR HEADERS
=================
Yes:

<acl/libacl.h>
<sys/acl.h>

OTHER TESTS
===========
constant ACL_FIRST_ENTRY -- Yes
type ACL_TYPE_EXTENDED -- No

If any of these results are unexpected, let me know, and I'll provide the configure tests.

I'll start working with the new build to see if anything unexpected happens. Is there anything in particular that I should check?

Ken

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]