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

odm_rm_obj Subroutine

Purpose

Removes objects from an ODM object class.

Library

Object Data Manager Library (libodm.a)

Syntax

#include <odmi.h>
int odm_rm_obj (ClassSymbolCriteria)
CLASS_SYMBOL ClassSymbol;
char *Criteria;

Description

The odm_rm_obj subroutine deletes objects from an object class.

Parameters

ClassSymbol Identifies a class symbol returned from an odm_open_class subroutine. If the odm_open_class subroutine has not been called, this is the ClassName_CLASS structure that was created by the odmcreate command.
Criteria Contains as a string the qualifying criteria for selecting the objects to remove.

Return Values

Upon successful completion, the number of objects deleted is returned. If the odm_rm_obj subroutine is unsuccessful, a value of -1 is returned and the odmerrno variable is set to an error code.

Error Codes

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

ODMI_BAD_CRIT
                          The specified search criteria is incorrectly formed. Make sure the criteria contains only valid descriptor names and the search values are correct.
ODMI_CLASS_DNE
                          The specified object class does not exist. Check path name and permissions.
ODMI_CLASS_PERMS
                          The object class cannot be opened because of the file permissions.
ODMI_FORK
                          Cannot fork the child process. Make sure the child process is executable and try again.
ODMI_INTERNAL_ERR
                          An internal consistency problem occurred. Make sure the object class is valid or contact the person responsible for the system.
ODMI_INVALID_CLXN
                          Either the specified collection is not a valid object class collection or the collection does not contain consistent data.
ODMI_INVALID_PATH
                          The specified path does not exist on the file system. Make sure the path is accessible.
ODMI_MAGICNO_ERR
                          The class symbol does not identify a valid object class.
ODMI_MALLOC_ERR
                          Cannot allocate sufficient storage. Try again later or contact the person responsible for the system.
ODMI_OPEN_ERR
                          Cannot open the object class. Check path name and permissions.
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_ONLY
                          The specified object class is opened as read-only and cannot be modified.
ODMI_READ_PIPE
                          Cannot read from the pipe of the child process. Make sure the child process is executable and try again.
ODMI_TOOMANYCLASSES
                          Too many object classes have been accessed. An application can only access less than 1024 object classes.

Implementation Specifics

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

Related Information

The odm_add_obj subroutine, odm_open_class subroutine.

The odmcreate command, odmdelete command.

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.

For information on qualifying criteria, see "Understanding ODM Object Searches" in AIX Version 4.3 General Programming Concepts: Writing and Debugging Programs.


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