int request_msg_size = 0;
int sockfd = -1;
struct sockaddr_un serv_addr;
- int retry_count = 0;
+ unsigned int retry_count = 0;
mc_retvm_if(!MC_STRING_VALID(request_msg), MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "invalid query");
if (connect(sockfd, (struct sockaddr *)&serv_addr, sizeof(serv_addr)) < 0) {
mc_stderror("connect error");
close(sockfd);
-
- if (errno == EACCES)
- return MEDIA_CONTROLLER_ERROR_PERMISSION_DENIED;
- else
- return MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
+ return MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
}
size_t full_msg_size = 0;
/* Receive Response */
int recv_msg_size = -1;
int recv_msg = -1;
-RETRY:
- if ((recv_msg_size = recv(sockfd, &recv_msg, sizeof(recv_msg), 0)) < 0) {
- mc_error("recv failed : [%d]", sockfd);
- mc_stderror("recv failed");
+
+ while ((recv_msg_size = recv(sockfd, &recv_msg, sizeof(recv_msg), 0)) < 0) {
if (errno == EINTR) {
mc_stderror("catch interrupt");
- goto RETRY;
- }
+ continue;
- if (errno == EWOULDBLOCK) {
- if (retry_count < MAX_RETRY_COUNT) {
- mc_error("TIME OUT[%d]", retry_count);
- retry_count++;
- goto RETRY;
+ } else if (errno == EWOULDBLOCK) {
+ if (retry_count++ < MAX_RETRY_COUNT) {
+ mc_error("[No-Error] Time Out. retry_count [%d]", retry_count);
+ continue;
}
- close(sockfd);
-
mc_error("Timeout. Can't try any more");
- return MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
+
} else {
mc_stderror("recv failed");
- close(sockfd);
-
- return MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
}
+
+ close(sockfd);
+ return MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
}
mc_debug("RECEIVE OK [%d]", recv_msg);
#ifdef _ON_DEMAND_SOCKET_ACTIVATION
int sockfd = -1;
struct sockaddr_un serv_addr;
- unsigned int retrycount = 0;
+ unsigned int retry_count = 0;
#endif
ret = __make_service_connection(priv_type);
if (connect(sockfd, (struct sockaddr *)&serv_addr, sizeof(serv_addr)) < 0) {
mc_stderror("connect error");
close(sockfd);
-
- if (errno == EACCES)
- return MEDIA_CONTROLLER_ERROR_PERMISSION_DENIED;
- else
- return MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
+ return MEDIA_CONTROLLER_ERROR_INVALID_OPERATION;
}
close(sockfd);
mc_retvm_if(ret == MEDIA_CONTROLLER_ERROR_PERMISSION_DENIED, ret, "Permission deny!");
/* Try to make connection untill starting daemon is completed */
- while ((ret != MEDIA_CONTROLLER_ERROR_NONE) && (retrycount++ < MAX_WAIT_COUNT)) {
+ while ((ret != MEDIA_CONTROLLER_ERROR_NONE) && (retry_count++ < MAX_WAIT_COUNT)) {
MC_MILLISEC_SLEEP(200);
- mc_error("[No-Error] retry count [%d]", retrycount);
+ mc_error("[No-Error] retry_count [%d]", retry_count);
ret = __make_service_connection(priv_type);
mc_retvm_if(ret == MEDIA_CONTROLLER_ERROR_PERMISSION_DENIED, ret, "Permission deny!");
}