nvpair.h revision 293121
1/*-
2 * Copyright (c) 2014 Sandvine Inc.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 *    notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 *    notice, this list of conditions and the following disclaimer in the
12 *    documentation and/or other materials provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $FreeBSD: stable/10/sys/cddl/compat/opensolaris/sys/nvpair.h 293121 2016-01-03 22:50:19Z ngie $
27 */
28
29#ifndef _OPENSOLARIS_SYS_NVPAIR_H_
30#define _OPENSOLARIS_SYS_NVPAIR_H_
31
32#ifdef _KERNEL
33
34/*
35 * Some of the symbols in the Illumos nvpair library conflict with symbols
36 * provided by nv(9), so we use this preprocessor hack to avoid the conflict.
37 *
38 * This list was generated by:
39 *   cat nv.h nv_impl.h nvlist_* nvpair_impl.h | \
40 *     sed -nE 's/^[[:alnum:]_][[:alnum:]_ ]*[[:space:]]+[*]*([[:alnum:]_]+)\(.*$/#define \1 illumos_\1/p' | \
41 *     sort -u
42 */
43#define nvlist_add_binary illumos_nvlist_add_binary
44#define nvlist_add_bool illumos_nvlist_add_bool
45#define nvlist_add_descriptor illumos_nvlist_add_descriptor
46#define nvlist_add_null illumos_nvlist_add_null
47#define nvlist_add_number illumos_nvlist_add_number
48#define nvlist_add_nvlist illumos_nvlist_add_nvlist
49#define nvlist_add_nvpair illumos_nvlist_add_nvpair
50#define nvlist_add_string illumos_nvlist_add_string
51#define nvlist_add_stringf illumos_nvlist_add_stringf
52#define nvlist_add_stringv illumos_nvlist_add_stringv
53#define nvlist_addf_binary illumos_nvlist_addf_binary
54#define nvlist_addf_bool illumos_nvlist_addf_bool
55#define nvlist_addf_descriptor illumos_nvlist_addf_descriptor
56#define nvlist_addf_null illumos_nvlist_addf_null
57#define nvlist_addf_number illumos_nvlist_addf_number
58#define nvlist_addf_nvlist illumos_nvlist_addf_nvlist
59#define nvlist_addf_string illumos_nvlist_addf_string
60#define nvlist_addv_binary illumos_nvlist_addv_binary
61#define nvlist_addv_bool illumos_nvlist_addv_bool
62#define nvlist_addv_descriptor illumos_nvlist_addv_descriptor
63#define nvlist_addv_null illumos_nvlist_addv_null
64#define nvlist_addv_number illumos_nvlist_addv_number
65#define nvlist_addv_nvlist illumos_nvlist_addv_nvlist
66#define nvlist_addv_string illumos_nvlist_addv_string
67#define nvlist_check_header illumos_nvlist_check_header
68#define nvlist_clone illumos_nvlist_clone
69#define nvlist_create illumos_nvlist_create
70#define nvlist_descriptors illumos_nvlist_descriptors
71#define nvlist_destroy illumos_nvlist_destroy
72#define nvlist_dump illumos_nvlist_dump
73#define nvlist_empty illumos_nvlist_empty
74#define nvlist_error illumos_nvlist_error
75#define nvlist_exists illumos_nvlist_exists
76#define nvlist_exists_binary illumos_nvlist_exists_binary
77#define nvlist_exists_bool illumos_nvlist_exists_bool
78#define nvlist_exists_descriptor illumos_nvlist_exists_descriptor
79#define nvlist_exists_null illumos_nvlist_exists_null
80#define nvlist_exists_number illumos_nvlist_exists_number
81#define nvlist_exists_nvlist illumos_nvlist_exists_nvlist
82#define nvlist_exists_string illumos_nvlist_exists_string
83#define nvlist_exists_type illumos_nvlist_exists_type
84#define nvlist_existsf illumos_nvlist_existsf
85#define nvlist_existsf_binary illumos_nvlist_existsf_binary
86#define nvlist_existsf_bool illumos_nvlist_existsf_bool
87#define nvlist_existsf_descriptor illumos_nvlist_existsf_descriptor
88#define nvlist_existsf_null illumos_nvlist_existsf_null
89#define nvlist_existsf_number illumos_nvlist_existsf_number
90#define nvlist_existsf_nvlist illumos_nvlist_existsf_nvlist
91#define nvlist_existsf_string illumos_nvlist_existsf_string
92#define nvlist_existsf_type illumos_nvlist_existsf_type
93#define nvlist_existsv illumos_nvlist_existsv
94#define nvlist_existsv_binary illumos_nvlist_existsv_binary
95#define nvlist_existsv_bool illumos_nvlist_existsv_bool
96#define nvlist_existsv_descriptor illumos_nvlist_existsv_descriptor
97#define nvlist_existsv_null illumos_nvlist_existsv_null
98#define nvlist_existsv_number illumos_nvlist_existsv_number
99#define nvlist_existsv_nvlist illumos_nvlist_existsv_nvlist
100#define nvlist_existsv_string illumos_nvlist_existsv_string
101#define nvlist_existsv_type illumos_nvlist_existsv_type
102#define nvlist_fdump illumos_nvlist_fdump
103#define nvlist_first_nvpair illumos_nvlist_first_nvpair
104#define nvlist_free illumos_nvlist_free
105#define nvlist_free_binary illumos_nvlist_free_binary
106#define nvlist_free_bool illumos_nvlist_free_bool
107#define nvlist_free_descriptor illumos_nvlist_free_descriptor
108#define nvlist_free_null illumos_nvlist_free_null
109#define nvlist_free_number illumos_nvlist_free_number
110#define nvlist_free_nvlist illumos_nvlist_free_nvlist
111#define nvlist_free_nvpair illumos_nvlist_free_nvpair
112#define nvlist_free_string illumos_nvlist_free_string
113#define nvlist_free_type illumos_nvlist_free_type
114#define nvlist_freef illumos_nvlist_freef
115#define nvlist_freef_binary illumos_nvlist_freef_binary
116#define nvlist_freef_bool illumos_nvlist_freef_bool
117#define nvlist_freef_descriptor illumos_nvlist_freef_descriptor
118#define nvlist_freef_null illumos_nvlist_freef_null
119#define nvlist_freef_number illumos_nvlist_freef_number
120#define nvlist_freef_nvlist illumos_nvlist_freef_nvlist
121#define nvlist_freef_string illumos_nvlist_freef_string
122#define nvlist_freef_type illumos_nvlist_freef_type
123#define nvlist_freev illumos_nvlist_freev
124#define nvlist_freev_binary illumos_nvlist_freev_binary
125#define nvlist_freev_bool illumos_nvlist_freev_bool
126#define nvlist_freev_descriptor illumos_nvlist_freev_descriptor
127#define nvlist_freev_null illumos_nvlist_freev_null
128#define nvlist_freev_number illumos_nvlist_freev_number
129#define nvlist_freev_nvlist illumos_nvlist_freev_nvlist
130#define nvlist_freev_string illumos_nvlist_freev_string
131#define nvlist_freev_type illumos_nvlist_freev_type
132#define nvlist_get_binary illumos_nvlist_get_binary
133#define nvlist_get_bool illumos_nvlist_get_bool
134#define nvlist_get_descriptor illumos_nvlist_get_descriptor
135#define nvlist_get_number illumos_nvlist_get_number
136#define nvlist_get_nvlist illumos_nvlist_get_nvlist
137#define nvlist_get_nvpair illumos_nvlist_get_nvpair
138#define nvlist_get_string illumos_nvlist_get_string
139#define nvlist_getf_binary illumos_nvlist_getf_binary
140#define nvlist_getf_bool illumos_nvlist_getf_bool
141#define nvlist_getf_descriptor illumos_nvlist_getf_descriptor
142#define nvlist_getf_number illumos_nvlist_getf_number
143#define nvlist_getf_nvlist illumos_nvlist_getf_nvlist
144#define nvlist_getf_string illumos_nvlist_getf_string
145#define nvlist_getv_binary illumos_nvlist_getv_binary
146#define nvlist_getv_bool illumos_nvlist_getv_bool
147#define nvlist_getv_descriptor illumos_nvlist_getv_descriptor
148#define nvlist_getv_number illumos_nvlist_getv_number
149#define nvlist_getv_nvlist illumos_nvlist_getv_nvlist
150#define nvlist_getv_string illumos_nvlist_getv_string
151#define nvlist_move_binary illumos_nvlist_move_binary
152#define nvlist_move_descriptor illumos_nvlist_move_descriptor
153#define nvlist_move_nvlist illumos_nvlist_move_nvlist
154#define nvlist_move_nvpair illumos_nvlist_move_nvpair
155#define nvlist_move_string illumos_nvlist_move_string
156#define nvlist_movef_binary illumos_nvlist_movef_binary
157#define nvlist_movef_descriptor illumos_nvlist_movef_descriptor
158#define nvlist_movef_nvlist illumos_nvlist_movef_nvlist
159#define nvlist_movef_string illumos_nvlist_movef_string
160#define nvlist_movev_binary illumos_nvlist_movev_binary
161#define nvlist_movev_descriptor illumos_nvlist_movev_descriptor
162#define nvlist_movev_nvlist illumos_nvlist_movev_nvlist
163#define nvlist_movev_string illumos_nvlist_movev_string
164#define nvlist_ndescriptors illumos_nvlist_ndescriptors
165#define nvlist_next illumos_nvlist_next
166#define nvlist_next_nvpair illumos_nvlist_next_nvpair
167#define nvlist_pack illumos_nvlist_pack
168#define nvlist_prev_nvpair illumos_nvlist_prev_nvpair
169#define nvlist_recv illumos_nvlist_recv
170#define nvlist_remove_nvpair illumos_nvlist_remove_nvpair
171#define nvlist_report_missing illumos_nvlist_report_missing
172#define nvlist_send illumos_nvlist_send
173#define nvlist_set_error illumos_nvlist_set_error
174#define nvlist_size illumos_nvlist_size
175#define nvlist_take_binary illumos_nvlist_take_binary
176#define nvlist_take_bool illumos_nvlist_take_bool
177#define nvlist_take_descriptor illumos_nvlist_take_descriptor
178#define nvlist_take_number illumos_nvlist_take_number
179#define nvlist_take_nvlist illumos_nvlist_take_nvlist
180#define nvlist_take_nvpair illumos_nvlist_take_nvpair
181#define nvlist_take_string illumos_nvlist_take_string
182#define nvlist_takef_binary illumos_nvlist_takef_binary
183#define nvlist_takef_bool illumos_nvlist_takef_bool
184#define nvlist_takef_descriptor illumos_nvlist_takef_descriptor
185#define nvlist_takef_number illumos_nvlist_takef_number
186#define nvlist_takef_nvlist illumos_nvlist_takef_nvlist
187#define nvlist_takef_string illumos_nvlist_takef_string
188#define nvlist_takev_binary illumos_nvlist_takev_binary
189#define nvlist_takev_bool illumos_nvlist_takev_bool
190#define nvlist_takev_descriptor illumos_nvlist_takev_descriptor
191#define nvlist_takev_number illumos_nvlist_takev_number
192#define nvlist_takev_nvlist illumos_nvlist_takev_nvlist
193#define nvlist_takev_string illumos_nvlist_takev_string
194#define nvlist_unpack illumos_nvlist_unpack
195#define nvlist_xfer illumos_nvlist_xfer
196#define nvlist_xpack illumos_nvlist_xpack
197#define nvlist_xunpack illumos_nvlist_xunpack
198#define nvpair_allocv illumos_nvpair_allocv
199#define nvpair_assert illumos_nvpair_assert
200#define nvpair_clone illumos_nvpair_clone
201#define nvpair_create_binary illumos_nvpair_create_binary
202#define nvpair_create_bool illumos_nvpair_create_bool
203#define nvpair_create_descriptor illumos_nvpair_create_descriptor
204#define nvpair_create_null illumos_nvpair_create_null
205#define nvpair_create_number illumos_nvpair_create_number
206#define nvpair_create_nvlist illumos_nvpair_create_nvlist
207#define nvpair_create_string illumos_nvpair_create_string
208#define nvpair_create_stringf illumos_nvpair_create_stringf
209#define nvpair_create_stringv illumos_nvpair_create_stringv
210#define nvpair_createf_binary illumos_nvpair_createf_binary
211#define nvpair_createf_bool illumos_nvpair_createf_bool
212#define nvpair_createf_descriptor illumos_nvpair_createf_descriptor
213#define nvpair_createf_null illumos_nvpair_createf_null
214#define nvpair_createf_number illumos_nvpair_createf_number
215#define nvpair_createf_nvlist illumos_nvpair_createf_nvlist
216#define nvpair_createf_string illumos_nvpair_createf_string
217#define nvpair_createv_binary illumos_nvpair_createv_binary
218#define nvpair_createv_bool illumos_nvpair_createv_bool
219#define nvpair_createv_descriptor illumos_nvpair_createv_descriptor
220#define nvpair_createv_null illumos_nvpair_createv_null
221#define nvpair_createv_number illumos_nvpair_createv_number
222#define nvpair_createv_nvlist illumos_nvpair_createv_nvlist
223#define nvpair_createv_string illumos_nvpair_createv_string
224#define nvpair_free illumos_nvpair_free
225#define nvpair_free_structure illumos_nvpair_free_structure
226#define nvpair_get_binary illumos_nvpair_get_binary
227#define nvpair_get_bool illumos_nvpair_get_bool
228#define nvpair_get_descriptor illumos_nvpair_get_descriptor
229#define nvpair_get_number illumos_nvpair_get_number
230#define nvpair_get_nvlist illumos_nvpair_get_nvlist
231#define nvpair_get_string illumos_nvpair_get_string
232#define nvpair_header_size illumos_nvpair_header_size
233#define nvpair_insert illumos_nvpair_insert
234#define nvpair_move_binary illumos_nvpair_move_binary
235#define nvpair_move_descriptor illumos_nvpair_move_descriptor
236#define nvpair_move_nvlist illumos_nvpair_move_nvlist
237#define nvpair_move_string illumos_nvpair_move_string
238#define nvpair_movef_binary illumos_nvpair_movef_binary
239#define nvpair_movef_descriptor illumos_nvpair_movef_descriptor
240#define nvpair_movef_nvlist illumos_nvpair_movef_nvlist
241#define nvpair_movef_string illumos_nvpair_movef_string
242#define nvpair_movev_binary illumos_nvpair_movev_binary
243#define nvpair_movev_descriptor illumos_nvpair_movev_descriptor
244#define nvpair_movev_nvlist illumos_nvpair_movev_nvlist
245#define nvpair_movev_string illumos_nvpair_movev_string
246#define nvpair_name illumos_nvpair_name
247#define nvpair_next illumos_nvpair_next
248#define nvpair_nvlist illumos_nvpair_nvlist
249#define nvpair_pack illumos_nvpair_pack
250#define nvpair_pack_descriptor illumos_nvpair_pack_descriptor
251#define nvpair_prev illumos_nvpair_prev
252#define nvpair_remove illumos_nvpair_remove
253#define nvpair_size illumos_nvpair_size
254#define nvpair_type illumos_nvpair_type
255#define nvpair_type_string illumos_nvpair_type_string
256#define nvpair_unpack illumos_nvpair_unpack
257#define nvpair_unpack_descriptor illumos_nvpair_unpack_descriptor
258
259#endif /* _KERNEL */
260
261#include_next <sys/nvpair.h>
262
263#endif
264