sa_error.c 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. #include <config.h>
  2. #include <stdio.h>
  3. #include <string.h>
  4. #include <stdlib.h>
  5. #include <errno.h>
  6. #include "saAis.h"
  7. const char *sa_error_list[] = {
  8. "OUT_OF_RANGE",
  9. "CS_OK",
  10. "CS_ERR_LIBRARY",
  11. "CS_ERR_VERSION",
  12. "CS_ERR_INIT",
  13. "CS_ERR_TIMEOUT",
  14. "CS_ERR_TRY_AGAIN",
  15. "CS_ERR_INVALID_PARAM",
  16. "CS_ERR_NO_MEMORY",
  17. "CS_ERR_BAD_HANDLE",
  18. "CS_ERR_BUSY",
  19. "CS_ERR_ACCESS",
  20. "CS_ERR_NOT_EXIST",
  21. "CS_ERR_NAME_TOO_LONG",
  22. "CS_ERR_EXIST",
  23. "CS_ERR_NO_SPACE",
  24. "CS_ERR_INTERRUPT",
  25. "CS_ERR_NAME_NOT_FOUND",
  26. "CS_ERR_NO_RESOURCES",
  27. "CS_ERR_NOT_SUPPORTED",
  28. "CS_ERR_BAD_OPERATION",
  29. "CS_ERR_FAILED_OPERATION",
  30. "CS_ERR_MESSAGE_ERROR",
  31. "CS_ERR_QUEUE_FULL",
  32. "CS_ERR_QUEUE_NOT_AVAILABLE",
  33. "CS_ERR_BAD_CHECKPOINT",
  34. "CS_ERR_BAD_FLAGS",
  35. "CS_ERR_NO_SECTIONS",
  36. };
  37. int get_sa_error(cs_error_t error, char *str, int len)
  38. {
  39. if (error < CS_OK ||
  40. error > CS_ERR_NO_SECTIONS ||
  41. len < strlen(sa_error_list[error])) {
  42. errno = EINVAL;
  43. return -1;
  44. }
  45. strncpy(str, sa_error_list[error], len);
  46. return 0;
  47. }
  48. char *get_sa_error_b (cs_error_t error) {
  49. return ((char *)sa_error_list[error]);
  50. }
  51. char *get_test_output (cs_error_t result, cs_error_t expected) {
  52. static char test_result[256];
  53. if (result == expected) {
  54. return ("PASSED");
  55. } else {
  56. snprintf (test_result, sizeof(test_result),
  57. "FAILED expected %s got %s",
  58. get_sa_error_b(expected), get_sa_error_b(result));
  59. return (test_result);
  60. }
  61. }