1258065Spjd/*-
2258065Spjd * Copyright (c) 2013 The FreeBSD Foundation
3258065Spjd * All rights reserved.
4258065Spjd *
5258065Spjd * This software was developed by Pawel Jakub Dawidek under sponsorship from
6258065Spjd * the FreeBSD Foundation.
7258065Spjd *
8258065Spjd * Copyright (c) 2013 Mariusz Zaborski <oshogbo@FreeBSD.org>
9258065Spjd *
10258065Spjd * Redistribution and use in source and binary forms, with or without
11258065Spjd * modification, are permitted provided that the following conditions
12258065Spjd * are met:
13258065Spjd * 1. Redistributions of source code must retain the above copyright
14258065Spjd *    notice, this list of conditions and the following disclaimer.
15258065Spjd * 2. Redistributions in binary form must reproduce the above copyright
16258065Spjd *    notice, this list of conditions and the following disclaimer in the
17258065Spjd *    documentation and/or other materials provided with the distribution.
18258065Spjd *
19258065Spjd * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
20258065Spjd * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21258065Spjd * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22258065Spjd * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
23258065Spjd * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24258065Spjd * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25258065Spjd * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26258065Spjd * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27258065Spjd * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28258065Spjd * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29258065Spjd * SUCH DAMAGE.
30258065Spjd *
31258065Spjd * $FreeBSD$
32258065Spjd */
33258065Spjd
34258065Spjd#ifndef	_MSGIO_H_
35258065Spjd#define	_MSGIO_H_
36258065Spjd
37258065Spjdstruct cmsgcred;
38258065Spjdstruct iovec;
39258065Spjdstruct msghdr;
40258065Spjd
41258065Spjdint cred_send(int sock);
42258065Spjdint cred_recv(int sock, struct cmsgcred *cred);
43258065Spjd
44258065Spjdint fd_send(int sock, const int *fds, size_t nfds);
45258065Spjdint fd_recv(int sock, int *fds, size_t nfds);
46258065Spjd
47258065Spjdint buf_send(int sock, void *buf, size_t size);
48258065Spjdint buf_recv(int sock, void *buf, size_t size);
49258065Spjd
50258065Spjd#endif	/* !_MSGIO_H_ */
51