Age | Commit message (Collapse) | Author |
|
|
|
|
|
when tailing forever and the open failed. Otherwise, we could get
uninitialized memory references of those fields in recheck.
|
|
(OFF_T_MAX): Likewise.
|
|
offset. Give a better diagnostic when the requested offset is still
representable but larger than OFF_T_MAX.
|
|
|
|
|
|
`tmp' immediately after read loop. Don't process an empty file.
This fixes a buffer-underrun error -- also thanks to bounded pointers.
|
|
From Gerhard Poul <gpoul@gnu.org
|
|
Don't close stdout explicitly.
(usage): Add missing backslash at end of line.
(write_header): Remove now-unused COMMENT parameter.
Update all callers.
|
|
|
|
Doesn't seem useful.
(usage): Remove description.
|
|
|
|
|
|
From Karl Berry.
|
|
marke it as such and ignore it forever after.
(struct File_spec): New member.
(recheck): Initialize new member.
(tail_file): Likewise.
(tail_forever): Skip the file if it's marked as ignorable.
|
|
Revert most of 1999-10-20 change. Instead, ...
(IS_TAILABLE_FILE_TYPE): Define to produce similar result.
(recheck): Use it here.
(tail_file): Use it here.
|
|
and calling tail_forever. Required only on Solaris2.7 -- on other
systems, using setvbuf to switch to unbufferd mode does the flush.
|
|
reuse) that would lead to a failed assertion.
Reported by Ken Pizzini.
(tail_forever): Record errno before using it in call to `error'
which might change it.
(tail_file): Likewise.
|
|
(anonymous enum) [LONG_FOLLOW_OPTION]: Define.
(long_options): Use LONG_FOLLOW_OPTION here, instead of 'f'.
(main): Remove the `::' after the `f' in getopt_long string.
Add `case LONG_FOLLOW_OPTION' after `case 'f':'.
Based on a patch from Tim Waugh.
|
|
[MAX_UNCHANGED_STATS_OPTION]: Likewise.
[MAX_CONSECUTIVE_SIZE_CHANGES_OPTION]: Likewise.
[PID_OPTION]: Likewise.
(long_options): Use *_OPTION instead of CHAR_MAX + N.
(main): Likewise.
|
|
(tail_file): Likewise.
|
|
(parse_options): Warn if --pid=PID is used and kill()
returns ENOSYS (e.g. when compiled with DJGPP).
|
|
Reported by Kaveh Ghazi.
|
|
because of exceeding max_n_consecutive_size_changes_between_opens,
`continue' so we don't fall through and (assuming the file finally grew)
get the erroneous `file truncated' message.
|
|
Detect when `writer_is_dead' also when the writer is some other user.
From Karl Heuer.
(parse_options): Warn if --pid=PID is used without -f.
|
|
|
|
(pid): New global.
(long_options): Add `pid'.
(usage): Describe it.
(tail_forever): Implement it.
(parse_options): Handle the new option and required arg.
Suggestion and pseudo-code from Karl Heuer.
|
|
|
|
|
|
|
|
Remove a couple unnecessary FIXME comments.
|
|
document. Change all uses and locals like was_missing to was_tailable.
Invert expressions as appropriate.
(reopen_inaccessible_files): Rename from allow_missing.
(sleep_interval): Describe.
(--allow-missing): Deprecate.
(--retry): New option, equivalent to --allow-missing.
(usage): Document name vs. descriptor differences.
Refer to manual for descriptions of --max-unchanged-stats=N
and --max-consecutive-size-changes=N.
(valid_file_spec): New function.
(recheck): Assert valid_file_spec.
Remove dead else-if block (suggestion from Eli Zaretskii).
Adjust stmts that set f->tailable -- unlike for `missing', tailable
doesn't depend on errno == ENOENT.
(parse_options): Give a warning if --retry is used when not following
by name.
|
|
(recheck): Record the new value of errno in f->errnum. Don't
output an error message unless the new value of errno differs from
the old one. Output a message if previously-inaccessible file
becomes accessible.
(tail_forever): Always recheck files whose fd is negative. If the
file cannot be fstat'ed, record the errno value in f[i].errnum.
(tail_file): If the file cannot be open, record the errno value in
f->errnum. If it can be opened, initialize f->errnum to zero. If
it's a non-regular non-fifo file, initialize f->errnum to -1.
|
|
|
|
From Andreas Schwab.
|
|
(dump_remainder): Add parameter, n_bytes, and rewrite to use it.
Update callers.
(file_lines): Rename parameter.
(tail_bytes): Remove obsolete comment.
|
|
(dump_remainder): Move this function to precede the new use in file_lines.
(tail_lines): Don't call dump_remainder here.
(file_lines): Call dump_remainder here instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Set f->size to 0 upon encountering a new file so we read it from
the beginning rather than from then end of the first line or
block. Otherwise, after a log rotation, tail would omit the first
line or block of the new file. Reported by Ed Avis.
|
|
(main) [if forever]: Make stdout unbuffered, instead.
|
|
[long_options]: Remove the "help" and "version" entries.
Remove declarations of show_help and show_version.
(main): Use parse_long_options, including author name(s).
Remove the show_version and show_help blocks.
|
|
|
|
|
|
|