[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]
Base Operating System and Extensions Technical Reference, Volume 1

odm_run_method Subroutine

Purpose

Runs a specified method.

Library

Object Data Manager Library (libodm.a)

Syntax

#include <odmi.h>
int odm_run_method(MethodNameMethodParametersNewStdOutNewStdError)
char *MethodName, *MethodParameters;
char **NewStdOut, **NewStdError;

Description

The odm_run_method subroutine takes as input the name of the method to run, any parameters for the method, and addresses of locations for the odm_run_method subroutine to store pointers to the stdout (standard output) and stderr (standard error output) buffers. The application uses the pointers to access the stdout and stderr information generated by the method.

Parameters

MethodName Indicates the method to execute. The method can already be known by the applications, or can be retrieved as part of an odm_get_obj subroutine call.
MethodParameters Specifies a list of parameters for the specified method.
NewStdOut Specifies the address of a pointer to the memory where the standard output of the method is stored. If the NewStdOut parameter points to a null value (*NewStdOut == NULL), standard output is not captured.
NewStdError Specifies the address of a pointer to the memory where the standard error output of the method will be stored. If the NewStdError parameter points to a null value (*NewStdError == NULL), standard error output is not captured.

Return Values

Upon successful completion, a value of 0 is returned. If the odm_run_method subroutine fails, a value of -1 is returned and the odmerrno variable is set to an error code.

Error Codes

Failure of the odm_run_method subroutine sets the odmerrno variable to one of the following error codes:

ODMI_FORK
                          Cannot fork the child process. Make sure the child process is executable and try again.
ODMI_MALLOC_ERR
                          Cannot allocate sufficient storage. Try again later or contact the person responsible for the system.
ODMI_OPEN_PIPE
                          Cannot open a pipe to a child process. Make sure the child process is executable and try again.
ODMI_PARAMS
                          The parameters passed to the subroutine were not correct. Make sure there are the correct number of parameters and that they are valid.
ODMI_READ_PIPE
                          Cannot read from the pipe of the child process. Make sure the child process is executable and try again.

Implementation Specifics

This subroutine is part of Base Operating System (BOS) Runtime.

Related Information

The odm_get_obj subroutine.

List of ODM Commands and Subroutines.

Object Data Manager (ODM) Overview for Programmers in AIX Version 4.3 General Programming Concepts: Writing and Debugging Programs.


[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]