access_extern.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. /**
  2. * \file access_extern.h
  3. *
  4. */
  5. /*
  6. * Copyright (C) 2016. Mindtree Ltd.
  7. * All rights reserved.
  8. */
  9. #ifndef _H_ACCESS_EXTERN_
  10. #define _H_ACCESS_EXTERN_
  11. #include "MS_access_api.h"
  12. /* --------------------------------------------- Data Types/ Structures */
  13. /** Current IV Index and Update State */
  14. typedef struct _MS_ACCESS_IV_INDEX
  15. {
  16. /** Current IV Index */
  17. UINT32 iv_index;
  18. /** Current IV Update State */
  19. UINT8 iv_update_state;
  20. /** IV Update time expire */
  21. UINT32 iv_expire_time;
  22. } MS_ACCESS_IV_INDEX;
  23. /* --------------------------------------------- External Global Definitions */
  24. /**
  25. * Current IV Index and associated update state
  26. */
  27. extern MS_ACCESS_IV_INDEX ms_iv_index;
  28. extern UINT8 access_default_ttl;
  29. /** Start unicast Address */
  30. extern MS_NET_ADDR ms_start_unicast_addr;
  31. /** Stop unicast Address */
  32. extern MS_NET_ADDR ms_stop_unicast_addr;
  33. extern UINT8 ms_ps_store_disable_flag;
  34. extern MS_NET_ADDR ms_provisioner_addr;
  35. extern UINT8 rx_test_ttl;
  36. extern UINT8 vendor_tid;
  37. /* Macro to get default TTL primary unicast address */
  38. #define ACCESS_CM_GET_DEFAULT_TTL(ttl) \
  39. (ttl) = access_default_ttl
  40. /* Macro to get rx TTL primary unicast address */
  41. #define ACCESS_CM_GET_RX_TTL(ttl) \
  42. (ttl) = rx_test_ttl
  43. API_RESULT MS_access_raw_data
  44. (
  45. /* IN */ MS_ACCESS_MODEL_HANDLE * handle,
  46. /* IN */ UINT32 opcode,
  47. /* IN */ MS_NET_ADDR dst_addr,
  48. /* IN */ MS_APPKEY_HANDLE appKeyHandle,
  49. /* IN */ UCHAR * data_param,
  50. /* IN */ UINT16 data_len,
  51. /* IN */ UINT8 reliable
  52. );
  53. /** Get Publish Address */
  54. API_RESULT MS_access_get_publish_addr
  55. (
  56. /* IN */ MS_ACCESS_MODEL_HANDLE * handle,
  57. /* IN */ MS_NET_ADDR * publish_addr
  58. );
  59. /** Publish */
  60. API_RESULT MS_access_publish_ex
  61. (
  62. /* IN */ MS_ACCESS_MODEL_HANDLE * handle,
  63. /* IN */ UINT32 opcode,
  64. /* IN */ MS_NET_ADDR dst_addr,
  65. /* IN */ UCHAR * data_param,
  66. /* IN */ UINT16 data_len,
  67. /* IN */ UINT8 reliable
  68. );
  69. /** Store all record */
  70. API_RESULT MS_access_ps_store_all_record(void);
  71. API_RESULT MS_access_ps_crc_check(void);
  72. #endif /* _H_ACCESS_EXTERN_ */