Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2007-05-21 | Merge commit 'HEAD'; branch 'master' into buffersize | Tobias Klauser | 1 | -1/+1 | |
2007-05-21 | Some housekeeping after introduction of alloc_buffer() | Tobias Klauser | 1 | -3/+2 | |
2007-05-21 | Prevent from some possible memory leaks | Tobias Klauser | 1 | -5/+8 | |
2007-05-21 | inotail.c: Improve error message | Tobias Klauser | 1 | -1/+1 | |
2007-05-21 | Get rid of one variable | Tobias Klauser | 1 | -3/+2 | |
2007-05-21 | Use optimal buffer size depending on the filesystem containing the file | Tobias Klauser | 1 | -19/+63 | |
The st_blksize attribute of struct stat conatains the blocksize for filesystem I/O (see stat(2)) which is the optimal size for reading/writing chunks of data. Based on a patch by Folkert van Heusden | |||||
2007-05-20 | inotail.c: Proper check of return value for the previous fix | Tobias Klauser | 1 | -2/+2 | |
2007-05-20 | inotail.c: Some more error checking in tail_pipe() | Tobias Klauser | 1 | -2/+7 | |
Taken from a patch by Folkert van Heusden | |||||
2007-05-18 | inotail.c: read() call cleanup | Tobias Klauser | 1 | -6/+6 | |
buf instead of &buf | |||||
2007-05-18 | inotail.c: Forward just one event, we might miss some events otherwise | Tobias Klauser | 1 | -1/+2 | |
INOTIFY_BUFLEN is defined as 4 times the size of an event, so we would skip some events. Though I've never seen a case where more than one event arrived at a time. | |||||
2007-04-16 | inotail.c: Really fix byte_to_offset() this time | Tobias Klauser | 1 | -6/+12 | |
Also make a bit more readable | |||||
2007-04-13 | inotail.c: Fix an integer underflow in bytes_to_offset() | Tobias Klauser | 1 | -2/+3 | |
This also caused the bug that nothing was printed when a number greater than the number of characters in the file was specifed with the -c parameter. | |||||
2007-03-18 | inotail.c: Proper exit after printing of version | Tobias Klauser | 1 | -1/+1 | |
2007-03-04 | inotail.c: Fix bug in parsing of +<num> parameters | Tobias Klauser | 1 | -2/+3 | |
2007-03-04 | inotail.c: Datatype cleanup | Tobias Klauser | 1 | -2/+2 | |
2007-03-03 | inotail.c: Ignore file cleanup | Tobias Klauser | 1 | -26/+23 | |
Get rid of some nasty code. Ok, it isn't much better now. | |||||
2007-03-03 | inotail.c: Cleanup before release | Tobias Klauser | 1 | -17/+9 | |
2007-02-05 | inotail.c: Some more branch prediction | Tobias Klauser | 1 | -6/+6 | |
2007-02-05 | inotail.c: Better checking of -n/-c arguments | Tobias Klauser | 1 | -10/+12 | |
Also change n_lines/n_bytes to an unsigned long Additionally remove some spurious memset()'s | |||||
2007-02-03 | inotail.c: Remember last printed header | Tobias Klauser | 1 | -1/+5 | |
Prevents inotail from printing the header with the name of the file everytime it changes. | |||||
2007-01-22 | inotail.c: Set new file size _after_ read/write in handle_inotify_event() | Tobias Klauser | 1 | -13/+10 | |
This works around the problem when receving multiple inotify events for _one_ write to the file. This was a problem in the bordercase where the string written to the file was larger than 4096 chars, the last sizeof(string) - 4096 chars were repeated. Still have to check why there are _two_ IN_MODIFY events for _one_ write. But at least it does not affect inotail anymore. Also fix a dumb thinko in watch_files(): Move the ev_idx only one event forward, not n_files * INOTIFY_BUFLEN. | |||||
2007-01-22 | inotail.c: Gaaah! buf is on the stack now. | Tobias Klauser | 1 | -2/+1 | |
2007-01-21 | inotail.c: Use strcmp rather than strncmp | Tobias Klauser | 1 | -2/+2 | |
We're compare against a constant string | |||||
2007-01-21 | inotail.c: Inline some functions and initialize files pointer in main | Tobias Klauser | 1 | -3/+3 | |
2007-01-20 | inotail.c: Adjust block size according to return value of read | Tobias Klauser | 1 | -3/+4 | |
...and use proper types | |||||
2007-01-20 | inotail.c: Better handling of errors on inotify_init() | Tobias Klauser | 1 | -1/+4 | |
2007-01-20 | inotail.c: Simplify iterating through inotify events | Tobias Klauser | 1 | -13/+17 | |
2007-01-15 | inotail.c: One more ssize_t | Tobias Klauser | 1 | -1/+1 | |
2007-01-10 | inotail.c: Minor cleanups | Tobias Klauser | 1 | -3/+3 | |
Make one more read(2) return value ssize_t and do not initialize n_files to 0 | |||||
2007-01-05 | inotail.c: Print version information to stdout | Tobias Klauser | 1 | -1/+1 | |
2007-01-05 | inotail.c: Make tail_pipe() return ssize_t | Tobias Klauser | 1 | -2/+2 | |
read() returns ssize_t and we were casting it to signed int which might be smaller on some architectures. | |||||
2007-01-04 | inotail.c: Make it clear that we're handling one file when tailing stdin | Tobias Klauser | 1 | -1/+1 | |
2007-01-04 | inotail.c: Fix an off-by-one error in lines_to_offset_from_end() | Tobias Klauser | 1 | -1/+1 | |
buf[block_size] is obviously _not_ in buf itself. | |||||
2007-01-04 | inotail.c: Make n_ignored global | Tobias Klauser | 1 | -15/+24 | |
It was getting more and more complicated and errorprone with handling n_ignored as local variable. | |||||
2006-12-28 | inotail.c: Use consistent nomenclature for struct file_struct pointers | Tobias Klauser | 1 | -29/+29 | |
f for pointers to one struct file_struct files for pointers to an array of struct file_struct | |||||
2006-12-28 | inotail.c: Add and use ignore_file() function | Tobias Klauser | 1 | -7/+9 | |
2006-12-28 | inotail.c: Handle return value of inotify_add_watch() | Tobias Klauser | 1 | -2/+8 | |
2006-12-23 | inotail.c: Print usage to stdout | Tobias Klauser | 1 | -1/+1 | |
2006-12-23 | inotail.c: Keep tailing moved files by fd | Tobias Klauser | 1 | -1/+1 | |
As a side effect of the recent change to not reopen files while watching (commit 1ddefac3dfe654f23fc944df5d7c52a078692012) it's possible now to follow moved files by their open fd. | |||||
2006-12-21 | inotail.c: Don't open files over and over again | Tobias Klauser | 1 | -11/+19 | |
Up to now files were closed after processing each inotify event which seems to be quite a bit of overhead. The fds are now kept open and are only closed in case of errors. | |||||
2006-12-18 | inotail.c: Minor cleanups and addition of an unlikely() | Tobias Klauser | 1 | -7/+4 | |
2006-12-15 | inotail.c: return instead of break | Tobias Klauser | 1 | -5/+2 | |
2006-12-14 | inotail.c: Move some macros to inotail.h | Tobias Klauser | 1 | -7/+0 | |
Some typos and useless blank lines are also fixed. | |||||
2006-12-14 | inotail.c: Move a variable to the block where it's used | Tobias Klauser | 1 | -2/+1 | |
2006-12-14 | inotail.c: Save 2 LOC | Tobias Klauser | 1 | -4/+2 | |
2006-12-08 | inotail.c: Yet another user for IS_PIPELIKE | Tobias Klauser | 1 | -1/+1 | |
2006-12-08 | inotail.c: Merge S_ISFIFO and S_ISSOCK to IS_PIPELIKE | Tobias Klauser | 1 | -2/+5 | |
2006-11-16 | inotail.c: Reorder lines_to_offset* functions | Tobias Klauser | 1 | -31/+37 | |
Make lines_to_offset() just a wrapper function to check whether to tail from begin or from end of the file. The real work is done in lines_to_offset_from_begin() and lines_to_offset_from_end() | |||||
2006-11-09 | Dynamically allocate memory for the inotify event buffer | Tobias Klauser | 1 | -4/+7 | |
By using malloc(3) depending on the number of files we have, the memory footprint can be reduced. Before this change, the buffer size was 32 * sizeof(struct inotify_event) which was an overhead when just tailing some few files. Now the memory is allocated depending on the number of files to tail. I know of no occassion where I received more than one event at a time per file, so the '2 *' can probably be dropped too. | |||||
2006-11-08 | Document -n/-c +N feature | Tobias Klauser | 1 | -7/+10 | |
That should make inotail POSIX tail compatible |