collection.h   collection.h 
skipping to change at line 500 skipping to change at line 500
* @param[in] property_len Length of the property name * @param[in] property_len Length of the property name
* will be passed in this parameter. * will be passed in this parameter.
* @param[in] type Type of the data will be passed * @param[in] type Type of the data will be passed
* in this parameter. * in this parameter.
* @param[in] data Pointer to the data will be passed * @param[in] data Pointer to the data will be passed
* in this parameter. * in this parameter.
* @param[in] length Length of data will be passed in * @param[in] length Length of data will be passed in
* this parameter. * this parameter.
* @param[in] custom_data Custom data will be passed in * @param[in] custom_data Custom data will be passed in
* this parameter. * this parameter.
* @return No return value.
*/ */
typedef void (*col_item_cleanup_fn)(const char *property, typedef void (*col_item_cleanup_fn)(const char *property,
int property_len, int property_len,
int type, int type,
void *data, void *data,
int length, int length,
void *custom_data); void *custom_data);
/** /**
skipping to change at line 1764 skipping to change at line 1763
int col_insert_int_property(struct collection_item *ci, int col_insert_int_property(struct collection_item *ci,
const char *subcollection, const char *subcollection,
int disposition, int disposition,
const char *refprop, const char *refprop,
int idx, int idx,
unsigned flags, unsigned flags,
const char *property, const char *property,
int32_t number); int32_t number);
/** @brief Insert an unsigned property. */ /** @brief Insert an unsigned property. */
int col_insert_unsinged_property(struct collection_item *ci, int col_insert_unsigned_property(struct collection_item *ci,
const char *subcollection, const char *subcollection,
int disposition, int disposition,
const char *refprop, const char *refprop,
int idx, int idx,
unsigned flags, unsigned flags,
const char *property, const char *property,
uint32_t number); uint32_t number);
/** @brief Insert a long property. */ /** @brief Insert a long property. */
int col_insert_long_property(struct collection_item *ci, int col_insert_long_property(struct collection_item *ci,
skipping to change at line 1849 skipping to change at line 1848
const char *subcollection, const char *subcollection,
int disposition, int disposition,
const char *refprop, const char *refprop,
int idx, int idx,
unsigned flags, unsigned flags,
const char *property, const char *property,
int32_t number, int32_t number,
struct collection_item **ret_ref); struct collection_item **ret_ref);
/** @brief Insert an unsigned property and get back a reference. */ /** @brief Insert an unsigned property and get back a reference. */
int col_insert_unsinged_property_with_ref(struct collection_item *ci, int col_insert_unsigned_property_with_ref(struct collection_item *ci,
const char *subcollection, const char *subcollection,
int disposition, int disposition,
const char *refprop, const char *refprop,
int idx, int idx,
unsigned flags, unsigned flags,
const char *property, const char *property,
uint32_t number, uint32_t number,
struct collection_item **ret_ref) ; struct collection_item **ret_ref) ;
/** @brief Insert a long property and get back a reference. */ /** @brief Insert a long property and get back a reference. */
skipping to change at line 3190 skipping to change at line 3189
* to make same amount of comparisons in traditional * to make same amount of comparisons in traditional
* or "pinned" case to not find them. * or "pinned" case to not find them.
* To find "F" in pinned case there will be just one * To find "F" in pinned case there will be just one
* comparison. * comparison.
* - Traditional case = 1 + 3 + 2 + 3 + 3 + 3 = 15 * - Traditional case = 1 + 3 + 2 + 3 + 3 + 3 = 15
* - Pinned case = 1 + 3 + 1 + 3 + 3 + 1 = 12 * - Pinned case = 1 + 3 + 1 + 3 + 3 + 1 = 12
* *
* It is a 20% comparison reduction. * It is a 20% comparison reduction.
* *
* @param[in] iterator Iterator object to use. * @param[in] iterator Iterator object to use.
*
* @return 0 - Success.
* @return EINVAL - The value of the argument is invalid.
*/ */
void col_pin_iterator(struct collection_iterator *iterator); void col_pin_iterator(struct collection_iterator *iterator);
/** /**
* @brief Rewind iterator * @brief Rewind iterator
* *
* Rewinds iterator to the current pin point which is by * Rewinds iterator to the current pin point which is by
* default the beginning of the collection until changed by * default the beginning of the collection until changed by
* \ref col_pin_iterator function. * \ref col_pin_iterator function.
* *
* @param[in] iterator Iterator object to use. * @param[in] iterator Iterator object to use.
*
* @return 0 - Success.
* @return EINVAL - The value of the argument is invalid.
*/ */
void col_rewind_iterator(struct collection_iterator *iterator); void col_rewind_iterator(struct collection_iterator *iterator);
/** /**
* @} * @}
*/ */
/** /**
* @} * @}
*/ */
 End of changes. 5 change blocks. 
9 lines changed or deleted 2 lines changed or added


 ini_configobj.h   ini_configobj.h 
skipping to change at line 176 skipping to change at line 176
ERR_READ, /**< Failed to read line (Error). */ ERR_READ, /**< Failed to read line (Error). */
ERR_SPACE, /**< Line starts with space when it ERR_SPACE, /**< Line starts with space when it
should not (Error). */ should not (Error). */
ERR_DUPKEY, /**< Duplicate key is not allowed (Error). */ ERR_DUPKEY, /**< Duplicate key is not allowed (Error). */
ERR_DUPKEYSEC, /**< Duplicate key is detected while merging ERR_DUPKEYSEC, /**< Duplicate key is detected while merging
sections (Error). */ sections (Error). */
ERR_DUPSECTION, /**< Duplicate section is not allowed (Error). */ ERR_DUPSECTION, /**< Duplicate section is not allowed (Error). */
ERR_SPECIAL, /**< Line contains invalid characters (Error). */ ERR_SPECIAL, /**< Line contains invalid characters (Error). */
ERR_TAB, /**< Line starts with tab when it ERR_TAB, /**< Line starts with tab when it
should not (Error). */ should not (Error). */
ERR_MAXPARSE = ERR_TAB /**< Special value. Size of the error array. */ ERR_BADCOMMENT, /**< End of file while processing comment (Error). */
ERR_MAXPARSE = ERR_BADCOMMENT /**< Special value. Size of the error arr
ay. */
}; };
/** /**
* @} * @}
*/ */
/** /**
* @defgroup metacollect Constants that define what meta data to collect * @defgroup metacollect Constants that define what meta data to collect
* *
* Constants in this section define what meta data to collect * Constants in this section define what meta data to collect
skipping to change at line 332 skipping to change at line 333
*/ */
/** /**
* @defgroup parseflags Flags that define parsing rules * @defgroup parseflags Flags that define parsing rules
* *
* Flags that define how the file should be parsed. * Flags that define how the file should be parsed.
* *
* @{ * @{
*/ */
/** @brief Do not wrap */ /** @brief Suppress multi line value wrapping */
#define INI_PARSE_NOWRAP 0x0001 #define INI_PARSE_NOWRAP 0x0001
/** @brief No spaces are allowed to the left of the key */ /** @brief No spaces are allowed to the left of the key */
#define INI_PARSE_NOSPACE 0x0002 #define INI_PARSE_NOSPACE 0x0002
/** @brief No tabs are allowed to the left of the key */ /** @brief No tabs are allowed to the left of the key */
#define INI_PARSE_NOTAB 0x0004 #define INI_PARSE_NOTAB 0x0004
/** @brief Do not allow C-style comments */
#define INI_PARSE_NO_C_COMMENTS 0x0008
/** /**
* @} * @}
*/ */
/** /**
* @defgroup searchmode Constants that define how to look for a value * @defgroup searchmode Constants that define how to look for a value
* *
* Configuration file can allow several keys with the same name * Configuration file can allow several keys with the same name
* in one section. Use the constants below to define which * in one section. Use the constants below to define which
skipping to change at line 478 skipping to change at line 481
* *
* @return 0 - Success. * @return 0 - Success.
* @return EINVAL - Invalid parameter. * @return EINVAL - Invalid parameter.
* @return ENOMEM - No memory. * @return ENOMEM - No memory.
*/ */
int ini_config_file_open(const char *filename, int ini_config_file_open(const char *filename,
uint32_t metadata_flags, uint32_t metadata_flags,
struct ini_cfgfile **file_ctx); struct ini_cfgfile **file_ctx);
/** /**
* @brief Create a configuration file object using memory buffer.
*
* Create a file object for parsing a configuration file.
* Configuration will use provided memory instead of the actual file.
*
* A "configuration file object" is different from
* a "configuration object". The former stores metadata
* about a file the configuration data is read from,
* while the latter holds the configuration itself.
*
* @param[in] data_buf In memory configuration data.
* Needs to be NULL terminated.
* @param[in] data_len Length of memory data
* not including terminating NULL.
* @param[out] file_ctx Configuration file object.
*
* @return 0 - Success.
* @return EINVAL - Invalid parameter.
* @return ENOMEM - No memory.
*/
int ini_config_file_from_mem(void *data_buf,
uint32_t data_len,
struct ini_cfgfile **file_ctx);
/**
* @brief Close configuration file after parsing * @brief Close configuration file after parsing
* *
* Closes file but keeps the context. File can be reopened * Closes file but keeps the context. File can be reopened
* and reread using \ref ini_config_file_reopen function. * and reread using \ref ini_config_file_reopen function.
* *
* @param[in] file_ctx Configuration file object. * @param[in] file_ctx Configuration file object.
* *
*/ */
void ini_config_file_close(struct ini_cfgfile *file_ctx); void ini_config_file_close(struct ini_cfgfile *file_ctx);
skipping to change at line 685 skipping to change at line 713
* Function parses the file. It is assumed that * Function parses the file. It is assumed that
* the configuration object was just created. * the configuration object was just created.
* Using a non empty configuration object in * Using a non empty configuration object in
* a parsing operation would fail with EINVAL. * a parsing operation would fail with EINVAL.
* *
* @param[in] file_ctx Configuration file object. * @param[in] file_ctx Configuration file object.
* @param[in] error_level Flags that control actions * @param[in] error_level Flags that control actions
* in case of parsing error. * in case of parsing error.
* @param[in] collision_flags Flags that control handling * @param[in] collision_flags Flags that control handling
* of the duplicate sections or keys. * of the duplicate sections or keys.
* @param[in] parse_flags Flags that control parsing process,
* for example how to handle spaces at
* the beginning of the line.
* @param[out] ini_config Configuration object. * @param[out] ini_config Configuration object.
* *
* @return 0 - Success. * @return 0 - Success.
* @return EINVAL - Invalid parameter. * @return EINVAL - Invalid parameter.
* @return ENOMEM - No memory. * @return ENOMEM - No memory.
*/ */
int ini_config_parse(struct ini_cfgfile *file_ctx, int ini_config_parse(struct ini_cfgfile *file_ctx,
int error_level, int error_level,
uint32_t collision_flags, uint32_t collision_flags,
uint32_t parse_flags, uint32_t parse_flags,
 End of changes. 6 change blocks. 
5 lines changed or deleted 37 lines changed or added


 ref_array.h   ref_array.h 
skipping to change at line 361 skipping to change at line 361
* @return ENOMEM - No memory. * @return ENOMEM - No memory.
* @return EINVAL - Invalid argument. * @return EINVAL - Invalid argument.
*/ */
int ref_array_copy(struct ref_array *ra, int ref_array_copy(struct ref_array *ra,
ref_array_copy_cb copy_cb, ref_array_copy_cb copy_cb,
ref_array_fn cb, ref_array_fn cb,
void *data, void *data,
struct ref_array **copy_ra); struct ref_array **copy_ra);
/** /**
* @brief Print array for debugging purposes.
*
* Prints array internals.
*
* @param[in] ra Existing array object.
* @param[in] num If num is 0 elements will be printed as strings.
* If num is greater than 0 elements will be printed
as
* decimal numbers. Otherwise element will not be
* interpreted in concrete way.
*
* No return value.
*/
void ref_array_debug(struct ref_array *ra, int num);
/**
* @} * @}
*/ */
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 16 lines changed or added


 simplebuffer.h   simplebuffer.h 
skipping to change at line 75 skipping to change at line 75
int simplebuffer_add_cr(struct simplebuffer *data); int simplebuffer_add_cr(struct simplebuffer *data);
/* Function to write data synchroniusly */ /* Function to write data synchroniusly */
int simplebuffer_write(int fd, int simplebuffer_write(int fd,
struct simplebuffer *data, struct simplebuffer *data,
uint32_t *left); uint32_t *left);
/* Get buffer */ /* Get buffer */
const unsigned char *simplebuffer_get_buf(struct simplebuffer *data); const unsigned char *simplebuffer_get_buf(struct simplebuffer *data);
/* Get buffer */
void *simplebuffer_get_vbuf(struct simplebuffer *data);
/* Get length */ /* Get length */
uint32_t simplebuffer_get_len(struct simplebuffer *data); uint32_t simplebuffer_get_len(struct simplebuffer *data);
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 3 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/