vacm_vars.h
上传用户:cxs890
上传日期:2021-05-22
资源大小:347k
文件大小:2k
源码类别:

SNMP编程

开发平台:

C/C++

  1. /*
  2.  * SNMPv3 View-based Access Control Model
  3.  */
  4. #ifndef _MIBGROUP_VACM_H
  5. #define _MIBGROUP_VACM_H
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9. config_require(util_funcs)
  10. config_add_mib(SNMP-VIEW-BASED-ACM-MIB) 
  11. config_add_mib(SNMP-COMMUNITY-MIB)
  12. void init_vacm_vars (void);
  13. void vacm_free_security (void);
  14. void vacm_free_group (void);
  15. void vacm_free_access (void);
  16. void vacm_free_view (void);
  17. void vacm_parse_security (const char *, char *);
  18. void vacm_parse_group (const char *, char *);
  19. void vacm_parse_access (const char *, char *);
  20. void vacm_parse_view (const char *, char *);
  21. void vacm_parse_simple (const char *, char *);
  22. SNMPCallback vacm_in_view_callback;
  23. int vacm_in_view (struct snmp_pdu *, oid *, size_t);
  24. void vacm_DestroyCommunityAll (void);
  25. extern FindVarMethod var_vacm_sec2group;
  26. extern FindVarMethod var_vacm_access;
  27. extern FindVarMethod var_vacm_view;
  28. extern FindVarMethod var_vacmViewSpinLock;
  29. /*Write method for sec2group*/
  30. extern WriteMethod write_vacmSecurity2GroupStatus;
  31. extern WriteMethod write_vacmSecurityToGroupStorageType;
  32. extern WriteMethod write_vacmGroupName;
  33. /*Write method for vacm access*/
  34. extern WriteMethod write_vacmAccessContextMatch;
  35. extern WriteMethod write_vacmAccessReadViewName;
  36. extern WriteMethod write_vacmAccessWriteViewName;
  37. extern WriteMethod write_vacmAccessNotifyViewName;
  38. extern WriteMethod write_vacmAccessStorageType;
  39. extern WriteMethod write_vacmAccessStatus;
  40. /*Write method for vacm view*/
  41. extern WriteMethod write_vacmViewTreeFamilyMask;
  42. extern WriteMethod write_vacmViewTreeFamilyType;
  43. extern WriteMethod write_vacmViewTreeFamilyStorageType;
  44. extern WriteMethod vacmViewTreeFamilyStatus;
  45. /*Write method for spin lock*/
  46. extern WriteMethod write_vacmViewSpinLock;
  47. #define VACMVIEWSPINLOCK 1
  48. #define OID_SNMPVACMMIB SNMP_OID_SNMPMODULES, 16
  49. #define OID_VACMMIBOBJECTS OID_SNMPVACMMIB, 1
  50. #define OID_VACMCONTEXTTABLE OID_VACMMIBOBJECTS, 1
  51. #define OID_VACMCONTEXTENTRY OID_VACMCONTEXTTABLE, 1
  52. #define OID_VACMGROUPTABLE OID_VACMMIBOBJECTS, 2
  53. #define OID_VACMGROUPENTRY OID_VACMGROUPTABLE, 1
  54. #define OID_VACMACCESSTABLE OID_VACMMIBOBJECTS, 4
  55. #define OID_VACMACCESSENTRY OID_VACMACCESSTABLE, 1
  56. #define OID_VACMMIBVIEWS OID_VACMMIBOBJECTS, 5
  57. #define OID_VACMVIEWTABLE OID_VACMMIBVIEWS, 2
  58. #define OID_VACMVIEWENTRY OID_VACMVIEWTABLE, 1
  59. #define OID_VACMSPINLOCK OID_VACMMIBVIEWS, 1 
  60. #ifdef __cplusplus
  61. }
  62. #endif
  63. #endif /* _MIBGROUP_VACM_H */