| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> c.d.o.server -> Re: HELP--wrapped packages
On Wed, 23 Jul 1997 22:56:04 GMT, benh_at_dascom.com (Ben Harmon) wrote:
>I need to get the names of all the procedures, just the procedures, from
>any given wrapped package specification.
>
>I know that the whole purpose of wrapping a package is to make this as
>difficult as possible, but I have to do it anyway. : -(
>
Actually, not. Wrapped packages were designed to allow you to write an
application and deliver it in a format that does not let others read your code.
Typically, people wrap the bodies, not the spec (thats what the Oracle packages
do anyway). the spec is in clear text in the database for the comments and
externalized procedures to be visible.
>So, given that, I have already determined that I cannot get the information
>from the sys.source$ table. Even if it were possible to parse the 'header'
>section of the encrypted source, the encryption mechanism could change at any
>time (according to Oracle) and then my parser will be useless.
>
>I have also determined that, while I can get the names of procedures that take
>one or more argument from the sys.argument$ table, I cannot get the names of
>procedures that take no arguments.
>
Thats not true. From 7.2 on up, this information is available in sys.argument$
for example:
SQLDBA> create package foopkg
2> as
3> procedure bar;
4> end;
5> /
SQLDBA> select obj#, procedure$ from sys.argument$ where procedure$ = 'BAR'; OBJ# PROCEDURE$
---------- ------------------------------
1340 BAR
1 row selected.
SQLDBA> select object_name, object_type from user_objects where object_id=1340;
OBJECT_NAME OBJECT_TYPE
------------ ------------
FOOPKG PACKAGE
1 row selected.
SQLDBA> select * from v$version;
BANNER
Oracle7 Server Release 7.2.3.0.0 - Production Release PL/SQL Release 2.2.3.0.0 - Production CORE Version 3.4.3.0.0 - Production TNS for SVR4: Version 2.2.3.0.0 - Production NLSRTL Version 3.1.4.6.0 - Production5 rows selected.
>So, what other options are available?
>Has anyone ever gotten data directly from the Oracle binaries? If so, how
>would I go about doing this?
>
>help?
>
>Thanks,
>
>________________________________________________
>Ben Harmon
>ben_at_dascom.com.nospam
>**Please remove .nospam suffix if you want to mail me**
>________________________________________________
Thomas Kyte
tkyte_at_us.oracle.com
Oracle Government
Bethesda MD
http://govt.us.oracle.com/ -- downloadable utilities
![]() |
![]() |