querydub (BPX1QDB, BPX4QDB) — Obtain the dub status of the current task

Function

The querydub callable service obtains the dub status information for the current task. The status information indicates whether the current task has already been dubbed, is ready to be dubbed, or cannot be dubbed as a process (or thread).

Requirements

Operation Environment
Authorization: Supervisor state or problem state, any PSW key
Dispatchable unit mode: Task
Cross memory mode: PASN = HASN
AMODE (BPX1QDB): 31-bit
AMODE (BPX4QDB): 64-bit
ASC mode: Primary mode
Interrupt status: Enabled for interrupts
Locks: Unlocked
Control parameters: All parameters must be addressable by the caller and in the primary address space.

Format

CALL BPX1QDB,(Return_value,
              Return_code,
              Reason_code)

AMODE 64 callers use BPX4QDB with the same parameters.

Parameters

Return_value
Returned parameter
Type:
Integer
Length:
Fullword
The name of a fullword in which the querydub service returns -1 if the request is unsuccessful. Otherwise it contains the returned status, which can have one of the following values:
Value Description
QDB_DUBBED_FIRST The task has already been dubbed. This task and this RB caused the dub.
QDB_DUBBED The task has already been dubbed. Another task or another RB caused the dub.
QDB_DUB_MAY_FAIL The task has not been dubbed; an attempt to dub the task may fail. The most likely reason for failure may be a missing or incomplete user security profile; or the lack of an OMVS segment.
QDB_DUB_OKAY The task has not been dubbed; an attempt to dub the task will probably succeed. The service has determined that an OMVS segment exists for the task. However, it has not checked for other potential errors. It is possible that the task may not have the proper UID and GID set up in the security profile, causing a subsequent dub failure.
QDB_DUB_AS_PROCESS The task has not been dubbed, but its address space has. An attempt to dub the task will cause the task to be dubbed as another process within the address space.
QDB_DUB_AS_THREAD The task has not been dubbed, but its address space has. An attempt to dub the task will cause the task to be dubbed as a thread within the process (address space).

These constant values are defined in BPXYCONS — Constants used by services.

Return_code
Returned parameter
Type:
Integer
Length:
Fullword

The name of a fullword in which the querydub service stores the return code. The querydub service returns Return_code only if Return_value is -1. See z/OS UNIX System Services Messages and Codes for a complete list of possible return code values.

Reason_code
Returned parameter
Type:
Integer
Length:
Fullword

The name of a fullword in which the querydub service stores the reason code. The querydub service returns Reason_code only if Return_value is -1. Reason_code further qualifies the Return_code value. For the reason codes, see z/OS UNIX System Services Messages and Codes.

Related services

None.

Characteristics and restrictions

There are no restrictions on the use of the querydub service.

Examples

For an example using this callable service, see BPX1QDB (querydub) example.