CEE3CBTS — Pass component broker connector parameters

Language Environment provides the following CWI service to a debugging tool, such as IBM Debug for z/OS, to pass Component Broker Connector (CBC) debug context parameters.

By using the Attach Debug_Thread function code, the debugger can distinguish between being invoked for debugging all the threads in an environment or for a single specific thread.

Syntax

void CEE3CBTS (function_code, trace_dbg_context_ptr, fc)

INT4       *function_code;
POINTER    *trace_dbg_context_ptr;
FEED_BACK  *fc;
CEE3CBTS
This CWI is callable only from C or C++. The reference to CEE3CBTS is resolved at link-edit time using the SCEELKED data set. Call this CWI interface as follows:
#pragma map(CEE3CBTS,"CEE3CBTS")
#pragma linkage(CEE3CBTS, OS)

#define attach_dbg         1
#define start_dbg          2
#define suspend_dbg        3
#define resume_dbg         4
#define stop_dbg           5
#define attach_dbg_thread  6

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <errno.h>
#include <leawi.h>
#include <ceeedcct.h>                                    
struct sess_info {
  int tcpaddress;
  int portid;
  int client_pid;
  int client_tid;
  int client_tcpaddr;
  int debugflow;
} sess_cb;

  _FEEDBACK fc;                                                        
  void CEE3CBTS( int, struct sess_info *, struct _FEEDBACK *);

main()
{
  CEE3CBTS(resume_dbg, &(sess_cb), &(fc)  );
  if ( _FBCHECK ( fc , CEE000 ) != 0 ) {
     printf("CEE3CBTS failed with message number %d\n",
            fc.tok_msgno);
  }
}                                                            
function_code (input)
A fullword binary integer with one of the following values:
1
Attach Debug
2
Start Debug
3
Suspend Debug
4
Resume Debug
5
Stop Debug
6
Attach Debug_Thread
trace_dbg_context_ptr (input/output)
This pointer contains the address of the CBC trace/debug context structure. This structure should have the attribute of inout. The six elements of this structure are defined as follows:
TCP/IP address (int)
A fullword binary integer containing the TCP/IP address of the workstation debugger GUI.
Debugger Port ID
A fullword binary integer containing the Port ID of the debugger workstation daemon.
Client Process ID
A fullword binary integer containing the Process ID of the client.
Client Thread ID
A fullword binary integer containing the Thread ID of the client.
Client IP address
A fullword binary integer containing the TCP/IP address of the works client.
Debug Flow
A fullword binary integer describing debugger flow within CBC debug scenarios.
fc (output/optional)
The feedback code indicates the result of this service. The following symbolic conditions can result from this service:
Condition Description type Description value
CEE000 Severity 0
Msg_No N/A
Message The service completed successfully.
CEE2F2 Severity 3
Msg_No 2530
Message A debug tool was not available.
CEE2F7 Severity 3
Msg_No 2535
Message Profiler loaded, debug tool was not available.
Note:
  1. For Attach Debug, Attach Debug_Thread, or Start Debug, if a debug tool is not loaded, Language Environment loads and calls the debugger and passes the parameters in the call. If the debugger is already loaded, Language Environment calls it and passes parameters in the call. If a debug tool is not available, Symbolic Feedback Code CEE2F2 is returned.
  2. For Suspend Debug, Resume Debug, or Stop Debug, if a debug tool is already loaded, Language Environment calls the debugger, passing the parameters in the call. If a debug tool is not available, Symbolic Feedback Code CEE2F2 is returned.