Lines Matching defs:pClient

44 #define SHFL_RT_LINK(pClient) ((pClient)->fu32Flags & SHFL_CF_SYMLINKS ? RTPATH_F_ON_LINK : RTPATH_F_FOLLOW_LINK)
113 * @param pClient .
117 static int vbsfCorrectCasing(SHFLCLIENTDATA *pClient, char *pszFullPath, char *pszStartComponent)
163 rc = RTDirReadEx(hSearch, pDirEntry, &cbDirEntrySize, RTFSOBJATTRADD_NOTHING, SHFL_RT_LINK(pClient));
216 * @param pClient The client data.
227 static int vbsfCorrectPathCasing(SHFLCLIENTDATA *pClient, char *pszFullPath, size_t cchFullPath,
267 int rc = vbsfQueryExistsEx(pszFullPath, SHFL_RT_LINK(pClient));
283 rc = vbsfQueryExistsEx(pszFullPath, SHFL_RT_LINK(pClient));
324 rc = RTPathQueryInfoEx(pszSrc, &info, RTFSOBJATTRADD_NOTHING, SHFL_RT_LINK(pClient));
326 rc = vbsfQueryExistsEx(pszFullPath, SHFL_RT_LINK(pClient));
338 rc = vbsfCorrectCasing(pClient, pszFullPath, pszSrc);
459 static int vbsfBuildFullPath(SHFLCLIENTDATA *pClient, SHFLROOT root, PSHFLSTRING pPath,
483 if (BIT_FLAG(pClient->fu32Flags, SHFL_CF_UTF8))
491 && VBSF_IS_PATH_SLASH(pClient, *pszSrc))
567 && VBSF_IS_PATH_SLASH(pClient, (char)*pwszSrc))
642 if (VBSF_IS_PATH_SLASH(pClient, ch))
657 rc = vbsfCorrectPathCasing(pClient, pszFullPath, cchFullPath, fWildCard, fPreserveLastComponent);
915 * @param pClient Data structure describing the client accessing the shared folder
926 static int vbsfOpenFile(SHFLCLIENTDATA *pClient, const char *pszPath, SHFLCREATEPARMS *pParms)
942 handle = vbsfAllocFileHandle(pClient);
945 pHandle = vbsfQueryFileHandle(pClient, handle);
974 if (RT_SUCCESS(RTPathQueryInfoEx(pszPath, &info, RTFSOBJATTRADD_NOTHING, SHFL_RT_LINK(pClient))))
1069 vbsfFreeFileHandle(pClient, handle);
1099 static int vbsfOpenDir(SHFLCLIENTDATA *pClient, const char *pszPath,
1106 SHFLHANDLE handle = vbsfAllocDirHandle(pClient);
1107 SHFLFILEHANDLE *pHandle = vbsfQueryDirHandle(pClient, handle);
1185 vbsfFreeFileHandle(pClient, handle);
1243 static int vbsfLookupFile(SHFLCLIENTDATA *pClient, char *pszPath, SHFLCREATEPARMS *pParms)
1248 rc = RTPathQueryInfoEx(pszPath, &info, RTFSOBJATTRADD_NOTHING, SHFL_RT_LINK(pClient));
1301 * @param pClient Data structure describing the client accessing the shared
1319 int vbsfCreate(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLSTRING *pPath, uint32_t cbPath, SHFLCREATEPARMS *pParms)
1323 LogFlow(("vbsfCreate: pClient = %p, pPath = %p, cbPath = %d, pParms = %p CreateFlags=%x\n",
1324 pClient, pPath, cbPath, pParms, pParms->CreateFlags));
1336 rc = vbsfBuildFullPath(pClient, root, pPath, cbPath, &pszFullPath, &cbFullPathRoot);
1347 rc = vbsfLookupFile(pClient, pszFullPath, pParms);
1354 rc = RTPathQueryInfoEx(pszFullPath, &info, RTFSOBJATTRADD_NOTHING, SHFL_RT_LINK(pClient));
1400 rc = vbsfMappingsQueryWritable(pClient, root, &fWritable);
1409 rc = vbsfOpenDir(pClient, pszFullPath, pParms);
1413 rc = vbsfOpenFile(pClient, pszFullPath, pParms);
1441 int vbsfClose(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle)
1445 LogFlow(("vbsfClose: pClient = %p, Handle = %RX64\n",
1446 pClient, Handle));
1448 uint32_t type = vbsfQueryHandleType(pClient, Handle);
1455 rc = vbsfCloseDir(vbsfQueryDirHandle(pClient, Handle));
1460 rc = vbsfCloseFile(vbsfQueryFileHandle(pClient, Handle));
1466 vbsfFreeFileHandle(pClient, Handle);
1485 int vbsfRead (SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint64_t offset, uint32_t *pcbBuffer, uint8_t *pBuffer)
1487 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
1528 int vbsfWrite(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint64_t offset, uint32_t *pcbBuffer, uint8_t *pBuffer)
1530 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
1545 rc = vbsfMappingsQueryWritable(pClient, root, &fWritable);
1578 int vbsfFlush(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle)
1580 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
1607 int vbsfDirList(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, SHFLSTRING *pPath, uint32_t flags,
1610 SHFLFILEHANDLE *pHandle = vbsfQueryDirHandle(pClient, Handle);
1619 fUtf8 = BIT_FLAG(pClient->fu32Flags, SHFL_CF_UTF8) != 0;
1655 rc = vbsfBuildFullPath(pClient, root, pPath, pPath->u16Size, &pszFullPath, NULL, true);
1688 rc = RTDirReadEx(DirHandle, pDirEntry, &cbDirEntrySize, RTFSOBJATTRADD_NOTHING, SHFL_RT_LINK(pClient));
1821 int vbsfReadLink(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLSTRING *pPath, uint32_t cbPath, uint8_t *pBuffer, uint32_t cbBuffer)
1838 rc = vbsfBuildFullPath(pClient, root, pPath, cbPath, &pszFullPath, &cbFullPathRoot);
1851 int vbsfQueryFileInfo(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint32_t flags, uint32_t *pcbBuffer, uint8_t *pBuffer)
1853 uint32_t type = vbsfQueryHandleType(pClient, Handle);
1875 SHFLFILEHANDLE *pHandle = vbsfQueryDirHandle(pClient, Handle);
1880 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
1898 static int vbsfSetFileInfo(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint32_t flags, uint32_t *pcbBuffer, uint8_t *pBuffer)
1900 uint32_t type = vbsfQueryHandleType(pClient, Handle);
1921 SHFLFILEHANDLE *pHandle = vbsfQueryDirHandle(pClient, Handle);
1931 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
1952 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
1980 rc = vbsfQueryFileInfo(pClient, root, Handle, SHFL_INFO_GET|SHFL_INFO_FILE, &bufsize, (uint8_t *)pSFDEntry);
1993 static int vbsfSetEndOfFile(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint32_t flags, uint32_t *pcbBuffer, uint8_t *pBuffer)
1995 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
2038 int vbsfQueryVolumeInfo(SHFLCLIENTDATA *pClient, SHFLROOT root, uint32_t flags, uint32_t *pcbBuffer, uint8_t *pBuffer)
2059 rc = vbsfBuildFullPath(pClient, root, &dummy, 0, &pszFullPath, NULL);
2088 int vbsfQueryFSInfo(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint32_t flags, uint32_t *pcbBuffer, uint8_t *pBuffer)
2097 return vbsfQueryFileInfo(pClient, root, Handle, flags, pcbBuffer, pBuffer);
2100 return vbsfQueryVolumeInfo(pClient, root, flags, pcbBuffer, pBuffer);
2124 int vbsfSetFSInfo(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint32_t flags, uint32_t *pcbBuffer, uint8_t *pBuffer)
2126 uint32_t type = vbsfQueryHandleType(pClient, Handle)
2137 int rc = vbsfMappingsQueryWritable(pClient, root, &fWritable);
2142 return vbsfSetFileInfo(pClient, root, Handle, flags, pcbBuffer, pBuffer);
2145 return vbsfSetEndOfFile(pClient, root, Handle, flags, pcbBuffer, pBuffer);
2148 // return vbsfVolumeInfo(pClient, root, Handle, flags, pcbBuffer, pBuffer);
2165 int vbsfLock(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint64_t offset, uint64_t length, uint32_t flags)
2167 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
2219 int vbsfUnlock(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLHANDLE Handle, uint64_t offset, uint64_t length, uint32_t flags)
2221 SHFLFILEHANDLE *pHandle = vbsfQueryFileHandle(pClient, Handle);
2260 int vbsfRemove(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLSTRING *pPath, uint32_t cbPath, uint32_t flags)
2278 rc = vbsfBuildFullPath(pClient, root, pPath, cbPath, &pszFullPath, NULL);
2283 rc = vbsfMappingsQueryWritable(pClient, root, &fWritable);
2318 int vbsfRename(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLSTRING *pSrc, SHFLSTRING *pDest, uint32_t flags)
2337 rc = vbsfBuildFullPath(pClient, root, pSrc, pSrc->u16Size, &pszFullPathSrc, NULL);
2341 rc = vbsfBuildFullPath(pClient, root, pDest, pDest->u16Size, &pszFullPathDest, NULL, false, true);
2348 rc = vbsfMappingsQueryWritable(pClient, root, &fWritable);
2388 int vbsfSymlink(SHFLCLIENTDATA *pClient, SHFLROOT root, SHFLSTRING *pNewPath, SHFLSTRING *pOldPath, SHFLFSOBJINFO *pInfo)
2396 if (!BIT_FLAG(pClient->fu32Flags, SHFL_CF_UTF8))
2400 rc = vbsfMappingsQuerySymlinksCreate(pClient, root, &fSymlinksCreate);
2405 rc = vbsfBuildFullPath(pClient, root, pNewPath, pNewPath->u16Size, &pszFullNewPath, NULL);
2413 rc = RTPathQueryInfoEx(pszFullNewPath, &info, RTFSOBJATTRADD_NOTHING, SHFL_RT_LINK(pClient));
2427 int vbsfDisconnect(SHFLCLIENTDATA *pClient)
2432 if (vbsfQueryHandleType(pClient, Handle))
2435 vbsfClose(pClient, SHFL_HANDLE_ROOT /* incorrect, but it's not important */, (SHFLHANDLE)i);