summaryrefslogtreecommitdiff
path: root/src/libsystemd/sd-netlink/netlink-internal.h
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@googlemail.com>2015-10-16 13:05:39 +0200
committerDavid Herrmann <dh.herrmann@googlemail.com>2015-10-16 13:05:39 +0200
commit7a1e5abbc6e741e5b6995288c607522faa69c8b4 (patch)
tree2fd03f08cb9aa275e1846c1aa9e24aa8ec615e3d /src/libsystemd/sd-netlink/netlink-internal.h
parent8ee07361d0065a2d4ab9c4bf6aeb0893b05b2b6c (diff)
parent9c5a882b7fc256ddc0b227677fa06546f0e944a8 (diff)
Merge pull request #1581 from teg/netlink-broadcast-leave
sd-netlink: refcount multicast groups
Diffstat (limited to 'src/libsystemd/sd-netlink/netlink-internal.h')
-rw-r--r--src/libsystemd/sd-netlink/netlink-internal.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libsystemd/sd-netlink/netlink-internal.h b/src/libsystemd/sd-netlink/netlink-internal.h
index 4026e2c341..b9cb80668d 100644
--- a/src/libsystemd/sd-netlink/netlink-internal.h
+++ b/src/libsystemd/sd-netlink/netlink-internal.h
@@ -64,6 +64,9 @@ struct sd_netlink {
struct sockaddr_nl nl;
} sockaddr;
+ Hashmap *broadcast_group_refs;
+ bool broadcast_group_dont_leave:1; /* until we can rely on 4.2 */
+
sd_netlink_message **rqueue;
unsigned rqueue_size;
size_t rqueue_allocated;
@@ -124,7 +127,8 @@ int message_new_empty(sd_netlink *rtnl, sd_netlink_message **ret);
int socket_open(int family);
int socket_bind(sd_netlink *nl);
-int socket_join_broadcast_group(sd_netlink *nl, unsigned group);
+int socket_broadcast_group_ref(sd_netlink *nl, unsigned group);
+int socket_broadcast_group_unref(sd_netlink *nl, unsigned group);
int socket_write_message(sd_netlink *nl, sd_netlink_message *m);
int socket_read_message(sd_netlink *nl);