Lionel, I haven’t seen the book, but Ive written usermods to replace SMPE controlled data. Basically you have the tar’d payload, a script that is aware of SMPE phase/actions, etc, and based on an apply or restore does the work. Whether you are writing a usermod or installing a FMID I think the contruction would be very similar. This is the job stream to build usermod to apply updates to java.security
This script will either create or delete the backup copies of the security policy jar files. Policy jar files are installed/removed from the J11.0_64/conf/security directory. The script uses the following environment variables for input: SMP_Directory - directory in which the file resides SMP_File - name of the HFS file SMP_Phase - indicates whether the shell script is being called before or after SMP/E has processed the file SMP_Action - the action that SMP/E is performing: COPY or DELETE Here is a jobstream that builds the usermod. I cannot take total credit for it, another member here on IBM-MAIN (whom I cannot remember) got me started. //E008058E JOB (DP,8710),'MAJV116BUILD',CLASS=X,MSGCLASS=T, // NOTIFY=E008058 //HEADER EXEC PGM=IEBGENER //SYSUT1 DD DATA,DLM=$$ //E008058E JOB (DP,8710),'MAJV116',CLASS=X,MSGCLASS=T, // NOTIFY=E008058 //PROCLIB JCLLIB ORDER=(E008058.SMPE.ZOS25.CLONE.JCL.PROCLIB) //SMPAPPLY EXEC SMPE //SMPHOLD DD DUMMY //SYSIN DD * SET BDY(GLOBAL) . RECEIVE S(MAJV116) SYSMODS BYPASS(APPCHK). SET BDY(MVSTZN). APPLY S(MAJV116) REDO. /* //* RESTORE S(MAJV116) . //* REJECT S(MAJV116) BYPASS(APPCHK). //SMPPTFIN DD DATA,DLM=ZZ ++ USERMOD (MAJV116) /* IBM JAVA 11.0 (64-Bit) platform */. ++ VER (Z038) FMID(HJVBB00) PRE(UI94773) /* USERMOD DESCRIPTION(S): MAJV116 - **************************************************************** * WARNING: DO NOT modify this usermod. It is created and * * built in SMPE.ZOSnnn.USERMODS.BUILD * **************************************************************** * USERMOD DESCRIPTION: * * - Enabling CSF key support by adding entry to * * java.security for IBMJCECCA * * inserted as the security.provider.2= entry. * * * * The JMVPRC16 proc is here to insure that these changes * * to Java 11.0 can not be accidently lost due to a new * * level of maintence being installed via SMP/E without * * some notification of the regression. * * * * D.jousma 11/14/22 - updated Build of MAJV116(USERMOD), * * MAJV116J(HFS), MAJV116S(Script) * * in SMPE.ZOS25.USERMODS.BUILD * * to support JAVA 11.0 * * * **************************************************************** */. ++ HFS (MAJV116J) /* $java_home/lib/security/java.security.sklm */ DISTLIB (AAJVHFS) SYSLIB (SAJVB0P) PARM (PATHMODE(0,6,4,4)) LINK ('../conf/security/java.security.sklm') SHSCRIPT (MAJV116S,POST) TEXT . $$ //SYSUT2 DD DSN=&&TEMP,DISP=(NEW,PASS),RECFM=FB,LRECL=80, // BLKSIZE=0,SPACE=(CYL,16) //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY //JAVA EXEC PGM=GIMDTS //SYSPRINT DD SYSOUT=* //SYSUT1 DD DSN=SMPE.ZOS25.USERMODS.BUILD(MAJV116J),DISP=SHR //SYSUT2 DD DSN=&&TEMP,DISP=(MOD,PASS) //MIDDLE EXEC PGM=IEBGENER //SYSUT1 DD DATA,DLM=$$ ++ SHELLSCR (MAJV116S) /* $java_home/MAJV116s */ DISTLIB (AAJVHFS) SYSLIB (SAJVB0P) PARM (PATHMODE(0,7,5,5)) TEXT . $$ //SYSUT2 DD DSN=&&TEMP,DISP=(MOD,PASS) //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY //SCRIPT EXEC PGM=GIMDTS //SYSPRINT DD SYSOUT=* //SYSUT1 DD DSN=SMPE.ZOS25.USERMODS.BUILD(MAJV116S),DISP=SHR //SYSUT2 DD DSN=&&TEMP,DISP=(MOD,PASS) //END EXEC PGM=IEBGENER //SYSUT1 DD DATA,DLM=$$ ++ PROC (JVMPRC16) DISTLIB(APROCLIB) SYSLIB(PROCLIB) TXLIB(APROCLIB). $$ //SYSUT2 DD DSN=&&TEMP,DISP=(MOD,PASS) //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY //END EXEC PGM=IEBGENER //SYSUT1 DD DATA,DLM=$$ ZZ // $$ //SYSUT2 DD DSN=&&TEMP,DISP=(MOD,PASS) //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY //SAVEIT EXEC PGM=IEBGENER //SYSUT1 DD DSN=&&TEMP,DISP=(MOD,PASS) //SYSUT2 DD DSN=SMPE.ZOS25.USERMODS(MAJV116),DISP=SHR //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY Dave Jousma Vice President | Director, Technology Engineering From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of Lionel B. Dyck <0000057b0ee5a853-dmarc-requ...@listserv.ua.edu> Date: Thursday, March 14, 2024 at 2:01 PM To: IBM-MAIN@LISTSERV.UA.EDU <IBM-MAIN@LISTSERV.UA.EDU> Subject: Standard Packaging Rules for z/OS-Based Products - current version ??? The most current version of this pub that I can find is SC23-3695-10 and it is from June 2003. The link for this is https: //urldefense. com/v3/__https: //www. ibm. com/resources/publications/OutputPubsDetails?PubID=SC23-3695__;!!MwwqYLOC6b6whF7V!gG_my_jr_L8pFWOn6SH9laQW0OKkdjH816l_JWZA2Q5bldKsgKTPTUA0snjMDNVOH6MVVquK6anGn2fJd-6GXrsy2hdyv1UlzrU$ The most current version of this pub that I can find is SC23-3695-10 and it is from June 2003. The link for this is https://urldefense.com/v3/__https://www.ibm.com/resources/publications/OutputPubsDetails?PubID=SC23-3695__;!!MwwqYLOC6b6whF7V!gG_my_jr_L8pFWOn6SH9laQW0OKkdjH816l_JWZA2Q5bldKsgKTPTUA0snjMDNVOH6MVVquK6anGn2fJd-6GXrsy2hdyv1UlzrU$<https://urldefense.com/v3/__https:/www.ibm.com/resources/publications/OutputPubsDetails?PubID=SC23-3695__;!!MwwqYLOC6b6whF7V!gG_my_jr_L8pFWOn6SH9laQW0OKkdjH816l_JWZA2Q5bldKsgKTPTUA0snjMDNVOH6MVVquK6anGn2fJd-6GXrsy2hdyv1UlzrU$> -10 Does anyone know of a link to a current version? Specifically, I'm curious about packaging for z/OS Unix System Services applications. Thanks in advance. Lionel B. Dyck <>< Github: https://urldefense.com/v3/__https://github.com/lbdyck__;!!MwwqYLOC6b6whF7V!gG_my_jr_L8pFWOn6SH9laQW0OKkdjH816l_JWZA2Q5bldKsgKTPTUA0snjMDNVOH6MVVquK6anGn2fJd-6GXrsy2hdyPDHVvtw$<https://urldefense.com/v3/__https:/github.com/lbdyck__;!!MwwqYLOC6b6whF7V!gG_my_jr_L8pFWOn6SH9laQW0OKkdjH816l_JWZA2Q5bldKsgKTPTUA0snjMDNVOH6MVVquK6anGn2fJd-6GXrsy2hdyPDHVvtw$> System Z Enthusiasts Discord: https://urldefense.com/v3/__https://discord.gg/system-z-enthusiasts-880322471608344597__;!!MwwqYLOC6b6whF7V!gG_my_jr_L8pFWOn6SH9laQW0OKkdjH816l_JWZA2Q5bldKsgKTPTUA0snjMDNVOH6MVVquK6anGn2fJd-6GXrsy2hdyOxGUDZo$<https://urldefense.com/v3/__https:/discord.gg/system-z-enthusiasts-880322471608344597__;!!MwwqYLOC6b6whF7V!gG_my_jr_L8pFWOn6SH9laQW0OKkdjH816l_JWZA2Q5bldKsgKTPTUA0snjMDNVOH6MVVquK6anGn2fJd-6GXrsy2hdyOxGUDZo$> “Worry more about your character than your reputation. Character is what you are, reputation merely what others think you are.” - - - John Wooden ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN This e-mail transmission contains information that is confidential and may be privileged. It is intended only for the addressee(s) named above. If you receive this e-mail in error, please do not read, copy or disseminate it in any manner. If you are not the intended recipient, any disclosure, copying, distribution or use of the contents of this information is prohibited. Please reply to the message immediately by informing the sender that the message was misdirected. After replying, please erase it from your computer system. Your assistance in correcting this error is appreciated. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN