10d63ce2bSvenki /*
20d63ce2bSvenki  * CDDL HEADER START
30d63ce2bSvenki  *
40d63ce2bSvenki  * The contents of this file are subject to the terms of the
50d63ce2bSvenki  * Common Development and Distribution License (the "License").
60d63ce2bSvenki  * You may not use this file except in compliance with the License.
70d63ce2bSvenki  *
80d63ce2bSvenki  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
90d63ce2bSvenki  * or http://www.opensolaris.org/os/licensing.
100d63ce2bSvenki  * See the License for the specific language governing permissions
110d63ce2bSvenki  * and limitations under the License.
120d63ce2bSvenki  *
130d63ce2bSvenki  * When distributing Covered Code, include this CDDL HEADER in each
140d63ce2bSvenki  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
150d63ce2bSvenki  * If applicable, add the following below this CDDL HEADER, with the
160d63ce2bSvenki  * fields enclosed by brackets "[]" replaced with your own identifying
170d63ce2bSvenki  * information: Portions Copyright [yyyy] [name of copyright owner]
180d63ce2bSvenki  *
190d63ce2bSvenki  * CDDL HEADER END
200d63ce2bSvenki  */
210d63ce2bSvenki 
220d63ce2bSvenki /*
23*817697f4SKelly Moyer  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
240d63ce2bSvenki  * Use is subject to license terms.
250d63ce2bSvenki  */
260d63ce2bSvenki 
270d63ce2bSvenki #ifndef	_LIBPICLSNMP_H
280d63ce2bSvenki #define	_LIBPICLSNMP_H
290d63ce2bSvenki 
300d63ce2bSvenki #ifdef	__cplusplus
310d63ce2bSvenki extern "C" {
320d63ce2bSvenki #endif
330d63ce2bSvenki 
340d63ce2bSvenki /*
350d63ce2bSvenki  * Opaque picl snmp handle
360d63ce2bSvenki  */
370d63ce2bSvenki typedef void	*picl_snmphdl_t;
380d63ce2bSvenki 
390d63ce2bSvenki /*
400d63ce2bSvenki  * Exported interfaces
410d63ce2bSvenki  */
420d63ce2bSvenki extern picl_snmphdl_t snmp_init(void);
430d63ce2bSvenki extern void snmp_fini(picl_snmphdl_t);
440d63ce2bSvenki 
450d63ce2bSvenki extern int snmp_reinit(picl_snmphdl_t hdl, int clr_linkreset);
460d63ce2bSvenki extern void snmp_register_group(picl_snmphdl_t, char *, int, int);
470d63ce2bSvenki 
480d63ce2bSvenki extern int snmp_get_int(picl_snmphdl_t, char *, int, int *, int *);
490d63ce2bSvenki extern int snmp_get_str(picl_snmphdl_t, char *, int, char **, int *);
500d63ce2bSvenki extern int snmp_get_bitstr(picl_snmphdl_t, char *, int, uchar_t **,
510d63ce2bSvenki 	    uint_t *, int *);
520d63ce2bSvenki extern int snmp_get_nextrow(picl_snmphdl_t, char *, int, int *, int *);
530d63ce2bSvenki 
54*817697f4SKelly Moyer extern int snmp_refresh_init(void);
55*817697f4SKelly Moyer extern void snmp_refresh_fini(void);
56*817697f4SKelly Moyer extern int snmp_refresh_get_next_expiration(void);
57*817697f4SKelly Moyer extern int snmp_refresh_get_cycle_hint(int);
58*817697f4SKelly Moyer extern int snmp_refresh_process_job(void);
59*817697f4SKelly Moyer 
600d63ce2bSvenki #ifdef	__cplusplus
610d63ce2bSvenki }
620d63ce2bSvenki #endif
630d63ce2bSvenki 
640d63ce2bSvenki #endif	/* _LIBPICLSNMP_H */
65