uutils/coreutils · error · io::Error

IsADirectory

IsADirectory

Error message

Is a directory

What it means

Error "Is a directory" thrown in uutils/coreutils.

Source

Thrown at src/uucore/src/lib/features/checksum/validate.rs:570

                FileChecksumResult::CantOpen,
                opts.verbose,
            );
        };
        let print_error = |err: io::Error| {
            show!(err.map_err_context(|| {
                locale_aware_escape_name(filename, QuotingStyle::SHELL_ESCAPE)
                    // This is non destructive thanks to the escaping
                    .to_string_lossy()
                    .to_string()
            }));
        };
        match File::open(filename) {
            Ok(f) => {
                if f.metadata()
                    .map_err(|_| LineCheckError::CantOpenFile)?
                    .is_dir()
                {
                    print_error(io::Error::new(
                        io::ErrorKind::IsADirectory,
                        "Is a directory",
                    ));
                    // also regarded as a failed open
                    failed_open();
                    Err(LineCheckError::FileIsDirectory)
                } else {
                    Ok(Box::new(f))
                }
            }
            Err(err) => {
                if !opts.ignore_missing {
                    // yes, we have both stderr and stdout here
                    print_error(err);
                    failed_open();
                }
                // we could not open the file but we want to continue
                Err(LineCheckError::FileNotFound)

View on GitHub (pinned to 85295bbf78)

Solutions

  1. Point the checksum tool at a regular file, not a directory.
  2. Recursively checksum directory contents with find ... -type f instead.

When it happens

Trigger: Occurs during checksum validation when a path expected to be a file is actually a directory (EISDIR).

Common situations: A checksum manifest line pointing at a directory, or passing a directory where a regular file is required.


AI-assisted analysis of uutils/coreutils@85295bbf78 (2026-08-19). Data as JSON: /api/errors/ec5af2f38308ea01. Report an issue: GitHub.