#define FRSH_WRN_MODULE_NOT_SUPPORTED 0x0200401E
#define FRSH_ERR_NOT_INITIALIZED 0x0200401F
#define FRSH_ERR_TOO_MANY_SHARED_OBJS 0x02004020
-#define FRSH_ERR_CONTRACT_ID_ALREADY_EXISTS 0x02004021
+#define FRSH_ERR_CONTRACT_LABEL_ALREADY_EXISTS 0x02004021
#define FRSH_ERR_BUDGET_EXPIRED 0x02004022
#define FRSH_ERR_SHARED_OBJECT_NOT_PROTECTED 0x02004023
#define FRSH_ERR_NOT_IMPLEMENTED 0x02004024
#define FRSH_ERR_CONTRACT_TYPE_NOT_COMPATIBLE 0x02004025
#define FRSH_ERR_CAPACITY_NOT_DECREASING 0x02004026
+#define FRSH_ERR_CONTRACT_LABEL_UNKNOWN 0x02004027
-#define FRSH_ERR_LAST_VALUE 0x02004027
+#define FRSH_ERR_LAST_VALUE 0x02004028
#define ERROR(nn,ss) do {if(nn>FRSH_ERR_BASE_VALUE) my_frsh_strerror(nn, ss); else perror(ss); exit (nn);} while (0)
+
+
int frsh_strerror (int error, char *message, size_t size);
void my_frsh_strerror(int error, char *sss);
\
char error_string[1024]; \
\
- sprintf(error_string, "File: %s, in function %s at line %d, error %d: %s", __FILE__, __FUNCTION__, __LINE__, (_nn_), _ss_); \
+ sprintf(error_string, "File: %s, in function %s at line %d, error %d: %s\n", __FILE__, __FUNCTION__, __LINE__, (_nn_), _ss_); \
\
if( (_nn_)>FRSH_ERR_BASE_VALUE ) { \
my_frsh_strerror( (_nn_), error_string); \