Writing an EOF record at the beginning of the data set does indeed "help 
prevent programs from reading old data when a data set is read immediately 
after being allocated", but the way it does this results in preventing the 
reading of old data only from the first track.  If a program can read beyond 
this first track (which is not difficult to do even in an unauthorized 
program), then the program can still read all the rest of the old data in the 
allocated tracks.  The only way truly to prevent a program from reading any of 
the old data is to erase each allocated track, either when the old data set is 
deleted or when the new data set is allocated.  Erasing is a very expensive 
process in terms of DASD utilization and elapsed time, which is why it is 
almost never done.  This is perhaps another example of "security through 
obscurity", which has been discussed lately under thread subjects starting with 
" Program FLIH backdoor ".  I call it obscurity since getting beyond the first !
 track deters most programs, but is not difficult if you know the "obscure" 
fact that it is quite easy to do if you want to.

Bill Fairchild

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of 
Mark Zelden
Sent: Monday, March 12, 2012 10:40 AM
To: [email protected]
Subject: Re: IEFBR14

On Mon, 12 Mar 2012 08:21:13 -0700, Sam Siegel <[email protected]> wrote:

>Scott - I think the EOF marker is handled by SMS.  If a file is 
>allocated to a non-sms volume with IEFBR14 it might be that no EOF 
>marker was created.  This can result in a wrong length read when trying 
>to read from the dataset instead of going straight to EODAD.
>Sam
>

This changed in z/OS 1.11 to include non-SMS also for an .      

As John M. hinted, it does require a valid DSORG.   That can come
from a default DATACLAS or from JCL.

>From the announcement letter:

"In z/OS V1.11, DFSMSdfp(tm) processing is changed to indicate end-of-file 
(EOF) during the allocation of data sets on DASD that are not SMS-managed and 
have either sequential or an undefined data set organization. This makes this 
processing for both SMS-managed and non-SMS-managed data sets consistent, to 
make it unnecessary to open data sets solely to indicate EOF, and to help 
prevent programs from reading old data when a data set is read immediately 
after being allocated. "


--
Mark Zelden - Zelden Consulting Services - z/OS, OS/390 and MVS       
mailto:[email protected]                                        
Mark's MVS Utilities: http://www.mzelden.com/mvsutil.html
Systems Programming expert at http://expertanswercenter.techtarget.com/

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to 
[email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to