/* * Copyright (C) 2020 Aleksander Morgado * Copyright (C) 2021 Quectel Wireless Solutions Co., Ltd. * * SPDX-License-Identifier: LGPL-2.1+ */ #pragma once #include #include #define FU_TYPE_FIREHOSE_UPDATER (fu_firehose_updater_get_type ()) G_DECLARE_FINAL_TYPE (FuFirehoseUpdater, fu_firehose_updater, FU, FIREHOSE_UPDATER, GObject) FuFirehoseUpdater *fu_firehose_updater_new (const gchar *port); gboolean fu_firehose_updater_open (FuFirehoseUpdater *self, GError **error); gboolean fu_firehose_updater_write (FuFirehoseUpdater *self, XbSilo *silo, GPtrArray *action_nodes, GError **error); gboolean fu_firehose_updater_close (FuFirehoseUpdater *self, GError **error); /* helpers */ gboolean fu_firehose_validate_rawprogram (GBytes *rawprogram, FuArchive *archive, XbSilo **out_silo, GPtrArray **out_action_nodes, GError **error);