version 1.4, 1996/06/26 05:38:24 |
version 1.5, 1996/07/25 05:31:03 |
|
|
return(-1); |
return(-1); |
} |
} |
removed: |
removed: |
message(MT_CHANGE|MT_REMOTE, "%s: removed", target); |
/* |
|
* We use MT_NOTICE instead of MT_CHANGE because this function is |
|
* sometimes called by other functions that are suppose to return a |
|
* single ack() back to the client (rdist). This is a kludge until |
|
* the Rdist protocol is re-done. Sigh. |
|
*/ |
|
message(MT_NOTICE|MT_REMOTE, "%s: removed", target); |
return(0); |
return(0); |
} |
} |
|
|
|
|
off_t i; |
off_t i; |
register char *cp; |
register char *cp; |
char *savefile = NULL; |
char *savefile = NULL; |
|
static struct stat statbuff; |
|
|
/* |
/* |
* Create temporary file |
* Create temporary file |
|
|
} |
} |
|
|
/* |
/* |
|
* If the target is a directory, we need to remove it first |
|
* before we can rename the new file. |
|
*/ |
|
if ((stat(target, &statbuff) == 0) && S_ISDIR(statbuff.st_mode)) { |
|
char *saveptr = ptarget; |
|
|
|
ptarget = &target[strlen(target)]; |
|
removefile(&statbuff); |
|
ptarget = saveptr; |
|
} |
|
|
|
/* |
* Install new (temporary) file as the actual target |
* Install new (temporary) file as the actual target |
*/ |
*/ |
if (rename(new, target) < 0) { |
if (rename(new, target) < 0) { |
|
|
time_t mtime, atime; |
time_t mtime, atime; |
char *owner, *group, *file; |
char *owner, *group, *file; |
char new[MAXPATHLEN]; |
char new[MAXPATHLEN]; |
int freespace = -1, freefiles = -1; |
long freespace = -1, freefiles = -1; |
char *cp = cmd; |
char *cp = cmd; |
|
|
/* |
/* |
|
|
*/ |
*/ |
if (min_freespace || min_freefiles) { |
if (min_freespace || min_freefiles) { |
/* Convert file size to kilobytes */ |
/* Convert file size to kilobytes */ |
int fsize = size / 1024; |
long fsize = (long) (size / 1024); |
|
|
if (getfilesysinfo(target, &freespace, &freefiles) != 0) |
if (getfilesysinfo(target, &freespace, &freefiles) != 0) |
return; |
return; |