Command Section

DB_COMMAND(9)          FreeBSD Kernel Developer's Manual         DB_COMMAND(9)

NAME
     DB_COMMAND, DB_SHOW_COMMAND, DB_SHOW_ALL_COMMAND - Extends the ddb
     command set

SYNOPSIS
     #include <ddb/ddb.h>

     DB_COMMAND(command_name, command_function);

     DB_SHOW_COMMAND(command_name, command_function);

     DB_SHOW_ALL_COMMAND(command_name, command_function);

DESCRIPTION
     The DB_COMMAND() macro adds command_name to the list of top-level
     commands.  Invoking command_name from ddb will call command_function.

     The DB_SHOW_COMMAND() and DB_SHOW_ALL_COMMAND() are roughly equivalent to
     DB_COMMAND() but in these cases, command_name is a sub-command of the ddb
     show command and show all command, respectively.

     The general command syntax: command[/modifier] address[,count],
     translates into the following parameters for command_function:

           addr          The address passed to the command as an argument.

           have_addr     A boolean value that is true if the addr field is
                         valid.

           count         The number of quad words starting at offset addr that
                         the command must process.

           modif         A pointer to the string of modifiers.  That is, a
                         series of symbols used to pass some options to the
                         command.  For example, the examine command will
                         display words in decimal form if it is passed the
                         modifier "d".

EXAMPLE
     In your module, the command is declared as:

     DB_COMMAND(mycmd, my_cmd_func)
     {
             if (have_addr)
                     db_printf("Calling my command with address %p\n", addr);
     }

     Then, when in ddb:

     db> mycmd 0x1000
     Calling my command with address 0x1000
     db>

SEE ALSO
     ddb(4)

AUTHORS
     This manual page was written by Guillaume Ballet <gballet@gmail.com>.

FreeBSD 13.1-RELEASE-p6         August 27, 2008        FreeBSD 13.1-RELEASE-p6

Command Section

man2web Home...