Skip to Main Content
IBM Z Software


This portal is to open public enhancement requests against IBM Z Software products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Not under consideration
Workspace COBOL Compilers
Categories z/OS
Created by Guest
Created on May 14, 2024

the creation of an option to inhibit or manage appropriately Assignment name for environment variable

Dynamic allocation can introduce opportunities for system vulnerability

Idea priority Medium
  • Admin
    Basil Kanneth
    Reply
    |
    Aug 8, 2024

    Hi Giovanni,

    We have investigated this idea internally and we believe a well rounded solution will be hard to achieve for this one.

    Reason being, PUTENV is a general facility to set environment variables and what is being set could be done anywhere in the application via pointers

    (as shown in https://www.ibm.com/docs/en/cobol-zos/6.4?topic=variables-example-setting-accessing-environment for PUTENV),

    passed in from another program or a JCL parameter, ACCEPT’d, read from a file or database, etc.So, we could have both false positives (saying PUTENV is not ok when it’s innocent) and false negatives (saying PUTENV is ok when it’s not).Even if we can alert people via a new compiler option to disallow or warn users of potential issues with PUTENV, someone can link in a call via any other language

    or accesses dynamic allocation via SVC99, DYNALLOC, etc. So we feel a PUTENV solution gives a false sense of security. As a result, we are not convinced a new compiler option would help a lot.As you have discussed with us, there is a workaround which is to write an exit that intercepts the inclusion of the affected routines PUTENV etc, following the linkedit step, blocking the production of the load. We agree that this detection is a good thing but it comes with the drawbacks mentioned.Due to the above reasons, we will be rejecting this idea.

  • Admin
    Basil Kanneth
    Reply
    |
    Jun 2, 2024

    This idea is being reviewed further.