S_ISGID
# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)
#define ALLPERMS (S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO)
if (mode & (S_ISVTX | S_ISGID | S_ISUID)) {
if (mode & S_ISGID)
if (mode & (S_ISVTX | S_ISGID | S_ISUID)) {
if (mode & S_ISGID)
perm |= S_ISGID;
mode |= (perms & (S_ISVTX | S_ISUID | S_ISGID));
mode |= perms & (S_ISVTX | S_ISUID | S_ISGID);
pxace->perms |= S_ISGID;
newpxdesc->mode &= ~S_ISGID;
mode &= ~S_ISGID;
if (allow && (perm & S_ISGID)) {
*pdsetgid = stbuf.st_mode & S_ISGID;
if (perm & S_ISGID)
| (dsetgid & S_ISGID);
(uint32)(s.st_mode & ~(S_IFMT | S_ISUID | S_ISGID | S_ISVTX)));
(mode & S_ISGID) != 0));
if ((st.st_mode & S_ISGID) != 0) {
SET_ST_MODE_BIT(FSSH_S_ISGID, S_ISGID);
SET_ST_MODE_BIT(FSSH_S_ISGID, S_ISGID);