Content-type: text/html Man page of tsalarm_get

tsalarm_get

Section: Extended Library Functions (3EXT)
Updated: 4 Sep 2007
Index Return to Main Contents
 

NAME

tsalarm_get, tsalarm_set - get or set alarm relays  

SYNOPSIS

cc [ flag... ] file... -ltsalarm [ library... ]
#include <tsalarm.h>

int tsalarm_get(uint32_t alarm_type, uint32_t *alarm_state);

int tsalarm_set(uint32_t alarm_type, uint32_t alarm_state);

 

PARAMETERS

alarm_type

The alarm type whose state is retrieved or set. Valid settings are:

TSALARM_CRITICAL

critical

TSALARM_MAJOR

major

TSALARM_MINOR

minor

TSALARM_USER

user

alarm_state

The state of the alarm. Valid settings are:

TSALARM_STATE_ON

The alarm state needs to be changed to "on", or is returned as "on".

TSALARM_STATE_OFF

The alarm state needs to be changed to "off", or is returned as "off".

TSALARM_STATE_UNKNOWN

The alarm state is returned as unknown.

 

DESCRIPTION

The TSALARM interface provides functions through which alarm relays can be controlled. The set of functions and data structures of this interface are defined in the <tsalarm.h> header.

There are four alarm relays that are controlled by ILOM. Each alarm can be set to "on" or "off" by using tsalarm interfaces provided from the host. The four alarms are labeled as critical, major, minor, and user. The user alarm is set by a user application depending on system condition. LEDs in front of the box provide a visual indication of the four alarms. The number of alarms and their meanings and labels can vary across platforms.

The tsalarm_get() function gets the state of alarm_type and returnsit in alarm_state. If successful, the function returns 0.

The tsalarm_set() function sets the state of alarm_type to the value in alarm_state. If successful, the function returns 0.

The following structures are defined in <tsalarm.h>:

typedef struct tsalarm_req {
    uint32_t     alarm_id;
    uint32_t     alarm_action;
} tsalarm_req_t;

typedef struct tsalarm_resp {
    uint32_t     status;
    uint32_t     alarm_id;
    uint32_t     alarm_state;
} tsalarm_resp_t;

 

RETURN VALUES

The tsalarm_get() and tsalarm_set() functions return the following values:

TSALARM_CHANNEL_INIT_FAILURE

Channel initialization failed.

TSALARM_COMM_FAILURE

Channel communication failed.

TSALARM_NULL_REQ_DATA

Allocating memory for request data failed.

TSALARM_SUCCESS

Successful completion.

TSALARM_UNBOUND_PACKET_RECVD

An incorrect packet was received.

The tsalarm_get() function returns the following value:

TSALARM_GET_ERROR

An error occurred while getting the alarm state.

The tsalarm_set() function returns the following value:

TSALARM_SET_ERROR

An error occurred while setting the alarm state.

 

EXAMPLES

Example 1 Get and set an alarm state.

The following example demonstrates how to get and set an alarm state.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <tsalarm.h>

void help(char *name) {
  printf("Syntax:  %s [get <type> | set <type> <state>]\n\n", name);
  printf("         type  = { critical, major, minor, user }\n");
  printf("         state = { on, off }\n\n");

  exit(0);
}

int main(int argc, char **argv) {

  uint32_t alarm_type, alarm_state;

  if (argc < 3)
     help(argv[0]);

  if (strncmp(argv[2], "critical", 1) == 0)
     alarm_type = TSALARM_CRITICAL;
  else if (strncmp(argv[2], "major", 2) == 0)
     alarm_type = TSALARM_MAJOR;
  else if (strncmp(argv[2], "minor", 2) == 0)
     alarm_type = TSALARM_MINOR;
  else if (strncmp(argv[2], "user", 1) == 0)
     alarm_type = TSALARM_USER;
  else
     help(argv[0]);

  if (strncmp(argv[1], "get", 1) == 0) {
     tsalarm_get(alarm_type, &alarm_state);
     printf("alarm = %d\tstate = %d\n", alarm_type, alarm_state);
  }
  else if (strncmp(argv[1], "set", 1) == 0) {
     if (strncmp(argv[3], "on", 2) == 0)
        alarm_state = TSALARM_STATE_ON;
     else if (strncmp(argv[3], "off", 2) == 0)
        alarm_state = TSALARM_STATE_OFF;
     else
        help(argv[0]);

     tsalarm_set(alarm_type, alarm_state);
  }
  else {
     help(argv[0]);
  }

  return 0;
}

 

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE

Interface StabilityUncommitted

MT-Level

 

SEE ALSO

libtsalarm(3LIB), attributes(5)


 

Index

NAME
SYNOPSIS
PARAMETERS
DESCRIPTION
RETURN VALUES
EXAMPLES
ATTRIBUTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 02:37:17 GMT, October 02, 2010