/* SPDX-License-Identifier: LGPL-2.1-or-later */
#pragma once
-typedef struct Home Home;
-
#include "hashmap.h"
-#include "homed-manager.h"
#include "homed-operation.h"
#include "list.h"
#include "ordered-set.h"
#include "stat-util.h"
#include "user-record.h"
+typedef struct Manager Manager;
+
typedef enum HomeState {
HOME_UNFIXATED, /* home exists, but local record does not */
HOME_ABSENT, /* local record exists, but home does not */
HOME_AUTHENTICATING_FOR_ACQUIRE);
}
-struct Home {
+typedef struct Home {
Manager *manager;
/* The fields this record can be looked up by. This is kinda redundant, as the same information is
/* Whether a rebalance operation is pending */
bool rebalance_pending;
-};
+} Home;
int home_new(Manager *m, UserRecord *hr, const char *sysfs, Home **ret);
Home *home_free(Home *h);
#include "sd-event.h"
#include "sd-varlink.h"
-typedef struct Manager Manager;
-
#include "hashmap.h"
#include "homed-home.h"
_REBALANCE_STATE_INVALID = -1,
} RebalanceState;
-struct Manager {
+typedef struct Manager {
sd_event *event;
sd_bus *bus;
* running a rebalancing operation for. 'rebalance_queued_method_calls' are the method calls that
* have been queued since then and that we'll operate on once we complete the current run. */
Set *rebalance_pending_method_calls, *rebalance_queued_method_calls;
-};
+} Manager;
int manager_new(Manager **ret);
Manager* manager_free(Manager *m);