1/* Do not change this file without reading Documentation/versioning.md */
2IBVERBS_1.0 {
3	global:
4		ibv_get_device_list;
5		ibv_free_device_list;
6		ibv_get_device_name;
7		ibv_get_device_guid;
8		ibv_open_device;
9		ibv_close_device;
10		ibv_get_async_event;
11		ibv_ack_async_event;
12		ibv_query_device;
13		ibv_query_port;
14		ibv_query_gid;
15		ibv_query_pkey;
16		ibv_alloc_pd;
17		ibv_dealloc_pd;
18		ibv_reg_mr;
19		ibv_dereg_mr;
20		ibv_create_comp_channel;
21		ibv_destroy_comp_channel;
22		ibv_create_cq;
23		ibv_resize_cq;
24		ibv_destroy_cq;
25		ibv_get_cq_event;
26		ibv_ack_cq_events;
27		ibv_create_srq;
28		ibv_modify_srq;
29		ibv_query_srq;
30		ibv_destroy_srq;
31		ibv_create_qp;
32		ibv_query_qp;
33		ibv_modify_qp;
34		ibv_destroy_qp;
35		ibv_create_ah;
36		ibv_destroy_ah;
37		ibv_attach_mcast;
38		ibv_detach_mcast;
39		ibv_rate_to_mult;
40		mult_to_ibv_rate;
41
42		/* These historical symbols are now private to libibverbs, but used by
43		   other rdma-core libraries. Do not change them. */
44		ibv_copy_path_rec_from_kern;
45		ibv_copy_path_rec_to_kern;
46		ibv_copy_qp_attr_from_kern;
47		ibv_get_sysfs_path;
48		ibv_read_sysfs_file;
49
50	local: *;
51};
52
53IBVERBS_1.1 {
54	global:
55		ibv_get_device_list;
56		ibv_free_device_list;
57		ibv_get_device_name;
58		ibv_get_device_guid;
59		ibv_open_device;
60		ibv_close_device;
61
62		ibv_init_ah_from_wc;
63		ibv_create_ah_from_wc;
64		ibv_fork_init;
65		ibv_dontfork_range;
66		ibv_dofork_range;
67
68		ibv_node_type_str;
69		ibv_port_state_str;
70		ibv_event_type_str;
71		ibv_wc_status_str;
72
73		ibv_rate_to_mbps;
74		mbps_to_ibv_rate;
75
76		ibv_resolve_eth_l2_from_gid;
77
78		/* These historical symbols are now private to libibverbs, but used by
79		   other rdma-core libraries. Do not change them. */
80		ibv_copy_ah_attr_from_kern;
81} IBVERBS_1.0;
82
83/* NOTE: The next stanza for public symbols should be IBVERBS_1.4 due to release 12 */
84
85/* If any symbols in this stanza change ABI then the entire staza gets a new symbol
86   version. Also see the private_symver() macro */
87IBVERBS_PRIVATE_14 {
88	global:
89		/* These historical symbols are now private to libibverbs */
90		ibv_cmd_alloc_mw;
91		ibv_cmd_alloc_pd;
92		ibv_cmd_attach_mcast;
93		ibv_cmd_close_xrcd;
94		ibv_cmd_create_ah;
95		ibv_cmd_create_cq;
96		ibv_cmd_create_cq_ex;
97		ibv_cmd_create_flow;
98		ibv_cmd_create_qp;
99		ibv_cmd_create_qp_ex2;
100		ibv_cmd_create_qp_ex;
101		ibv_cmd_create_rwq_ind_table;
102		ibv_cmd_create_srq;
103		ibv_cmd_create_srq_ex;
104		ibv_cmd_create_wq;
105		ibv_cmd_dealloc_mw;
106		ibv_cmd_dealloc_pd;
107		ibv_cmd_dereg_mr;
108		ibv_cmd_destroy_ah;
109		ibv_cmd_destroy_cq;
110		ibv_cmd_destroy_flow;
111		ibv_cmd_destroy_qp;
112		ibv_cmd_destroy_rwq_ind_table;
113		ibv_cmd_destroy_srq;
114		ibv_cmd_destroy_wq;
115		ibv_cmd_detach_mcast;
116		ibv_cmd_get_context;
117		ibv_cmd_modify_qp;
118		ibv_cmd_modify_qp_ex;
119		ibv_cmd_modify_srq;
120		ibv_cmd_modify_wq;
121		ibv_cmd_open_qp;
122		ibv_cmd_open_xrcd;
123		ibv_cmd_poll_cq;
124		ibv_cmd_post_recv;
125		ibv_cmd_post_send;
126		ibv_cmd_post_srq_recv;
127		ibv_cmd_query_device;
128		ibv_cmd_query_device_ex;
129		ibv_cmd_query_port;
130		ibv_cmd_query_qp;
131		ibv_cmd_query_srq;
132		ibv_cmd_reg_mr;
133		ibv_cmd_req_notify_cq;
134		ibv_cmd_rereg_mr;
135		ibv_cmd_resize_cq;
136		ibv_query_gid_type;
137		verbs_register_driver;
138		verbs_init_cq;
139		verbs_cleanup_cq;
140		ibv_init_wq;
141		ibv_cleanup_wq;
142};
143