Coverage Report

Created: 2025-11-11 06:44

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