OpenTP1 Version 7 Programming Reference C Language

[Contents][Index][Back][Next]

DCRPC_BINDTBL_SET and DCRPC_DIRECT_SCHEDULE - Create the DCRPC_BINDING_TBL structure

Format

ANSI C, C++

#include <dcrpc.h>
void DCRPC_BINDTBL_SET(struct DCRPC_BINDING_TBL *direction,
                       char *nid, char *hostnm,
                       short portno, DCLONG flags)
void DCRPC_DIRECT_SCHEDULE(struct DCRPC_BINDING_TBL
                           *direction, char *hostnm,
                           short scdport, DCLONG flags)

K&R C

#include <dcrpc.h>}
void DCRPC_BINDTBL_SET(*direction, *nid, *hostnm,
                       portno, flags)
struct DCRPC_BINDING_TBL *direction;
char      *nid;
char      *hostnm;
short     portno;
DCLONG    flags;
void DCRPC_DIRECT_SCHEDULE(*direction, *hostnm, scdport,
                           flags)
struct DCRPC_BINDING_TBL  *direction;
char      *hostnm;
short     scdport;
DCLONG    flags;

Description

Create the DCRPC_BINDING_TBL structure to be specified for the first argument of the function dc_rpc_call_to() by using one of the following functions:

When you call the function dc_rpc_call_to() in which you specified a DCRPC_BINDING_TBL structure created using the DCRPC_DIRECT_SCHEDULE function, OpenTP1 sends a service request directly to the user server managed by the specified schedule service. However, you can use a DCRPC_BINDING_TBL structure creating using the DCRPC_DIRECT_SCHEDULE function only when requesting a service from a queue-receiving (queue is specified for receive_from in the user service definition) user server.

You must observe numerous rules when calling the function dc_rpc_call_to() in which you specified a DCRPC_BINDING_TBL structure created using the DCRPC_DIRECT_SCHEDULE function. For example, you must be aware of the version of OpenTP1 running the requested service and the transaction attribute of the user server. For details, see the notes for the function dc_rpc_call_to().

Arguments whose values are set in the UAP

direction

Specify the address of the DCRPC_BINDING_TBL structure used for the first argument of the function dc_rpc_call_to().

nid

In the DCRPC_BINDTBL_SET function, specify the address of the area that stores the node identifier when you want to set a node identifier as the search key that designates the requested service. End the character string with a null character. The null character is not counted in the length of the character string.

The node identifier must be the name specified for node_id in the system common definition and the host name of the requested service node must exist in the global domain# (a collection of node names specified for the all_node operand of the system common definition).

When you do not intend to set a node identifier as the search key, specify address 0 for nid.

#
This global domain means a group of the following node names.
When N is specified in the name_domain_file_use operand in the system common definition:
The global domain is a group of node names specified in the all_node and all_node_ex operands in the system common definition.
When Y is specified in the name_domain_file_use operand in the system common definition:
The global domain is a group of node names specified in the domain definition files. The domain definition files are stored under the following directories:
  • Domain definition file for all_node
    $DCCONFPATH/dcnamnd-directory
  • Domain definition file for all_node_ex
    $DCCONFPATH/dcnamndex-directory

hostnm

Specify the address of the area that stores the host name of the requested service node. You can specify a character string containing between 1 and 255 characters as the host name. End the character string with a null character. The null character is not counted in the length of the character string. The name of the specified host is one that can be mapped to an IP address with the /etc/hosts file or DNS.

It is optional whether the host name of the requested service node is specified in the global domain# (a collection of node names specified for the all_node operand of the system common definition).

When you do not intend to set a host name as the search key that designates the requested service in the DCRPC_BINDTBL_SET function, specify address 0 for hostnm.

Be sure to specify hostnm in the DCRPC_DIRECT_SCHEDULE function. If you specify address 0 for hostnm in the DCRPC_DIRECT_SCHEDULE function, calling the function dc_rpc_call_to() with the DCRPC_BINDING_TBL structure specified causes the function to return the error DCRPCER_INVALID_ARGS.

#
This global domain means a group of the following node names.
When N is specified in the name_domain_file_use operand in the system common definition:
The global domain is a group of node names specified in the all_node and all_node_ex operands in the system common definition.
When Y is specified in the name_domain_file_use operand in the system common definition:
The global domain is a group of node names specified in the domain definition files. The domain definition files are stored under the following directories:
  • Domain definition file for all_node
    $DCCONFPATH/dcnamnd-directory
  • Domain definition file for all_node_ex
    $DCCONFPATH/dcnamndex-directory

portno

scdport

For scdport in the DCRPC_DIRECT_SCHEDULE function, specify the port number of the schedule service provided by the OpenTP1 system that offers the requested service (the value assigned to scd_port in the schedule service definition for the requested service). If you specify 0, the transmission destination port number is assumed by default to be the value assigned to scd_port specified in the schedule service definition on the service request issuer. Therefore, before you can specify 0 for scdport in the DCRPC_DIRECT_SCHEDULE function, the OpenTP1 system of the service request issuer must be active and scd_port must be specified in the schedule service definition for the OpenTP1 system.

flags

Specify DCNOFLAGS.

Other related items

See the items for the function dc_rpc_call_to().

Notes

  1. The DCRPC_BINDTBL_SET function and DCRPC_DIRECT_SCHEDULE function are provided for setting the DCRPC_BINDING_TBL structure to be specified for the first argument of the function dc_rpc_call_to().
  2. Details of how to check the values specified for the arguments of the DCRPC_BINDTBL_SET function and DCRPC_DIRECT_SCHEDULE function and how to specify the values are given in the description of calling the function dc_rpc_call_to() with the DCRPC_BINDING_TBL structure specified. For details about the dc_rpc_call_to() function, see dc_rpc_call_to in 2. Remote procedure call (dc_rpc_~).
  3. The DCRPC_BINDTBL_SET function and DCRPC_DIRECT_SCHEDULE function do not acquire any UAP trace.