4
0

sa_error.c 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <stdlib.h>
  4. #include <errno.h>
  5. #include "saAis.h"
  6. const char *sa_error_list[] = {
  7. "OUT_OF_RANGE",
  8. "SA_AIS_OK",
  9. "SA_AIS_ERR_LIBRARY",
  10. "SA_AIS_ERR_VERSION",
  11. "SA_AIS_ERR_INIT",
  12. "SA_AIS_ERR_TIMEOUT",
  13. "SA_AIS_ERR_TRY_AGAIN",
  14. "SA_AIS_ERR_INVALID_PARAM",
  15. "SA_AIS_ERR_NO_MEMORY",
  16. "SA_AIS_ERR_BAD_HANDLE",
  17. "SA_AIS_ERR_BUSY",
  18. "SA_AIS_ERR_ACCESS",
  19. "SA_AIS_ERR_NOT_EXIST",
  20. "SA_AIS_ERR_NAME_TOO_LONG",
  21. "SA_AIS_ERR_EXIST",
  22. "SA_AIS_ERR_NO_SPACE",
  23. "SA_AIS_ERR_INTERRUPT",
  24. "SA_AIS_ERR_NAME_NOT_FOUND",
  25. "SA_AIS_ERR_NO_RESOURCES",
  26. "SA_AIS_ERR_NOT_SUPPORTED",
  27. "SA_AIS_ERR_BAD_OPERATION",
  28. "SA_AIS_ERR_FAILED_OPERATION",
  29. "SA_AIS_ERR_MESSAGE_ERROR",
  30. "SA_AIS_ERR_QUEUE_FULL",
  31. "SA_AIS_ERR_QUEUE_NOT_AVAILABLE",
  32. "SA_AIS_ERR_BAD_CHECKPOINT",
  33. "SA_AIS_ERR_BAD_FLAGS",
  34. "SA_AIS_ERR_NO_SECTIONS",
  35. };
  36. int get_sa_error(SaAisErrorT error, char *str, int len)
  37. {
  38. if (error < SA_AIS_OK ||
  39. error > SA_AIS_ERR_NO_SECTIONS ||
  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. }
  47. char *get_sa_error_b (SaAisErrorT error) {
  48. return ((char *)sa_error_list[error]);
  49. }
  50. char *get_test_output (SaAisErrorT result, SaAisErrorT expected) {
  51. static char test_result[256];
  52. if (result == expected) {
  53. return ("PASSED");
  54. } else {
  55. sprintf (test_result,
  56. "FAILED expected %s got %s",
  57. get_sa_error_b(expected), get_sa_error_b(result));
  58. return (test_result);
  59. }
  60. }