/*
- * $Id: filedir.c,v 1.22 2002-02-28 21:20:39 jmarcus Exp $
+ * $Id: filedir.c,v 1.23 2002-03-05 01:41:36 srittau Exp $
*
* Copyright (c) 1990,1993 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
upath, strerror(errno));
return (AFPERR_ACCESS);
}
- if (chmod(upath,(st.st_mode&0xFFFF&~default_options.umask)| S_IRGRP| S_IROTH) < 0)
+ if (chmod(upath,(st.st_mode&~default_options.umask)| S_IRGRP| S_IROTH) < 0)
{
LOG(log_error, logtype_default,
"matchfile2dirperms: Error adding file read permissions: %s",
adpath, strerror(errno));
return (AFPERR_ACCESS);
}
- if (chmod(adpath, (st.st_mode&0xFFFF&~default_options.umask)| S_IRGRP| S_IROTH) < 0)
+ if (chmod(adpath, (st.st_mode&~default_options.umask)| S_IRGRP| S_IROTH) < 0)
{
LOG(log_error, logtype_default,
"matchfile2dirperms: Error adding AD file read permissions: %s",
/*
- * $Id: unix.c,v 1.30 2002-02-28 21:20:39 jmarcus Exp $
+ * $Id: unix.c,v 1.31 2002-03-05 01:41:36 srittau Exp $
*
* Copyright (c) 1990,1993 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
if ( seteuid(0) < 0) {
LOG(log_error, logtype_default, "stickydirmode: unable to seteuid root: %s", strerror(errno));
}
- if ( retval=chmod( name, ( (DIRBITS | mode | S_ISVTX) & 0777 & ~default_options.umask) ) < 0) {
- LOG(log_error, logtype_default, "stickydirmode: chmod \"%s\": %s", name, strerror(retval) );
+ if ( retval=chmod( name, ( (DIRBITS | mode | S_ISVTX) & ~default_options.umask) ) < 0) {
+ LOG(log_error, logtype_default, "stickydirmode: chmod \"%s\": %s", name, strerror(errno) );
return(AFPERR_ACCESS);
} else {
#ifdef DEBUG
* Ignore EPERM errors: We may be dealing with a directory that is
* group writable, in which case chmod will fail.
*/
- if ( (chmod( name, (DIRBITS | mode) & 0777 & ~default_options.umask ) < 0) && errno != EPERM) {
+ if ( (chmod( name, (DIRBITS | mode) & ~default_options.umask ) < 0) && errno != EPERM) {
LOG(log_error, logtype_default, "stickydirmode: chmod \"%s\": %s",
name, strerror(errno) );
retval = -1;
}
if (S_ISDIR(st.st_mode)) {
- if ( chmod( modbuf, (DIRBITS | mode) & 0777 & ~default_options.umask ) < 0 && errno != EPERM ) {
+ if ( chmod( modbuf, (DIRBITS | mode) & ~default_options.umask ) < 0 && errno != EPERM ) {
LOG(log_error, logtype_default, "setdeskmode: chmod %s: %s",
modbuf, strerror(errno) );
}
- } else if ( chmod( modbuf, mode & 0777 & ~default_options.umask ) < 0 && errno != EPERM ) {
+ } else if ( chmod( modbuf, mode & ~default_options.umask ) < 0 && errno != EPERM ) {
LOG(log_error, logtype_default, "setdeskmode: chmod %s: %s",
modbuf, strerror(errno) );
}
}
closedir( sub );
/* XXX: need to preserve special modes */
- if ( chmod( deskp->d_name, (DIRBITS | mode) & 0777 & ~default_options.umask ) < 0 && errno != EPERM ) {
+ if ( chmod( deskp->d_name, (DIRBITS | mode) & ~default_options.umask ) < 0 && errno != EPERM ) {
LOG(log_error, logtype_default, "setdeskmode: chmod %s: %s",
deskp->d_name, strerror(errno) );
}
return -1;
}
/* XXX: need to preserve special modes */
- if ( chmod( ".AppleDesktop", (DIRBITS | mode) & 0777 & ~default_options.umask ) < 0 && errno != EPERM ) {
+ if ( chmod( ".AppleDesktop", (DIRBITS | mode) & ~default_options.umask ) < 0 && errno != EPERM ) {
LOG(log_error, logtype_default, "setdeskmode: chmod .AppleDesktop: %s", strerror(errno) );
}
return( 0 );