函数逻辑报告 |
Source Code:kernel\debug\kdb\kdb_main.c |
Create Date:2022-07-27 12:45:27 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:kdb_parse
函数原型:int kdb_parse(const char *cmdstr)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
const char * | cmdstr |
919 | ignore_errors等于0, check_grep等于0 |
926 | 如果KDB_FLAG(CMD_INTERRUPT)则 |
935 | argc等于0 |
940 | cp自加 |
941 | 如果cp恒等于'\0'或cp恒等于'\n'或cp恒等于'#'且非defcmd_in_progress则退出 |
945 | 如果cp恒等于'|'则 |
946 | check_grep自加 |
947 | 退出 |
949 | 如果cpp大于等于cbuf加kdb_printf: max printline* size == 256 则 |
950 | kdb_printf("kdb_parse: command buffer overflow, command ignored\n%s\n", cmdstr) |
956 | kdb_printf("kdb_parse: too many arguments, command ignored\n%s\n", cmdstr) |
961 | escaped等于0 |
962 | quoted等于'\0' |
967 | 如果cpp大于等于cbuf加kdb_printf: max printline* size == 256 则退出 |
969 | 如果escaped则 |
974 | 如果cp恒等于'\\'则 |
986 | cpp先自加 |
988 | cpp自加等于'\0' |
991 | 如果非argc则返回:0 |
995 | 如果defcmd_in_progress则 |
1035 | 如果i恒等于kdb_max_commands则 |
1037 | 如果Command name 则 |
1047 | 如果i小于kdb_max_commands则 |
1050 | 如果非Check whether the flags of the current command and the permissions* of the kdb console has allow a command to be run.则返回:KDB_NOPERM |
1053 | KDB_STATE_SET(CMD) |
1054 | result = ( * Function to execute command )(argc - 1, argv) |
1055 | 如果result且ignore_errors且result大于Kernel Debugger Command codes. Must not overlap with error codes. 则result等于0 |
1057 | KDB_STATE_CLEAR(CMD) |
1059 | 如果Command behaviour flags 按位与 Repeat the command with args 则返回:result |
1062 | argc等于如果Command behaviour flags 按位与 Repeat the command w/o arguments 则1否则0 |
1065 | 返回:result |
1077 | char * name = NULL |
1079 | nextarg等于0 |
1086 | kdb_printf("%s = ", argv[0]) |
1088 | kdb_printf("\n") |
1089 | 返回:0 |
名称 | 描述 |
---|---|
kdb_exec_defcmd | Forward references |
kdb_local | kdb_local - The main code for kdb |
kdb_cmd_init | Execute any commands defined in kdb_cmds. |
kdb_bt | |
gdb_cmd_query | Handle the 'q' query packets |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |