VirtualBox

source: vbox/trunk/src/VBox/HostServices/SharedClipboard/VBoxSharedClipboardSvc-x11-stubs.cpp@ 105745

Last change on this file since 105745 was 98103, checked in by vboxsync, 23 months ago

Copyright year updates by scm.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.8 KB
Line 
1/* $Id: VBoxSharedClipboardSvc-x11-stubs.cpp 98103 2023-01-17 14:15:46Z vboxsync $*/
2/** @file
3 * Shared Clipboard Service - Linux host, a stub version with no functionality for use on headless hosts.
4 */
5
6/*
7 * Copyright (C) 2006-2023 Oracle and/or its affiliates.
8 *
9 * This file is part of VirtualBox base platform packages, as
10 * available from https://www.virtualbox.org.
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation, in version 3 of the
15 * License.
16 *
17 * This program is distributed in the hope that it will be useful, but
18 * WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 * General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, see <https://www.gnu.org/licenses>.
24 *
25 * SPDX-License-Identifier: GPL-3.0-only
26 */
27
28
29/*********************************************************************************************************************************
30* Header Files *
31*********************************************************************************************************************************/
32#define LOG_GROUP LOG_GROUP_SHARED_CLIPBOARD
33#include <VBox/HostServices/VBoxClipboardSvc.h>
34
35#include <iprt/alloc.h>
36#include <iprt/asm.h> /* For atomic operations */
37#include <iprt/assert.h>
38#include <iprt/mem.h>
39#include <iprt/string.h>
40#include <iprt/thread.h>
41#include <iprt/process.h>
42#include <iprt/semaphore.h>
43#include <string.h>
44#include <stdio.h>
45#include <stdint.h>
46
47#include "VBoxSharedClipboardSvc-internal.h"
48
49
50/*
51 * Initialise the host side of the shared clipboard - called by the hgcm layer.
52 */
53int ShClBackendInit(PSHCLBACKEND pBackend, VBOXHGCMSVCFNTABLE *pTable)
54{
55 RT_NOREF(pTable);
56 LogFlowFunc(("called, returning VINF_SUCCESS\n"));
57 return VINF_SUCCESS;
58}
59
60/*
61 * Terminate the host side of the shared clipboard - called by the hgcm layer.
62 */
63void ShClBackendDestroy(PSHCLBACKEND pBackend)
64{
65 RT_NOREF(pBackend);
66 LogFlowFunc(("called, returning\n"));
67}
68
69int ShClBackendConnect(PSHCLBACKEND pBackend, PSHCLCLIENT pClient, bool fHeadless)
70{
71 RT_NOREF(pBackend, pClient, fHeadless);
72 LogFlowFunc(("called, returning VINF_SUCCESS\n"));
73 return VINF_SUCCESS;
74}
75
76/*
77 * Synchronise the contents of the host clipboard with the guest, called by the HGCM layer
78 * after a save and restore of the guest.
79 */
80int ShClBackendSync(PSHCLBACKEND pBackend, PSHCLCLIENT pClient)
81{
82 RT_NOREF(pBackend, pClient);
83 LogFlowFunc(("called, returning VINF_SUCCESS\n"));
84 return VINF_SUCCESS;
85}
86
87int ShClBackendDisconnect(PSHCLBACKEND pBackend, PSHCLCLIENT pClient)
88{
89 RT_NOREF(pBackend, pClient);
90 return VINF_SUCCESS;
91}
92
93/*
94 * The guest is taking possession of the shared clipboard.
95 * Called by the HGCM clipboard subsystem.
96 */
97int ShClBackendReportFormats(PSHCLBACKEND pBackend, PSHCLCLIENT pClient, SHCLFORMATS fFormats)
98{
99 RT_NOREF(pBackend, pClient, fFormats);
100 return VINF_SUCCESS;
101}
102
103/*
104 * Called by the HGCM clipboard subsystem when the guest wants to read the host clipboard.
105 */
106int ShClBackendReadData(PSHCLBACKEND pBackend, PSHCLCLIENT pClient, PSHCLCLIENTCMDCTX pCmdCtx,
107 SHCLFORMAT uFormat, void *pvData, uint32_t cbData, uint32_t *pcbActual)
108{
109 RT_NOREF(pBackend, pClient, pCmdCtx, uFormat, pvData, cbData);
110
111 /* No data available. */
112 *pcbActual = 0;
113
114 return VINF_SUCCESS;
115}
116
117int ShClBackendWriteData(PSHCLBACKEND pBackend, PSHCLCLIENT pClient, PSHCLCLIENTCMDCTX pCmdCtx,
118 SHCLFORMAT uFormat, void *pvData, uint32_t cbData)
119{
120 RT_NOREF(pBackend, pClient, pCmdCtx, uFormat, pvData, cbData);
121 return VERR_NOT_IMPLEMENTED;
122}
123
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette