Oracle PBRPH
Version 21c

General Information
Library Note Morgan's Library Page Header
ACE Director Alum Daniel Morgan, founder of Morgan's Library, is scheduling complimentary technical Workshops on Database Security for the first 30 Oracle Database customers located anywhere in North America, EMEA, LATAM, or APAC that send an email to asra_us@oracle.com. Request a Workshop for your organization today.
Purpose DBMS_DEBUG and PROBE Support
AUTHID DEFINER
Dependencies
DBMS_DEBUG DBMS_STANDARD PLITBLM
DBMS_DEBUG_VC2COLL PBREAK UTL_RAW
DBMS_PIPE PBUTL  
Documented No
First Available Not known
Security Model Owned by SYS with no privileges granted
Source {ORACLE_HOME}/rdbms/admin/prvtpb.plb
Subprograms
 
ATTACH
Undocumented pbrph.attach(debugid IN VARCHAR2);
exec pbrph.attach('PBRPH_DEBUG_ID');

PL/SQL procedure successfully completed.
 
CONTINUE
Undocumented pbrph.continue(
run_info        OUT sys.dbms_debug.runtime_info,
execution_flags IN  BINARY_INTEGER,
info_requested  IN  BINARY_INTEGER,
status          OUT BINARY_INTEGER);
TBD
 
DISPLAY_FRAME
Undocumented pbrph.display_frame(
msg          IN     VARCHAR2,
retval       IN OUT BINARY_INTEGER,
tidl_buf     IN OUT RAW,
tidl_version    OUT BINARY_INTEGER);
TBD
 
EXECUTE
Undocumented pbrph.execute(
what         IN     VARCHAR2,
frame#       IN     BINARY_INTEGER,
bind_results IN     BINARY_INTEGER,
results      IN OUT sys.dbms_debug_vc2coll,
errm         IN OUT VARCHAR2);
TBD
 
GET_CURRENT_INFO
Undocumented pbrph.get_current_info(
info_requested IN  BINARY_INTEGER,
run_info       OUT sys.dbms_debug.runtime_info)
RETURN BINARY_INTEGER;
TBD
 
GET_DEBUG_FLAGS
Undocumented pbrph.get_debug_flags(debug_flags OUT BINARY_INTEGER) RETURN BINARY_INTEGER;
TBD
 
GET_INDEXES
Undocumented pbrph.get_indexes(
varname IN  VARCHAR2,
frame#  IN  BINARY_INTEGER,
handle  IN  sys.dbms_debug.program_info,
entries OUT sys.dbms_debug.index_table)
RETURN BINARY_INTEGER;
TBD
 
GET_MORE_SOURCE
Undocumented pbrph.get_more_source(
buf    IN OUT VARCHAR2,
buflen IN     BINARY_INTEGER,
piece  IN     BINARY_INTEGER);
TBD
 
GET_PENDING_REQUEST
Undocumented pbrph.get_pending_request(
nth_request IN OUT VARCHAR2,
nth         IN     BINARY_INTEGER);
TBD
 
GET_SCALAR
Undocumented

Overload 1
pbrph.get_scalar(
varname      IN  VARCHAR2,
frame_number IN  BINARY_INTEGER,
value        OUT VARCHAR2,
format       IN  VARCHAR2)
RETURN BINARY_INTEGER;
TBD
Overload 2 pbrph.get_scalar(
varname IN  VARCHAR2,
handle  IN  sys.dbms_debug.program_info,
value   OUT VARCHAR2,
format  IN  VARCHAR2)
RETURN BINARY_INTEGER;
TBD
 
LISTEN
Undocumented pbrph.listen(
run_info       OUT sys.dbms_debug.runtime_info,
info_requested IN  BINARY_INTEGER,
status         OUT BINARY_INTEGER);
TBD
 
PING
Undocumented pbrph.ping;
DECLARE
 retval INTEGER;
BEGIN
  retval := dbms_pipe.create_pipe('UWPIPE');
  dbms_output.put_line(retval);
END;
/
0

PL/SQL procedure successfully completed.


exec pbrph.attach('PBRPH_DEBUG_ID');

PL/SQL procedure successfully completed.

exec pbrph.ping;

-- hangs
 
PRINT_BACKTRACE
Undocumented

Overload 1
pbrph.print_backTrace(listing IN OUT VARCHAR2);
TBD
Overload 2 pbrph.print_backTrace(backtrace OUT sys.dbms_debug.backtrace_table);
TBD
 
PRINT_BREAKPOINTS
Undocumented pbrph.print_breakPoints(listing IN OUT VARCHAR2);
TBD
Overload 2 pbrph.print_breakPoints(
code_bpts OUT sys.dbms_debug.breakpoint_table,
oer_bpts  OUT sys.dbms_debug.oer_table);
TBD
 
PRINT_FRAME_SOURCE
Undocumented pbrph.print_frame_source(
low       IN     BINARY_INTEGER,
high      IN     BINARY_INTEGER,
source    IN OUT sys.dbms_debug.vc2_table,
frame_num IN     BINARY_INTEGER);
TBD
 
PRINT_INTO_TABLE
Undocumented pbrph.print_into_table(
req       IN  VARCHAR2,
backtrace OUT sys.dbms_debug.backtrace_table);
TBD
 
PRINT_SOURCE
Undocumented

Overload 1
pbrph.print_source(
low    IN     BINARY_INTEGER,
high   IN     BINARY_INTEGER,
source IN OUT sys.dbms_debug.vc2_table);
TBD
Overload 2 pbrph.print_source(
low    IN  BINARY_INTEGER,
high   IN  BINARY_INTEGER,
window IN  BINARY_INTEGER,
pflags IN  BINARY_INTEGER,
buf IN OUT VARCHAR2,
buflen IN  BINARY_INTEGER,
pieces OUT BINARY_INTEGER);
TBD
 
PROCESS_REQUEST
Undocumented pbrph.process_request(
request IN  VARCHAR2,
result  OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;
TBD
 
SET_BREAK_LINE
Undocumented pbrph.set_break_line(
program     IN  sys.dbms_debug.program_info,
line#       IN  BINARY_INTEGER,
breakpoint# OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;
TBD
 
SET_VALUE
Undocumented

Overload 1
pbrph.set_value(
frame_number IN BINARY_INTEGER,
statement    IN VARCHAR2)
RETURN BINARY_INTEGER;
TBD
Overload 2 pbrph.set_value(
handle    IN sys.dbms_debug.program_info,
statement IN VARCHAR2)
RETURN BINARY_INTEGER;
TBD
 
SHUTDOWN
Undocumented pbrph.shutdown;
exec pbrph.shutdown;
BEGIN pbrph.shutdown; END;
*
ERROR at line 1:
ORA-23321: Pipename may not be null
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.DBMS_PIPE", line 128
ORA-06512: at "SYS.PBRPH", line 72
ORA-06512: at line 1


DECLARE
 retval INTEGER;
BEGIN
  retval := dbms_pipe.create_pipe('UWPIPE');
  dbms_output.put_line(retval);
END;
/
0

PL/SQL procedure successfully completed.


exec pbrph.attach('PBRPH_DEBUG_ID');

PL/SQL procedure successfully completed.

exec pbrph.shutdown;

PL/SQL procedure successfully completed.
 
TARGET_PROGRAM_RUNNING
Undocumented pbrph.target_program_running RETURN BOOLEAN;
BEGIN
  IF pbrph.target_program_running THEN
    dbms_output.put_line('T');
  ELSE
    dbms_output.put_line('F');
  END IF;
END;
/
F

PL/SQL procedure successfully completed.

Related Topics
Built-in Functions
Built-in Packages
Database Security
DBMS_DEBUG
DBMS_PIPE
PBREAK
PBSDE
What's New In 21c
What's New In 23c

Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2023 Daniel A. Morgan All Rights Reserved
  DBSecWorx