Commit 508cb933 authored by Pavel Emelyanov's avatar Pavel Emelyanov

collect: Add img argument to cinfo

The plan is to allow ->collect callbacks to read more
stuff from image files.
Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
parent 347d670f
......@@ -112,7 +112,7 @@ static struct file_desc_ops eventfd_desc_ops = {
.open = eventfd_open,
};
static int collect_one_efd(void *obj, ProtobufCMessage *msg)
static int collect_one_efd(void *obj, ProtobufCMessage *msg, struct cr_img *i)
{
struct eventfd_file_info *info = obj;
......
......@@ -194,7 +194,7 @@ static struct file_desc_ops desc_ops = {
.collect_fd = eventpoll_collect_fd,
};
static int collect_one_epoll_tfd(void *o, ProtobufCMessage *msg)
static int collect_one_epoll_tfd(void *o, ProtobufCMessage *msg, struct cr_img *i)
{
struct eventpoll_tfd_file_info *info = o;
......@@ -212,7 +212,7 @@ struct collect_image_info epoll_tfd_cinfo = {
.collect = collect_one_epoll_tfd,
};
static int collect_one_epoll(void *o, ProtobufCMessage *msg)
static int collect_one_epoll(void *o, ProtobufCMessage *msg, struct cr_img *i)
{
struct eventpoll_file_info *info = o;
......
......@@ -130,7 +130,7 @@ static struct file_desc_ops fifo_desc_ops = {
.collect_fd = collect_fifo_fd,
};
static int collect_one_fifo(void *o, ProtobufCMessage *base)
static int collect_one_fifo(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct fifo_info *info = o, *f;
......
......@@ -26,7 +26,7 @@ struct file_lock_rst {
struct list_head file_lock_list = LIST_HEAD_INIT(file_lock_list);
static int collect_one_file_lock(void *o, ProtobufCMessage *m)
static int collect_one_file_lock(void *o, ProtobufCMessage *m, struct cr_img *i)
{
struct file_lock_rst *lr = o;
......
......@@ -61,7 +61,7 @@ static struct file_desc_ops ext_desc_ops = {
.open = open_fd,
};
static int collect_one_ext(void *o, ProtobufCMessage *base)
static int collect_one_ext(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct ext_file_info *xfi = o;
......
......@@ -389,7 +389,7 @@ struct remap_info {
struct reg_file_info *rfi;
};
static int collect_one_remap(void *obj, ProtobufCMessage *msg)
static int collect_one_remap(void *obj, ProtobufCMessage *msg, struct cr_img *i)
{
struct remap_info *ri = obj;
RemapFilePathEntry *rfe;
......@@ -1657,7 +1657,7 @@ struct file_desc *try_collect_special_file(u32 id, int optional)
return fdesc;
}
static int collect_one_regfile(void *o, ProtobufCMessage *base)
static int collect_one_regfile(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct reg_file_info *rfi = o;
static char dot[] = ".";
......
......@@ -828,7 +828,7 @@ static int collect_fanotify_mark(struct fsnotify_mark_info *mark)
return -1;
}
static int collect_one_inotify(void *o, ProtobufCMessage *msg)
static int collect_one_inotify(void *o, ProtobufCMessage *msg, struct cr_img *img)
{
struct fsnotify_file_info *info = o;
int i;
......@@ -863,7 +863,7 @@ struct collect_image_info inotify_cinfo = {
.collect = collect_one_inotify,
};
static int collect_one_fanotify(void *o, ProtobufCMessage *msg)
static int collect_one_fanotify(void *o, ProtobufCMessage *msg, struct cr_img *img)
{
struct fsnotify_file_info *info = o;
int i;
......@@ -898,7 +898,7 @@ struct collect_image_info fanotify_cinfo = {
.collect = collect_one_fanotify,
};
static int collect_one_inotify_mark(void *o, ProtobufCMessage *msg)
static int collect_one_inotify_mark(void *o, ProtobufCMessage *msg, struct cr_img *i)
{
struct fsnotify_mark_info *mark = o;
......@@ -926,7 +926,7 @@ struct collect_image_info inotify_mark_cinfo = {
.collect = collect_one_inotify_mark,
};
static int collect_one_fanotify_mark(void *o, ProtobufCMessage *msg)
static int collect_one_fanotify_mark(void *o, ProtobufCMessage *msg, struct cr_img *i)
{
struct fsnotify_mark_info *mark = o;
......
......@@ -31,7 +31,7 @@ struct collect_image_info {
int fd_type;
int pb_type;
unsigned int priv_size;
int (*collect)(void *, ProtobufCMessage *);
int (*collect)(void *, ProtobufCMessage *, struct cr_img *);
unsigned flags;
};
......
......@@ -412,7 +412,7 @@ static struct file_desc_ops ns_desc_ops = {
.open = open_ns_fd,
};
static int collect_one_nsfile(void *o, ProtobufCMessage *base)
static int collect_one_nsfile(void *o, ProtobufCMessage *base, struct cr_img *img)
{
struct ns_file_info *nfi = o;
......
......@@ -372,7 +372,7 @@ static struct file_desc_ops pipe_desc_ops = {
.name = pipe_d_name,
};
static int collect_one_pipe(void *o, ProtobufCMessage *base)
static int collect_one_pipe(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct pipe_info *pi = o, *tmp;
......
......@@ -210,7 +210,7 @@ int collect_image(struct collect_image_info *cinfo)
break;
}
ret = cinfo->collect(obj, msg);
ret = cinfo->collect(obj, msg, img);
if (ret < 0) {
o_free(obj);
cr_pb_descs[cinfo->pb_type].free(msg, NULL);
......
......@@ -107,7 +107,7 @@ static struct file_desc_ops signalfd_desc_ops = {
.open = signalfd_open,
};
static int collect_one_sigfd(void *o, ProtobufCMessage *msg)
static int collect_one_sigfd(void *o, ProtobufCMessage *msg, struct cr_img *i)
{
struct signalfd_info *info = o;
......
......@@ -449,7 +449,7 @@ static inline int tcp_connection(InetSkEntry *ie)
return (ie->proto == IPPROTO_TCP) && (ie->state == TCP_ESTABLISHED);
}
static int collect_one_inetsk(void *o, ProtobufCMessage *base)
static int collect_one_inetsk(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct inet_sk_info *ii = o;
......
......@@ -217,7 +217,7 @@ static struct file_desc_ops netlink_sock_desc_ops = {
.open = open_netlink_sk,
};
static int collect_one_netlink_sk(void *o, ProtobufCMessage *base)
static int collect_one_netlink_sk(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct netlink_sock_info *si = o;
......
......@@ -489,7 +489,7 @@ static struct file_desc_ops packet_sock_desc_ops = {
.open = open_packet_sk,
};
static int collect_one_packet_sk(void *o, ProtobufCMessage *base)
static int collect_one_packet_sk(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct packet_sock_info *si = o;
......
......@@ -1284,7 +1284,7 @@ static void unlink_stale(struct unix_sk_info *ui)
static int resolve_unix_peers(void *unused);
static int collect_one_unixsk(void *o, ProtobufCMessage *base)
static int collect_one_unixsk(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct unix_sk_info *ui = o;
static bool post_queued = false;
......
......@@ -188,7 +188,7 @@ static int verify_timerfd(TimerfdEntry *tfe)
return 0;
}
static int collect_one_timerfd(void *o, ProtobufCMessage *msg)
static int collect_one_timerfd(void *o, ProtobufCMessage *msg, struct cr_img *i)
{
struct timerfd_info *info = o;
......
......@@ -1352,7 +1352,7 @@ static TtyInfoEntry *lookup_tty_info_entry(u32 id)
return NULL;
}
static int collect_one_tty_info_entry(void *obj, ProtobufCMessage *msg)
static int collect_one_tty_info_entry(void *obj, ProtobufCMessage *msg, struct cr_img *i)
{
struct tty_info_entry *info = obj;
......@@ -1395,7 +1395,7 @@ struct collect_image_info tty_info_cinfo = {
.collect = collect_one_tty_info_entry,
};
static int collect_one_tty(void *obj, ProtobufCMessage *msg)
static int collect_one_tty(void *obj, ProtobufCMessage *msg, struct cr_img *i)
{
struct tty_info *info = obj;
......
......@@ -378,7 +378,7 @@ static struct file_desc_ops tunfile_desc_ops = {
.open = tunfile_open,
};
static int collect_one_tunfile(void *o, ProtobufCMessage *base)
static int collect_one_tunfile(void *o, ProtobufCMessage *base, struct cr_img *i)
{
struct tunfile_info *ti = o;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment