Applications should not "validate" filenames before attempting to open or create a file. Present the name to the file system API and report any error back to the user. Application filename validation is what leads to these inconsistencies.
Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of Paul Gilmartin Sent: Tuesday, September 29, 2020 3:58 PM To: [email protected] Subject: Re: blanks at the end of Unix file names - was LMINIT cannot handle concatenation with more than 16 data sets? On Tue, 29 Sep 2020 21:28:26 +0000, Pommier, Rex wrote: > >Serious question - what would be the purpose for doing this? I know you can, >I'm just trying to grasp a good reason for doing so. Security by obscurity >(not valid in my mind)? > Because it's possible. Someone will do it. Test suites should verify that other components support it properly. The security needn't be by obscurity. The security product or ACLs could enforce chosen rules. To minimize programmer astonishment the syntax and semantics should be uniform throughout the system. I have a couple experiences older than OMVS. I used ISPF LM services to create some PDS members with hyphens in their names, e.g. FOO-BAR. Subsequently I decided to add ISPF statistics to such members with LMMSTATS. LMMSTATS deems the hyphen a syntax error. Similarly, I once created a data set such as: DD DISP=(NEW,CATLG),DSN=hlq.X.FOO-BAR No problem. Later, I tried DD DISP=(NEW,CATLG),DSN=hlq.Y.FOO-BAR, DCB=hlq.X.FOO-BAR Again, the hyphen caused a syntax error. The restriction is documented, but why not be uniform? As long as STOW and BLDL have existed they have supported mixed-case member names. But most high-level user interfaces aren't even case-insensitive: they don't find any member name containing lower case characters. An IBM employee has said on this list that those names are invalid. But why doesn't STOW report them as errors. I disagree with Emerson about consistency. ><stripped from the other thread> > >Alas, the padding and stripping mean that 'WOMBAT', 'WOMBAT ', and 'WOMBAT >', >distinct UNIX files, would be conflated. -- gil ---------------------------------------------------------------------- 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
