VirtualBox

Changeset 34435 in vbox for trunk/include


Ignore:
Timestamp:
Nov 28, 2010 2:58:25 PM (14 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
68208
Message:

ExtPack: Implemented unpacking (untested).

Location:
trunk/include/iprt
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/file.h

    r34230 r34435  
    202202 *          On Windows the FILE_FLAG_NO_BUFFERING is used (see
    203203 *          http://msdn.microsoft.com/en-us/library/cc644950(VS.85).aspx ).
    204  *          The buffer address, the transfer size and offset needs to be
    205  *          aligned to the sector size of the volume. Furthermore FILE_APPEND_DATA
    206  *          is disabled. To write beyond the size of file use RTFileSetSize prior
     204 *          The buffer address, the transfer size and offset needs to be aligned
     205 *          to the sector size of the volume.  Furthermore FILE_APPEND_DATA is
     206 *          disabled. To write beyond the size of file use RTFileSetSize prior
    207207 *          writing the data to the file.
    208208 *
    209  *          This flag does not work on Solaris if the target filesystem is ZFS. RTFileOpen will return an
    210  *          error with that configuration. When used with UFS the same alginment restrictions
    211  *          apply like Linux and Windows.
    212  *
    213  * @remarks This might not be implemented on all platforms,
    214  *          and will be ignored on those.
     209 *          This flag does not work on Solaris if the target filesystem is ZFS.
     210 *          RTFileOpen will return an error with that configuration.  When used
     211 *          with UFS the same alginment restrictions apply like Linux and
     212 *          Windows.
     213 *
     214 * @remarks This might not be implemented on all platforms, and will be ignored
     215 *          on those.
    215216 */
    216217#define RTFILE_O_NO_CACHE               UINT32_C(0x00080000)
  • trunk/include/iprt/manifest.h

    r34418 r34435  
    211211RTDECL(int) RTManifestEntryRemove(RTMANIFEST hManifest, const char *pszEntry);
    212212
     213/**
     214 * Add an entry for an I/O stream using a passthru stream.
     215 *
     216 * The passthru I/O stream will hash all the data read from or written to the
     217 * stream and automatically add an entry to the manifest with the desired
     218 * attributes when it is released.  Alternatively one can call
     219 * RTManifestPtIosAddEntryNow() to have more control over exactly when this
     220 * action is performed and which status it yields.
     221 *
     222 * @returns IPRT status code.
     223 * @param   hManifest           The manifest to add the entry to.
     224 * @param   hVfsIos             The I/O stream to pass thru to/from.
     225 * @param   pszEntry            The entry name.
     226 * @param   fAttrs              The attributes to create for this stream.
     227 * @param   fReadOrWrite        Whether it's a read or write I/O stream.
     228 * @param   phVfsIosPassthru    Where to return the new handle.
     229 */
     230RTDECL(int) RTManifestEntryAddPassthruIoStream(RTMANIFEST hManifest, RTVFSIOSTREAM hVfsIos, const char *pszEntry,
     231                                               uint32_t fAttrs, bool fReadOrWrite, PRTVFSIOSTREAM phVfsIosPassthru);
     232
     233/**
     234 * Adds the entry to the manifest right now.
     235 *
     236 * @returns IPRT status code.
     237 * @param   hVfsPtIos           The manifest passthru I/O stream returned by
     238 *                              RTManifestEntryAddPassthruIoStream().
     239 */
     240RTDECL(int) RTManifestPtIosAddEntryNow(RTVFSIOSTREAM hVfsPtIos);
    213241
    214242/**
  • trunk/include/iprt/vfs.h

    r34391 r34435  
    711711
    712712
    713 /** @defgroup grp_vfs_file          VFS Miscellaneous
     713/** @defgroup grp_vfs_misc          VFS Miscellaneous
    714714 * @{
    715715 */
     
    729729RTDECL(int) RTVfsMemorizeIoStreamAsFile(RTVFSIOSTREAM hVfsIos, uint32_t fFlags, PRTVFSFILE phVfsFile);
    730730
     731
     732/**
     733 * Pumps data from one I/O stream to another.
     734 *
     735 * The data is read in chunks from @a hVfsIosSrc and written to @a hVfsIosDst
     736 * until @hVfsIosSrc indicates end of stream.
     737 *
     738 * @returns IPRT status code
     739 *
     740 * @param   hVfsIosSrc  The input stream.
     741 * @param   hVfsIosDst  The output stream.
     742 * @param   cbBufHint   Hints at a good temporary buffer size, pass 0 if
     743 *                      clueless.
     744 */
     745RTDECL(int) RTVfsUtilPumpIoStreams(RTVFSIOSTREAM hVfsIosSrc, RTVFSIOSTREAM hVfsIosDst, size_t cbBufHint);
     746
    731747/** @}  */
    732748
  • trunk/include/iprt/vfslowlevel.h

    r34407 r34435  
    750750RTDECL(int) RTVfsNewIoStream(PCRTVFSIOSTREAMOPS pIoStreamOps, size_t cbInstance, uint32_t fOpen, RTVFS hVfs, RTVFSLOCK hLock,
    751751                             PRTVFSIOSTREAM phVfsIos, void **ppvInstance);
     752
     753
     754/**
     755 * Gets the private data of an I/O stream.
     756 *
     757 * @returns Pointer to the private data.  NULL if the handle is invalid in some
     758 *          way.
     759 * @param   hVfsIos             The I/O stream handle.
     760 * @param   pIoStreamOps        The I/O stream operations.  This servers as a
     761 *                              sort of password.
     762 */
     763RTDECL(void *) RTVfsIoStreamToPrivate(RTVFSIOSTREAM hVfsIos, PCRTVFSIOSTREAMOPS pIoStreamOps);
    752764
    753765
     
    926938RTDECL(int) RTVfsUtilDummyPollOne(uint32_t fEvents, RTMSINTERVAL cMillies, bool fIntr, uint32_t *pfRetEvents);
    927939
    928 /**
    929  * Pumps data from one I/O stream to another.
    930  *
    931  * The data is read in chunks from @a hVfsIosSrc and written to @a hVfsIosDst
    932  * until @hVfsIosSrc indicates end of stream.
    933  *
    934  * @returns IPRT status code
    935  *
    936  * @param   hVfsIosSrc  The input stream.
    937  * @param   hVfsIosDst  The output stream.
    938  * @param   cbBufHint   Hints at a good temporary buffer size, pass 0 if
    939  *                      clueless.
    940  */
    941 RTDECL(int) RTVfsUtilPumpIoStreams(RTVFSIOSTREAM hVfsIosSrc, RTVFSIOSTREAM hVfsIosDst, size_t cbBufHint);
    942 
    943940/** @}  */
    944941
Note: See TracChangeset for help on using the changeset viewer.

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