1*03f9172cSAndroid Build Coastguard Worker /* 2*03f9172cSAndroid Build Coastguard Worker * Common hostapd/wpa_supplicant command line interface functionality 3*03f9172cSAndroid Build Coastguard Worker * Copyright (c) 2004-2016, Jouni Malinen <[email protected]> 4*03f9172cSAndroid Build Coastguard Worker * 5*03f9172cSAndroid Build Coastguard Worker * This software may be distributed under the terms of the BSD license. 6*03f9172cSAndroid Build Coastguard Worker * See README for more details. 7*03f9172cSAndroid Build Coastguard Worker */ 8*03f9172cSAndroid Build Coastguard Worker 9*03f9172cSAndroid Build Coastguard Worker #ifndef CLI_H 10*03f9172cSAndroid Build Coastguard Worker #define CLI_H 11*03f9172cSAndroid Build Coastguard Worker 12*03f9172cSAndroid Build Coastguard Worker #include "utils/list.h" 13*03f9172cSAndroid Build Coastguard Worker 14*03f9172cSAndroid Build Coastguard Worker extern const char *const cli_license; 15*03f9172cSAndroid Build Coastguard Worker extern const char *const cli_full_license; 16*03f9172cSAndroid Build Coastguard Worker 17*03f9172cSAndroid Build Coastguard Worker struct cli_txt_entry { 18*03f9172cSAndroid Build Coastguard Worker struct dl_list list; 19*03f9172cSAndroid Build Coastguard Worker char *txt; 20*03f9172cSAndroid Build Coastguard Worker }; 21*03f9172cSAndroid Build Coastguard Worker 22*03f9172cSAndroid Build Coastguard Worker void cli_txt_list_free(struct cli_txt_entry *e); 23*03f9172cSAndroid Build Coastguard Worker void cli_txt_list_flush(struct dl_list *list); 24*03f9172cSAndroid Build Coastguard Worker 25*03f9172cSAndroid Build Coastguard Worker struct cli_txt_entry * 26*03f9172cSAndroid Build Coastguard Worker cli_txt_list_get(struct dl_list *txt_list, const char *txt); 27*03f9172cSAndroid Build Coastguard Worker 28*03f9172cSAndroid Build Coastguard Worker void cli_txt_list_del(struct dl_list *txt_list, const char *txt); 29*03f9172cSAndroid Build Coastguard Worker void cli_txt_list_del_addr(struct dl_list *txt_list, const char *txt); 30*03f9172cSAndroid Build Coastguard Worker void cli_txt_list_del_word(struct dl_list *txt_list, const char *txt, 31*03f9172cSAndroid Build Coastguard Worker int separator); 32*03f9172cSAndroid Build Coastguard Worker 33*03f9172cSAndroid Build Coastguard Worker int cli_txt_list_add(struct dl_list *txt_list, const char *txt); 34*03f9172cSAndroid Build Coastguard Worker int cli_txt_list_add_addr(struct dl_list *txt_list, const char *txt); 35*03f9172cSAndroid Build Coastguard Worker int cli_txt_list_add_word(struct dl_list *txt_list, const char *txt, 36*03f9172cSAndroid Build Coastguard Worker int separator); 37*03f9172cSAndroid Build Coastguard Worker 38*03f9172cSAndroid Build Coastguard Worker char ** cli_txt_list_array(struct dl_list *txt_list); 39*03f9172cSAndroid Build Coastguard Worker 40*03f9172cSAndroid Build Coastguard Worker int get_cmd_arg_num(const char *str, int pos); 41*03f9172cSAndroid Build Coastguard Worker int write_cmd(char *buf, size_t buflen, const char *cmd, int argc, 42*03f9172cSAndroid Build Coastguard Worker char *argv[]); 43*03f9172cSAndroid Build Coastguard Worker 44*03f9172cSAndroid Build Coastguard Worker #define max_args 10 45*03f9172cSAndroid Build Coastguard Worker int tokenize_cmd(char *cmd, char *argv[]); 46*03f9172cSAndroid Build Coastguard Worker 47*03f9172cSAndroid Build Coastguard Worker #endif /* CLI_H */ 48