Hi, I'm using the 'shmat' syscall to attach a shared memory object, but using 
the REXX storage function to alter it causes the dirty bit to be set. Any idea 
why this is or how to prevent it?

Thanks

Steve

The REXX extract below writes the following to SYSTSPRT;

1 tcbfbyt3= 80
2 tcbfbyt3= 80
2 tcbfbyt3= C0


/* attach memory object */
'shmat (shmid) shmaddr'
if retval =-1 then do
  say 'shmat retval=-1'
  "strerror" errno errnojr "err."
  do i=1 to err.0
    say err.i
  end
  exit(8)
end
/* add port number to memory object */
say '1 tcbfbyt3=' C2x(STORAGE(D2X(TCB + 278), 1))
data = storage(shmaddr,4096)
say '2 tcbfbyt3=' C2x(STORAGE(D2X(TCB + 278), 1))
if substr(data,1,8) \= 'M4JVMSHR' then
  x=storage(shmaddr,0,left('M4JVMSHR,'applid','servername':'port,4096))
else x= storage(shmaddr,0,left(strip(data)','servername':'port,4096))
say '3 tcbfbyt3=' C2x(STORAGE(D2X(TCB + 278), 1))

-- 
This e-mail message has been scanned and cleared by Google Message Security 
and the UNICOM Global security systems. This message is for the named 
person's use only. If you receive this message in error, please delete it 
and notify the sender. 

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

Reply via email to