c0fd7d49e53c20de7e3ddd9f6e4b60b127697d06
[platform/adaptation/emulator/spice-vdagent.git] / src / vdagentd-proto.h
1 /*  vdagentd-proto.h header file for the protocol over the unix domain socket
2     between the vdagent process / xorg-client and the vdagentd (daemon).
3
4     Copyright 2010-2013 Red Hat, Inc.
5     Copyright (c) 2014 Samsung Electronics Co., Ltd.
6
7     Red Hat Authors:
8     Hans de Goede <hdegoede@redhat.com>
9
10     This program is free software: you can redistribute it and/or modify
11     it under the terms of the GNU General Public License as published by
12     the Free Software Foundation, either version 3 of the License, or   
13     (at your option) any later version.
14
15     This program is distributed in the hope that it will be useful,
16     but WITHOUT ANY WARRANTY; without even the implied warranty of 
17     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
18     GNU General Public License for more details.
19
20     You should have received a copy of the GNU General Public License
21     along with this program.  If not, see <http://www.gnu.org/licenses/>.
22
23     * Modifications by Samsung Electronics Co., Ltd.
24     1. modified socket path
25 */
26
27 #ifndef __VDAGENTD_PROTO_H
28 #define __VDAGENTD_PROTO_H
29
30 #define VDAGENTD_SOCKET "/opt/var/run/spice-vdagentd/spice-vdagent-sock"
31
32 enum {
33     VDAGENTD_GUEST_XORG_RESOLUTION, /* client -> daemon, arg1: overall width,
34                                        arg2: overall height, data: array of
35                                        vdagentd_guest_xorg_resolution */
36     VDAGENTD_MONITORS_CONFIG, /* daemon -> client, VDAgentMonitorsConfig
37                                  followed by num_monitors VDAgentMonConfig-s */
38     VDAGENTD_CLIPBOARD_GRAB,    /* arg1: sel, data: array of supported types */
39     VDAGENTD_CLIPBOARD_REQUEST, /* arg1: selection, arg 2 = type */
40     VDAGENTD_CLIPBOARD_DATA,    /* arg1: sel, arg 2: type, data: data */
41     VDAGENTD_CLIPBOARD_RELEASE, /* arg1: selection */
42     VDAGENTD_VERSION,           /* daemon -> client, data: version string */
43     VDAGENTD_FILE_XFER_START,
44     VDAGENTD_FILE_XFER_STATUS,
45     VDAGENTD_FILE_XFER_DATA,
46     VDAGENTD_CLIENT_DISCONNECTED,  /* daemon -> client */
47     VDAGENTD_NO_MESSAGES /* Must always be last */
48 };
49
50 struct vdagentd_guest_xorg_resolution {
51     int width;
52     int height;
53     int x;
54     int y;
55 };
56
57 #endif