flags |= XMIT_TOP_DIR;
if ((flags & 0xFF00) || !flags) {
flags |= XMIT_EXTENDED_FLAGS;
- write_byte(f, flags);
- write_byte(f, flags >> 8);
+ write_shortint(f, flags);
} else
write_byte(f, flags);
} else {
if (file->link_u.idev) {
if (protocol_version < 26) {
/* 32-bit dev_t and ino_t */
- write_int(f, dev);
- write_int(f, file->F_INODE);
+ write_int(f, (int32)dev);
+ write_int(f, (int32)file->F_INODE);
} else {
/* 64-bit dev_t and ino_t */
if (!(flags & XMIT_SAME_DEV))
* statting directories if we're not recursing, but this is not a very
* important case. Some systems may not have d_type.
**/
-struct file_struct *make_file(char *fname, struct file_list *flist,
+struct file_struct *make_file(const char *fname, struct file_list *flist,
STRUCT_STAT *stp, unsigned short flags,
int filter_level)
{
return NULL;
}
- /* We only care about directories because we need to avoid recursing
+ /* -x only affects directories because we need to avoid recursing
* into a mount-point directory, not to avoid copying a symlinked
* file if -L (or similar) was specified. */
if (one_file_system && st.st_dev != filesystem_dev
if (mid_up > high) {
/* If there's nothing left above us, set high to
* a non-empty entry below us and continue. */
- high = mid - flist->files[mid]->length;
+ high = mid - (int)flist->files[mid]->length;
if (!flist->files[high]->basename) {
do {
- high -= flist->files[high]->length;
+ high -= (int)flist->files[high]->length;
} while (!flist->files[high]->basename);
flist->files[mid]->length = mid - high;
}