/*
 * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
 *
 * U.S. Government Rights - Commercial software. Government users are subject
 * to the Sun Microsystems, Inc. standard license agreement and applicable
 * provisions of the FAR and its supplements.
 *
 *
 * This distribution may include materials developed by third parties. Sun,
 * Sun Microsystems, the Sun logo and Solaris are trademarks or registered
 * trademarks of Sun Microsystems, Inc. in the U.S. and other countries.
 */
 
/*
 * Note: this file originally auto-generated by mib2c using
 *        : mib2c.iterate.conf,v 1.1.1.1 2003/03/26 18:12:29 pcarroll Exp $
 */
#ifndef DEMO_MODULE_5_H
#define DEMO_MODULE_5_H


/* function declarations */
void init_demo_module_5(void);
void initialize_table_me5FileTable(void);
Netsnmp_Node_Handler me5FileTable_handler;

Netsnmp_First_Data_Point  me5FileTable_get_first_data_point;
Netsnmp_Next_Data_Point   me5FileTable_get_next_data_point;

int AddItem (char* fileName);
int ChangeItem (int fileIndex, char* fileName);
char* GetFileName( int fIndex);
void demo5_load_tokens(const char *token, char *cptr);
int demo5_persist_data(int a, int b, void *c, void *d);
int demo5_post_read_config(int a, int b, void *c, void *d);

/* column number definitions for table me5FileTable */
       #define COLUMN_ME5FILEINDEX		1
       #define COLUMN_ME5FILENAME		2
       #define COLUMN_ME5FILESIZE		3
       #define COLUMN_ME5FILEPERM		4

typedef struct fileTable{
    unsigned long     findex;
    char     fileName[MAXNAMELEN];
    unsigned long     fileSize;
    char     filePerm[MAXNAMELEN];
    struct  fileTable* next;
} fileEntry;

#define ADDFILE 1
#define RMFILE  2
#define GETFILE 3
#define ME5FILE_SET_FILENAME "me5FileName"

#define DEMO5_CONF_FILE "demo_module_5"

#endif /* DEMO_MODULE_5_H */
