1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-04-20 02:36:16 +02:00
Commit Graph

5661 Commits

Author SHA1 Message Date
Jim Meyering
049a807bc6 . 2005-12-15 14:47:36 +00:00
Jim Meyering
8768b88913 revert behavior of --format=FMT (-c)
add new option: --printf=FMT

(isodigit, octtobin, hextobin): Define.
(PRINTF_OPTION): Define.
(interpret_backslash_escapes, trailing_delim): New globals.
(usage): Document them.  Alphabetize on long option names.
(print_esc_char): New function.
(print_it): Rewrite, in order to handle backslash escapes.
(main): Handle new option.  Set globals for --format, too.
2005-12-15 12:24:30 +00:00
Paul Eggert
e18c4ff172 (incompatible_options): New function.
(check_ordering_compatibility, main): Use it.
(main): Check for -c and -o.
Don't bother with a usage message for
"sort -c a b", for consistency with other error diagnostics.
2005-12-14 23:59:23 +00:00
Paul Eggert
56805cd202 (check_ordering_compatibility): New function.
(main): Use it.
2005-12-14 22:46:02 +00:00
Paul Eggert
dcc1bc1759 Undo previous change. 2005-12-14 18:09:04 +00:00
Paul Eggert
f5e1bca49d (main): Check for close (STDOUT_FILENO) failure. 2005-12-14 01:39:46 +00:00
Paul Eggert
c5174f6fb2 (struct irand_state, irand_init, irand32, irand_mod): Moved back here,
from rand-isaac.c.
2005-12-12 22:43:16 +00:00
Paul Eggert
b22d6cc592 (struct irand_state, irand_init, irand32, irand_mod): Move to shred.c. 2005-12-12 22:42:58 +00:00
Paul Eggert
d2af4ddbeb (EXTRA_DIST): Add rand-isaac.c. 2005-12-12 22:42:37 +00:00
Paul Eggert
0abb871873 Remove. All uses now simply include rand-isaac.c. 2005-12-12 22:16:30 +00:00
Paul Eggert
dee72c1194 Include rand-isaac.c rather than rand-isaac.h.
Don't include md5.h; it wasn't needed.
(struct keyfield): Rename random_hash to random, for consistency
with the other member names.  All uses changed.
(usage): Tweak wording to mention STRING for --seed option.
(short_options): Rorder for consistency with other programs.
(rand_state): Now a struct, not a pointer to one.  All uses changed.
(HASH_WORDS, HASH_SIZE): Remove.
(get_hash): Remove comments around resbuf size, since we can assume C89.
Use a "more-kosher" (but slower) approach of invoking isaac_refill.
(keycompare): Adjust to the new get_hash.
Add a FIXME.
(badfieldspec): Omit recently-introduced comment; it isn't needed.
(main): Don't set need_random simply because gkey has it set; that
doesn't necessarily mean we'll need random numbers.
Redo seeding to match new get_hash approach.
2005-12-12 22:09:27 +00:00
Paul Eggert
30e44dd014 Include rand-isaac.c rather than rand-isaac.h.
(fillrand, dopass, main): Undo previous change.
2005-12-12 22:08:50 +00:00
Paul Eggert
f7a86b7734 Revert to what used to be in shred.c, without
changing it to allow for varying numbers of words in the state.
Alter so that we include rand-isaac.c directly rather than
compiling it and linking to it.  Don't include config.h or
system.h; that's the includer's responsibility.
(ISAAC_LOG, ISAAC_WORDS, ISAAC_BYTES, struct isaac_state, ind):
(isaac_step, struct irand_state):
Resurrect these, with the same defns that used to be in shred.c.
(ISAAC_SIZE, isaac_new, isaac_copy): Remove.
(isaac_refill, isaac_seed_start, isaac_seed_data, irand_init, irand32):
static again.
(struct isaac_state, isaac_refill, isaac_mix, isaac_init):
(isaac_seed_start, isaac_seed_data, isaac_seed_finish, isaac_seed):
(irand_init, irand32, irand_mod):
Number of words is constant again.
2005-12-12 22:08:14 +00:00
Paul Eggert
67ee303724 (noinst_HEADERS): Remove rand-isaac.h. 2005-12-12 22:07:51 +00:00
Jim Meyering
09227c31dd (noinst_HEADERS): Add rand-isaac.h. 2005-12-10 22:54:31 +00:00
Jim Meyering
d5978ad190 Cleaner:
Make the local an `int' instead.
2005-12-10 22:10:53 +00:00
Jim Meyering
dfacfaf971 Avoid shred segfault on 64-bit systems.
(isaac_refill): Don't try to negate a
local of type uint32_t.  Convert it to int32_t first.
2005-12-10 21:58:23 +00:00
Jim Meyering
41c0ee3fe4 * src/rand-isaac.h (isaac_mix): Remove declaration. 2005-12-10 10:18:10 +00:00
Jim Meyering
dbfc16effb * src/rand-isaac.c (isaac_mix): Declare to be static.
Mark all other functions as `extern' so the tight-scope
part of `make distcheck' passes once again.
* src/rand-isaac.h (isaac_mix): Remove declaration.
2005-12-10 10:18:01 +00:00
Jim Meyering
fbaa8e9719 (get_hash): Change position of `*' in parameter type to conform with convention.
(main): Split a long line so it fits in 80 columns.
2005-12-10 10:04:12 +00:00
Jim Meyering
d6482a9ac2 Don't include gethrxtime.h. No longer needed. 2005-12-10 10:02:24 +00:00
Jim Meyering
a2b661352b (keycompare): Remove stray SPACE before TAB that was
causing `make distcheck' to fail.
2005-12-10 09:44:00 +00:00
Paul Eggert
569c4876bc (short_options, long_options, WORDS, keycompare, main):
(usage): Add options --random-sort and --seed to implement a random
shuffle.
Include md5.h and rand-isaac.h.
(get_hash): New function.
(rand_state): New var.
(HASH_WORDS, HASH_SIZE): New macros.
2005-12-10 08:09:42 +00:00
Paul Eggert
4013c49f1b Include rand-isaac.h. Move ISAAC code to rand-isaac.c.
(fillrand, main): Adjust to the fact that the state size is now
runtime-configurable.
2005-12-10 08:09:20 +00:00
Paul Eggert
7c2beeafd7 (sort_LDADD): Add $(LIB_GETHRXTIME).
(shred_SOURCES, sort_SOURCES): New macros, so we compile rand-isaac.c.
2005-12-10 08:08:52 +00:00
Paul Eggert
71bc739b35 New file, containing ISAAC code that was in shred.c.
Make state size runtime-configurable.
(isaac_new, isaac_copy): New functions.
2005-12-10 08:08:05 +00:00
Paul Eggert
a237792d66 Move ISAAC code out of shred.c. 2005-12-10 08:07:36 +00:00
Jim Meyering
99f35425a7 (usage): Mention white space vs -b and -t options.
From The Wanderer.
2005-12-09 16:28:17 +00:00
Jim Meyering
843efb8e3b (main): Fix misleading comment. 2005-12-09 16:22:24 +00:00
Paul Eggert
88afdc99f2 (flags, usage): Add support for noatime flag. 2005-12-07 21:12:12 +00:00
Paul Eggert
cb65d67c2a (O_NOATIME): Define to 0 if not already defined. 2005-12-07 21:11:45 +00:00
Jim Meyering
c837e0038d (fchown) [!HAVE_FCHOWN]: Define fchown(...) to -1.
(set_owner, preserve_author): New functions, factored out of copy_reg.
(copy_reg): Use them.
(copy_internal): Use them here, too.
From Andreas Gruenbacher.
2005-12-04 23:34:14 +00:00
Jim Meyering
f390052b80 (usage): Say what happens with two or more arguments. 2005-12-04 09:58:34 +00:00
Jim Meyering
a936ac291c (print_uptime): Move decl of local `upsecs' into scope where it's used. 2005-12-03 23:24:46 +00:00
Jim Meyering
b3e300393e . 2005-12-03 23:19:58 +00:00
Jim Meyering
08a0a7291f (long_options): Change the name of each undocumented, for-
testing-only option to start with `-', so that it cannot render
ambiguous any prefix it happens to share with some other option name.
2005-12-03 22:23:23 +00:00
Jim Meyering
43233c319e (long_opts): Change the name of each undocumented, for-
testing-only option to start with `-', so that it cannot render
ambiguous any prefix it happens to share with some other option name.
2005-12-03 22:23:09 +00:00
Paul Eggert
e9c8be100e (show_point): Ignore inaccessible file systems.
(usage): -a includes dummy file systems, not size-0 file systems.
2005-11-26 07:51:45 +00:00
Paul Eggert
9b539d8634 (unsigned_long_long_int): Renamed from ulonglong_t,
to avoid collision with POSIX name space.  All uses changed.
2005-11-26 07:29:48 +00:00
Paul Eggert
25719a3315 Improve performance a bit by optimizing away
unnecessary system calls and going to a block size of at least
8192 (on normal hosts, anyway).  This improved performance 5% on my
Debian stable host (2.4.27 kernel, x86, copying from root
ext3 file system to itself).
Include "buffer-lcm.h".
(copy_reg): Omit last argument.  All callers changed.
Use xmalloc to allocate rather than trusting alloca
(which is unwise with large block sizes).
Declare locals more locally, if possible.
Use uintptr_t words instead of int words, for a bit more speed
when looking for null blocks on 64-bit hosts.
Optimize away reads of zero bytes on regular files.
In the typical case, insist on 8 KiB buffers, at least.
Avoid unnecessary extra call to fstat when checking for sparse files.
Avoid now-unnecessary cast to off_t, and "0L".
Avoid unnecessary test of *new_dst when checking for same owner
and group.
2005-11-24 06:49:44 +00:00
Paul Eggert
1000eb18b6 (rm): Don't assume C99 for-loop syntax. 2005-11-23 04:52:48 +00:00
Jim Meyering
32034e05b7 whoops. Add back decl/definition of n_lengths. 2005-11-22 21:12:28 +00:00
Jim Meyering
f076895070 (AD_push): Remove debugging cruft. 2005-11-22 21:03:36 +00:00
Jim Meyering
5ff678924e tweak comments 2005-11-22 20:05:48 +00:00
Jim Meyering
66878248f6 . 2005-11-22 15:33:39 +00:00
Jim Meyering
b8616748f2 Rewrite. Now, this module is reentrant on systems
that provide openat (Solaris), and on systems like Linux+procfs
where our openat emulation code is reentrant.  This also fixes a
few low-probability leaks and eliminates some code that could,
in very unusual circumstances, cause rm() (via a callee) to exit.
2005-11-22 15:04:51 +00:00
Jim Meyering
fd907a33bd . 2005-11-18 23:12:06 +00:00
Jim Meyering
ca7cafb093 (AD_mark_helper): Make a char *' parameter const'.
(AD_mark_current_as_unremovable): Likewise, but for a local.
(rm_1): Likewise.
2005-11-17 20:17:47 +00:00
Jim Meyering
97de3a32b6 (basename_is_dot_or_dotdot): Correct wording in comment. 2005-11-17 12:28:34 +00:00
Paul Eggert
24ce72f635 (do_link, usage): Improve quality of ln's diagnostics.
(do_link): Don't use alloca on a buffer of unbounded size.
2005-11-16 22:32:45 +00:00