aboutsummaryrefslogtreecommitdiffstats
path: root/ringbuffer.c
AgeCommit message (Collapse)AuthorFilesLines
2005-02-03prevent ringbuffer from having to know about capture_file type at all ↵Ulf Lamping1-5/+5
(decoupling dependencies) svn path=/trunk/; revision=13266
2005-01-12don't use two variables for keeping the current ringbuffer file numberUlf Lamping1-5/+6
svn path=/trunk/; revision=13009
2004-07-18Set the svn:eol-style property on all text files to "native", so thatGuy Harris1-1/+1
they have LF at the end of the line on UN*X and CR/LF on Windows; hopefully this means that if a CR/LF version is checked in on Windows, the CRs will be stripped so that they show up only when checked out on Windows, not on UN*X. svn path=/trunk/; revision=11400
2004-06-30On at least some platforms, a #define of O_BINARY is needed even ifGuy Harris1-1/+6
<fcntl.h> is included, as <fcntl.h> doesn't define it. svn path=/trunk/; revision=11276
2004-06-29define of O_BINARY not needed, if fcntl.h is includedUlf Lamping1-6/+1
other #include related cleanups svn path=/trunk/; revision=11272
2004-06-02If, when rotating capture files, the attempt to close the current fileGuy Harris1-9/+14
fails, set "rb_data.pdh" to NULL, so we know it's not open (if "wtap_dump_close()" fails, the wtap_dumper_t is still closed - and the file descriptor for it is probably closed, too, as, if "close()" fails, the FD is probably closed; the Single UNIX Specification Version 3 says the state of the FD is unspecified, but in practice most OSes probably still close it). If we try to close the current file, first check to make sure it's open, i.e. that "rb_data.pdh" is non-null. (Or perhaps we should avoid trying to close it if the open *or* the most recent attempt to rotate the capture files failed.) Note that if "wtap_dump_close()" fails we might not need to close the underlying file descriptor (and, even if we do, there's no guarantee that attempt won't also fail and leave the FD still open - which is why I suspect that a failed "close()" leaves the FD closed on most OSes). svn path=/trunk/; revision=11075
2004-02-25Only handle as a suffix stuff following a "." in the last component of aGuy Harris1-3/+16
pathname. svn path=/trunk/; revision=10233
2004-02-25Don't unlink ringbuffer files if we haven't yet allocated the array ofGuy Harris1-4/+6
ringbuffer files - yes, we can fail before that's done, so we have to check for that. svn path=/trunk/; revision=10232
2003-06-22Ringbuffer rework.Laurent Deniel1-298/+180
Almost completely rewritten in order to: - be able to use a unlimited number of ringbuffer files 0 specified with -b argument or in the GUI, means that the number of file is unlimited. else the maximum number of ring buffer files is arbitrarily set to 1024. - close the current file and open (truncating it) the next file at switch - set the final file name once open (or reopen) - avoid the deletion of files that could not be truncated (can't arise now) and do not erase empty files The idea behind that is to remove the limitation of the maximum # of ringbuffer files being less than the maximum # of open fd per process and to be able to reduce the amount of virtual memory usage (having only one file open at most) or the amount of file system usage (by truncating the files at switch and not the capture stop, and by closing them which makes possible their move or deletion after a switch). svn path=/trunk/; revision=7912
2002-09-22From Graeme Hewson:Gerald Combs1-15/+62
It can sometimes happen that capturing is stopped just after Ethereal has switched to a new ring buffer. The result is that no frames are displayed. The patch to ringbuffer.c displays the previous ring buffer if the current buffer is empty on close. The patch to capture.c fixes a bug where an error return from ringbuf_wtap_dump_close was ignored, and tidies up the code around the call. svn path=/trunk/; revision=6315
2002-08-28Removed trailing whitespaces from .h and .c files using theJörg Mayer1-24/+24
winapi_cleanup tool written by Patrik Stridvall for the wine project. svn path=/trunk/; revision=6117
2002-08-02Replace the types from sys/types.h and netinet/in.h by their glib.hJörg Mayer1-5/+1
equivalents for the toplevel directory. The removal of winsock2.h will hopefully not cause any problems under MSVC++, as those files using struct timeval still include wtap.h, which still includes winsock2.h. svn path=/trunk/; revision=5932
2002-06-23From Graeme Hewson: flush the output after every frame if Tethereal isGuy Harris1-3/+16
writing a capture to a FIFO, and improve the error checking for ring buffers. svn path=/trunk/; revision=5745
2002-05-04Check whether "fflush()" succeeds, and clean up and return an error ifGuy Harris1-7/+37
it fails. "wtap_dump_close()" allows you to pass a null pointer as the second argument, so an error value isn't returned; use that in the cleanup routine, as we don't care whether the closes fail. svn path=/trunk/; revision=5386
2001-12-04Make the bytes-written information from Wiretap a long, as we allowGuy Harris1-0/+393
files to get that big. From Thomas Wittwer and Matthias Nyffenegger: Support for "ring buffer mode", wherein there's a ring buffer of N capture files; as each capture file reaches its maximum size (the ring buffer works only with a maximum capture file size specified), Ethereal rolls over to the next capture file in the ring buffer, replacing whatever packets might be in it with new packets. svn path=/trunk/; revision=4324