Not sure I understand your question. My example is merely to show the
danger of using *prv. In this example, I just try to demonstrate that
if developer forgot to recompile an existing program that was compiled
before the *current was added, this program will not get signature
violation. At run time it will actually execute IFS_Proc3 even though
the statement is coded to execute IFS_Proc2. This is where I don't
think *prv should be used (Again personal preference only). It does not
give you any protection and actually given developer some false sense of
security.
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Murphy, Mark
Sent: Thursday, February 14, 2008 1:13 PM
To: RPG programming on the AS400 / iSeries
Subject: RE: Processes after CRTSRVPGM
Explain to me why I would expect any program to be able to call a
procedure that I have removed from the service program. If you use a
tool incorrectly you are bound to have trouble.
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Lim Hock-Chai
Sent: Thursday, February 14, 2008 10:51 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: Processes after CRTSRVPGM
If you binding language looks like below, guess what will happen if you
forgot/miss recompile an existing program that is still using one of the
*prv signature? This existing program will not get signature violation.
It just going to execute the wrong procedure when executing IFS_Proc2.
STRPGMEXP PGMLVL(*CURRENT)
EXPORT SYMBOL(IFS_Proc1)
EXPORT SYMBOL(IFS_Proc3)
ENDPGMEXP
STRPGMEXP PGMLVL(*PRV)
EXPORT SYMBOL(IFS_Proc1)
EXPORT SYMBOL(IFS_Proc2)
EXPORT SYMBOL(IFS_Proc3)
ENDPGMEXP
STRPGMEXP PGMLVL(*PRV)
EXPORT SYMBOL(IFS_Proc1)
EXPORT SYMBOL(IFS_Proc2)
ENDPGMEXP
STRPGMEXP PGMLVL(*PRV)
EXPORT SYMBOL(IFS_Proc1)
ENDPGMEXP
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Buck
Sent: Thursday, February 14, 2008 9:43 AM
To: rpg400-l@xxxxxxxxxxxx
Subject: Re: Processes after CRTSRVPGM
Lim Hock-Chai wrote:
My personal preference is never use *prv. IMHO, it is quite
dangerous.
Can you write a little more on why you feel *PRV is dangerous? I've
used this exclusively since V3 and haven't encountered any problems...
I'm hoping I haven't missed something!
--buck
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
http://archive.midrange.com/rpg400-l.
As an Amazon Associate we earn from qualifying purchases.