~ubuntu-branches/ubuntu/trusty/net-snmp/trusty

« back to all changes in this revision

Viewing changes to agent/mibgroup/mibII/vacm_vars.h

  • Committer: Bazaar Package Importer
  • Author(s): Martin Pitt
  • Date: 2004-09-13 12:06:21 UTC
  • Revision ID: james.westby@ubuntu.com-20040913120621-g952ntonlleihcvm
Tags: upstream-5.1.1
ImportĀ upstreamĀ versionĀ 5.1.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * SNMPv3 View-based Access Control Model
 
3
 */
 
4
 
 
5
#ifndef _MIBGROUP_VACM_H
 
6
#define _MIBGROUP_VACM_H
 
7
 
 
8
#include <net-snmp/library/vacm.h>
 
9
 
 
10
config_require(util_funcs)
 
11
config_require(mibII/vacm_context)
 
12
config_add_mib(SNMP-VIEW-BASED-ACM-MIB)
 
13
config_add_mib(SNMP-COMMUNITY-MIB)
 
14
 
 
15
     void            init_vacm_vars(void);
 
16
     void            vacm_free_group(void);
 
17
     void            vacm_free_access(void);
 
18
     void            vacm_free_view(void);
 
19
     void            vacm_parse_group(const char *, char *);
 
20
     void            vacm_parse_access(const char *, char *);
 
21
     void            vacm_parse_view(const char *, char *);
 
22
     void            vacm_parse_simple(const char *, char *);
 
23
 
 
24
     SNMPCallback    vacm_in_view_callback;
 
25
     SNMPCallback    vacm_warn_if_not_configured;
 
26
 
 
27
     int             vacm_in_view(netsnmp_pdu *, oid *, size_t, int);
 
28
 
 
29
     extern FindVarMethod var_vacm_sec2group;
 
30
     extern FindVarMethod var_vacm_access;
 
31
     extern FindVarMethod var_vacm_view;
 
32
 
 
33
     WriteMethod     write_vacmGroupName;
 
34
     WriteMethod     write_vacmSecurityToGroupStatus;
 
35
     WriteMethod     write_vacmSecurityToGroupStorageType;
 
36
 
 
37
     WriteMethod     write_vacmAccessContextMatch;
 
38
     WriteMethod     write_vacmAccessNotifyViewName;
 
39
     WriteMethod     write_vacmAccessReadViewName;
 
40
     WriteMethod     write_vacmAccessWriteViewName;
 
41
     WriteMethod     write_vacmAccessStatus;
 
42
     WriteMethod     write_vacmAccessStorageType;
 
43
 
 
44
     WriteMethod     write_vacmViewSpinLock;
 
45
     WriteMethod     write_vacmViewMask;
 
46
     WriteMethod     write_vacmViewStatus;
 
47
     WriteMethod     write_vacmViewStorageType;
 
48
     WriteMethod     write_vacmViewType;
 
49
 
 
50
 
 
51
     oid            *access_generate_OID(oid * prefix, size_t prefixLen,
 
52
                                         struct vacm_accessEntry *aptr,
 
53
                                         size_t * length);
 
54
     struct vacm_accessEntry *access_parse_accessEntry(oid * name,
 
55
                                                       size_t name_len);
 
56
     int             access_parse_oid(oid * oidIndex, size_t oidLen,
 
57
                                      unsigned char **groupName,
 
58
                                      size_t * groupNameLen,
 
59
                                      unsigned char **contextPrefix,
 
60
                                      size_t * contextPrefixLen,
 
61
                                      int *model, int *level);
 
62
 
 
63
     oid            *sec2group_generate_OID(oid * prefix, size_t prefixLen,
 
64
                                            struct vacm_groupEntry *geptr,
 
65
                                            size_t * length);
 
66
     int             sec2group_parse_oid(oid * oidIndex, size_t oidLen,
 
67
                                         int *model, unsigned char **name,
 
68
                                         size_t * nameLen);
 
69
     struct vacm_groupEntry *sec2group_parse_groupEntry(oid * name,
 
70
                                                        size_t name_len);
 
71
 
 
72
     oid            *view_generate_OID(oid * prefix, size_t prefixLen,
 
73
                                       struct vacm_viewEntry *vptr,
 
74
                                       size_t * length);
 
75
     int             view_parse_oid(oid * oidIndex, size_t oidLen,
 
76
                                    unsigned char **viewName,
 
77
                                    size_t * viewNameLen, oid ** subtree,
 
78
                                    size_t * subtreeLen);
 
79
     struct vacm_viewEntry *view_parse_viewEntry(oid * name,
 
80
                                                 size_t name_len);
 
81
 
 
82
 
 
83
 
 
84
#define OID_SNMPVACMMIB         SNMP_OID_SNMPMODULES, 16
 
85
#define OID_VACMMIBOBJECTS      OID_SNMPVACMMIB, 1
 
86
 
 
87
#define OID_VACMCONTEXTTABLE    OID_VACMMIBOBJECTS, 1
 
88
#define OID_VACMCONTEXTENTRY    OID_VACMCONTEXTTABLE, 1
 
89
 
 
90
#define OID_VACMGROUPTABLE      OID_VACMMIBOBJECTS, 2
 
91
#define OID_VACMGROUPENTRY      OID_VACMGROUPTABLE, 1
 
92
 
 
93
#define OID_VACMACCESSTABLE     OID_VACMMIBOBJECTS, 4
 
94
#define OID_VACMACCESSENTRY     OID_VACMACCESSTABLE, 1
 
95
 
 
96
#define OID_VACMMIBVIEWS        OID_VACMMIBOBJECTS, 5
 
97
#define OID_VACMVIEWTABLE       OID_VACMMIBVIEWS, 2
 
98
#define OID_VACMVIEWENTRY       OID_VACMVIEWTABLE, 1
 
99
#define SEC2GROUP_MIB_LENGTH 11
 
100
#define ACCESS_MIB_LENGTH 11
 
101
#define VIEW_MIB_LENGTH 12
 
102
#define CM_EXACT 1
 
103
#define CM_PREFIX 2
 
104
 
 
105
#endif                          /* _MIBGROUP_VACM_H */