Jeff Thompson | 8b66600 | 2013-07-08 01:16:26 -0700 | [diff] [blame] | 1 | /** |
| 2 | * Define error codes and ndn_getErrorString to convert to a string. |
| 3 | * @author, Jeff Thompson |
| 4 | * See COPYING for copyright and distribution information. |
| 5 | */ |
| 6 | |
| 7 | #ifndef NDN_ERRORS_H |
Jeff Thompson | a0d18c9 | 2013-08-06 13:55:32 -0700 | [diff] [blame] | 8 | #define NDN_ERRORS_H |
Jeff Thompson | 8b66600 | 2013-07-08 01:16:26 -0700 | [diff] [blame] | 9 | |
Jeff Thompson | a0d18c9 | 2013-08-06 13:55:32 -0700 | [diff] [blame] | 10 | #ifdef __cplusplus |
Jeff Thompson | 8b66600 | 2013-07-08 01:16:26 -0700 | [diff] [blame] | 11 | extern "C" { |
| 12 | #endif |
| 13 | |
| 14 | typedef enum { |
| 15 | NDN_ERROR_success = 0, |
| 16 | NDN_ERROR_element_of_value_is_not_a_decimal_digit, |
| 17 | NDN_ERROR_read_past_the_end_of_the_input, |
| 18 | NDN_ERROR_the_first_header_octet_may_not_be_zero, |
| 19 | NDN_ERROR_header_type_is_not_a_DTAG, |
| 20 | NDN_ERROR_did_not_get_the_expected_DTAG, |
| 21 | NDN_ERROR_did_not_get_the_expected_element_close, |
| 22 | NDN_ERROR_item_is_not_UDATA, |
| 23 | NDN_ERROR_header_type_is_out_of_range, |
| 24 | NDN_ERROR_encodeTypeAndValue_miscalculated_N_encoding_bytes, |
| 25 | NDN_ERROR_read_a_component_past_the_maximum_number_of_components_allowed_in_the_name, |
Jeff Thompson | f326361 | 2013-07-09 12:23:36 -0700 | [diff] [blame] | 26 | NDN_ERROR_read_an_entry_past_the_maximum_number_of_entries_allowed_in_the_exclude, |
Jeff Thompson | 8b66600 | 2013-07-08 01:16:26 -0700 | [diff] [blame] | 27 | NDN_ERROR_findElementEnd_unexpected_close_tag, |
| 28 | NDN_ERROR_cannot_store_more_header_bytes_than_the_size_of_headerBuffer, |
| 29 | NDN_ERROR_findElementEnd_cannot_read_header_type_and_value, |
| 30 | NDN_ERROR_findElementEnd_unrecognized_header_type, |
| 31 | NDN_ERROR_findElementEnd_unrecognized_state, |
| 32 | NDN_ERROR_DynamicUCharArray_realloc_function_pointer_not_supplied, |
Jeff Thompson | f2e9aa0 | 2013-07-09 12:13:09 -0700 | [diff] [blame] | 33 | NDN_ERROR_DynamicUCharArray_realloc_failed, |
Jeff Thompson | 07029ec | 2013-07-11 11:12:44 -0700 | [diff] [blame] | 34 | NDN_ERROR_unrecognized_ndn_ExcludeType, |
Jeff Thompson | c2db1e4 | 2013-07-11 11:24:50 -0700 | [diff] [blame] | 35 | NDN_ERROR_unrecognized_ndn_KeyLocatorType, |
Jeff Thompson | 7329a13 | 2013-08-16 15:57:37 -0700 | [diff] [blame] | 36 | NDN_ERROR_unrecognized_ndn_KeyNameType, |
Jeff Thompson | f0fea00 | 2013-07-30 17:22:42 -0700 | [diff] [blame] | 37 | NDN_ERROR_decodeBinaryXmlKeyLocator_unrecognized_key_locator_type, |
Jeff Thompson | 7329a13 | 2013-08-16 15:57:37 -0700 | [diff] [blame] | 38 | NDN_ERROR_decodeBinaryXmlKeyLocator_unrecognized_key_name_type, |
Jeff Thompson | 0aa754a | 2013-07-17 17:42:28 -0700 | [diff] [blame] | 39 | NDN_ERROR_unrecognized_ndn_SocketTransport, |
| 40 | NDN_ERROR_SocketTransport_error_in_getaddrinfo, |
| 41 | NDN_ERROR_SocketTransport_cannot_connect_to_socket, |
| 42 | NDN_ERROR_SocketTransport_socket_is_not_open, |
| 43 | NDN_ERROR_SocketTransport_error_in_send, |
Jeff Thompson | 432c8be | 2013-08-09 16:16:08 -0700 | [diff] [blame] | 44 | NDN_ERROR_SocketTransport_error_in_poll, |
Jeff Thompson | 5796388 | 2013-08-05 16:01:25 -0700 | [diff] [blame] | 45 | NDN_ERROR_SocketTransport_error_in_recv, |
| 46 | NDN_ERROR_SocketTransport_error_in_close |
Jeff Thompson | 8b66600 | 2013-07-08 01:16:26 -0700 | [diff] [blame] | 47 | } ndn_Error; |
| 48 | |
| 49 | /** |
| 50 | * Convert the error code to its string. |
| 51 | * @param error the error code |
| 52 | * @return the error string or "unrecognized ndn_Error code" |
| 53 | */ |
| 54 | char *ndn_getErrorString(int error); |
| 55 | |
Jeff Thompson | a0d18c9 | 2013-08-06 13:55:32 -0700 | [diff] [blame] | 56 | #ifdef __cplusplus |
Jeff Thompson | 8b66600 | 2013-07-08 01:16:26 -0700 | [diff] [blame] | 57 | } |
| 58 | #endif |
| 59 | |
| 60 | #endif |