96 int send_lock_read_request_impl(client_grp_comm * self, Jxta_message * message) 97 { 98 int status = (int) TRUE; 99 Jxta_message_element *msg_element = NULL; 100 char *tag = NULL; 101 102 (void) jxta_log_append(__log_cat, JXTA_LOG_LEVEL_DEBUG, 103 "[send_lock_read_request_impl] Sending lock read request via sog stub (CP tag=%d)\n",MSG_TAG_LOCK_READ_R); 104 105 tag = malloc(sizeof(char) * 5); 106 sprintf(tag, "%d", MSG_TAG_LOCK_READ_R); 107 msg_element = jxta_message_element_new_2(JUXMEM_NAME_SPACE_TAG, PROT_TAG, NULL, tag, strlen(tag), NULL); 108 109 if (jxta_message_add_element(message, msg_element) == JXTA_SUCCESS) { 110 sprintf(tag, "%d", GRP_COMM); 111 msg_element = jxta_message_element_new_2(JUXMEM_NAME_SPACE_TAG, SOG_TAG, NULL, tag, strlen(tag), NULL); 112 if (jxta_message_add_element(message, msg_element) == JXTA_SUCCESS) 113 status = grp_send(self->impl->sog, message); 114 else 115 status = (int) FALSE; 116 /* JXTA_OBJECT_RELEASE(msg_element); */ 117 } else { 118 status = (int) FALSE; 119 } 120 free(tag); 121 /* JXTA_OBJECT_RELEASE(msg_element); */ 122 return status; 123 }