return strncmp(str1, str2, PARA_MIN(obj1->size, obj2->size));
}
-/**
- * A wrapper for strtol(3).
- *
- * \param str The string to be converted to a long integer.
- * \param result The converted value is stored here.
- *
- * \return Positive on success, -E_ATOL on errors.
- *
- * \sa strtol(3), atoi(3).
- */
-int para_atol(const char *str, long *result)
-{
- char *endptr;
- long val;
- int ret, base = 10;
-
- errno = 0; /* To distinguish success/failure after call */
- val = strtol(str, &endptr, base);
- ret = -E_ATOL;
- if (errno == ERANGE && (val == LONG_MAX || val == LONG_MIN))
- goto out; /* overflow */
- if (errno != 0 && val == 0)
- goto out; /* other error */
- if (endptr == str)
- goto out; /* No digits were found */
- if (*endptr != '\0')
- goto out; /* Further characters after number */
- *result = val;
- ret = 1;
-out:
- return ret;
-}
-
-
/*
* write input from fd to dynamically allocated buffer,
* but maximal max_size byte.