mirror of
https://github.com/openvswitch/ovs
synced 2025-10-21 14:49:41 +00:00
netlink: Remove buffer from 'struct nl_dump'.
This patch makes all of the users of 'struct nl_dump' allocate their own buffers to pass down to nl_dump_next(). This paves the way for allowing multithreaded flow dumping. Signed-off-by: Joe Stringer <joestringer@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
This commit is contained in:
@@ -96,16 +96,17 @@ int nl_transact(int protocol, const struct ofpbuf *request,
|
||||
void nl_transact_multiple(int protocol, struct nl_transaction **, size_t n);
|
||||
|
||||
/* Table dumping. */
|
||||
#define NL_DUMP_BUFSIZE 4096
|
||||
|
||||
struct nl_dump {
|
||||
struct nl_sock *sock; /* Socket being dumped. */
|
||||
uint32_t nl_seq; /* Expected nlmsg_seq for replies. */
|
||||
struct ofpbuf buffer; /* Receive buffer currently being iterated. */
|
||||
int status; /* 0=OK, EOF=done, or positive errno value. */
|
||||
};
|
||||
|
||||
void nl_dump_start(struct nl_dump *, int protocol,
|
||||
const struct ofpbuf *request);
|
||||
bool nl_dump_next(struct nl_dump *, struct ofpbuf *reply);
|
||||
bool nl_dump_next(struct nl_dump *, struct ofpbuf *reply, struct ofpbuf *buf);
|
||||
int nl_dump_done(struct nl_dump *);
|
||||
|
||||
/* Miscellaneous */
|
||||
|
Reference in New Issue
Block a user