Compaq ACMS for OpenVMS
Remote Systems Management
Guide
8.11 ACMSMGMT_GET_ERR_FILTER_2
ACMS Remote Manager clients call this procedure to obtain a listing of
system messages currently being filtered from the Remote Manager, and
subsequently, the error log.
Format
int *acmsmgmt_get_err_filter_2 (sub_id_struct *sub_id_rec,CLIENT
*cl2)
Parameters
sub_id_rec
Type:
|
Sub_id_struct
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client authorization information.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
cl2
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Err_filter_data_list_2
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to record returned. If NULL, the RPC has failed. If not null,
the record contains either an error code in the status field (the RPC
succeeded, but the call failed for another reason) or the data
requested.
|
Description
This procedure obtains class information about an Error Filter. The
return pointer points to a record of type err_filter_data_list_2, which
is a union containing either an error code or a pointer to an Error
Filter record. See Section 9.5 for a description of the fields in the
Error Filter record.
If the ACMS run-time system is not running when this call is issued,
the Remote Manager returns the MGMT_NOT_MAPPED error code.
Example
|
int get_err_filter(int client_id,CLIENT *cl2)
{
int status;
err_filter_data_list_2 *err_filter;
err_filter_link_2 *nl;
struct sub_id_struct sub_rec;
sub_rec.client_id = client_id;
err_filter = acmsmgmt_get_err_filter_2(&sub_rec,cl2);
if (!err_filter) {
printf("\n RPC Call to get Error Filter failed");
return(MGMT_FAIL);
}
if (err_filter->status != MGMT_SUCCESS) {
printf("\n Call to get Error Filter failed, returning status code %d",
err_filter->status);
status = err_filter->status;
xdr_free(xdr_err_filter_data_list_2, err_filter);
free(err_filter);
return(status);
}
for (n1 = err_filter->err_filter_data_list_2_u.list; nl != NULL;
nl = nl->pNext) {
printf("Filter name = %s, and code =%X\n",
nl->err_filter_data.err_msg_name,
nl->err_filter_data.err_code);
}
xdr_free(xdr_err_filter_data_list_2, err_filter);
free(err_filter);
return(0);
}
|
In the preceding example, the acmsmgmt_get_err_filter_2 procedure is
called to fetch error filter information. If the call succeeds, the
message code and symbolic name are fetched. Otherwise, an error message
is displayed. The example in Section 6.4.1 shows how to declare and
initialize the input arguments to this procedure.
8.12 ACMSMGMT_GET_MGR_STATUS_1
ACMS Remote Manager clients call this procedure to obtain run-time
status information about a Remote Manager on a particular node.
Format
mgr_status_rec_out *acmsmgmt_get_mgr_status_1(sub_id_struct
*sub_rec, CLIENT *cl)
Parameters
sub_rec
Type:
|
Sub_id_struct
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client authorization information.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
cl
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Mgr_status_rec_out
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to a record that contains a union consisting either of a
failure code or a pointer to a structure of type mgr_status_rec, which
contains the status data. The following are the contents of this union:
|
|
|
|
|
rc
|
|
Type:
|
Integer
|
|
Access:
|
Write
|
|
Mechanism:
|
By value
|
|
Usage:
|
Failure return code.
|
|
|
|
|
data
|
|
Type:
|
Mgr_status_rec
|
|
Access:
|
Write
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Remote Manager status data record. Contains the fields from the Manager
Status table (see Section 9.8).
|
Description
This procedure gets run-time information about a Remote Manager on a
particular node. The return pointer points to a record of type
mgr_status_rec_out, which contains a union consisting of a failure
returns code or a pointer to a manager status record. See Section 9.8
for a description of the fields in the manager status record.
This procedure does not require the ACMS run-time system in order to
execute.
Example
|
int get_mgr_data(int client_id,CLIENT *cl)
{
mgr_status_rec *mgrs;
mgr_status_rec_out *mgr_data;
static struct sub_id_struct sub_rec;
int status;
sub_rec.client_id = client_id;
mgr_data = acmsmgmt_get_mgr_status_1(&sub_rec,cl);
if (!mgr_data) {
printf("\n RPC Call to get RM data failed");
return(MGMT_FAIL);
}
if (mgr_data->status != MGMT_SUCCESS) {
printf("\n Call to get RM data failed, returning status code %d",
mgr_data->status);
status = mgr_data->status;
xdr_free(xdr_mgr_status_rec_out, mgr_data);
free(mgr_data);
return(status);
}
mgrs = &mgr_data->mgr_status_rec_out_u.data;
printf("\n RPC UDP state is %d",mgrs->rpc_udp_state);
xdr_free(xdr_mgr_status_rec_out, mgr_data);
free(mgr_data);
return(0);
}
|
In the preceding example, the ACMSMGMT_GET_MGR_STATUS_1 procedure is
called to fetch the contents of the Manager Status table. If the call
succeeds, the current state of the TCP/UDP protocol in the RPC
interface is printed from the retrieved record. Otherwise, an error
message is displayed. The example in Section 6.4.1 shows how to declare
and initialize the input arguments to this procedure.
8.13 ACMSMGMT_GET_PARAM_2
ACMS Remote Manager clients call this procedure to obtain configuration
information about a Remote Manager on a particular node.
Format
param_rec_out2 *acmsmgmt_get_param_2(sub_id_struct *sub_rec, CLIENT
*cl)
Parameters
sub_rec
Type:
|
Sub_id_struct
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client authorization information.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
cl
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Param_rec_out2
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to record returned. If NULL, the RPC has failed. If not null,
the record contains either an error code in the status field (the RPC
succeeded, but the call failed for another reason), or the data
requested.
|
Description
This procedure gets configuration information about a Remote Manager on
a particular node. The return pointer points to a record of type
param_rec_out2, which contains a union consisting of either a failure
return code or a pointer to a Parameter record. See Section 9.9 for a
description of the fields in the Parameter record.
This procedure does not require the ACMS run-time system in order to
execute.
Example
|
int get_param_data(int client_id,CLIENT *cl)
{
int x = 0;
int y = 0;
param_rec2 *params;
param_rec_out2 *param_rec;
static struct sub_id_struct sub_rec;
int status;
sub_rec.client_id = client_id;
param_rec = acmsmgmt_get_param_2(&sub_rec,cl);
if (!param_rec) {
printf("\n RPC Call to get Parameter data failed");
return(MGMT_FAIL);
}
if (param_rec->status != MGMT_SUCCESS) {
printf("\n Call to get Parameter data failed, returning status code %d",
param_rec->status);
status = param_rec->status;
xdr_free(xdr_param_rec_out2, param_rec);
free(param_rec);
return(status);
}
params = ¶m_rec->param_rec_out2_u.data;
printf("\n Maximum logins allowed is %d",params->max_logins);
xdr_free(xdr_param_rec_out2, param_rec);
free(param_rec);
return(0);
}
|
In the preceding example, the ACMSMGMT_GET_PARAM_2 procedure is called
to fetch the contents of the Parameter table. If the call succeeds, the
maximum number of logins is printed from the retrieved record.
Otherwise, an error message is displayed. The example in Section 6.4.1
shows how to declare and initialize the input arguments to this
procedure.
8.14 ACMSMGMT_GET_QTI_2
ACMS Remote Manager clients call this procedure to obtain class
information about a Queued Task Initiator (QTI) on a local or remote
node.
Format
qti_rec_out_2 *acmsmgmt_get_qti_2(sub_id_struct *sub_rec, CLIENT
*cl)
Parameters
sub_rec
Type:
|
Sub_id_struct
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client authorization information.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
cl
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Qti_rec_out2
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to record returned. If NULL, the RPC has failed. If not null,
the record contains either an error code in the status field (the RPC
succeeded, but the call failed for another reason) or the data
requested.
|
Description
This procedure obtains class information about a QTI on a local or
remote node. The return pointer points to a record of type
qti_rec_out_2, which contains a union consisting of either a failure
return code or a pointer to a QTI record. See Section 9.10 for a
description of the fields in the QTI record.
If the ACMS run-time system is not running when this call is issued,
the Remote Manager returns the MGMT_NOT_MAPPED error code.
Example
|
int get_qti_data(int client_id,CLIENT *cl)
{
qti_rec_r_2 *qtis;
qti_rec_out_2 *qti_rec;
static struct sub_id_struct sub_rec;
int status;
sub_rec.client_id = client_id;
qti_rec = acmsmgmt_get_qti_2(&sub_rec,cl);
if (!qti_rec) {
printf("\n RPC Call to get QTI data failed");
return(MGMT_FAIL);
}
if (qti_rec->status != MGMT_SUCCESS) {
printf("\n Call to get QTI data failed, returning status code %d",
qti_rec->status);
status = qti_rec->status;
xdr_free(xdr_qti_rec_out_2, qti_rec);
free(qti_rec);
return(status);
}
qtis = &qti_rec->qti_rec_out_2_u.qti_rec;
printf("\n QTI process name is %s",qtis->process_name);
xdr_free(xdr_qti_rec_out_2, qti_rec);
free(qti_rec);
return(0);
}
|
In the preceding example, the ACMSMGMT_GET_QTI_2 procedure is called to
fetch QTI management information. If the call succeeds, the QTI process
name is printed from the retrieved record. Otherwise, an error message
is displayed. The example in Section 6.4.1 shows how to declare and
initialize the input arguments to this procedure.
8.15 ACMSMGMT_GET_TSC_2
ACMS Remote Manager clients call this procedure to obtain class
information about a Terminal Subsystem Controller (TSC) on a local or
remote node.
Format
tsc_rec_out_2 *acmsmgmt_get_tsc_2(sub_id_struct *sub_rec, CLIENT
*cl)
Parameters
sub_rec
Type:
|
Sub_id_struct
|
Access:
|
Read
|
|
Mechanism:
|
By reference
|
|
Usage:
|
Structure that contains the following client authorization information.
|
|
|
|
|
client_id
|
|
Type:
|
Integer
|
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
If explicit authentication is being used, a valid client ID must be
provided. If the value for client_id is 0, proxy access is used.
Client_id is obtained by calling the acms$mgmt_get_creds procedure.
|
cl
Type:
|
CLIENT *
|
Access:
|
Read
|
|
Mechanism:
|
By value
|
|
Usage:
|
Pointer to an RPC client handle previously obtained by calling the RPC
routine CLNT_CREATE.
|
Return Value
Type:
|
Tsc_rec_out_2
|
Access:
|
Write
|
Mechanism:
|
By reference
|
Usage:
|
Pointer to record returned. If NULL, the RPC has failed. If not null,
the record contains either an error code in the status field (the RPC
succeeded, but the call failed for another reason) or the data
requested.
|
Description
The return pointer points to a record of type tsc_rec_out_2, which
contains a union consisting of either a failure return code or a
pointer to a TSC record. See Section 9.14 for a description of the
fields in the record.
If the ACMS run-time system is not running when this call is issued,
the Remote Manager returns the MGMT_NOT_MAPPED error code.
Example
|
int get_tsc_data(int client_id,CLIENT *cl)
{
tsc_rec_r_2 *tscs;
tsc_rec_out_2 *tsc_rec;
static struct sub_id_struct sub_rec;
int status;
sub_rec.client_id = client_id;
tsc_rec = acmsmgmt_get_tsc_2(&sub_rec,cl);
if (!tsc_rec) {
printf("\n RPC Call to get TSC data failed");
return(MGMT_FAIL);
}
if (tsc_rec->status != MGMT_SUCCESS) {
printf("\n Call to get TSC data failed, returning status code %d",
tsc_rec->status);
status = tsc_rec->status;
xdr_free(xdr_tsc_rec_out_2, tsc_rec);
free(tsc_rec);
return(status);
}
tscs = &tsc_rec->tsc_rec_out_2_u.tsc_rec;
printf("\n TSC process name is %s",tscs->process_name);
xdr_free(xdr_tsc_rec_out_2, tsc_rec);
free(tsc_rec);
return(0);
}
|
In the preceding example, the ACMSMGMT_GET_TSC_2 procedure is called to
fetch TSC management information. If the call succeeds, the TSC's
process name is printed from the retrieved record. Otherwise, an error
message is displayed. The example in Section 6.4.1 shows how to declare
and initialize the input arguments to this procedure.