diff options
Diffstat (limited to 'src/dd.c')
-rw-r--r-- | src/dd.c | 9 |
1 files changed, 6 insertions, 3 deletions
@@ -230,6 +230,7 @@ static struct symbol_value const flags[] = {"append", O_APPEND}, {"direct", O_DIRECT}, {"dsync", O_DSYNC}, + {"noctty", O_NOCTTY}, {"nofollow", O_NOFOLLOW}, {"nonblock", O_NONBLOCK}, {"sync", O_SYNC}, @@ -431,6 +432,9 @@ Each FLAG symbol may be:\n\ fputs (_(" nonblock use non-blocking I/O\n"), stdout); if (O_NOFOLLOW) fputs (_(" nofollow do not follow symlinks\n"), stdout); + if (O_NOCTTY) + fputs (_(" noctty do not assign controlling terminal from file\n"), + stdout); fputs (_("\ \n\ Sending a SIGUSR1 signal to a running `dd' process makes it\n\ @@ -1469,8 +1473,7 @@ main (int argc, char **argv) } else { - int opts = input_flags | O_NOCTTY; - if (open_fd (STDIN_FILENO, input_file, O_RDONLY | opts, 0) < 0) + if (open_fd (STDIN_FILENO, input_file, O_RDONLY | input_flags, 0) < 0) error (EXIT_FAILURE, errno, _("opening %s"), quote (input_file)); } @@ -1488,7 +1491,7 @@ main (int argc, char **argv) { mode_t perms = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH; int opts - = (output_flags | O_NOCTTY + = (output_flags | (conversions_mask & C_NOCREAT ? 0 : O_CREAT) | (conversions_mask & C_EXCL ? O_EXCL : 0) | (seek_records || (conversions_mask & C_NOTRUNC) ? 0 : O_TRUNC)); |