1 #ifndef __SPICE_EXPERIMENTAL_H__
2 #define __SPICE_EXPERIMENTAL_H__
8 #define SPICE_INTERFACE_NET_WIRE "net_wire"
9 #define SPICE_INTERFACE_NET_WIRE_MAJOR 1
10 #define SPICE_INTERFACE_NET_WIRE_MINOR 1
11 typedef struct SpiceNetWireInterface SpiceNetWireInterface;
12 typedef struct SpiceNetWireInstance SpiceNetWireInstance;
13 typedef struct SpiceNetWireState SpiceNetWireState;
15 struct SpiceNetWireInterface {
16 SpiceBaseInterface base;
18 struct in_addr (*get_ip)(SpiceNetWireInstance *sin);
19 int (*can_send_packet)(SpiceNetWireInstance *sin);
20 void (*send_packet)(SpiceNetWireInstance *sin, const uint8_t *pkt, int len);
23 struct SpiceNetWireInstance {
24 SpiceBaseInstance base;
25 SpiceNetWireState *st;
28 void spice_server_net_wire_recv_packet(SpiceNetWireInstance *sin,
29 const uint8_t *pkt, int len);
31 /* spice seamless client migration (broken) */
33 SPICE_MIGRATE_CLIENT_NONE = 1,
34 SPICE_MIGRATE_CLIENT_WAITING,
35 SPICE_MIGRATE_CLIENT_READY,
38 int spice_server_migrate_client_state(SpiceServer *s);
40 #endif // __SPICE_EXPERIMENTAL_H__