614 * This function tries to read as much data from the source as possible. |
614 * This function tries to read as much data from the source as possible. |
615 * When the source was completely consumed and at least on k/v-pair was found, |
615 * When the source was completely consumed and at least on k/v-pair was found, |
616 * the return value will be #CX_PROPERTIES_NO_ERROR. |
616 * the return value will be #CX_PROPERTIES_NO_ERROR. |
617 * When the source was consumed but no k/v-pairs were found, the return value |
617 * When the source was consumed but no k/v-pairs were found, the return value |
618 * will be #CX_PROPERTIES_NO_DATA. |
618 * will be #CX_PROPERTIES_NO_DATA. |
|
619 * In case the source data ends unexpectedly, the #CX_PROPERTIES_INCOMPLETE_DATA |
|
620 * is returned. In that case you should call this function again with the same |
|
621 * sink and either an updated source or the same source if the source is able to |
|
622 * yield the missing data. |
|
623 * |
619 * The other result codes apply, according to their description. |
624 * The other result codes apply, according to their description. |
620 * |
625 * |
621 * @param prop the properties interface |
626 * @param prop the properties interface |
622 * @param sink the sink |
627 * @param sink the sink |
623 * @param source the source |
628 * @param source the source |
624 * @retval CX_PROPERTIES_NO_ERROR (zero) a key/value pair was found |
629 * @retval CX_PROPERTIES_NO_ERROR (zero) a key/value pair was found |
625 * @retval CX_PROPERTIES_READ_INIT_FAILED initializing the source failed |
630 * @retval CX_PROPERTIES_READ_INIT_FAILED initializing the source failed |
626 * @retval CX_PROPERTIES_READ_FAILED reading from the source failed |
631 * @retval CX_PROPERTIES_READ_FAILED reading from the source failed |
627 * @retval CX_PROPERTIES_SINK_FAILED sinking the properties into the sink failed |
632 * @retval CX_PROPERTIES_SINK_FAILED sinking the properties into the sink failed |
628 * @retval CX_PROPERTIES_NO_DATA the source did not provide any key/value pairs |
633 * @retval CX_PROPERTIES_NO_DATA the source did not provide any key/value pairs |
|
634 * @retval CX_PROPERTIES_INCOMPLETE_DATA the source did not provide enough data |
629 * @retval CX_PROPERTIES_INVALID_EMPTY_KEY the properties data contains an illegal empty key |
635 * @retval CX_PROPERTIES_INVALID_EMPTY_KEY the properties data contains an illegal empty key |
630 * @retval CX_PROPERTIES_INVALID_MISSING_DELIMITER the properties data contains a line without delimiter |
636 * @retval CX_PROPERTIES_INVALID_MISSING_DELIMITER the properties data contains a line without delimiter |
631 * @retval CX_PROPERTIES_BUFFER_ALLOC_FAILED an internal allocation was necessary but failed |
637 * @retval CX_PROPERTIES_BUFFER_ALLOC_FAILED an internal allocation was necessary but failed |
632 */ |
638 */ |
633 cx_attr_nonnull |
639 cx_attr_nonnull |