|
@@ -661,42 +661,42 @@ coroipcc_service_connect (
|
|
|
goto error_connect;
|
|
goto error_connect;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- res = memory_map (
|
|
|
|
|
|
|
+ sys_res = memory_map (
|
|
|
control_map_path,
|
|
control_map_path,
|
|
|
"control_buffer-XXXXXX",
|
|
"control_buffer-XXXXXX",
|
|
|
(void *)&ipc_instance->control_buffer,
|
|
(void *)&ipc_instance->control_buffer,
|
|
|
8192);
|
|
8192);
|
|
|
- if (res == -1) {
|
|
|
|
|
|
|
+ if (sys_res == -1) {
|
|
|
res = CS_ERR_LIBRARY;
|
|
res = CS_ERR_LIBRARY;
|
|
|
goto error_connect;
|
|
goto error_connect;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- res = memory_map (
|
|
|
|
|
|
|
+ sys_res = memory_map (
|
|
|
request_map_path,
|
|
request_map_path,
|
|
|
"request_buffer-XXXXXX",
|
|
"request_buffer-XXXXXX",
|
|
|
(void *)&ipc_instance->request_buffer,
|
|
(void *)&ipc_instance->request_buffer,
|
|
|
request_size);
|
|
request_size);
|
|
|
- if (res == -1) {
|
|
|
|
|
|
|
+ if (sys_res == -1) {
|
|
|
res = CS_ERR_LIBRARY;
|
|
res = CS_ERR_LIBRARY;
|
|
|
goto error_request_buffer;
|
|
goto error_request_buffer;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- res = memory_map (
|
|
|
|
|
|
|
+ sys_res = memory_map (
|
|
|
response_map_path,
|
|
response_map_path,
|
|
|
"response_buffer-XXXXXX",
|
|
"response_buffer-XXXXXX",
|
|
|
(void *)&ipc_instance->response_buffer,
|
|
(void *)&ipc_instance->response_buffer,
|
|
|
response_size);
|
|
response_size);
|
|
|
- if (res == -1) {
|
|
|
|
|
|
|
+ if (sys_res == -1) {
|
|
|
res = CS_ERR_LIBRARY;
|
|
res = CS_ERR_LIBRARY;
|
|
|
goto error_response_buffer;
|
|
goto error_response_buffer;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- res = circular_memory_map (
|
|
|
|
|
|
|
+ sys_res = circular_memory_map (
|
|
|
dispatch_map_path,
|
|
dispatch_map_path,
|
|
|
"dispatch_buffer-XXXXXX",
|
|
"dispatch_buffer-XXXXXX",
|
|
|
(void *)&ipc_instance->dispatch_buffer,
|
|
(void *)&ipc_instance->dispatch_buffer,
|
|
|
dispatch_size);
|
|
dispatch_size);
|
|
|
- if (res == -1) {
|
|
|
|
|
|
|
+ if (sys_res == -1) {
|
|
|
res = CS_ERR_LIBRARY;
|
|
res = CS_ERR_LIBRARY;
|
|
|
goto error_dispatch_buffer;
|
|
goto error_dispatch_buffer;
|
|
|
}
|
|
}
|
|
@@ -706,7 +706,6 @@ coroipcc_service_connect (
|
|
|
sem_init (&ipc_instance->control_buffer->sem1, 1, 0);
|
|
sem_init (&ipc_instance->control_buffer->sem1, 1, 0);
|
|
|
sem_init (&ipc_instance->control_buffer->sem2, 1, 0);
|
|
sem_init (&ipc_instance->control_buffer->sem2, 1, 0);
|
|
|
#else
|
|
#else
|
|
|
-
|
|
|
|
|
/*
|
|
/*
|
|
|
* Allocate a semaphore segment
|
|
* Allocate a semaphore segment
|
|
|
*/
|
|
*/
|
|
@@ -725,18 +724,21 @@ coroipcc_service_connect (
|
|
|
* an existing shared memory segment for which we have access
|
|
* an existing shared memory segment for which we have access
|
|
|
*/
|
|
*/
|
|
|
if (errno != EEXIST && errno != EACCES) {
|
|
if (errno != EEXIST && errno != EACCES) {
|
|
|
|
|
+ res = CS_ERR_LIBRARY;
|
|
|
goto error_exit;
|
|
goto error_exit;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
semun.val = 0;
|
|
semun.val = 0;
|
|
|
- res = semctl (ipc_instance->semid, 0, SETVAL, semun);
|
|
|
|
|
- if (res != 0) {
|
|
|
|
|
|
|
+ sys_res = semctl (ipc_instance->semid, 0, SETVAL, semun);
|
|
|
|
|
+ if (sys_res != 0) {
|
|
|
|
|
+ res = CS_ERR_LIBRARY;
|
|
|
goto error_exit;
|
|
goto error_exit;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- res = semctl (ipc_instance->semid, 1, SETVAL, semun);
|
|
|
|
|
- if (res != 0) {
|
|
|
|
|
|
|
+ sys_res = semctl (ipc_instance->semid, 1, SETVAL, semun);
|
|
|
|
|
+ if (sys_res != 0) {
|
|
|
|
|
+ res = CS_ERR_LIBRARY;
|
|
|
goto error_exit;
|
|
goto error_exit;
|
|
|
}
|
|
}
|
|
|
#endif
|
|
#endif
|