Veritas NetBackup™ DataStore SDK Programmer's Guide for XBSA 1.1.0
- Introduction to NetBackup XBSA
- How to set up the SDK
- Using the NetBackup XBSA interface
- NetBackup XBSA data structures
- NetBackup XBSA environment
- XBSA sessions and transactions
- Creating a NetBackup XBSA application
- How to build an XBSA application
- How to run a NetBackup XBSA application
- API reference
- Function calls
- Function specifications
- Type definitions
- Process flow and troubleshooting
- How to use the sample files
- Support and updates
- Appendix A. Register authorized locations
Buffer size
When API calls specify the size of the buffer as a separate parameter, the interface uses the following convention to signal that a buffer is not large enough and provides the XBSA application with a way to determine the correct size.
The parameter that specifies the size is a pointer, so that the NetBackup XBSA interface can alter the parameter. The size is always in bytes. If the size is adequate and a valid buffer is given, the NetBackup XBSA interface copies the requested data into the buffer and sets the actual size in the size parameter.
If the size is inadequate, the NetBackup XBSA interface does not copy the data into the buffer. It sets the size parameter to the actual size of the data to be copied and returns from the function call with BSA_RC_BUFFER_TOO_SMALL. This allows the XBSA application to allocate a buffer of adequate size and to call the function again.
The functions that use this convention are BSAGetEnvironment(), NBBSAGetEnv() and BSAQueryServiceProvider().