What's new:
-----------
- Full set of POSIX.1e ACL API functions now implemented.
New APIs: acl_add_perm, acl_calc_mask, acl_clear_perms, acl_copy_entry,
acl_copy_ext, acl_copy_int, acl_create_entry, acl_delete_def_file,
acl_delete_entry, acl_delete_perm, acl_dup, acl_free, acl_from_text,
acl_get_entry, acl_get_fd, acl_get_file, acl_get_permset, acl_get_qualifier,
acl_get_tag_type, acl_init, acl_set_fd, acl_set_file, acl_set_permset,
acl_set_qualifier, acl_set_tag_type, acl_size, acl_to_text, acl_valid.
- Most libacl extensions now implemented, too:
New APIs: acl_check, acl_cmp, acl_entries, acl_equiv_mode, acl_error,
acl_extended_fd, acl_extended_file, acl_extended_file_nofollow,
acl_from_mode, acl_get_perm, acl_to_any_text.
- First implementation of pthread_barrier/pthread_barrierattr functions.
New APIs: pthread_barrierattr_init, pthread_barrierattr_setpshared,
pthread_barrierattr_getpshared, pthread_barrierattr_destroy,
pthread_barrier_init, pthread_barrier_destroy, pthread_barrier_wait.
- Enabled console reports requested by escape sequences: Requesting primary
and secondary device attributes, requesting cursor position report; see
https://cygwin.com/ml/cygwin-patches/2012-q3/msg00019.html- New APIs: clog10, clog10f, nexttoward, nexttowardf, nexttowardl.
- Add missing long double functions. New APIs:
acoshl, acosl, asinhl, asinl, atan2l, atanhl, atanl, cacoshl, cacosl, cargl,
casinhl, casinl, catanhl, catanl, ccoshl, ccosl, ceill, cexpl, clog10l,
clogl, conjl, copysignl, coshl, cosl, cpowl, cprojl, csinhl, csinl, csqrtl,
ctanhl, ctanl, dreml, erfcl, erfl, exp10l, exp2l, expl, expm1l, fabsl,
fdiml, floorl, fmal, fmaxl, fminl, fmodl, frexpl, ilogbl, isinfl, isnanl,
ldexpl, lgammal, lgammal_r, llroundl, log10l, log1pl, log2l, logbl, logl,
lroundl, modfl, nearbyintl, nextafterl, pow10l, powl, remainderl, remquol,
roundl, scalbl, scalblnl, scalbnl, sincosl, sinhl, sinl, tanhl, tanl,
tgammal, truncl.
- New header: cpio.h.
What changed:
-------------
- Including <sys/acl.h> now *only* includes the POSIX ACL API. To include
the old Solaris API, include <cygwin/acl.h>.
- In calls to chmod treat ACLs with extra ACEs *only* for Admins and
SYSTEM like a trivial ACL.
- Bump POSIX option macros to POSIX.1-2008.
- Profiling data, specifically pc sampling, now covers all threads of a
program and not just the main thread. Environment variable GMON_OUT_PREFIX
enables multiple gmon.out files to preserve profiling data after fork or
from multiple program runs.
- Feature test macros, which control which symbols are exposed in the standard
headers, have been completely overhauled for compatibility with glibc.
- The isinf, isinff, and isinfl functions are signed, returning -1 for
negative infinity for compatibility with glibc.
Bug Fixes
---------
- Fix potential hang when using LoadLibraryEx(LOAD_LIBRARY_SEARCH_SYSTEM32).
Reported and tested via IRC.
- Fix a bug in ACL handling which might result in a spurious extra entry
for the primary group. Self-observed.
- printf(3): Handle multibyte decimal point in field size computation.
Addresses:
https://cygwin.com/ml/cygwin/2016-02/msg00014.html- cygwin_conv_path: Always preserve trailing backslashes in conversion
to POSIX paths.
Addresses:
https://cygwin.com/ml/cygwin/2016-01/msg00480.html- Make buffered console characters visible to select().
Addresses:
https://cygwin.com/ml/cygwin/2014-12/msg00118.html- Always report relocation problems, not only in debug DLL.
Addresses:
https://cygwin.com/ml/cygwin/2016-02/msg00147.html- Don't spill network credentials of privileged user changing the user
context via setuid method 1
(
https://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-nopasswd1) into
user session.
Addresses:
https://cygwin.com/ml/cygwin/2016-02/msg00101.html- Fix bug in setvbuf resulting in overwriting data in line buffered IO
when writing after reading.
Addresses:
https://cygwin.com/ml/cygwin/2016-03/msg00180.html- Fix typo in code converting Windows ACL to POSIX ACL, potentially
resulting in incorrect group permissions. Self-observed.
- Fix reading/writing ACLs on Samba shares when using RFC2307 mapped uid/gid
values. Self-observed.
- Fix a wrong error code returned when trying to execute a file which can't
be read for any reason.
Addresses:
https://cygwin.com/ml/cygwin/2016-03/msg00364.html- Only allow enabled groups from the user token's group list as primary
token.
Addresses:
https://cygwin.com/ml/cygwin/2016-03/msg00477.html- Fix implementation of finitel.
Addresses:
https://cygwin.com/ml/cygwin-apps/2016-03/msg00152.html- Fix strtold return value for +/-infinity.
Addresses:
https://cygwin.com/ml/cygwin-apps/2016-03/msg00152.html- Fix accepted specifications with `getconf -v' on 64-bit. Self-observed.