> Simply attempt the access.

We are in violent agreement. I'm not the one asking for  the new instruction; 
I'm one of the ones saying that such an instruction wouldn't solve the TOCTTOU 
issue.

> If it's a Supervisor function it must page-fix the buffer.

No. It needs to copy data into protected storage, but generally that storage 
can be pageable. 

>  I suppose access methods do all that routinely.

With the exception of VSAM local shared resources, the access methods have 
separate user-side storage for each open ACB/DCB. For VSAM and VTAM, once you 
get beyond the user's private area, all bets are off. The last time that the 
code was available for customer scrutiny, there was page fixing of storage 
related to STARTIO, but I don't recall anything else that was page fixed.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Assembler List [[email protected]] on behalf 
of Paul Gilmartin [[email protected]]
Sent: Sunday, March 6, 2022 2:31 PM
To: [email protected]
Subject: Re: Testing Address validity

On Mar 6, 2022, at 11:55:46, Seymour J Metz wrote:
>
> Well, if there was a burning need for it then they could add an instruction 
> that worked like TPROT but took an interrupt instead of a CC 3 for invalid 
> address. Even if you had it, there would stil be the TOFTTOU issue.
>
???
Simply attempt the access.
o If it fails, diagnose the interrupt code.
o If it succeeds, you're done; no TOFTTOU.
(Aren't we back where we started?)

If callers intercept the interrupt, they are assuming the
responsibility of diagnosing.  (The documentation might
warn them.)

If it's a Supervisor function it must page-fix the buffer.
After copying the pointer to protected storage.  And
ensuring that concurrent tasks don't use overleaping
buffers.  I suppose access methods do all that routinely.

--
gil

Reply via email to