Page MenuHomeFreeBSD

D35581.id107306.diff
No OneTemporary

D35581.id107306.diff

Index: sys/ddb/ddb.h
===================================================================
--- sys/ddb/ddb.h
+++ sys/ddb/ddb.h
@@ -110,13 +110,15 @@
* Command table entry.
*/
struct db_command {
- char * name; /* command name */
+ char *name; /* command name */
db_cmdfcn_t *fcn; /* function to call */
- int flag; /* extra info: */
+ int flag;
#define CS_OWN 0x1 /* non-standard syntax */
#define CS_MORE 0x2 /* standard syntax, but may have other words
* at end */
#define CS_SET_DOT 0x100 /* set dot after command */
+#define DB_CMD_MEMSAFE 0x1000 /* Command does not allow reads or writes to
+ * arbitrary memory. */
struct db_command_table *more; /* another level of command */
LIST_ENTRY(db_command) next; /* next entry in the command table */
};
@@ -164,18 +166,28 @@
#define DB_FUNC(_name, _func, list, _flag, _more) \
_DB_FUNC(_cmd, _name, _func, list, _flag, _more)
+#define DB_COMMAND_FLAGS(cmd_name, func_name, flags) \
+ _DB_FUNC(_cmd, cmd_name, func_name, db_cmd_table, flags, NULL)
#define DB_COMMAND(cmd_name, func_name) \
- _DB_FUNC(_cmd, cmd_name, func_name, db_cmd_table, 0, NULL)
+ DB_COMMAND_FLAGS(cmd_name, func_name, 0)
+#define DB_ALIAS_FLAGS(alias_name, func_name, flags) \
+ _DB_SET(_cmd, alias_name, func_name, db_cmd_table, flags, NULL)
#define DB_ALIAS(alias_name, func_name) \
- _DB_SET(_cmd, alias_name, func_name, db_cmd_table, 0, NULL)
+ DB_ALIAS_FLAGS(alias_name, func_name, 0)
+#define DB_SHOW_COMMAND_FLAGS(cmd_name, func_name, flags) \
+ _DB_FUNC(_show, cmd_name, func_name, db_show_table, flags, NULL)
#define DB_SHOW_COMMAND(cmd_name, func_name) \
- _DB_FUNC(_show, cmd_name, func_name, db_show_table, 0, NULL)
+ DB_SHOW_COMMAND_FLAGS(cmd_name, func_name, 0)
+#define DB_SHOW_ALIAS_FLAGS(alias_name, func_name, flags) \
+ _DB_SET(_show, alias_name, func_name, db_show_table, flags, NULL)
#define DB_SHOW_ALIAS(alias_name, func_name) \
- _DB_SET(_show, alias_name, func_name, db_show_table, 0, NULL)
-#define DB_SHOW_ALL_COMMAND(cmd_name, func_name) \
- _DB_FUNC(_show_all, cmd_name, func_name, db_show_all_table, 0, NULL)
-#define DB_SHOW_ALL_ALIAS(alias_name, func_name) \
- _DB_SET(_show_all, alias_name, func_name, db_show_all_table, 0, NULL)
+ DB_SHOW_ALIAS_FLAGS(alias_name, func_name, 0)
+#define DB_SHOW_ALL_COMMAND(cmd_name, func_name) \
+ _DB_FUNC(_show_all, cmd_name, func_name, db_show_all_table, \
+ DB_CMD_MEMSAFE, NULL)
+#define DB_SHOW_ALL_ALIAS(alias_name, func_name) \
+ _DB_SET(_show_all, alias_name, func_name, db_show_all_table, \
+ DB_CMD_MEMSAFE, NULL)
extern db_expr_t db_maxoff;
extern int db_indent;

File Metadata

Mime Type
text/plain
Expires
Thu, May 14, 10:08 PM (1 h, 1 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33063748
Default Alt Text
D35581.id107306.diff (2 KB)

Event Timeline