--- sourceforge.net/trunk/rdesktop/disk.c 2004/04/17 07:14:41 664 +++ sourceforge.net/trunk/rdesktop/disk.c 2004/05/11 12:46:39 696 @@ -44,8 +44,8 @@ #if (defined(SOLARIS) || defined (__hpux) || defined(__BEOS__)) #include /* solaris statvfs */ -#include -/* TODO: Fix mntent-handling for solaris */ +/* TODO: Fix mntent-handling for solaris/hpux + * #include */ #undef HAVE_MNTENT_H #define MNTENT_PATH "/etc/mnttab" #define STATFS_FN(path, buf) (statvfs(path,buf)) @@ -653,6 +653,8 @@ if (stat_fs.f_bsize * stat_fs.f_bfree < length) return STATUS_DISK_FULL; + /* FIXME: Growing file with ftruncate doesn't + work with Linux FAT fs */ if (ftruncate(handle, length) != 0) { perror("ftruncate"); @@ -818,7 +820,7 @@ switch (info_class) { - case 3: //FIXME: Why 3? + case FileBothDirectoryInformation: // If a search pattern is received, remember this pattern, and restart search if (pattern[0] != 0) @@ -838,7 +840,7 @@ // Get information for directory entry sprintf(fullpath, "%s/%s", dirname, pdirent->d_name); - /* JIF + /* JIF printf("Stat: %s\n", fullpath); */ if (stat(fullpath, &fstat)) { @@ -888,6 +890,9 @@ break; default: + /* FIXME: Support FileDirectoryInformation, + FileFullDirectoryInformation, and + FileNamesInformation */ unimpl("IRP Query Directory sub: 0x%x\n", info_class); return STATUS_INVALID_PARAMETER;