#include <fcntl.h>
#include <unistd.h>
+#include <tizen.h>
+
#include "resource-monitor.h"
#define REQUEST_SERVER_IP "127.0.0.1"
int ret;
if (!data)
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
/* Make buffer with struct request_data according to request */
switch (data->request) {
default:
_E("[libpass] Unknown request type, client(%d) | request(%d)",
data->client_id, data->request);
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
}
/* Send request to resource-moniotor */
data->client_id, request_name[data->request],
data->resource_id, data->resource_type,
data->ctrl_id, data->ctrl_value);
- return -EIO;
+ return TIZEN_ERROR_NO_DATA;
}
/* Receive response from resource-moniotor */
data->client_id, request_name[data->request],
data->resource_id, data->resource_type,
data->ctrl_id, data->ctrl_value);
- return -EIO;
+ return TIZEN_ERROR_NO_DATA;
}
buffer[buffer_len] = '\0';
case REQUEST_GET_RESOURCE_COUNT:
if (sscanf(buffer, "%d$%d$%d", &response_req,
&data->value_int32, &response_ret) < 3)
- ret = EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
break;
case REQUEST_GET_VALUE_UINT:
if (sscanf(buffer, "%d$%u$%d", &response_req,
&data->value_uint32, &response_ret) < 3)
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
break;
case REQUEST_GET_VALUE_INT64:
if (sscanf(buffer, "%d$%"PRId64"$%d", &response_req,
&data->value_int64, &response_ret) < 3)
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
break;
case REQUEST_GET_VALUE_UINT64:
if (sscanf(buffer, "%d$%"PRIu64"$%d", &response_req,
&data->value_uint64, &response_ret) < 3)
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
break;
case REQUEST_GET_VALUE_DOUBLE:
if (sscanf(buffer, "%d$%lf$%d", &response_req,
&data->value_double, &response_ret) < 3)
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
break;
case REQUEST_GET_VALUE_STRING:
if (sscanf(buffer, "%d$%[^$]$%d", &response_req,
data->value_string, &response_ret) < 3)
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
break;
case REQUEST_GET_RESOURCE_TS:
if (sscanf(buffer, "%d$%"PRId64"$%"PRId64"$%d", &response_req,
&data->ts_start, &data->ts_end, &response_ret) < 4)
- ret =-EINVAL;
+ ret =TIZEN_ERROR_INVALID_PARAMETER;
break;
case REQUEST_UPDATE_RESOURCE_ALL:
case REQUEST_UPDATE_RESOURCE:
case REQUEST_UNSET_RESOURCE_ATTR:
case REQUEST_IS_RESOURCE_ATTR_SET:
if (sscanf(buffer, "%d$%d", &response_req, &response_ret) < 2)
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
break;
default:
_E("[libpass] Unknown request type, client(%d) | request(%35s) | res,id(%d)type(%d) | ctrl,id(%"PRId64")val(%d) ",
data->client_id, request_name[data->request],
data->resource_id, data->resource_type,
data->ctrl_id, data->ctrl_value);
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
}
if (ret < 0) {
data->client_id, request_name[data->request],
data->resource_id, data->resource_type,
data->ctrl_id, data->ctrl_value);
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
}
return response_ret;
{
struct pass_resource_monitor_client *client;
struct sockaddr_in server_addr;
- int ret = -EIO;
+ int ret = TIZEN_ERROR_NO_DATA;
client = malloc(sizeof(struct pass_resource_monitor_client));
if (!client) {
_E("[libpass] failed to allocate memory");
- return -ENOMEM;
+ return TIZEN_ERROR_OUT_OF_MEMORY;
}
/* open socket to server */
client = find_client_by_id(id);
if (!client) {
_E("[libpass] cannot find client-%d", id);
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
}
close(client->id);
remove_client_from_list(client);
free(client);
- return 0;
+ return TIZEN_ERROR_NONE;
}
EXPORT
return ret;
*resource_count = request.value_int32;
- return 0;
+ return TIZEN_ERROR_NONE;
}
EXPORT
buffer = malloc(HUGE_BUFF_MAX + 1);
if (!buffer)
- return -ENOMEM;
+ return TIZEN_ERROR_OUT_OF_MEMORY;
va_start(args, request_type);
switch (request_type) {
default:
va_end(args);
free(buffer);
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
}
va_end(args);
if (send(id, buffer, buffer_len, 0) < 0) {
_E("[libpass] error occurred while sending buffer");
free(buffer);
- return -EIO;
+ return TIZEN_ERROR_NO_DATA;
}
/* wait for response */
if (buffer_len <= 0) {
_E("[libpass] socket disconnected");
free(buffer);
- return -EIO;
+ return TIZEN_ERROR_NO_DATA;
}
buffer[buffer_len] = '\0';
if (sscanf(buffer, "%d$%[^$]$%d", &response_req, json_string, &ret) < 3) {
free(buffer);
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
}
if (response_req != request_type) {
_E("[libpass] wrong response");
free(buffer);
- return -EINVAL;
+ return TIZEN_ERROR_INVALID_PARAMETER;
}
free(buffer);
return ret;
*value = request.value_int32;
- return 0;
+ return TIZEN_ERROR_NONE;
}
EXPORT
return ret;
*value = request.value_int64;
- return 0;
+ return TIZEN_ERROR_NONE;
}
EXPORT
return ret;
*value = request.value_uint32;
- return 0;
+ return TIZEN_ERROR_NONE;
}
EXPORT
return ret;
*value = request.value_uint64;
- return 0;
+ return TIZEN_ERROR_NONE;
}
EXPORT
return ret;
*value = request.value_double;
- return 0;
+ return TIZEN_ERROR_NONE;
}
EXPORT
return ret;
*value = g_strdup(request.value_string);
- return 0;
+ return TIZEN_ERROR_NONE;
}
static int
buffer = malloc(HUGE_BUFF_MAX + 1);
if (!buffer)
- return -ENOMEM;
+ return TIZEN_ERROR_OUT_OF_MEMORY;
array_str = malloc(HUGE_BUFF_MAX);
if (!array_str) {
free(buffer);
- return -ENOMEM;
+ return TIZEN_ERROR_OUT_OF_MEMORY;
}
buffer_len = snprintf(buffer, HUGE_BUFF_MAX, "%d$%d$%"PRIu64,
REQUEST_GET_VALUE_ARRAY, res_id, attr_id);
if (send(id, buffer, buffer_len, 0) < 0) {
_E("[libpass] error occurred while sending buffer");
- ret = -EIO;
+ ret = TIZEN_ERROR_NO_DATA;
goto out_free;
}
buffer_len = recv(id, buffer, HUGE_BUFF_MAX, 0);
if (buffer_len <= 0) {
_E("[libpass] socket disconnected");
- ret = -EIO;
+ ret = TIZEN_ERROR_NO_DATA;
goto out_free;
}
buffer[buffer_len] = '\0';
if (sscanf(buffer, "%d$%d|%d|%[^$]$%d", &response_req,
&array_type, &array_len, array_str, &ret) < 5) {
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
goto out_free;
}
if (response_req != REQUEST_GET_VALUE_ARRAY) {
_E("[libpass] wrong response");
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
goto out_free;
}
if (data_type != array_type) {
_E("[libpass] wrong data type");
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
goto out_free;
}
int32_t *new_array = malloc(array_len * sizeof(int32_t));
if (!new_array) {
- ret = -ENOMEM;
+ ret = TIZEN_ERROR_OUT_OF_MEMORY;
goto out_free;
}
int64_t *new_array = malloc(array_len * sizeof(int64_t));
if (!new_array) {
- ret = -ENOMEM;
+ ret = TIZEN_ERROR_OUT_OF_MEMORY;
goto out_free;
}
u_int32_t *new_array = malloc(array_len * sizeof(u_int32_t));
if (!new_array) {
- ret = -ENOMEM;
+ ret = TIZEN_ERROR_OUT_OF_MEMORY;
goto out_free;
}
u_int64_t *new_array = malloc(array_len * sizeof(u_int64_t));
if (!new_array) {
- ret = -ENOMEM;
+ ret = TIZEN_ERROR_OUT_OF_MEMORY;
goto out_free;
}
double *new_array = malloc(array_len * sizeof(double));
if (!new_array) {
- ret = -ENOMEM;
+ ret = TIZEN_ERROR_OUT_OF_MEMORY;
goto out_free;
}
char **new_array = calloc(array_len, sizeof(char *));
if (!new_array) {
- ret = -ENOMEM;
+ ret = TIZEN_ERROR_OUT_OF_MEMORY;
goto out_free;
}
for (int j = i - 1; j >= 0; j--)
free(new_array[j]);
free(new_array);
- ret = -ENOMEM;
+ ret = TIZEN_ERROR_OUT_OF_MEMORY;
goto out_free;
}
}
default:
_E("[libpass] not supported array data type");
- ret = -EINVAL;
+ ret = TIZEN_ERROR_INVALID_PARAMETER;
}
out_free:
*start = request.ts_start;
*end = request.ts_end;
- return 0;
+ return TIZEN_ERROR_NONE;
}