Mercurial > illumos > onarm
diff usr/src/cmd/agents/snmp/snmprelayd/agent.h @ 0:c9caec207d52 b86
Initial porting based on b86
author | Koji Uno <koji.uno@sun.com> |
---|---|
date | Tue, 02 Jun 2009 18:56:50 +0900 |
parents | |
children | 1a15d5aaf794 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/usr/src/cmd/agents/snmp/snmprelayd/agent.h Tue Jun 02 18:56:50 2009 +0900 @@ -0,0 +1,98 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License, Version 1.0 only + * (the "License"). You may not use this file except in compliance + * with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + * + * Copyright 1997 Sun Microsystems, Inc. All Rights Reserved. + * Use is subject to license terms. + */ + +/* HISTORY + * 5-20-96 Jerry Yeung add mib-handling data structure + * 9-20-96 Jerry Yeung change agent structure + */ + +#ifndef _AGENT_H_ +#define _AGENT_H_ + +#pragma ident "@(#)agent.h 1.10 05/06/12 SMI" + +#include "snmpdx_stub.h" + +#define SSA_OPER_STATUS_ACTIVE 1 +#define SSA_OPER_STATUS_NOT_IN_SERVICE 2 +#define SSA_OPER_STATUS_INIT 3 +#define SSA_OPER_STATUS_LOAD 4 +#define SSA_OPER_STATUS_DESTROY 5 + +typedef struct _Agent { + + /* extra elements */ + Integer agentID; + Integer agentStatus; + Integer agentTimeOut; + Integer agentPortNumber; /* same as address.sin_port */ + String agentPersonalFile; + String agentConfigFile; + String agentExecutable; + String agentVersionNum; + Integer agentProcessID; + String agentName; /* it points to name */ + Integer agentSystemUpTime; + Integer agentWatchDogTime; + String agentProtocol; + + Integer agentTreeIndex; + Integer agentTblIndex; + + struct _Manager *first_manager; + struct _Agent *next_agent; + Address address; + char *name; + u_long timeout; + struct _Subtree *first_agent_subtree; + int numOfFailRequest; +} Agent; + +extern int sap_agent_id; + +/* the agent list */ +extern Agent *first_agent; + +/* the address is a unique key for an agent */ +extern Agent *agent_find(Address *address); +extern Agent *agent_find_by_name(char* name); +extern Agent *agent_find_by_id(int id); + +/* We must invoke subtree_list_delete() before invoking */ +/* this function because the first_agent_subtree member */ +/* of the agent structures should be NULL */ +extern void agent_list_delete(); + +extern void agent_update_subtree(Agent* agent); + +extern void agent_detach_from_list(Agent* agent); + +extern void agent_destroy(Agent* agent); + +extern void trace_agents(); +extern void agent_free(Agent *ap); + +#endif +