Commit Graph

3590 Commits

Author SHA1 Message Date
Jim Meyering 12508c923f (process_file): Always reset size_to_propagate_to_parent for
--separate-dirs (-S).
2003-02-21 07:15:16 +00:00
Jim Meyering eb63743d48 (process_file): Reorganize the code to use only
one `sum' array, and change how -S works back to the way it was
before 2003-01-31.  Patch by Bruno Haible.
2003-02-20 23:13:11 +00:00
Jim Meyering 44e80d26cb (usage) [%b]: Refer to %B. 2003-02-20 19:11:02 +00:00
Jim Meyering 409e7dd0b6 (print_stat): New format: %B (to print ST_NBLOCKSIZE).
(usage): Describe it.
2003-02-20 19:07:55 +00:00
Jim Meyering 4ebc314f18 . 2003-02-20 19:05:38 +00:00
Jim Meyering 5c629d9ef4 (process_file): Set info->skip before any possible return.
Report correct usage for directories, not 0.
(process_file): Return for `file_type == FTW_DPRE'
_before_ recording the dev/ino of a directory.
2003-02-20 15:03:22 +00:00
Jim Meyering fca1c1173c Now, df always displays the device file name corresponding to the
listed mount point under `Filesystem'.  Before, for an unmounted
block- or character-special file argument, it would display the
command-line argument instead.

(show_disk): Return a value indicating whether
there was a match.  Don't try to find a mount point here.
(show_entry): If show_disk doesn't find a match, call show_point.
2003-02-20 10:37:14 +00:00
Jim Meyering ac823e21c0 Include "mmap-stack.h".
(du_files): Add prototype with ATTRIBUTE_NORETURN.
Exit from this function, not from...
(main): ...here.
Instead, if possible, invoke du_files through a macro that
runs it with a large, mmap'd stack.
2003-02-19 22:20:45 +00:00
Jim Meyering 7c9292d5c9 (usage): Change wording in --help output:
use FILENUM instead of `SIDE' and say what FILENUM means.
2003-02-19 16:11:39 +00:00
Jim Meyering e2cd6ba3df (print_header): Rather than using a hard-coded literal
string of spaces matching the length of the English `...Type' header,
output the right number of spaces to match the selected translation.
Reported by Yann Dirson and Jean Charles Delepine as Debian bug 131113.
2003-02-19 16:05:07 +00:00
Jim Meyering 23f6d41f94 Include "full-read.h".
(bytes_split, lines_split, line_bytes_split): Use full_read,
not safe_read.   The way split was using the latter, a short read
could cause split to terminate before EOF.

(bytes_split): Remove unnecessary `else' after break.
(lines_split): Likewise.  and correct misleading indentation.
2003-02-19 14:28:50 +00:00
Jim Meyering f3ecf0e5df upgrade to automake-1.7.2b 2003-02-19 12:55:25 +00:00
Jim Meyering d2c4a4e44d cksum would perform an extra read after encountering EOF
(cksum): Exit the loop upon EOF, too.
Patch by Michael Bacarella.
2003-02-18 08:05:02 +00:00
Jim Meyering 2bb32c98a5 (run): New function, preparing for use of
RUN_WITH_BIG_STACK_*
2003-02-17 08:39:20 +00:00
Jim Meyering 49eda1bead Include "euidaccess.h".
Remove declaration of euidaccess.
2003-02-14 07:41:27 +00:00
Jim Meyering be6a1bab4f (portable_chars_only): Remove unnecessary `const'
in cast to avoid warning from icc.  Reported by Alexandre Duret-Lutz.
2003-02-12 09:20:47 +00:00
Jim Meyering 81b7f5a407 add comments and fix dumb typos 2003-02-10 13:19:00 +00:00
Jim Meyering c2597b6041 Don't include group-member.h.
Include euidaccess.h.
(eaccess): Rewrite function to set the real uid and gid temporarily
to the effective uid and gid, then invoke 'access', and then set the
real uid and gid back.  On systems that lack setreuid or setregid,
fall back on the kludges in euidaccess.  Before, it would not work
for e.g., files with ACLs, files that were marked immutable,
or on file systems mounted read-only.
2003-02-10 09:01:48 +00:00
Jim Meyering 8f69eadada (test_stat): Remove function. It's job is done (only
when necessary) by the wrapper in lib/stat.c.
2003-02-09 08:28:59 +00:00
Jim Meyering 4e94149b49 . 2003-02-08 20:49:00 +00:00
Jim Meyering 905c870f3a . 2003-02-08 20:00:53 +00:00
Jim Meyering 712c6ceded Correct now-invalid comment about cycle-detection. 2003-02-08 16:50:00 +00:00
Jim Meyering adb8e94a33 (print_boottime, print_deadprocs, print_runlevel):
Fix memory allocation arithmetic.
2003-02-06 10:22:12 +00:00
Jim Meyering a47615d2ed (process_file): Don't return early for excluded files
or for files whose dev/inode we've already seen.
2003-02-06 08:14:01 +00:00
Jim Meyering 3c1dbea18f (show_entry): Update sole use of show_disk. 2003-02-05 07:01:27 +00:00
Jim Meyering e295f4f388 `df /dev/block-or-char-device-file--not-mounted' now reports
the name of the file system on which the file resides, usually `/'.
Before, it would leave the `Mounted on' field blank.

(show_disk): Add parameter: STATP.
If we don't find a matching device name, then resort to calling
find_mount_point.
2003-02-04 11:48:27 +00:00
Jim Meyering 144418cd9d (show_disk): Move function to precede find_mount_point. 2003-02-04 10:28:23 +00:00
Jim Meyering a881942cca Don't put decl after non-decl. 2003-02-01 22:52:45 +00:00
Jim Meyering 1a26ff6e02 . 2003-02-01 15:21:29 +00:00
Jim Meyering d606b47598 (MAX_N_DESCRIPTORS): Define. 2003-02-01 15:20:36 +00:00
Jim Meyering 442dbd2429 (G_fail): New global.
(human_time): Diagnose failed localtime, not failed nstrftime.
(main): Fail if G_fail is set.
2003-02-01 09:59:09 +00:00
Jim Meyering 4686f1f3fd Include "file-type.h"
(print_human_type): Remove function.
(human_access): Rename from print_human_access.  Return a string.
(human_time): Rename from print_human_time.  Return a string.
(print_stat): Arrange so that field width and an alignment specifier
are honored for the %A, %F, %x, %y, and %z formats.
[%F]: Use file_type; this gives slightly different file type strings,
e.g., `directory' instead of `Directory' and `regular file' or
`regular empty file' instead of `Regular file'.
2003-01-31 18:28:39 +00:00
Jim Meyering fb9e95e6c3 (print_stat): Use S_ISLNK rather than an explicit
test using S_IFMT and S_IFLNK.  S_IFLNK may not be defined.
2003-01-31 13:52:18 +00:00
Jim Meyering d85b93c0fb ditto for invalid options 2003-01-31 13:37:08 +00:00
Jim Meyering 4bee27ae43 (main): Upon processing a bad --exclude-from or --max-depth
option argument, don't exit right away, in case there are others.
Rather record the failure and exit after processing other options.
2003-01-31 13:35:25 +00:00
Jim Meyering de49951491 Rewrite to perform directory traversal using nftw.
Include "dirname.h", "ftw.h", and "quotearg.h".
(AUTHORS): Add self.
(opt_one_file_system): Move global into `main'.
(path, xstat, exit_status): Remove declarations.
(arg_length, suffix_length): New globals.
(G_fail): New global, sort of like the old `exit_status'.
(IS_FTW_DIR_TYPE): Define.
(print_only_size): New function.
(process_file): New function.
(str_init, ensure_space, str_copyc, str_concatc): Remove functions.
(str_trunc, pop_dir, count_entry): Likewise.
(du_files): Rewrite to use nftw.
2003-01-31 10:39:33 +00:00
Jim Meyering 336827087f (quote_name): Add fourth parameter, width, into which to
store the screen columns, and return the number of bytes instead.
(print_dir): Pass NULL as fourth parameter of quote_name.
(print_name_with_quoting): Likewise.
(length_of_file_name_and_frills): Get the width from the fourth
parameter of quote_name instead of return value.
2003-01-27 13:42:26 +00:00
Jim Meyering d28d7b1814 (check-misc): Check for st_blocks, too. 2003-01-27 13:40:43 +00:00
Jim Meyering 88a5f079b4 (print_stat): Use ST_NBLOCKS rather than `->st_blocks'. 2003-01-27 13:32:44 +00:00
Jim Meyering 7f93a5421a (decode_switches): If `dired' is set without
`format == long_format', then silently reset dired.  This doesn't
change the behavior of ls (all prior uses of dired were protected
by `&& format == long_format'), and lets us...
(DIRED_INDENT): ... remove `format == long_format' conjunct.
(PUSH_CURRENT_DIRED_POS): Likewise.
(main): Likewise.
2003-01-27 10:45:48 +00:00
Jim Meyering c59a8e2d32 (remove_entry) [ROOT_CAN_UNLINK_DIRS && HAVE_STRUCT_DIRENT_D_TYPE]: If a file
has d_type == DT_UNKNOWN it may still be a directory -- or not (e.g., with
FreeBSD on an NFS-mounted file system), so resort to calling lstat to find out.
2003-01-21 18:49:49 +00:00
Jim Meyering 8df5caa414 Rename type: DS -> Dirstack_state. 2003-01-20 15:43:03 +00:00
Jim Meyering 3c7f4321a0 Remove some unnecessary parentheses. 2003-01-20 15:40:25 +00:00
Jim Meyering 17c68905a0 Include "canonicalize.h". 2003-01-19 16:14:41 +00:00
Jim Meyering cdb4bba0e6 (Dereference_symlink) [DEREF_COMMAND_LINE_SYMLINK_TO_DIR]: New member.
(enum) [DEREFERENCE_COMMAND_LINE_SYMLINK_TO_DIR_OPTION]: New member.
(long_options): Add option --dereference-command-line-symlink-to-dir.
(main): Make DEREF_COMMAND_LINE_SYMLINK_TO_DIR be the default,
rather than DEREF_COMMAND_LINE_ARGUMENTS, when none of the
-d, -F, -l options is specified.
(decode_switches): Handle --dereference-command-line-symlink-to-dir.
(gobble_file): Honor DEREF_COMMAND_LINE_SYMLINK_TO_DIR.
Change --dereference-command-line (-H) to dereference *all*
command line arguments, including broken symlinks.
2003-01-18 18:36:13 +00:00
Jim Meyering ba2b351bbf Change ls -H back to the way it was yesterday, since this is
compatible with FreeBSD and the POSIX spec is confusing
and somewhat contradictory.

(DEREF_COMMAND_LINE_ARGUMENTS): Change name back
from DEREF_COMMAND_LINE_SYMLINK_TO_DIR, updating all uses.
(long_options): Change the long option name back.
(usage): Change the usage back.
(gobble_file): When -H is specified, dereference a top-level
arg even if it points to a non-directory.
2003-01-18 18:01:51 +00:00
Jim Meyering 308e04e326 . 2003-01-16 22:28:13 +00:00
Jim Meyering 800f3a1e77 (gobble_file): Fall back on using lstat when required:
when --dereference (-L) is not specified, and
- when operating on a dangling symlink
- when operating on command-line-symlink-to-directories
This fixes numerous problems.  Here are examples:
- `ls dangling-symlink' would fail with `no such file...'
Now it prints `dangling-symlink'.
- `ls -i symlink' would mistakenly print the inode of the referent.
Now it prints the inode of the symlink.  Likewise for --size (-s).
Based on a patch from Michael Stone.
Reported by Deepak Goel as Debian bug #173793.
2003-01-15 11:59:07 +00:00
Jim Meyering 5c68fbd9a3 Rename ls's --dereference-command-line (-H)
option to   --dereference-command-line-symlink-to-dir.

[enum Dereference_symlink]
(DEREF_COMMAND_LINE_SYMLINK_TO_DIR): Rename from
DEREF_COMMAND_LINE_ARGUMENTS.  Update all uses.
(long_options): Rename the option.
(usage): Say that --dereference-... changes how ls treats
only symlinks to directories specified on the command line.
2003-01-15 11:32:47 +00:00
Jim Meyering 642bc1acfb (gobble_file): Fix a bug introduced in 4.5.4 that made it
so that ls --color would no longer highlight the names of files with
the execute bit set when not specified on the command line.
Patch by Michael Stone.  Reported by Stephen Depooter as
Debian bug 175135.
2003-01-14 16:22:55 +00:00