Compaq AA-RH99A-TE Remote Starter User Manual


 
format_addr((long) struct_addr(ele), address);
format_addr((long) fields[2].data, cred);
format_addr((long) fields[3].data, data);
sprintf(buf, "%s %s %4d %4d %s %s %s %6d %s%s%s%s%s%s%s%s%s",
address, get_type((int) fields[0].data), fields[1].data,
fields[2].data, ops, cred, data, fields[6].data,
((long) fields[7].data) & FREAD ? " read" : ,
((long) fields[7].data) & FWRITE ? " write" : ,
((long) fields[7].data) & FAPPEND ? " append" : ,
((long) fields[7].data) & FNDELAY ? " ndelay" : ,
((long) fields[7].data) & FMARK ? " mark" : ,
((long) fields[7].data) & FDEFER ? " defer" : ,
((long) fields[7].data) & FASYNC ? " async" : ,
((long) fields[7].data) & FSHLOCK ? " shlck" : ,
((long) fields[7].data) & FEXLOCK ? " exlck" : );
print(buf);
return(True);
}
3.2.14 Freeing Memory
The free_sym function releases the memory held by a specified symbol.
This function has the following syntax:
void free_sym(
DataStruct sym);
Argument
Input/Output
Description
sym
Input Names the symbol that is using memory
that can be freed
For example:
free_sym(rec->data);
3.2.15 Passing Commands to the kdbx Debugger
The krash function passes a command to kdbx for execution. You specify
the command you want passed to kdbx as the first argument to the krash
function. The second argument allows you to pass quotation marks (""),
apostrophes (), and backslash characters (\)tokdbx. The function has
an argument, expect_output, which controls when it returns. If you set
the expect_output argument to TRUE, the function returns after the
command is sent, and expects the extension to read the output from dbx.
If you set the expect_output argument to FALSE, the function waits for
the command to complete execution, reads the acknowledgement from kdbx,
and then returns.
This function has the following syntax:
void krash(
char* command,
Boolean quote,
Boolean expect_output);
Writing Extensions to the kdbx Debugger 3–11