mappings.h revision 0b2fe03525bf326aeae736bb44c572debe8ba180
fa9e4066f08beec538e775443c5be79dd423fcabahrens/** @file
fa9e4066f08beec538e775443c5be79dd423fcabahrens *
fa9e4066f08beec538e775443c5be79dd423fcabahrens * Shared folders:
fa9e4066f08beec538e775443c5be79dd423fcabahrens * Mappings header.
ea8dc4b6d2251b437950c0056bc626b311c73c27eschrock */
ea8dc4b6d2251b437950c0056bc626b311c73c27eschrock
fa9e4066f08beec538e775443c5be79dd423fcabahrens/*
fa9e4066f08beec538e775443c5be79dd423fcabahrens * Copyright (C) 2006-2007 innotek GmbH
fa9e4066f08beec538e775443c5be79dd423fcabahrens *
fa9e4066f08beec538e775443c5be79dd423fcabahrens * This file is part of VirtualBox Open Source Edition (OSE), as
fa9e4066f08beec538e775443c5be79dd423fcabahrens * available from http://www.virtualbox.org. This file is free software;
fa9e4066f08beec538e775443c5be79dd423fcabahrens * you can redistribute it and/or modify it under the terms of the GNU
fa9e4066f08beec538e775443c5be79dd423fcabahrens * General Public License as published by the Free Software Foundation,
fa9e4066f08beec538e775443c5be79dd423fcabahrens * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
fa9e4066f08beec538e775443c5be79dd423fcabahrens * distribution. VirtualBox OSE is distributed in the hope that it will
fa9e4066f08beec538e775443c5be79dd423fcabahrens * be useful, but WITHOUT ANY WARRANTY of any kind.
fa9e4066f08beec538e775443c5be79dd423fcabahrens *
fa9e4066f08beec538e775443c5be79dd423fcabahrens * If you received this file as part of a commercial VirtualBox
fa9e4066f08beec538e775443c5be79dd423fcabahrens * distribution, then only the terms of your commercial VirtualBox
fa9e4066f08beec538e775443c5be79dd423fcabahrens * license agreement apply instead of the previous paragraph.
fa9e4066f08beec538e775443c5be79dd423fcabahrens */
ea8dc4b6d2251b437950c0056bc626b311c73c27eschrock
fa9e4066f08beec538e775443c5be79dd423fcabahrens#ifndef __MAPPINGS__H
fa9e4066f08beec538e775443c5be79dd423fcabahrens#define __MAPPINGS__H
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrens#include "shfl.h"
fa9e4066f08beec538e775443c5be79dd423fcabahrens#include <VBox/shflsvc.h>
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrenstypedef struct
fa9e4066f08beec538e775443c5be79dd423fcabahrens{
fa9e4066f08beec538e775443c5be79dd423fcabahrens PSHFLSTRING pFolderName;
fa9e4066f08beec538e775443c5be79dd423fcabahrens PSHFLSTRING pMapName;
fa9e4066f08beec538e775443c5be79dd423fcabahrens uint32_t cMappings;
fa9e4066f08beec538e775443c5be79dd423fcabahrens bool fValid;
fa9e4066f08beec538e775443c5be79dd423fcabahrens bool fHostCaseSensitive;
fa9e4066f08beec538e775443c5be79dd423fcabahrens bool fGuestCaseSensitive;
fa9e4066f08beec538e775443c5be79dd423fcabahrens} MAPPING, *PMAPPING;
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrensextern MAPPING FolderMapping[SHFL_MAX_MAPPINGS];
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrensbool vbsfMappingQuery(uint32_t iMapping, PMAPPING *pMapping);
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrensint vbsfMappingsAdd (PSHFLSTRING pFolderName, PSHFLSTRING pMapName);
fa9e4066f08beec538e775443c5be79dd423fcabahrensint vbsfMappingsRemove (PSHFLSTRING pMapName);
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrensint vbsfMappingsQuery (SHFLCLIENTDATA *pClient, SHFLMAPPING *pMappings, uint32_t *pcMappings);
fa9e4066f08beec538e775443c5be79dd423fcabahrensint vbsfMappingsQueryName (SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLSTRING *pString);
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrensint vbsfMapFolder (SHFLCLIENTDATA *pClient, PSHFLSTRING pszMapName, RTUCS2 delimiter, bool fCaseSensitive, SHFLROOT *pRoot);
fa9e4066f08beec538e775443c5be79dd423fcabahrensint vbsfUnmapFolder (SHFLCLIENTDATA *pClient, SHFLROOT root);
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrensconst RTUCS2 *vbsfMappingsQueryHostRoot (SHFLROOT root, uint32_t *pcbRoot);
fa9e4066f08beec538e775443c5be79dd423fcabahrensbool vbsfIsGuestMappingCaseSensitive (SHFLROOT root);
fa9e4066f08beec538e775443c5be79dd423fcabahrensbool vbsfIsHostMappingCaseSensitive (SHFLROOT root);
fa9e4066f08beec538e775443c5be79dd423fcabahrens
fa9e4066f08beec538e775443c5be79dd423fcabahrens#endif /* __MAPPINGS__H */
fa9e4066f08beec538e775443c5be79dd423fcabahrens