Move functions around to fix underlinking in test-machine-tables

This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2013-09-26 11:12:04 +02:00
parent 732bfe09ae
commit bd16acf35e
2 changed files with 46 additions and 46 deletions
+46
View File
@@ -40,6 +40,7 @@
#include "unit-name.h"
#include "bus-errors.h"
#include "virt.h"
#include "cgroup-util.h"
#define BUS_MANAGER_INTERFACE \
" <interface name=\"org.freedesktop.machine1.Manager\">\n" \
@@ -994,3 +995,48 @@ int manager_unit_is_active(Manager *manager, const char *unit) {
return !streq(state, "inactive") && !streq(state, "failed");
}
int manager_add_machine(Manager *m, const char *name, Machine **_machine) {
Machine *machine;
assert(m);
assert(name);
machine = hashmap_get(m->machines, name);
if (machine) {
if (_machine)
*_machine = machine;
return 0;
}
machine = machine_new(m, name);
if (!machine)
return -ENOMEM;
if (_machine)
*_machine = machine;
return 0;
}
int manager_get_machine_by_pid(Manager *m, pid_t pid, Machine **machine) {
_cleanup_free_ char *unit = NULL;
Machine *mm;
int r;
assert(m);
assert(pid >= 1);
assert(machine);
r = cg_pid_get_unit(pid, &unit);
if (r < 0)
return r;
mm = hashmap_get(m->machine_units, unit);
if (!mm)
return 0;
*machine = mm;
return 1;
}
-46
View File
@@ -34,7 +34,6 @@
#include "strv.h"
#include "conf-parser.h"
#include "mkdir.h"
#include "cgroup-util.h"
Manager *manager_new(void) {
Manager *m;
@@ -83,30 +82,6 @@ void manager_free(Manager *m) {
free(m);
}
int manager_add_machine(Manager *m, const char *name, Machine **_machine) {
Machine *machine;
assert(m);
assert(name);
machine = hashmap_get(m->machines, name);
if (machine) {
if (_machine)
*_machine = machine;
return 0;
}
machine = machine_new(m, name);
if (!machine)
return -ENOMEM;
if (_machine)
*_machine = machine;
return 0;
}
int manager_enumerate_machines(Manager *m) {
_cleanup_closedir_ DIR *d = NULL;
struct dirent *de;
@@ -149,27 +124,6 @@ int manager_enumerate_machines(Manager *m) {
return r;
}
int manager_get_machine_by_pid(Manager *m, pid_t pid, Machine **machine) {
_cleanup_free_ char *unit = NULL;
Machine *mm;
int r;
assert(m);
assert(pid >= 1);
assert(machine);
r = cg_pid_get_unit(pid, &unit);
if (r < 0)
return r;
mm = hashmap_get(m->machine_units, unit);
if (!mm)
return 0;
*machine = mm;
return 1;
}
static int manager_connect_bus(Manager *m) {
DBusError error;
int r;