rmproj Subroutine

Purpose

Removes project definition from kernel project registry.

Library

The libaacct.a library.

Syntax

<sys/aacct.h>

rmproj(struct project *, int flag)

Description

The rmproj subroutine removes the definition of a project from kernel project registry. It takes a pointer to project structure as input argument that holds the name or number of a project that needs to be removed. The flag is set to indicate whether a name or number is supplied as input, as follows:
  • PROJ_NAME — Indicates that the supplied project definition only has the project name. The rmproj subroutine queries the kernel to obtain a match for the supplied project name and returns the matching entry.
  • PROJ_NUM — Indicates that the supplied project definition only has the project number. The rmproj subroutine queries the kernel to obtain a match for the supplied project number and returns the matching entry.

Parameters

Item Description
project Pointer holding the details of the project to be removed.
flag An integer flag which indicates whether the supplied project definition structure has project name and number that need to be removed.

Security

Only for privileged users. Privilege can be extended to nonroot users by granting the CAP_AACCT capability to a user.

Return Values

Item Description
0 Success
-1 Failure

Error Codes

Item Description
EINVAL Pointer is null or the flag parameter is set to an invalid value.
ENOENT Project Definition does not exist.
EPERM Permission denied.