Hex Long Floating Point REXX
Hi @ll, has someone ever tried to extract fields SMF30DDS and SMF30DDR (long floating point hex) or any field in REXX? There are a couple of F2something routines out there but it seems that none of them produce the right value. Has somebody a REXX example for me? Anything would be very appreciated since it might bring me further. Thx in advance. Cheers Uwe -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Hex Long Floating Point REXX
On 2013-05-19 09:40, Uwe Oswald wrote: Hi @ll, has someone ever tried to extract fields SMF30DDS and SMF30DDR (long floating point hex) or any field in REXX? There are a couple of F2something routines out there but it seems that none of them produce the right value. Has somebody a REXX example for me? Anything would be very appreciated since it might bring me further. This code coming from Michel Castelein Jim Connelly might be of some use /* REXX - convert float to dec + dec to float routines*/ ispclear do until opt = 0 | opt = '' say 'Select option' say say ' 0: exit' say ' 1: Castelein, float(hex) to dec' say ' 2: Connelly, dec (char) to float(hex) to dec' pull opt opt = left(opt, 1) select when opt = 1 then call castelein when opt = 2 then call connelly otherwise end end exit 0 /* This REXX exec computes a S/370 floating-point's value ... e.g. X'C128' represents -2.5 (Michel Castelein, 5 November 1997)*/ castelein: say 'Enter the S/370 floating-point (4, 8, or 16 bytes):' numeric digits 34 pull float float = X2C(float) /* convert float to a hexadecimal string*/ float_size = LENGTH(float) /* size in Bytes*/ Byte_0 = SUBSTR(float, 1, 1) select when BITAND(Byte_0, '80'x) == '00'x then sign = '+' when BITAND(Byte_0, '80'x) == '80'x then sign = '-' end exponent = C2D(BITAND(Byte_0, '7F'x)) - 64 fraction = 0 power= -1 do i = 2 to float_size if i = 9 then iterate /* skip bits 64-71*/ Next_Byte = C2D(SUBSTR(float, i, 1)) left_Digit = Next_Byte % 16 fraction= fraction + left_Digit * 16**power right_Digit = Next_Byte // 16 power = power - 1 fraction= fraction + right_Digit * 16**power power = power - 1 end interpret 'value =' sign ( fraction * 16 ** exponent ) say The floating-point's value is value say say 'Press Enter to continue' pull return /* TEST_WORK.FS=1.0E+01; TEST_WORK.FL=1.000E+01; TEST_WORK.FE=1.E+01; '41A0'B '41A0'B '41A03300'B TEST_WORK.FS=3.16227E+00; 3.1622772216796875 TEST_WORK.FL=3.162277660168379E+00; 3.162277660168379300742458326567430049181 TEST_WORK.FE=3.16227766016837933199889354443270E+00; 3.162277660168379331998893544432716995013 '413298B0'B '413298B075B4B6A5'B '413298B075B4B6A533240945790619B3'B */ /* REXX -+ * | * Converts a number to internal float format. | * Displays the result | * Then converts the result back out to decimal. | * | * Written by Jim Connelley | * | * Tracing thru this code is a good way to get | * familiar with IBM system 390 internal | * floating point format.| * | *---+ */ connelly: Numeric Digits 100 /* handle BIG numbers */ /* Parse Upper Arg input_val . */ say 'Enter S/390 floating point value' pull input_val . Say Input Value: input_val If datatype(input_val) /= NUM Then Do Say invalid value return End If input_val = 0 Then Do /* special case zero */ Say Resulting Value: Say Floating value converted back: 0 return End input_val = Format(input_val) /*---+ * Handle leading minus sign | *---+ */ If left(input_val,1) = - Then Do Sign = 80x input_val = Substr(input_val,2) /* remove sign */ End Else Do Sign = 00x End /*---+ * Separate input into integer and fraction | *---+ */ Parse Var input_val input_integer . input_fract /*---+ * If no fraction given, then default to zero| *---+ */ If input_fract = Then input_fract = 0 input_fract = .input_fract /*---+ * Convert integer portion directly | *---+ */ float_value = D2x(input_integer) If float_value = 0 Then float_value = /*---+ * If there is no integer portion, then we can normalize | * just the fraction portion of the input value. | *---+ */ exponent = Length(float_value) If exponent = 0 Then Do Forever
Re: Hex Long Floating Point REXX
You may wish to check out this url. It is an article from IBM Systems News on handling SMF with REXX. It may have some pointers http://www.ibmsystemsmag.com/mainframe/tipstechniques/applicationdevelopment /rexx_smf_part2/?page=2 Lizette -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Uwe Oswald Sent: Sunday, May 19, 2013 2:41 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Hex Long Floating Point REXX Hi @ll, has someone ever tried to extract fields SMF30DDS and SMF30DDR (long floating point hex) or any field in REXX? There are a couple of F2something routines out there but it seems that none of them produce the right value. Has somebody a REXX example for me? Anything would be very appreciated since it might bring me further. Thx in advance. Cheers Uwe -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Renaming an LPAR dynamically
As I mentioned a follow-on post, I eventually PORed to get the new IODF active with no change other than LPAR name. It's not clear from Carlos's post that the all the other original LPAR attributes and connections would remain intact after first becoming '*'. If not, POR (in my particular case) was less painful than having to redefine everything else from scratch. . . JO.Skip Robinson Southern California Edison Company Electric Dragon Team Paddler SHARE MVS Program Co-Manager 626-302-7535 Office 323-715-0595 Mobile jo.skip.robin...@sce.com From: carlos roberto visconde cvisco...@ig.com.br To: IBM-MAIN@LISTSERV.UA.EDU, Date: 05/18/2013 02:36 PM Subject:Re: Renaming an LPAR dynamically Sent by:IBM Mainframe Discussion List IBM-MAIN@LISTSERV.UA.EDU Yes, you have first rename the LPAR to '*', in IODF (IOCDS) Activate the IODF Deactivate the partition, uncheck to CRYPTO PROCESSORs of that partition, Activate the partition. (puting CHPIDS OFF) Deactivate the LPAR then active new IODF with new Name Chek the CRYPTO PROCESSORs, activate the partiiton 2013/5/10 Skip Robinson jo.skip.robin...@sce.com I've poked around and not found a concise explanation. We have an LPAR whose name needs to change. Everything else in the IODF is fine, just a name problem. Current hardware and software. I changed the name in HCD. When I tried to ACTIVATE the new IODF, it choked on the name mismatch. I gather that I can first rename to '*', then rename for real in two successive IODFs. If I do that, do I preserve all original chpid and device connections? I don't want to start over from scratch when only the name is wrong. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Rather interesting article on hacking the mainframe using ftp
I guess you could call it hacking. Or just using a wide-open system :-) The user would need: - network access to the FTP and listen port - firewalls could prevent - the TCP stack could limit (TERMINAL, SERVAUTH, etc) - access to FTP and ability to upload an executable file - an FTP exit could be used to prevent either - permission to submit a job SAF and/or a FTP exit could limit this - job would need permission to listen on a port - user could be prevented from running a shell default program in OMVS segment Kirk Wolf Dovetailed Technologies http://dovetail.com On Sat, May 18, 2013 at 3:17 PM, John McKown john.archie.mck...@gmail.comwrote: http://mainframed767.tumblr.com/post/50574743147/big-iron-back-door-maintp-part-two basically the person must be able to ftp into a UNIX subdirectory and to submit a job. They upload a program called netcat into a data set starting with their RACF id. They then submit a job which copies the data set into the /tmp subdirectory with a random name, chmod the name to be executable, then executes does starts the netcat in the background (asynchronous to the batch job) and piping to/from the z/OS UNIX shell. The hacker simply connects to the port that netcat is listening on, and presto, they have a shell on their desktop. -- This is a test of the Emergency Broadcast System. If this had been an actual emergency, do you really think we'd stick around to tell you? Maranatha! John McKown -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Hex Long Floating Point REXX
On Sun, 19 May 2013 13:24:49 +, Robert AH Prins wrote: On 2013-05-19 09:40, Uwe Oswald wrote: Hi @ll, has someone ever tried to extract fields SMF30DDS and SMF30DDR (long floating point hex) or any field in REXX? There are a couple of F2something routines out there but it seems that none of them produce the right value. Has somebody a REXX example for me? Anything would be very appreciated since it might bring me further. This code coming from Michel Castelein Jim Connelly might be of some use ... Eek! Clearly the author's brain was rotted by excessive exposure to Assembler programming. Why not simply: /* This REXX exec computes a S/370 floating-point's value ... e.g. X'C128' represents -2.5 */ castelein: parse arg Float numeric digits ( length( Float ) % 0.4 ) /* 1 / log( 256 ) */ parse var Float Hexponent 2 Mantissa sign = 1 - c2d( Hexponent ) % 128 * 2 Hexponent = c2d( bitand( Hexponent, '7F'x ) ) - 64 Hexponent = Hexponent - 2 * length( Mantissa ) Dec = sign * 16 ** Hexponent * c2d( Mantissa ) say c2x( Float ) Dec return( Dec ) The problem of decimal to HFP is a nightmare, relatively. I'd be tempted to use iteration to find a root of the HFP to decimal function. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Rather interesting article on hacking the mainframe using ftp
On Sat, 18 May 2013 15:17:22 -0500, John McKown john.archie.mck...@gmail.com wrote: http://mainframed767.tumblr.com/post/50574743147/big-iron-back-door-maintp-part-two basically the person must be able to ftp into a UNIX subdirectory and to submit a job. They upload a program called netcat into a data set starting with their RACF id. They then submit a job which copies the data set into the /tmp subdirectory with a random name, chmod the name to be executable, then executes does starts the netcat in the background (asynchronous to the batch job) and piping to/from the z/OS UNIX shell. The hacker simply connects to the port that netcat is listening on, and presto, they have a shell on their desktop. True, but they anything they can do using that shell they could have done directly within the batch job that they submitted. If the administrators did not want them running batch jobs, they could have prevented that quite easily. -- Walt -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Hex Long Floating Point REXX
There is plenty of C and PL/I support available for BFP. Having a brain rotted by excessive exposure to assembly language, I would thus use the conversion machine instructions THDER, THDR, TBDER, and TBDR to move back and forth between HFP and BFP. As yet there are no conversion instructions for HFP==DFP or even BFP==DFP; but they are, I suspect, in the womb of time, perhaps indeed nearly at term. John Gilmore, Ashland, MA 01721 - USA -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Rather interesting article on hacking the mainframe using ftp
In the Python script that a link in that site points to, I see that one line, 525, is over 202000 bytes long, assigning a string literal about that long to a variable. I couldn't help but reflect that some text editors and viewers would have trouble with that line. Python does allow string literals to be split and continued on separate lines. Bill On Sat, 18 May 2013 15:17:22 -0500, John McKown wrote: http://mainframed767.tumblr.com/post/50574743147/big-iron-back-door-maintp-part-two basically the person must be able to ftp into a UNIX subdirectory and to submit a job. They upload a program called netcat into a data set starting with their RACF id. They then submit a job which copies the data set into the /tmp subdirectory with a random name, chmod the name to be executable, then executes does starts the netcat in the background (asynchronous to the batch job) and piping to/from the z/OS UNIX shell. The hacker simply connects to the port that netcat is listening on, and presto, they have a shell on their desktop. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
New APP from DTS Software
This is not an ADVERT. I was on the DTS software website and saw they have an android app for their pocket reference guide. You do not need the DTS Software to get the Pocket Guide DTS Software's popular z/OS Pocket Reference Guide finally makes its way to the app market. Useful information for mainframe programmers, administrators, and others is now even more easily available. The free Android application can be downloaded from the Google app store. If interested, you should find it at this url http://www.dtssoftware.com/download_pocket_reference_guide.htm Lizette -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Rather interesting article on hacking the mainframe using ftp
I agree you need a RACF ID and password an of course a list of permits. Which as was pointed that batch submission can be prevented by the permits no being there. Secondly, I find an article of this type irresponsible. Scott ford www.identityforge.com from my IPAD 'Infinite wisdom through infinite means' On May 19, 2013, at 1:57 PM, Bill Godfrey yak36...@yahoo.com wrote: In the Python script that a link in that site points to, I see that one line, 525, is over 202000 bytes long, assigning a string literal about that long to a variable. I couldn't help but reflect that some text editors and viewers would have trouble with that line. Python does allow string literals to be split and continued on separate lines. Bill On Sat, 18 May 2013 15:17:22 -0500, John McKown wrote: http://mainframed767.tumblr.com/post/50574743147/big-iron-back-door-maintp-part-two basically the person must be able to ftp into a UNIX subdirectory and to submit a job. They upload a program called netcat into a data set starting with their RACF id. They then submit a job which copies the data set into the /tmp subdirectory with a random name, chmod the name to be executable, then executes does starts the netcat in the background (asynchronous to the batch job) and piping to/from the z/OS UNIX shell. The hacker simply connects to the port that netcat is listening on, and presto, they have a shell on their desktop. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: New APP from DTS Software
Yeah, but Google won't let me install it on my Kindle Fire which doesn't make me extremely pleased since my phone is a Blackberry, and not an android on, either! Charles (Chuck) Hardee Senior Systems Engineer Database Administration Information Technology Services Thermo Fisher Scientific 300 Industry Drive Pittsburgh, PA 15275 Direct: 724-517-2633 FAX: 412-490-9230 chuck.har...@thermofisher.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of AbsKerneels Sent: Sunday, May 19, 2013 4:40 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: New APP from DTS Software Hi, Google even says... This app is compatible with your T-Mobile Samsung SGH-T999. Note: Amazing what they know about us these days : http://www.youtube.com/watch?v=0p_jeoOkhq0 Kerneels On 5/19/2013 1:34 PM, Lizette Koehler wrote: This is not an ADVERT. I was on the DTS software website and saw they have an android app for their pocket reference guide. You do not need the DTS Software to get the Pocket Guide DTS Software's popular z/OS Pocket Reference Guide finally makes its way to the app market. Useful information for mainframe programmers, administrators, and others is now even more easily available. The free Android application can be downloaded from the Google app store. If interested, you should find it at this url http://www.dtssoftware.com/download_pocket_reference_guide.htm Lizette -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Renaming an LPAR dynamically
My sugestion was to you avoid POR, with that procedure only the LPAR you had to put PCHID and Crypto processor offline and after online, woud be the LPAR you had to rename. 2013/5/19 Skip Robinson jo.skip.robin...@sce.com As I mentioned a follow-on post, I eventually PORed to get the new IODF active with no change other than LPAR name. It's not clear from Carlos's post that the all the other original LPAR attributes and connections would remain intact after first becoming '*'. If not, POR (in my particular case) was less painful than having to redefine everything else from scratch. . . JO.Skip Robinson Southern California Edison Company Electric Dragon Team Paddler SHARE MVS Program Co-Manager 626-302-7535 Office 323-715-0595 Mobile jo.skip.robin...@sce.com From: carlos roberto visconde cvisco...@ig.com.br To: IBM-MAIN@LISTSERV.UA.EDU, Date: 05/18/2013 02:36 PM Subject:Re: Renaming an LPAR dynamically Sent by:IBM Mainframe Discussion List IBM-MAIN@LISTSERV.UA.EDU Yes, you have first rename the LPAR to '*', in IODF (IOCDS) Activate the IODF Deactivate the partition, uncheck to CRYPTO PROCESSORs of that partition, Activate the partition. (puting CHPIDS OFF) Deactivate the LPAR then active new IODF with new Name Chek the CRYPTO PROCESSORs, activate the partiiton 2013/5/10 Skip Robinson jo.skip.robin...@sce.com I've poked around and not found a concise explanation. We have an LPAR whose name needs to change. Everything else in the IODF is fine, just a name problem. Current hardware and software. I changed the name in HCD. When I tried to ACTIVATE the new IODF, it choked on the name mismatch. I gather that I can first rename to '*', then rename for real in two successive IODFs. If I do that, do I preserve all original chpid and device connections? I don't want to start over from scratch when only the name is wrong. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: JOB: z/OS Systems Programmer @ Univ. of FL
Watch out for the speed traps in the area, e.g. Waldo and Lawtey, Florida. One of the benefits is likely to be the ability to take courses at the University at no charge. Bus rides are free on Gainesville's RTS with a staff ID, which means you may be able to convert from a two car household to a one car household (for example). There's affordable preschool (Baby Gator). Staff can use all the UFL facilities (e.g. library, tennis courts, etc.) generally free of charge. UFL pays for a certain number of children of employees to attend free of charge. Property taxes tend to be low in Florida, although that might mean a challenge finding good schools. (I'm not sure about the area around UFL.) Florida has a homestead exemption which is quite interesting and which still offers some protection in bankruptcy (O.J. Simpson is familiar). Florida was hit very hard in the mortgage/financial crisis and hasn't really recovered, so some parts of the state offer very affordable real estate. Employment at UFL is likely to be fairly stable, and working hours are likely to be reasonable. As mentioned there's no state income tax, and the sales tax rate in and around Gainesville is 6%. The local job market is not terribly strong, so you'll probably want to be prepared to move again if you leave UFL for other employment. Gainesville has an airport (GNV) which American, Delta, United, and U.S. Airways serve to/from their hub cities in the region. The city's elevation is high by Florida standards (151 feet), and it's inland so not too badly affected by hurricanes. Local flooding could still be a problem. Tornados are possible, but that's true in much of the U.S. A weather radio and a storm shelter are recommended. Ice storms sometimes occur in the winter, and its gets hot and humid in the summer. If you're looking for a position I'd seriously investigate that one. It looks fairly compelling. Timothy Sipples GMU VCT Architect Executive (Based in Singapore) E-Mail: sipp...@sg.ibm.com -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Predict WLC invoice amount ...
Words have meaning. ...Which probably at least reduce the intensity... almost never means *zero* worry. Why else would I have typed those words? Let's try again. Enterprise License Agreements (ELAs) still require SCRT collection and submission. I didn't claim otherwise. How much you worry about those monthly reports -- the intensity of worry -- will depend in large measure on your caps relative to your utilization. I strongly disagree with the statement that Tails IBM wins, heads you lose with ELAs. The ideal case is that you choose caps (a utilization forecast) that are exactly as you experience. However, if you don't -- if you're either too high or too low -- YOU STILL ENJOY ELA BENEFITS! You haven't *maximized* those benefits, but you still come out way ahead unless you've totally screwed up. It's a gamble, but the odds of winning that bet are HEAVILY weighted in your favor. Ask your IBM representative. Timothy Sipples GMU VCT Architect Executive (Based in Singapore) E-Mail: sipp...@sg.ibm.com -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Rather interesting article on hacking the mainframe using ftp
On Sun, 19 May 2013 18:21:38 -0400, Scott Ford wrote: I agree you need a RACF ID and password an of course a list of permits. Which as was pointed that batch submission can be prevented by the permits no being there. Secondly, I find an article of this type irresponsible. irresponsible because it contains misinformation or incomplete information, or because it contains information you feel only you are entitled to know? -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN