× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



James H. H. Lampert wrote:

I just got the joblog this morning.

They're on V5R4M0.

And I'm onto something: I saw two "open options ignored" messages
regarding the file, both of them involving shared open data
paths.

The application opens the file twice, and doesn't use shared
ODPs.

I changed a copy of the file on our V4 box to SHARE(*YES), and
suddenly I could duplicate the problem freely.

Now that I know what the problem is, and given that this is an application that opens user-specified files, what do I do about
it?


Implement as probable circumvention, OVRDBF FileName TOFILE(*FILE) SHARE(*NO) OVRSCOPE(*CALLLVL). I do not know of or if there is an open option via fopen() that can request SHARE(*NO), but there is support in the common data management. Such a specification would ensure that only explicit overrides to SHARE(*YES) could introduce the negative impact of sharing, for code that requires no sharing. An OVRDBF SHARE(*NO) SECURE(*YES) is not very desirable, but could be a heavy-handed method to ensure the SHARE(*NO) is enforced by\for the opener.

The default for members is SHARE(*NO), such that SHARE(*YES) is an exception, for which OVRDBF SHARE(*YES) is expected to activate aside from file.mbr which one would knowingly want the sharing enabled by default and so explicitly asking for SHARE(*YES). So...

Investigate on the client system, the command defaults for CRTPF, CRTLF, ADDPFM, and ADDLFM to see if they default to SHARE(*YES) versus the shipped default of SHARE(*NO). If the sfw creates these "user-specified files" and\or adds members to those files, that code could explicitly specify the SHARE() parameter; of course run-time remains an issue for any changes or overrides, and thus back to the override as circumvention\preventive. Note: the SHARE() parameter on the CRTxF applies only to the specified MBR() on that invocation; i.e. there is no SHARE(*FILE) capability on ADDxFM to inherit the SHARE() setting established in the database *FILE, because no such attribute is stored at the file level. I suggest also to review the command defaults of the CHGxF commands for any non-*SAME values for the non-specified parameters presented by the requests to [CHG* commands should effectively *never* have their defaults changed from *SAME]:

?CHGPF FILE(QTEMP/"NotAFile") SYSTEM(*LCL) SRCFILE(*NONE)
?CHGLF FILE(QTEMP/"NotAFile") SYSTEM(*LCL) FRCRBDAP(*NO)

Regards, Chuck

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.