Services: Fix visibility of Object-derivative constructors

Derivatives of Core::Object should be constructed through
ClassName::construct(), to avoid handling ref-counted objects with
refcount zero. Fixing the visibility means that misuses like this are
more difficult.
This commit is contained in:
Ben Wiederhake 2021-10-31 23:38:04 +01:00 committed by Andreas Kling
commit 4e55d649d7
Notes: sideshowbarker 2024-07-18 01:32:59 +09:00
19 changed files with 45 additions and 26 deletions

View file

@ -40,7 +40,6 @@ class DHCPv4Client final : public Core::Object {
C_OBJECT(DHCPv4Client)
public:
explicit DHCPv4Client();
virtual ~DHCPv4Client() override;
void dhcp_discover(const InterfaceDescriptor& ifname);
@ -57,6 +56,8 @@ public:
static Result<Interfaces, String> get_discoverable_interfaces();
private:
explicit DHCPv4Client();
void try_discover_ifs();
HashMap<u32, OwnPtr<DHCPv4Transaction>> m_ongoing_transactions;