sa_error.c 981 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include <string.h>
  2. #include <errno.h>
  3. #include "ais_types.h"
  4. const char *sa_error_list[] = {
  5. "OUT_OF_RANGE",
  6. "SA_OK",
  7. "SA_ERR_LIBRARY",
  8. "SA_ERR_VERSION",
  9. "SA_ERR_INIT",
  10. "SA_ERR_TIMEOUT",
  11. "SA_ERR_TRY_AGAIN",
  12. "SA_ERR_INVALID_PARAM",
  13. "SA_ERR_NO_MEMORY",
  14. "SA_ERR_BAD_HANDLE",
  15. "SA_ERR_BUSY",
  16. "SA_ERR_ACCESS",
  17. "SA_ERR_NOT_EXIST",
  18. "SA_ERR_NAME_TOO_LONG",
  19. "SA_ERR_EXIST",
  20. "SA_ERR_NO_SPACE",
  21. "SA_ERR_INTERRUPT",
  22. "SA_ERR_SYSTEM",
  23. "SA_ERR_NAME_NOT_FOUND",
  24. "SA_ERR_NO_RESOURCES",
  25. "SA_ERR_NOT_SUPPORTED",
  26. "SA_ERR_BAD_OPERATION",
  27. "SA_ERR_FAILED_OPERATION",
  28. "SA_ERR_MESSAGE_ERROR",
  29. "SA_ERR_NO_MESSAGE",
  30. "SA_ERR_QUEUE_FULL",
  31. "SA_ERR_QUEUE_NOT_AVAILABLE",
  32. "SA_ERR_BAD_CHECKPOINT",
  33. "SA_ERR_BAD_FLAGS",
  34. "SA_ERR_SECURITY",
  35. };
  36. int get_sa_error(SaErrorT error, char *str, int len)
  37. {
  38. if (error < SA_OK ||
  39. error > SA_ERR_SECURITY ||
  40. len < strlen(sa_error_list[error])) {
  41. errno = EINVAL;
  42. return -1;
  43. }
  44. strncpy(str, sa_error_list[error], len);
  45. return 0;
  46. }