sa_error.c 1.4 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. "CS_OK",
  9. "CS_ERR_LIBRARY",
  10. "CS_ERR_VERSION",
  11. "CS_ERR_INIT",
  12. "CS_ERR_TIMEOUT",
  13. "CS_ERR_TRY_AGAIN",
  14. "CS_ERR_INVALID_PARAM",
  15. "CS_ERR_NO_MEMORY",
  16. "CS_ERR_BAD_HANDLE",
  17. "CS_ERR_BUSY",
  18. "CS_ERR_ACCESS",
  19. "CS_ERR_NOT_EXIST",
  20. "CS_ERR_NAME_TOO_LONG",
  21. "CS_ERR_EXIST",
  22. "CS_ERR_NO_SPACE",
  23. "CS_ERR_INTERRUPT",
  24. "CS_ERR_NAME_NOT_FOUND",
  25. "CS_ERR_NO_RESOURCES",
  26. "CS_ERR_NOT_SUPPORTED",
  27. "CS_ERR_BAD_OPERATION",
  28. "CS_ERR_FAILED_OPERATION",
  29. "CS_ERR_MESSAGE_ERROR",
  30. "CS_ERR_QUEUE_FULL",
  31. "CS_ERR_QUEUE_NOT_AVAILABLE",
  32. "CS_ERR_BAD_CHECKPOINT",
  33. "CS_ERR_BAD_FLAGS",
  34. "CS_ERR_NO_SECTIONS",
  35. };
  36. int get_sa_error(cs_error_t error, char *str, int len)
  37. {
  38. if (error < CS_OK ||
  39. error > CS_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 (cs_error_t error) {
  48. return ((char *)sa_error_list[error]);
  49. }
  50. char *get_test_output (cs_error_t result, cs_error_t 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. }