cli: add nmc_string_to_arg_array() to split a string to arguments array
This commit is contained in:

committed by
Dan Williams

parent
7c629bf0f4
commit
b0bee192e8
@@ -196,6 +196,25 @@ nmc_get_user_input (const char *ask_str)
|
||||
return line;
|
||||
}
|
||||
|
||||
/*
|
||||
* Split string in 'line' according to 'delim' to (argument) array.
|
||||
*/
|
||||
int
|
||||
nmc_string_to_arg_array (const char *line, const char *delim, char ***argv, int *argc)
|
||||
{
|
||||
int i = 0;
|
||||
char **arr;
|
||||
|
||||
arr = g_strsplit_set (line ? line : "", delim ? delim : " \t", 0);
|
||||
while (arr && arr[i])
|
||||
i++;
|
||||
|
||||
*argc = i;
|
||||
*argv = arr;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Find out how many columns an UTF-8 string occupies on the screen
|
||||
*/
|
||||
|
@@ -33,6 +33,7 @@ char *nmc_ip6_address_as_string (const struct in6_addr *ip, GError **error);
|
||||
void nmc_terminal_erase_line (void);
|
||||
void nmc_terminal_show_progress (const char *str);
|
||||
char *nmc_get_user_input (const char *ask_str);
|
||||
int nmc_string_to_arg_array (const char *line, const char *delim, char ***argv, int *argc);
|
||||
int nmc_string_screen_width (const char *start, const char *end);
|
||||
void set_val_str (NmcOutputField fields_array[], guint32 index, char *value);
|
||||
void set_val_arr (NmcOutputField fields_array[], guint32 index, char **value);
|
||||
|
Reference in New Issue
Block a user