1<abi-corpus version='2.0' architecture='elf-amd-x86_64' soname='libzfsbootenv.so.1'>
2  <elf-needed>
3    <dependency name='libzfs.so.4'/>
4    <dependency name='libnvpair.so.3'/>
5    <dependency name='libc.so.6'/>
6  </elf-needed>
7  <elf-function-symbols>
8    <elf-symbol name='lzbe_add_pair' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
9    <elf-symbol name='lzbe_bootenv_print' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
10    <elf-symbol name='lzbe_get_boot_device' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
11    <elf-symbol name='lzbe_nvlist_free' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
12    <elf-symbol name='lzbe_nvlist_get' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
13    <elf-symbol name='lzbe_nvlist_set' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
14    <elf-symbol name='lzbe_remove_pair' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
15    <elf-symbol name='lzbe_set_boot_device' type='func-type' binding='global-binding' visibility='default-visibility' is-defined='yes'/>
16  </elf-function-symbols>
17  <abi-instr address-size='64' path='lzbe_device.c' language='LANG_C99'>
18    <type-decl name='char' size-in-bits='8' id='a84c031d'/>
19    <type-decl name='int' size-in-bits='32' id='95e97e5e'/>
20    <type-decl name='unnamed-enum-underlying-type-32' is-anonymous='yes' size-in-bits='32' alignment-in-bits='32' id='9cac1fee'/>
21    <type-decl name='void' id='48b5725f'/>
22    <enum-decl name='lzbe_flags' id='2b77720b'>
23      <underlying-type type-id='9cac1fee'/>
24      <enumerator name='lzbe_add' value='0'/>
25      <enumerator name='lzbe_replace' value='1'/>
26    </enum-decl>
27    <typedef-decl name='lzbe_flags_t' type-id='2b77720b' id='a1936f04'/>
28    <pointer-type-def type-id='a84c031d' size-in-bits='64' id='26a90f95'/>
29    <pointer-type-def type-id='26a90f95' size-in-bits='64' id='9b23c9ad'/>
30    <qualified-type-def type-id='a84c031d' const='yes' id='9b45d938'/>
31    <pointer-type-def type-id='9b45d938' size-in-bits='64' id='80f4b756'/>
32    <function-decl name='lzbe_set_boot_device' mangled-name='lzbe_set_boot_device' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='lzbe_set_boot_device'>
33      <parameter type-id='80f4b756' name='pool'/>
34      <parameter type-id='a1936f04' name='flag'/>
35      <parameter type-id='80f4b756' name='device'/>
36      <return type-id='95e97e5e'/>
37    </function-decl>
38    <function-decl name='lzbe_get_boot_device' mangled-name='lzbe_get_boot_device' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='lzbe_get_boot_device'>
39      <parameter type-id='80f4b756' name='pool'/>
40      <parameter type-id='9b23c9ad' name='device'/>
41      <return type-id='95e97e5e'/>
42    </function-decl>
43  </abi-instr>
44  <abi-instr address-size='64' path='lzbe_pair.c' language='LANG_C99'>
45    <type-decl name='unsigned long int' size-in-bits='64' id='7359adad'/>
46    <typedef-decl name='size_t' type-id='7359adad' id='b59d7dce'/>
47    <pointer-type-def type-id='48b5725f' size-in-bits='64' id='eaa32e2f'/>
48    <pointer-type-def type-id='eaa32e2f' size-in-bits='64' id='63e171df'/>
49    <function-decl name='lzbe_nvlist_get' mangled-name='lzbe_nvlist_get' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='lzbe_nvlist_get'>
50      <parameter type-id='80f4b756' name='pool'/>
51      <parameter type-id='80f4b756' name='key'/>
52      <parameter type-id='63e171df' name='ptr'/>
53      <return type-id='95e97e5e'/>
54    </function-decl>
55    <function-decl name='lzbe_nvlist_set' mangled-name='lzbe_nvlist_set' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='lzbe_nvlist_set'>
56      <parameter type-id='80f4b756' name='pool'/>
57      <parameter type-id='80f4b756' name='key'/>
58      <parameter type-id='eaa32e2f' name='ptr'/>
59      <return type-id='95e97e5e'/>
60    </function-decl>
61    <function-decl name='lzbe_nvlist_free' mangled-name='lzbe_nvlist_free' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='lzbe_nvlist_free'>
62      <parameter type-id='eaa32e2f' name='ptr'/>
63      <return type-id='48b5725f'/>
64    </function-decl>
65    <function-decl name='lzbe_add_pair' mangled-name='lzbe_add_pair' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='lzbe_add_pair'>
66      <parameter type-id='eaa32e2f' name='ptr'/>
67      <parameter type-id='80f4b756' name='key'/>
68      <parameter type-id='80f4b756' name='type'/>
69      <parameter type-id='eaa32e2f' name='value'/>
70      <parameter type-id='b59d7dce' name='size'/>
71      <return type-id='95e97e5e'/>
72    </function-decl>
73    <function-decl name='lzbe_remove_pair' mangled-name='lzbe_remove_pair' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='lzbe_remove_pair'>
74      <parameter type-id='eaa32e2f' name='ptr'/>
75      <parameter type-id='80f4b756' name='key'/>
76      <return type-id='95e97e5e'/>
77    </function-decl>
78  </abi-instr>
79  <abi-instr address-size='64' path='lzbe_util.c' language='LANG_C99'>
80    <array-type-def dimensions='1' type-id='a84c031d' size-in-bits='8' id='89feb1ec'>
81      <subrange length='1' type-id='7359adad' id='52f813b4'/>
82    </array-type-def>
83    <array-type-def dimensions='1' type-id='a84c031d' size-in-bits='160' id='664ac0b7'>
84      <subrange length='20' type-id='7359adad' id='fdca39cf'/>
85    </array-type-def>
86    <class-decl name='_IO_codecvt' is-struct='yes' visibility='default' is-declaration-only='yes' id='a4036571'/>
87    <class-decl name='_IO_marker' is-struct='yes' visibility='default' is-declaration-only='yes' id='010ae0b9'/>
88    <class-decl name='_IO_wide_data' is-struct='yes' visibility='default' is-declaration-only='yes' id='79bd3751'/>
89    <type-decl name='long int' size-in-bits='64' id='bd54fe1a'/>
90    <type-decl name='signed char' size-in-bits='8' id='28577a57'/>
91    <type-decl name='unsigned short int' size-in-bits='16' id='8efea9e5'/>
92    <typedef-decl name='__off_t' type-id='bd54fe1a' id='79989e9c'/>
93    <typedef-decl name='__off64_t' type-id='bd54fe1a' id='724e4de6'/>
94    <typedef-decl name='FILE' type-id='ec1ed955' id='aa12d1ba'/>
95    <typedef-decl name='_IO_lock_t' type-id='48b5725f' id='bb4788fa'/>
96    <class-decl name='_IO_FILE' size-in-bits='1728' is-struct='yes' visibility='default' id='ec1ed955'>
97      <data-member access='public' layout-offset-in-bits='0'>
98        <var-decl name='_flags' type-id='95e97e5e' visibility='default'/>
99      </data-member>
100      <data-member access='public' layout-offset-in-bits='64'>
101        <var-decl name='_IO_read_ptr' type-id='26a90f95' visibility='default'/>
102      </data-member>
103      <data-member access='public' layout-offset-in-bits='128'>
104        <var-decl name='_IO_read_end' type-id='26a90f95' visibility='default'/>
105      </data-member>
106      <data-member access='public' layout-offset-in-bits='192'>
107        <var-decl name='_IO_read_base' type-id='26a90f95' visibility='default'/>
108      </data-member>
109      <data-member access='public' layout-offset-in-bits='256'>
110        <var-decl name='_IO_write_base' type-id='26a90f95' visibility='default'/>
111      </data-member>
112      <data-member access='public' layout-offset-in-bits='320'>
113        <var-decl name='_IO_write_ptr' type-id='26a90f95' visibility='default'/>
114      </data-member>
115      <data-member access='public' layout-offset-in-bits='384'>
116        <var-decl name='_IO_write_end' type-id='26a90f95' visibility='default'/>
117      </data-member>
118      <data-member access='public' layout-offset-in-bits='448'>
119        <var-decl name='_IO_buf_base' type-id='26a90f95' visibility='default'/>
120      </data-member>
121      <data-member access='public' layout-offset-in-bits='512'>
122        <var-decl name='_IO_buf_end' type-id='26a90f95' visibility='default'/>
123      </data-member>
124      <data-member access='public' layout-offset-in-bits='576'>
125        <var-decl name='_IO_save_base' type-id='26a90f95' visibility='default'/>
126      </data-member>
127      <data-member access='public' layout-offset-in-bits='640'>
128        <var-decl name='_IO_backup_base' type-id='26a90f95' visibility='default'/>
129      </data-member>
130      <data-member access='public' layout-offset-in-bits='704'>
131        <var-decl name='_IO_save_end' type-id='26a90f95' visibility='default'/>
132      </data-member>
133      <data-member access='public' layout-offset-in-bits='768'>
134        <var-decl name='_markers' type-id='e4c6fa61' visibility='default'/>
135      </data-member>
136      <data-member access='public' layout-offset-in-bits='832'>
137        <var-decl name='_chain' type-id='dca988a5' visibility='default'/>
138      </data-member>
139      <data-member access='public' layout-offset-in-bits='896'>
140        <var-decl name='_fileno' type-id='95e97e5e' visibility='default'/>
141      </data-member>
142      <data-member access='public' layout-offset-in-bits='928'>
143        <var-decl name='_flags2' type-id='95e97e5e' visibility='default'/>
144      </data-member>
145      <data-member access='public' layout-offset-in-bits='960'>
146        <var-decl name='_old_offset' type-id='79989e9c' visibility='default'/>
147      </data-member>
148      <data-member access='public' layout-offset-in-bits='1024'>
149        <var-decl name='_cur_column' type-id='8efea9e5' visibility='default'/>
150      </data-member>
151      <data-member access='public' layout-offset-in-bits='1040'>
152        <var-decl name='_vtable_offset' type-id='28577a57' visibility='default'/>
153      </data-member>
154      <data-member access='public' layout-offset-in-bits='1048'>
155        <var-decl name='_shortbuf' type-id='89feb1ec' visibility='default'/>
156      </data-member>
157      <data-member access='public' layout-offset-in-bits='1088'>
158        <var-decl name='_lock' type-id='cecf4ea7' visibility='default'/>
159      </data-member>
160      <data-member access='public' layout-offset-in-bits='1152'>
161        <var-decl name='_offset' type-id='724e4de6' visibility='default'/>
162      </data-member>
163      <data-member access='public' layout-offset-in-bits='1216'>
164        <var-decl name='_codecvt' type-id='570f8c59' visibility='default'/>
165      </data-member>
166      <data-member access='public' layout-offset-in-bits='1280'>
167        <var-decl name='_wide_data' type-id='c65a1f29' visibility='default'/>
168      </data-member>
169      <data-member access='public' layout-offset-in-bits='1344'>
170        <var-decl name='_freeres_list' type-id='dca988a5' visibility='default'/>
171      </data-member>
172      <data-member access='public' layout-offset-in-bits='1408'>
173        <var-decl name='_freeres_buf' type-id='eaa32e2f' visibility='default'/>
174      </data-member>
175      <data-member access='public' layout-offset-in-bits='1472'>
176        <var-decl name='__pad5' type-id='b59d7dce' visibility='default'/>
177      </data-member>
178      <data-member access='public' layout-offset-in-bits='1536'>
179        <var-decl name='_mode' type-id='95e97e5e' visibility='default'/>
180      </data-member>
181      <data-member access='public' layout-offset-in-bits='1568'>
182        <var-decl name='_unused2' type-id='664ac0b7' visibility='default'/>
183      </data-member>
184    </class-decl>
185    <pointer-type-def type-id='aa12d1ba' size-in-bits='64' id='822cd80b'/>
186    <pointer-type-def type-id='ec1ed955' size-in-bits='64' id='dca988a5'/>
187    <pointer-type-def type-id='a4036571' size-in-bits='64' id='570f8c59'/>
188    <pointer-type-def type-id='bb4788fa' size-in-bits='64' id='cecf4ea7'/>
189    <pointer-type-def type-id='010ae0b9' size-in-bits='64' id='e4c6fa61'/>
190    <pointer-type-def type-id='79bd3751' size-in-bits='64' id='c65a1f29'/>
191    <class-decl name='_IO_codecvt' is-struct='yes' visibility='default' is-declaration-only='yes' id='a4036571'/>
192    <class-decl name='_IO_marker' is-struct='yes' visibility='default' is-declaration-only='yes' id='010ae0b9'/>
193    <class-decl name='_IO_wide_data' is-struct='yes' visibility='default' is-declaration-only='yes' id='79bd3751'/>
194    <function-decl name='lzbe_bootenv_print' mangled-name='lzbe_bootenv_print' visibility='default' binding='global' size-in-bits='64' elf-symbol-id='lzbe_bootenv_print'>
195      <parameter type-id='80f4b756' name='pool'/>
196      <parameter type-id='80f4b756' name='nvlist'/>
197      <parameter type-id='822cd80b' name='of'/>
198      <return type-id='95e97e5e'/>
199    </function-decl>
200  </abi-instr>
201</abi-corpus>
202