1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-03-10 00:58:20 +03:00

Revert "add networkd dbus lease info" (#4435)

This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2016-10-21 02:17:16 -04:00 committed by Martin Pitt
parent 24597ee0e6
commit 75e2089581
3 changed files with 0 additions and 144 deletions

View File

@ -23,7 +23,6 @@
#include "networkd.h"
#include "parse-util.h"
#include "strv.h"
#include "dhcp-lease-internal.h"
static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_operational_state, link_operstate, LinkOperationalState);
static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_administrative_state, link_state, LinkState);
@ -37,50 +36,6 @@ const sd_bus_vtable link_vtable[] = {
SD_BUS_VTABLE_END
};
static int get_private_options(sd_bus *bus,
const char *path,
const char *interface,
const char *property,
sd_bus_message *reply,
void *userdata,
sd_bus_error *error) {
sd_dhcp_lease *lease = userdata;
struct sd_dhcp_raw_option *option = NULL;
int r;
assert(bus);
assert(reply);
assert(lease);
r = sd_bus_message_open_container(reply, SD_BUS_TYPE_ARRAY, "{yay}");
if (r < 0)
return r;
LIST_FOREACH(options, option, lease->private_options) {
r = sd_bus_message_open_container(reply, SD_BUS_TYPE_DICT_ENTRY, "yay");
if (r < 0)
return r;
r = sd_bus_message_append(reply, "y", option->tag);
if (r < 0)
return r;
r = sd_bus_message_append_array(reply, 'y', option->data, option->length);
if (r < 0)
return r;
r = sd_bus_message_close_container(reply);
if (r < 0)
return r;
}
return sd_bus_message_close_container(reply);
}
const sd_bus_vtable lease_vtable[] = {
SD_BUS_VTABLE_START(0),
SD_BUS_PROPERTY("PrivateOptions", "a{yay}", get_private_options, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
SD_BUS_VTABLE_END
};
static char *link_bus_path(Link *link) {
_cleanup_free_ char *ifindex = NULL;
char *p;
@ -99,24 +54,6 @@ static char *link_bus_path(Link *link) {
return p;
}
static char *lease_bus_path(Link *link) {
_cleanup_free_ char *p = NULL;
char *ret = NULL;
int r;
assert(link);
p = link_bus_path(link);
if (!p)
return NULL;
r = sd_bus_path_encode(p, "lease", &ret);
if (r < 0)
return NULL;
return ret;
}
int link_node_enumerator(sd_bus *bus, const char *path, void *userdata, char ***nodes, sd_bus_error *error) {
_cleanup_strv_free_ char **l = NULL;
Manager *m = userdata;
@ -150,42 +87,6 @@ int link_node_enumerator(sd_bus *bus, const char *path, void *userdata, char ***
return 1;
}
int lease_node_enumerator(sd_bus *bus, const char *path, void *userdata, char ***nodes, sd_bus_error *error) {
_cleanup_strv_free_ char **l = NULL;
Manager *m = userdata;
unsigned c = 0;
Link *link;
Iterator i;
assert(bus);
assert(path);
assert(m);
assert(nodes);
l = new0(char*, hashmap_size(m->links) + 1);
if (!l)
return -ENOMEM;
HASHMAP_FOREACH(link, m->links, i) {
char *p;
if (!link->dhcp_lease)
continue;
p = lease_bus_path(link);
if (!p)
return -ENOMEM;
l[c++] = p;
}
l[c] = NULL;
*nodes = l;
l = NULL;
return 1;
}
int link_object_find(sd_bus *bus, const char *path, const char *interface, void *userdata, void **found, sd_bus_error *error) {
_cleanup_free_ char *identifier = NULL;
Manager *m = userdata;
@ -215,38 +116,6 @@ int link_object_find(sd_bus *bus, const char *path, const char *interface, void
return 1;
}
int lease_object_find(sd_bus *bus, const char *path, const char *interface, void *userdata, void **found, sd_bus_error *error) {
_cleanup_free_ char *identifier = NULL;
Manager *m = userdata;
Link *link;
int ifindex, r;
assert(bus);
assert(path);
assert(interface);
assert(m);
assert(found);
r = sd_bus_path_decode_many(path, "/org/freedesktop/network1/link/%/lease", &identifier);
if (r <= 0)
return 0;
r = parse_ifindex(identifier, &ifindex);
if (r < 0)
return 0;
r = link_get(m, ifindex, &link);
if (r < 0)
return 0;
if (!link->dhcp_lease)
return 0;
*found = link->dhcp_lease;
return 1;
}
int link_send_changed(Link *link, const char *property, ...) {
_cleanup_free_ char *p = NULL;
char **l;

View File

@ -179,11 +179,6 @@ int link_node_enumerator(sd_bus *bus, const char *path, void *userdata, char ***
int link_object_find(sd_bus *bus, const char *path, const char *interface, void *userdata, void **found, sd_bus_error *error);
int link_send_changed(Link *link, const char *property, ...) _sentinel_;
extern const sd_bus_vtable lease_vtable[];
int lease_node_enumerator(sd_bus *bus, const char *path, void *userdata, char ***nodes, sd_bus_error *error);
int lease_object_find(sd_bus *bus, const char *path, const char *interface, void *userdata, void **found, sd_bus_error *error);
DEFINE_TRIVIAL_CLEANUP_FUNC(Link*, link_unref);
#define _cleanup_link_unref_ _cleanup_(link_unrefp)

View File

@ -176,14 +176,6 @@ int manager_connect_bus(Manager *m) {
if (r < 0)
return log_error_errno(r, "Failed to add link enumerator: %m");
r = sd_bus_add_fallback_vtable(m->bus, NULL, "/org/freedesktop/network1/link", "org.freedesktop.network1.Link.Lease", lease_vtable, lease_object_find, m);
if (r < 0)
return log_error_errno(r, "Failed to add lease object vtable: %m");
r = sd_bus_add_node_enumerator(m->bus, NULL, "/org/freedesktop/network1/link", lease_node_enumerator, m);
if (r < 0)
return log_error_errno(r, "Failed to add lease enumerator: %m");
r = sd_bus_add_fallback_vtable(m->bus, NULL, "/org/freedesktop/network1/network", "org.freedesktop.network1.Network", network_vtable, network_object_find, m);
if (r < 0)
return log_error_errno(r, "Failed to add network object vtable: %m");