

#ifndef _UTILITY_H_
#define _UTILITY_H_

int get_string_by_name( char*p, const char* name, char* string, int max_len, char **next );
int get_string_by_token( char*p, int num, char* string, int max_len, char **next );
int get_quote_string_by_name( char*p, const char* name, char* string, int max_len, char **next );
int get_int_val_by_name( char*p, const char* name, int* val, char** next );

struct channel_list_t* _create_channel_list( int num );
void _release_channel_list( struct channel_list_t *cl );
struct channel_list_t* _joint_channel_list( struct channel_list_t* cl1, struct channel_list_t* cl2 );

#endif
