3.1.4.2.167 ApiClusterNativeUpdateControl (Opnum 185)

The ApiClusterNativeUpdateControl method<155> is reserved for future use.

    error_status_t ApiClusterNativeUpdateControl(
        [in] handle_t  IDL_handle,
        [in] __RPC__in_ecount_full_opt(inBufferSize) UCHAR* inBuffer,
        [in] __RPC__in DWORD inBufferSize,
        [out] __RPC__out_ecount_part(outBufferSize, *lpBytesReturned) UCHAR* outBuffer,
        [in] __RPC__in DWORD outBufferSize,
        [out] __RPC__out LPDWORD lpBytesReturned,
        [out] __RPC__out LPDWORD lpBytesNeeded,
        [out] __RPC__out error_status_t *rpc_status
    )

IDL_handle:  An RPC context handle that is obtained in a previous ApiOpenCluster or ApiOpenClusterEx call.

inBuffer: The input data for the operation.

inBufferSize: The size, in bytes, of the buffer that is specified by inBuffer.

outBuffer: The output data for the operation that is specified in the input data. The output buffer MUST be allocated and provided by the client.

outBufferSize: The available size of the buffer that is specified by outBuffer, as allocated by the client.

lpBytesReturned: On successful completion of the method, the server MUST set lpBytesReturned to the number of bytes that are written to the outBuffer buffer.

lpBytesNeeded: If outBufferSize indicates that the buffer that is specified by outBuffer is too small for the output data, the server MUST return 0x000000EA (ERROR_MORE_DATA) and set lpBytesNeeded to the number of bytes that are required for the output buffer. If the method completes successfully and lpBytesReturned is 0x00000000, then the server MUST set lpBytesNeeded to 0x00000000. In any other condition, the client MUST ignore lpBytesRequired after this method completes.

rpc_status: A 32-bit integer used to indicate success or failure. The RPC runtime MUST indicate, by writing to this parameter, whether the runtime succeeded in executing this method on the server. A value of 0x00000000 indicates that the method call was successfully transported to the server, executed with no faults and returned control to the client without encountering any communication faults. This value is separate from the value returned by the method and does not represent the success of the method. The client MUST treat all nonzero values the same, except as specified in section 3.2.4.6.

Return values: The method MUST return ERROR_NOT_SUPPORTED.