blob: a6ef267e198a4cf1ebbec744dcb60107be3e418e [file] [log] [blame]
Mark McLoughlin42281ac2009-11-25 18:48:56 +00001/*
2 * QEMU System Emulator
3 *
4 * Copyright (c) 2003-2008 Fabrice Bellard
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to deal
8 * in the Software without restriction, including without limitation the rights
9 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 * copies of the Software, and to permit persons to whom the Software is
11 * furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in
14 * all copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 * THE SOFTWARE.
23 */
Paolo Bonzinia245fc12012-09-17 18:43:51 +020024#ifndef QEMU_NET_CLIENTS_H
25#define QEMU_NET_CLIENTS_H
Mark McLoughlin42281ac2009-11-25 18:48:56 +000026
Paolo Bonzini1422e322012-10-24 08:43:34 +020027#include "net/net.h"
Mark McLoughlin42281ac2009-11-25 18:48:56 +000028
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060029int net_init_dump(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020030 NetClientState *peer, Error **errp);
Paolo Bonzinia245fc12012-09-17 18:43:51 +020031
32#ifdef CONFIG_SLIRP
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060033int net_init_slirp(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020034 NetClientState *peer, Error **errp);
Paolo Bonzinia245fc12012-09-17 18:43:51 +020035#endif
36
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060037int net_init_hubport(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020038 NetClientState *peer, Error **errp);
Paolo Bonzinia245fc12012-09-17 18:43:51 +020039
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060040int net_init_socket(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020041 NetClientState *peer, Error **errp);
Mark McLoughlin42281ac2009-11-25 18:48:56 +000042
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060043int net_init_tap(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020044 NetClientState *peer, Error **errp);
Paolo Bonzinia245fc12012-09-17 18:43:51 +020045
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060046int net_init_bridge(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020047 NetClientState *peer, Error **errp);
Paolo Bonzinia245fc12012-09-17 18:43:51 +020048
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060049int net_init_l2tpv3(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020050 NetClientState *peer, Error **errp);
Paolo Bonzinia245fc12012-09-17 18:43:51 +020051#ifdef CONFIG_VDE
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060052int net_init_vde(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020053 NetClientState *peer, Error **errp);
Paolo Bonzinia245fc12012-09-17 18:43:51 +020054#endif
55
Vincenzo Maffione58952132013-11-06 11:44:06 +010056#ifdef CONFIG_NETMAP
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060057int net_init_netmap(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020058 NetClientState *peer, Error **errp);
Vincenzo Maffione58952132013-11-06 11:44:06 +010059#endif
60
Kővágó, Zoltáncebea512016-07-13 21:50:12 -060061int net_init_vhost_user(const Netdev *netdev, const char *name,
Markus Armbrustera30ecde2015-05-15 13:58:50 +020062 NetClientState *peer, Error **errp);
Nikolay Nikolaevd314f582014-05-27 15:06:29 +030063
Paolo Bonzinia245fc12012-09-17 18:43:51 +020064#endif /* QEMU_NET_CLIENTS_H */