Coverage Report

Created: 2026-01-10 07:09

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/work/fu-elantp-struct.c
Line
Count
Source
1
/*
2
 * This file is auto-generated, do not modify!
3
 *
4
 * SPDX-License-Identifier: LGPL-2.1-or-later
5
 */
6
7
#include "config.h"
8
9
#include <glib.h>
10
11
#include "fu-elantp-struct.h"
12
#include "fu-byte-array.h"
13
#include "fu-mem-private.h"
14
#include "fu-string.h"
15
16
#ifdef G_LOG_DOMAIN
17
  #undef G_LOG_DOMAIN
18
#endif
19
0
#define G_LOG_DOMAIN "FuStruct"
20
21
/**
22
 * fu_struct_elantp_firmware_hdr_ref: (skip):
23
 **/
24
FuStructElantpFirmwareHdr *
25
fu_struct_elantp_firmware_hdr_ref(FuStructElantpFirmwareHdr *st)
26
0
{
27
0
    g_return_val_if_fail(st != NULL, NULL);
28
0
    st->refcount++;
29
0
    return st;
30
0
}
31
/**
32
 * fu_struct_elantp_firmware_hdr_unref: (skip):
33
 **/
34
void
35
fu_struct_elantp_firmware_hdr_unref(FuStructElantpFirmwareHdr *st)
36
390k
{
37
390k
    g_return_if_fail(st != NULL);
38
390k
    if (st->refcount == 0) {
39
0
        g_critical("FuStructElantpFirmwareHdr refcount already zero");
40
0
        return;
41
0
    }
42
390k
    if (--st->refcount > 0)
43
0
        return;
44
390k
    if (st->buf != NULL)
45
390k
        g_byte_array_unref(st->buf);
46
390k
    g_free(st);
47
390k
}
48
/**
49
 * fu_struct_elantp_firmware_hdr_new_internal: (skip):
50
 **/
51
static FuStructElantpFirmwareHdr *
52
fu_struct_elantp_firmware_hdr_new_internal(void)
53
390k
{
54
390k
    FuStructElantpFirmwareHdr *st = g_new0(FuStructElantpFirmwareHdr, 1);
55
390k
    st->refcount = 1;
56
390k
    return st;
57
390k
}
58
59
/* getters */
60
61
/* setters */
62
static gboolean
63
fu_struct_elantp_firmware_hdr_validate_internal(FuStructElantpFirmwareHdr *st, GError **error)
64
390k
{
65
390k
    g_return_val_if_fail(st != NULL, FALSE);
66
390k
    if (memcmp(st->buf->data + 0, "\xAA\x55\xCC\x33\xFF\xFF", 6) != 0) {
67
390k
        g_set_error_literal(error,
68
390k
                            FWUPD_ERROR,
69
390k
                            FWUPD_ERROR_INVALID_DATA,
70
390k
                            "constant FuStructElantpFirmwareHdr.magic was not valid");
71
390k
        return FALSE;
72
390k
    }
73
180
    return TRUE;
74
390k
}
75
/**
76
 * fu_struct_elantp_firmware_hdr_validate_stream: (skip):
77
 **/
78
gboolean
79
fu_struct_elantp_firmware_hdr_validate_stream(GInputStream *stream, gsize offset, GError **error)
80
390k
{
81
390k
    g_autoptr(FuStructElantpFirmwareHdr) st = fu_struct_elantp_firmware_hdr_new_internal();
82
390k
    g_return_val_if_fail(G_IS_INPUT_STREAM(stream), FALSE);
83
390k
    g_return_val_if_fail(error == NULL || *error == NULL, FALSE);
84
390k
    st->buf = fu_input_stream_read_byte_array(stream, offset, 6, NULL, error);
85
390k
    if (st->buf == NULL) {
86
0
        g_prefix_error(error, "FuStructElantpFirmwareHdr failed read of 0x%x: ", (guint) 6);
87
0
        return FALSE;
88
0
    }
89
390k
    if (st->buf->len != 6) {
90
0
        g_set_error(error,
91
0
                    FWUPD_ERROR,
92
0
                    FWUPD_ERROR_INVALID_DATA,
93
0
                    "FuStructElantpFirmwareHdr requested 0x%x and got 0x%x",
94
0
                    (guint) 6,
95
0
                    (guint) st->buf->len);
96
0
        return FALSE;
97
0
    }
98
390k
    return fu_struct_elantp_firmware_hdr_validate_internal(st, error);
99
390k
}
100
/**
101
 * fu_struct_elantp_haptic_firmware_hdr_ref: (skip):
102
 **/
103
FuStructElantpHapticFirmwareHdr *
104
fu_struct_elantp_haptic_firmware_hdr_ref(FuStructElantpHapticFirmwareHdr *st)
105
0
{
106
0
    g_return_val_if_fail(st != NULL, NULL);
107
0
    st->refcount++;
108
0
    return st;
109
0
}
110
/**
111
 * fu_struct_elantp_haptic_firmware_hdr_unref: (skip):
112
 **/
113
void
114
fu_struct_elantp_haptic_firmware_hdr_unref(FuStructElantpHapticFirmwareHdr *st)
115
0
{
116
0
    g_return_if_fail(st != NULL);
117
0
    if (st->refcount == 0) {
118
0
        g_critical("FuStructElantpHapticFirmwareHdr refcount already zero");
119
0
        return;
120
0
    }
121
0
    if (--st->refcount > 0)
122
0
        return;
123
0
    if (st->buf != NULL)
124
0
        g_byte_array_unref(st->buf);
125
0
    g_free(st);
126
0
}
127
/**
128
 * fu_struct_elantp_haptic_firmware_hdr_new_internal: (skip):
129
 **/
130
static FuStructElantpHapticFirmwareHdr *
131
fu_struct_elantp_haptic_firmware_hdr_new_internal(void)
132
0
{
133
0
    FuStructElantpHapticFirmwareHdr *st = g_new0(FuStructElantpHapticFirmwareHdr, 1);
134
0
    st->refcount = 1;
135
0
    return st;
136
0
}
137
138
/* getters */
139
140
/* setters */
141
static gboolean
142
fu_struct_elantp_haptic_firmware_hdr_validate_internal(FuStructElantpHapticFirmwareHdr *st, GError **error)
143
0
{
144
0
    g_return_val_if_fail(st != NULL, FALSE);
145
0
    if (memcmp(st->buf->data + 0, "\xFF\x40\xA2\x5B", 4) != 0) {
146
0
        g_set_error_literal(error,
147
0
                            FWUPD_ERROR,
148
0
                            FWUPD_ERROR_INVALID_DATA,
149
0
                            "constant FuStructElantpHapticFirmwareHdr.magic was not valid");
150
0
        return FALSE;
151
0
    }
152
0
    return TRUE;
153
0
}
154
/**
155
 * fu_struct_elantp_haptic_firmware_hdr_validate_stream: (skip):
156
 **/
157
gboolean
158
fu_struct_elantp_haptic_firmware_hdr_validate_stream(GInputStream *stream, gsize offset, GError **error)
159
0
{
160
0
    g_autoptr(FuStructElantpHapticFirmwareHdr) st = fu_struct_elantp_haptic_firmware_hdr_new_internal();
161
0
    g_return_val_if_fail(G_IS_INPUT_STREAM(stream), FALSE);
162
0
    g_return_val_if_fail(error == NULL || *error == NULL, FALSE);
163
0
    st->buf = fu_input_stream_read_byte_array(stream, offset, 4, NULL, error);
164
0
    if (st->buf == NULL) {
165
0
        g_prefix_error(error, "FuStructElantpHapticFirmwareHdr failed read of 0x%x: ", (guint) 4);
166
0
        return FALSE;
167
0
    }
168
0
    if (st->buf->len != 4) {
169
0
        g_set_error(error,
170
0
                    FWUPD_ERROR,
171
0
                    FWUPD_ERROR_INVALID_DATA,
172
0
                    "FuStructElantpHapticFirmwareHdr requested 0x%x and got 0x%x",
173
0
                    (guint) 4,
174
0
                    (guint) st->buf->len);
175
0
        return FALSE;
176
0
    }
177
0
    return fu_struct_elantp_haptic_firmware_hdr_validate_internal(st, error);
178
0
}