summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/release/1.7.35
blob: 6773f758e65ca86ef3d65ba954f65a3216eba474 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
What's new:
-----------

- New APIs: cabsl, cimagl, creall, finitel, hypotl, sqrtl.

- New API: issetugid.


What changed:
-------------

- Performance improvements of the new account DB handling.

- Since 1.7.34, chmod does not always affect the POSIX permission mask as
  returned by stat(2) or printed by ls(1), due to the improved POSIX ACL
  handling.  However, that's still far from perfect, so, as a temporary
  workaround, chmod now checks if secondary groups and users in the ACL
  have more permissions than the primary group.  If so, the permissions
  of the secondary users and groups will be reduced according to the mask
  given by the new primary group permissions.  I.e, chmod 600 will remove
  all permissions from the primary group as well as all secondary user and
  group entries in the ACL.

- Change handling of group permissions if owner SID == group SID.  Now the
  group permissions don't mirror the user permissions anymore, thus leading
  to less hassle with security-conscious applications.

- Allow group SID to be the same as owner SID for "Microsoft Accounts".
  Those have the group in their user token set to the owner SID by default.
  Drop the workaround to change their primary group to "Users".  It's not
  required anymore due to the aforementioned changes.

- Change getfacl long options from --all to --access and from --dir to
  --default, along the lines of the Linux getfacl tool.

- Don't raise a SIGSYS signal in the XSI IPC functions if cygserver is not
  running.  Just return -1 with errno set to ENOSYS.


Bug Fixes
---------

- Fix /proc/cpuinfo multicore info on Intel CPUs.
  Addresses: https://cygwin.com/ml/cygwin-apps/2015-02/msg00077.html

- Generate unique inode number for /dev/tty under all circumstances.
  Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00211.html

- Fix handling of PATH search in execlp and other calls to honor mount flags.
  Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00119.html

- Remove a debug message accidentally printed to the terminal window
  if an application calls fcntl(F_SETFL) erroneously.

- Two regressions in 1.7.34 acl(SETACL, ...):

  - SETACL overwrote the incoming acltent_t array for bookkeeping purposes
    while iterating over its entries.  This broke reusing the acl in the
    calling application (e.g. setfacl).
    Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00304.html

  - SETACL accidentally missed to grant owner FILE_WRITE_ATTRIBUTES access.
    Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00457.html

- Keep SETACL from duplicating user/group deny/allow ACEs if owner SID is
  the same as group SID.

- When creating directories, keep permissions inherited from parent directory
  inheritable, per POSIX 1003.1e.

- 64 bit: Export forgotten symbol __mempcpy.
  Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00394.html

- 64 bit: Avoid misbehaviour in signal mask computation.
  Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00665.html

- Avoid data loss on non-blocking pipes after switching back to blocking.
  Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00575.html

- Fix a potential heap corruption in mkgroup and mkpasswd when enumerating
  Unix users.

- Regression in 1.7.34:  A patch to the pty handling fixing the problem
  reported in https://cygwin.com/ml/cygwin-developers/2014-11/msg00000.html
  was incomplete and lead to undesired buffering in non-canonical mode.
  This should be fixed now.
  Addresses: https://cygwin.com/ml/cygwin/2015-02/msg00608.html

- Fix signal handling in a few functions.
  Partially addresses: https://cygwin.com/ml/cygwin/2015-02/msg00762.html