if (strcmp(dname,".")==0 ||
strcmp(dname,"..")==0)
continue;
- slprintf(buf, sizeof(buf), "%s/%s", fname, dname);
+ snprintf(buf, sizeof(buf), "%s/%s", fname, dname);
if (verbose > 0)
rprintf(FINFO,"deleting %s\n", buf);
if (delete_file(buf) != 0) {
#ifdef HAVE_CHMOD
if (!S_ISLNK(st->st_mode)) {
- if (st->st_mode != file->mode) {
+ if ((st->st_mode & CHMOD_BITS) != (file->mode & CHMOD_BITS)) {
updated = 1;
- if (do_chmod(fname,file->mode) != 0) {
+ if (do_chmod(fname,(file->mode & CHMOD_BITS)) != 0) {
rprintf(FERROR,"failed to set permissions on %s : %s\n",
fname,strerror(errno));
return 0;