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. What changed: ------------- - Including now *only* includes the POSIX ACL API. To include the old Solaris API, include . - 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.