marshall.h revision 331769
1178172Simp/*
2178172Simp * Copyright (c) 2005 Intel Corporation.  All rights reserved.
3178172Simp *
4178172Simp * This software is available to you under a choice of one of two
5178172Simp * licenses.  You may choose to be licensed under the terms of the GNU
6178172Simp * General Public License (GPL) Version 2, available from the file
7178172Simp * COPYING in the main directory of this source tree, or the
8178172Simp * OpenIB.org BSD license below:
9178172Simp *
10178172Simp *     Redistribution and use in source and binary forms, with or
11178172Simp *     without modification, are permitted provided that the following
12178172Simp *     conditions are met:
13178172Simp *
14178172Simp *      - Redistributions of source code must retain the above
15178172Simp *        copyright notice, this list of conditions and the following
16178172Simp *        disclaimer.
17178172Simp *
18178172Simp *      - Redistributions in binary form must reproduce the above
19178172Simp *        copyright notice, this list of conditions and the following
20178172Simp *        disclaimer in the documentation and/or other materials
21178172Simp *        provided with the distribution.
22178172Simp *
23178172Simp * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24178172Simp * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25178172Simp * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26178172Simp * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
27178172Simp * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
28178172Simp * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
29178172Simp * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
30178172Simp * SOFTWARE.
31178172Simp */
32178172Simp
33178172Simp#ifndef INFINIBAND_MARSHALL_H
34178172Simp#define INFINIBAND_MARSHALL_H
35178172Simp
36178172Simp#include <infiniband/verbs.h>
37178172Simp#include <infiniband/sa.h>
38178172Simp#include <infiniband/kern-abi.h>
39178172Simp#include <rdma/ib_user_sa.h>
40178172Simp
41178172Simp#ifdef __cplusplus
42178172Simp#  define BEGIN_C_DECLS extern "C" {
43178172Simp#  define END_C_DECLS   }
44178172Simp#else /* !__cplusplus */
45178172Simp#  define BEGIN_C_DECLS
46178172Simp#  define END_C_DECLS
47178172Simp#endif /* __cplusplus */
48178172Simp
49178172SimpBEGIN_C_DECLS
50178172Simp
51178172Simpvoid ibv_copy_qp_attr_from_kern(struct ibv_qp_attr *dst,
52178172Simp				struct ibv_kern_qp_attr *src);
53178172Simp
54178172Simpvoid ibv_copy_ah_attr_from_kern(struct ibv_ah_attr *dst,
55178172Simp				struct ibv_kern_ah_attr *src);
56178172Simp
57178172Simpvoid ibv_copy_path_rec_from_kern(struct ibv_sa_path_rec *dst,
58178172Simp				 struct ib_user_path_rec *src);
59178172Simp
60178172Simpvoid ibv_copy_path_rec_to_kern(struct ib_user_path_rec *dst,
61178172Simp			       struct ibv_sa_path_rec *src);
62178172Simp
63178172SimpEND_C_DECLS
64178172Simp
65178172Simp#endif /* INFINIBAND_MARSHALL_H */
66178172Simp