X-Git-Url: https://code.citadel.org/?p=citadel.git;a=blobdiff_plain;f=libcitadel%2Flib%2Fstringbuf.c;h=466bb2c32da704fe39e588782c7142fb8e7414c6;hp=7dc07af46e18a57541628d1b9a9f522cf0f94ef0;hb=a85c25a80a5aec5bc4d805473ccaa23cffc650c9;hpb=d406f030612c8793672a4172ae5d6d64a47dd5df diff --git a/libcitadel/lib/stringbuf.c b/libcitadel/lib/stringbuf.c index 7dc07af46..466bb2c32 100644 --- a/libcitadel/lib/stringbuf.c +++ b/libcitadel/lib/stringbuf.c @@ -3807,6 +3807,18 @@ void FDIOBufferInit(FDIOBuffer *FDB, IOBuffer *IO, int FD, long TotalSendSize) FDB->OtherFD = FD; } +void FDIOBufferDelete(FDIOBuffer *FDB) +{ +#ifndef LINUX_SENDFILE + FreeStrBuf(&FDB->ChunkBuffer); +#else + close(FDB->SplicePipe[0]); + close(FDB->SplicePipe[1]); +#endif + close(FDB->OtherFD); + memset(FDB, 0, sizeof(FDIOBuffer)); +} + int FileSendChunked(FDIOBuffer *FDB, const char **Err) {