criu/include/bfd.h
Pavel Emelyanov 2e91a9c814 bfd: Don't flush read-only images
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2014-11-05 15:38:17 +04:00

38 lines
744 B
C

#ifndef __CR_BFD_H__
#define __CR_BFD_H__
#include "err.h"
struct bfd_buf;
struct xbuf {
char *mem; /* buffer */
char *data; /* position we see bytes at */
unsigned int sz; /* bytes sitting after b->pos */
struct bfd_buf *buf;
};
struct bfd {
int fd;
int mode;
struct xbuf b;
};
static inline bool bfd_buffered(struct bfd *b)
{
return b->b.mem != NULL;
}
static inline void bfd_setraw(struct bfd *b)
{
b->b.mem = NULL;
}
int bfdopen(struct bfd *f, int mode);
void bclose(struct bfd *f);
char *breadline(struct bfd *f);
int bwrite(struct bfd *f, const void *buf, int sz);
struct iovec;
int bwritev(struct bfd *f, const struct iovec *iov, int cnt);
int bread(struct bfd *f, void *buf, int sz);
int bfd_flush_images(void);
#endif