static void i_stream_zlib_close(struct iostream_private *stream,
bool close_parent)
{
- struct zlib_istream *zstream = (struct zlib_istream *)stream;
+ struct zlib_istream *zstream =
+ container_of(stream, struct zlib_istream, istream.iostream);
if (!zstream->zs_closed) {
(void)inflateEnd(&zstream->zs);
static ssize_t i_stream_zlib_read(struct istream_private *stream)
{
- struct zlib_istream *zstream = (struct zlib_istream *)stream;
+ struct zlib_istream *zstream =
+ container_of(stream, struct zlib_istream, istream);
const unsigned char *data;
uoff_t high_offset;
size_t size, out_size;
static void
i_stream_zlib_seek(struct istream_private *stream, uoff_t v_offset, bool mark)
{
- struct zlib_istream *zstream = (struct zlib_istream *) stream;
+ struct zlib_istream *zstream =
+ container_of(stream, struct zlib_istream, istream);
if (i_stream_nonseekable_try_seek(stream, v_offset))
return;
static void i_stream_zlib_sync(struct istream_private *stream)
{
- struct zlib_istream *zstream = (struct zlib_istream *) stream;
+ struct zlib_istream *zstream =
+ container_of(stream, struct zlib_istream, istream);
const struct stat *st;
if (i_stream_stat(stream->parent, FALSE, &st) == 0) {