VirtualBox

Changeset 39877 in vbox for trunk/include/iprt


Ignore:
Timestamp:
Jan 25, 2012 4:26:55 PM (13 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
75918
Message:

IPRT: Implemented RTStrConvertHexBytes; Added RTManifestEntryQueryAttr and RTManifestQueryAttr.

Location:
trunk/include/iprt
Files:
3 edited

Legend:

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

    r39803 r39877  
    866866/** An unexpected (/unknown) exception was caught. */
    867867#define VERR_UNEXPECTED_EXCEPTION           (-22400)
     868/** Buffer underflow. */
     869#define VERR_BUFFER_UNDERFLOW               (-22401)
     870/** Buffer underflow. */
     871#define VINF_BUFFER_UNDERFLOW               22401
     872/** Uneven input.  */
     873#define VERR_UNEVEN_INPUT                   (-22402)
    868874/** @} */
    869875
     
    15591565/** The file list doesn't match to the content of the manifest file. */
    15601566#define VERR_MANIFEST_FILE_MISMATCH             (-903)
     1567/** The specified attribute (name) was not found in the manifest.  */
     1568#define VERR_MANIFEST_ATTR_NOT_FOUND            (-904)
     1569/** The attribute type did not match. */
     1570#define VERR_MANIFEST_ATTR_TYPE_MISMATCH        (-905)
     1571/** No attribute of the specified types was found. */
     1572#define VERR_MANIFEST_ATTR_TYPE_NOT_FOUND        (-906)
    15611573/** @} */
    15621574
  • trunk/include/iprt/mangling.h

    r39732 r39877  
    715715# define RTManifestEntryExists                          RT_MANGLER(RTManifestEntryExists)
    716716# define RTManifestEntryRemove                          RT_MANGLER(RTManifestEntryRemove)
     717# define RTManifestEntryQueryAttr                       RT_MANGLER(RTManifestEntryQueryAttr)
    717718# define RTManifestEntrySetAttr                         RT_MANGLER(RTManifestEntrySetAttr)
    718719# define RTManifestEntryUnsetAttr                       RT_MANGLER(RTManifestEntryUnsetAttr)
     
    720721# define RTManifestEqualsEx                             RT_MANGLER(RTManifestEqualsEx)
    721722# define RTManifestPtIosAddEntryNow                     RT_MANGLER(RTManifestPtIosAddEntryNow)
     723# define RTManifestQueryAttr                            RT_MANGLER(RTManifestQueryAttr)
    722724# define RTManifestReadStandard                         RT_MANGLER(RTManifestReadStandard)
    723725# define RTManifestReadStandardEx                       RT_MANGLER(RTManifestReadStandardEx)
  • trunk/include/iprt/manifest.h

    r36555 r39877  
    5454/** The end of the valid values. */
    5555#define RTMANIFEST_ATTR_END         RT_BIT_32(5)
     56/** Wildcard for use in queries. */
     57#define RTMANIFEST_ATTR_ANY         UINT32_C(0xffffffff)
    5658/** @} */
    5759
     
    162164
    163165/**
     166 * Query a manifest entry attribute.
     167 *
     168 * @returns IPRT status code.
     169 * @retval  VERR_BUFFER_OVERFLOW if the value buffer is too small. The @a
     170 *          pszValue buffer will not be modified.
     171 * @retval  VERR_MANIFEST_ATTR_NOT_FOUND
     172 * @retval  VERR_MANIFEST_ATTR_TYPE_NOT_FOUND
     173 * @retval  VERR_MANIFEST_ATTR_TYPE_MISMATCH
     174 *
     175 * @param   hManifest           The manifest handle.
     176 * @param   pszEntry            The entry name.
     177 * @param   pszAttr             The attribute name.  If NULL, it will be
     178 *                              selected by @a fType alone.
     179 * @param   fType               The attribute types the entry should match. Pass
     180 *                              Pass RTMANIFEST_ATTR_ANY match any.  If more
     181 *                              than one is given, the first matching one is
     182 *                              returned.
     183 * @param   pszValue            Where to return value.
     184 * @param   cbValue             The size of the buffer @a pszValue points to.
     185 * @param   pfType              Where to return the attribute type value.
     186 */
     187RTDECL(int) RTManifestQueryAttr(RTMANIFEST hManifest, const char *pszAttr, uint32_t fType,
     188                                char *pszValue, size_t cbValue, uint32_t *pfType);
     189
     190/**
    164191 * Sets an attribute of a manifest entry.
    165192 *
     
    192219
    193220/**
     221 * Query a manifest entry attribute.
     222 *
     223 * @returns IPRT status code.
     224 * @retval  VERR_BUFFER_OVERFLOW if the value buffer is too small. The @a
     225 *          pszValue buffer will not be modified.
     226 * @retval  VERR_NOT_FOUND if the entry was not found.
     227 * @retval  VERR_MANIFEST_ATTR_NOT_FOUND
     228 * @retval  VERR_MANIFEST_ATTR_TYPE_NOT_FOUND
     229 * @retval  VERR_MANIFEST_ATTR_TYPE_MISMATCH
     230 *
     231 * @param   hManifest           The manifest handle.
     232 * @param   pszEntry            The entry name.
     233 * @param   pszAttr             The attribute name.  If NULL, it will be
     234 *                              selected by @a fType alone.
     235 * @param   fType               The attribute types the entry should match. Pass
     236 *                              Pass RTMANIFEST_ATTR_ANY match any.  If more
     237 *                              than one is given, the first matching one is
     238 *                              returned.
     239 * @param   pszValue            Where to return value.
     240 * @param   cbValue             The size of the buffer @a pszValue points to.
     241 * @param   pfType              Where to return the attribute type value.
     242 */
     243RTDECL(int) RTManifestEntryQueryAttr(RTMANIFEST hManifest, const char *pszEntry, const char *pszAttr, uint32_t fType,
     244                                     char *pszValue, size_t cbValue, uint32_t *pfType);
     245
     246/**
    194247 * Adds a new entry to a manifest.
    195248 *
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