/////// callback ///////////////
+void bp_bookmark_ipc_check_stderr(bp_error_defs basecode)
+{
+ if (bp_ipc_check_stderr(basecode) == BP_ERROR_IO_ERROR) {
+ __browser_adaptor_disconnect();
+ }
+}
+
+bp_error_defs bp_bookmark_ipc_simple_response(int fd, bp_command_fmt *cmd)
+{
+ bp_error_defs err = bp_ipc_simple_response(fd, &g_bp_command);
+ if (err == BP_ERROR_IO_ERROR) {
+ __browser_adaptor_disconnect();
+ }
+ return err;
+}
+
+bp_error_defs bp_bookmark_ipc_read_errorcode(int fd)
+{
+ bp_error_defs err = bp_ipc_read_errorcode(fd);
+ if (err == BP_ERROR_IO_ERROR) {
+ __browser_adaptor_disconnect();
+ }
+ return err;
+}
+
static void *__bookmark_adaptor_event_manager(void *arg)
{
int status = bp_common_adaptor_event_manager(arg,
}
g_bp_command.cmd = BP_CMD_NONE;
g_bp_command.id = -1;
- if(g_adaptorinfo != NULL) {
+ if (g_adaptorinfo != NULL) {
g_bp_command.cid = g_adaptorinfo->cid;
} else {
g_bp_command.cid = 0;
// create thread here ( getting event_socket )
if (pthread_create(&g_adaptor_event_thread_pid, NULL,
__bookmark_adaptor_event_manager, g_adaptorinfo) != 0) {
- TRACE_ERROR("[CRITICAL] pthread_create");
+// TRACE_ERROR("[CRITICAL] pthread_create");
return -1;
}
pthread_detach(g_adaptor_event_thread_pid);
int sock = BP_CHECK_IPC_SOCK;
g_bp_command.cmd = cmd;
g_bp_command.id = id;
- errorcode = bp_ipc_simple_response(sock, &g_bp_command);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
+ errorcode = bp_bookmark_ipc_simple_response(sock, &g_bp_command);
pthread_mutex_unlock(&g_adaptor_mutex);
if (errorcode != BP_ERROR_NONE) {
BP_PRINT_ERROR(id, errorcode);
return -1;
}
if (g_adaptor_event_thread_pid <= 0) {
- TRACE_ERROR("[CRITICAL] callback is setted, but event manager not work");
+// TRACE_ERROR("[CRITICAL] callback is setted, but event manager not work");
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
g_bp_command.cmd = BP_CMD_COMMON_CREATE;
g_bp_command.id = *id;
- errorcode = bp_ipc_simple_response(sock, &g_bp_command);
+ errorcode = bp_bookmark_ipc_simple_response(sock, &g_bp_command);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(*id, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
bookmark_id = bp_adaptor_ipc_read_int(sock);
if (bookmark_id < 0) {
- errorcode = bp_ipc_check_stderr(BP_ERROR_IO_ERROR);
- BP_PRINT_ERROR(*id, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
+ bp_bookmark_ipc_check_stderr(BP_ERROR_IO_ERROR);
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
int bp_bookmark_adaptor_get_errorcode(void)
{
- switch(errorcode) {
+ switch (errorcode) {
case BP_ERROR_INVALID_PARAMETER:
return BP_BOOKMARK_ERROR_INVALID_PARAMETER;
case BP_ERROR_OUT_OF_MEMORY:
g_bp_command.cmd = BP_CMD_COMMON_SET_EASY_ALL;
g_bp_command.id = *id;
// send command without waiting return value
- errorcode = bp_ipc_simple_response(sock, &g_bp_command);
+ errorcode = bp_bookmark_ipc_simple_response(sock, &g_bp_command);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(*id, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
if (bp_ipc_send_custom_type(sock, &new_base_info,
sizeof(bp_bookmark_base_fmt)) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(*id, errorcode);
+// BP_PRINT_ERROR(*id, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
// 2. wait id from provider.
- errorcode = bp_ipc_read_errorcode(sock);
+ errorcode = bp_bookmark_ipc_read_errorcode(sock);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(*id, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
- return -1;
+ pthread_mutex_unlock(&g_adaptor_mutex);
+ return -1;
}
pthread_mutex_unlock(&g_adaptor_mutex);
g_bp_command.id = id;
// send command without waiting return value
- errorcode = bp_ipc_simple_response(sock, &g_bp_command);
+ errorcode = bp_bookmark_ipc_simple_response(sock, &g_bp_command);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(id, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
if (bp_ipc_send_custom_type(sock, &oflags,
sizeof(bp_bookmark_offset)) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(id, errorcode);
+// BP_PRINT_ERROR(id, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
// 2. wait id from provider.
- errorcode = bp_ipc_read_errorcode(sock);
+ errorcode = bp_bookmark_ipc_read_errorcode(sock);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(id, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
- return -1;
+ pthread_mutex_unlock(&g_adaptor_mutex);
+ return -1;
}
bp_bookmark_base_fmt bookmark;
memset(&bookmark, 0x00, sizeof(bp_bookmark_base_fmt));
// getting bp_tab_base_fmt from provider.
if (bp_ipc_read_custom_type(sock, &bookmark,
sizeof(bp_bookmark_base_fmt)) < 0) {
- errorcode = bp_ipc_check_stderr(BP_ERROR_IO_ERROR);
- BP_PRINT_ERROR(id, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
+ bp_bookmark_ipc_check_stderr(BP_ERROR_IO_ERROR);
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
else
t_conds.limit = -1;
- errorcode = bp_ipc_simple_response(sock, cmd);
+ errorcode = bp_bookmark_ipc_simple_response(sock, cmd);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
bp_ipc_send_custom_type(sock, &oflags,
sizeof(bp_bookmark_offset)) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
if (bp_adaptor_ipc_send_int(sock, is_like) < 0 ||
bp_ipc_send_string(sock, keyword) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
}
// wait id from provider.
- errorcode = bp_ipc_read_errorcode(sock);
+ errorcode = bp_bookmark_ipc_read_errorcode(sock);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
if (errorcode == BP_ERROR_NO_DATA) { // success
*count = 0;
int *idlist = (int *)calloc(ids_count, sizeof(int));
if (idlist == NULL) {
errorcode = BP_ERROR_OUT_OF_MEMORY;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
if (bp_common_adaptor_clear_read_buffer(sock,
(sizeof(int) * ids_count)) < 0) {
__browser_adaptor_disconnect();
if (bp_ipc_read_blob(sock, idlist,
(sizeof(int) * ids_count)) < 0) {
free(idlist);
- errorcode = bp_ipc_check_stderr(BP_ERROR_IO_ERROR);
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
+ bp_bookmark_ipc_check_stderr(BP_ERROR_IO_ERROR);
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
else
t_limits.limit = -1;
- errorcode = bp_ipc_simple_response(sock, cmd);
+ errorcode = bp_bookmark_ipc_simple_response(sock, cmd);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
sizeof(bp_bookmark_rows_fmt)) < 0 ||
bp_adaptor_ipc_send_int(sock, times_count) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
if (bp_ipc_send_custom_type(sock, timestamps,
sizeof(bp_bookmark_timestamp_fmt)) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
if (bp_ipc_send_custom_type(sock, &oflags,
sizeof(bp_bookmark_offset)) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
if (bp_adaptor_ipc_send_int(sock, is_like) < 0 ||
bp_ipc_send_string(sock, keyword) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
}
// wait id from provider.
- errorcode = bp_ipc_read_errorcode(sock);
+ errorcode = bp_bookmark_ipc_read_errorcode(sock);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
if (errorcode == BP_ERROR_NO_DATA) { // success
*count = 0;
int *idlist = (int *)calloc(ids_count, sizeof(int));
if (idlist == NULL) {
errorcode = BP_ERROR_OUT_OF_MEMORY;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
if (bp_common_adaptor_clear_read_buffer(sock,
(sizeof(int) * ids_count)) < 0) {
__browser_adaptor_disconnect();
if (bp_ipc_read_blob(sock, idlist,
(sizeof(int) * ids_count)) < 0) {
free(idlist);
- errorcode = bp_ipc_check_stderr(BP_ERROR_IO_ERROR);
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
+ bp_bookmark_ipc_check_stderr(BP_ERROR_IO_ERROR);
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
conds.order_column_offset = order_offset;
conds.ordering = ordering;
- errorcode = bp_ipc_simple_response(sock, cmd);
+ errorcode = bp_bookmark_ipc_simple_response(sock, cmd);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
bp_adaptor_ipc_send_int(sock, is_operator) < 0 ||
bp_adaptor_ipc_send_int(sock, is_editable) < 0) {
errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
// wait id from provider.
- errorcode = bp_ipc_read_errorcode(sock);
+ errorcode = bp_bookmark_ipc_read_errorcode(sock);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
if (errorcode == BP_ERROR_NO_DATA) { // success
*count = 0;
int *idlist = (int *)calloc(ids_count, sizeof(int));
if (idlist == NULL) {
errorcode = BP_ERROR_OUT_OF_MEMORY;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
if (bp_common_adaptor_clear_read_buffer(sock,
(sizeof(int) * ids_count)) < 0) {
__browser_adaptor_disconnect();
if (bp_ipc_read_blob(sock, idlist,
(sizeof(int) * ids_count)) < 0) {
free(idlist);
- errorcode = bp_ipc_check_stderr(BP_ERROR_IO_ERROR);
- BP_PRINT_ERROR(-1, errorcode);
- if (errorcode == BP_ERROR_IO_ERROR)
- __browser_adaptor_disconnect();
+ bp_bookmark_ipc_check_stderr(BP_ERROR_IO_ERROR);
pthread_mutex_unlock(&g_adaptor_mutex);
return -1;
}
&g_adaptor_event_thread_pid);
}
+void __browser_adaptor_disconnect_mutex_unlock(void)
+{
+ errorcode = BP_ERROR_IO_ERROR;
+ BP_PRINT_ERROR(-1, errorcode);
+ __browser_adaptor_disconnect();
+ pthread_mutex_unlock(&g_adaptor_mutex);
+}
static int __browser_adaptor_connect(int callback)
{
if (g_adaptorinfo == NULL) {
bp_client_type_defs client_type = BP_CLIENT_HISTORY;
-#ifdef SUPPORT_CLOUD_SYSTEM
+#if 0 //def SUPPORT_CLOUD_SYSTEM
if (bp_common_adaptor_is_sync_adaptor() == 0)
client_type = BP_CLIENT_HISTORY_SYNC;
#endif
}
g_bp_command.cmd = BP_CMD_NONE;
g_bp_command.id = -1;
- if(g_adaptorinfo != NULL) {
+ if (g_adaptorinfo != NULL) {
g_bp_command.cid = g_adaptorinfo->cid;
} else {
g_bp_command.cid = 0;
errorcode = bp_ipc_simple_response(sock, &g_bp_command);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(*id, errorcode);
+// BP_PRINT_ERROR(*id, errorcode);
if (errorcode == BP_ERROR_IO_ERROR)
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
history_id = bp_adaptor_ipc_read_int(sock);
if (history_id < 0) {
errorcode = bp_ipc_check_stderr(BP_ERROR_IO_ERROR);
- BP_PRINT_ERROR(*id, errorcode);
+// BP_PRINT_ERROR(*id, errorcode);
if (errorcode == BP_ERROR_IO_ERROR)
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
int bp_history_adaptor_get_errorcode(void)
{
- switch(errorcode) {
+ switch (errorcode) {
case BP_ERROR_INVALID_PARAMETER:
return BP_HISTORY_ERROR_INVALID_PARAMETER;
case BP_ERROR_OUT_OF_MEMORY:
errorcode = bp_ipc_simple_response(sock, &g_bp_command);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
if (errorcode == BP_ERROR_IO_ERROR)
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
if (bp_ipc_send_custom_type(sock, &conds,
sizeof(bp_db_base_conds_fmt)) < 0 ||
bp_adaptor_ipc_send_int(sock, size) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
// wait id from provider.
unsigned int oflags = offset;
if (bp_ipc_send_custom_type(sock, &oflags,
sizeof(bp_history_offset)) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(id, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
// 2. wait id from provider.
if (bp_ipc_send_custom_type(sock, &oflags,
sizeof(bp_history_offset)) < 0 ||
bp_adaptor_ipc_send_int(sock, date_type) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
// wait id from provider.
sizeof(bp_history_rows_cond_fmt)) < 0 ||
bp_ipc_send_custom_type(sock, &oflags,
sizeof(bp_history_offset)) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
if (oflags > 0) {
if (bp_adaptor_ipc_send_int(sock, is_like) < 0 ||
bp_ipc_send_string(sock, keyword) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
}
// wait id from provider.
errorcode = bp_ipc_read_errorcode(sock);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
if (errorcode == BP_ERROR_IO_ERROR)
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
int *idlist = (int *)calloc(ids_count, sizeof(int));
if (idlist == NULL) {
errorcode = BP_ERROR_OUT_OF_MEMORY;
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
if (bp_common_adaptor_clear_read_buffer(sock,
(sizeof(int) * ids_count)) < 0) {
__browser_adaptor_disconnect();
(sizeof(int) * ids_count)) < 0) {
free(idlist);
errorcode = bp_ipc_check_stderr(BP_ERROR_IO_ERROR);
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
if (errorcode == BP_ERROR_IO_ERROR)
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
errorcode = bp_ipc_simple_response(sock, cmd);
if (errorcode != BP_ERROR_NONE) {
- BP_PRINT_ERROR(-1, errorcode);
+// BP_PRINT_ERROR(-1, errorcode);
if (errorcode == BP_ERROR_IO_ERROR)
__browser_adaptor_disconnect();
pthread_mutex_unlock(&g_adaptor_mutex);
if (bp_ipc_send_custom_type(sock, &t_limits,
sizeof(bp_history_rows_fmt)) < 0 ||
bp_adaptor_ipc_send_int(sock, times_count) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
if (times_count > 0) {
(bp_history_timestamp_fmt *)(times + i);
if (bp_ipc_send_custom_type(sock, timestamps,
sizeof(bp_history_timestamp_fmt)) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
}
oflags = 0;
if (bp_ipc_send_custom_type(sock, &oflags,
sizeof(unsigned int)) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
if (oflags > 0) {
if (bp_adaptor_ipc_send_int(sock, is_like) < 0 ||
bp_ipc_send_string(sock, keyword) < 0) {
- errorcode = BP_ERROR_IO_ERROR;
- BP_PRINT_ERROR(-1, errorcode);
- __browser_adaptor_disconnect();
- pthread_mutex_unlock(&g_adaptor_mutex);
+ __browser_adaptor_disconnect_mutex_unlock();
return -1;
}
}