equal
deleted
inserted
replaced
139 * the 'block-size' attribute. */ |
139 * the 'block-size' attribute. */ |
140 blocksizestr = lm_message_node_get_attribute(node, "block-size"); |
140 blocksizestr = lm_message_node_get_attribute(node, "block-size"); |
141 blocksize = g_ascii_strtoll(blocksizestr, NULL, 10); |
141 blocksize = g_ascii_strtoll(blocksizestr, NULL, 10); |
142 jibb->blocksize = (blocksize < jibb->blocksize) ? blocksize : jibb->blocksize; |
142 jibb->blocksize = (blocksize < jibb->blocksize) ? blocksize : jibb->blocksize; |
143 return JINGLE_STATUS_HANDLED; |
143 return JINGLE_STATUS_HANDLED; |
144 } |
144 } |
145 } |
145 } |
146 return JINGLE_STATUS_NOT_HANDLED; |
146 return JINGLE_STATUS_NOT_HANDLED; |
147 } |
147 } |
148 |
148 |
149 LmHandlerResult jingle_ibb_handle_iq(LmMessageHandler *handler, |
149 LmHandlerResult jingle_ibb_handle_iq(LmMessageHandler *handler, |
186 handle_trans_data(jibb2, (const gchar *)data, (guint)len); |
186 handle_trans_data(jibb2, (const gchar *)data, (guint)len); |
187 |
187 |
188 return LM_HANDLER_RESULT_REMOVE_MESSAGE; |
188 return LM_HANDLER_RESULT_REMOVE_MESSAGE; |
189 } |
189 } |
190 |
190 |
191 static gchar *new_ibb_sid(void) |
191 static gchar *gen_ibb_sid(void) |
192 { |
192 { |
193 gchar *sid; |
193 gchar *sid; |
194 gchar car[] = "azertyuiopqsdfghjklmwxcvbn1234567890AZERTYUIOPQSDFGHJKLMWXCVBN"; |
194 gchar car[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; |
195 int i; |
195 int i; |
196 sid = g_new0(gchar, 7); |
196 sid = g_new0(gchar, 7); |
197 for (i = 0; i < 6; i++) |
197 for (i = 0; i < 6; i++) |
198 sid[i] = car[g_random_int_range(0, sizeof(car)/sizeof(car[0]))]; |
198 sid[i] = car[g_random_int_range(0, sizeof(car)/sizeof(car[0]))]; |
199 |
199 |
200 sid[6] = '\0'; |
200 sid[6] = '\0'; |
201 |
|
202 return sid; |
201 return sid; |
203 } |
202 } |
204 |
203 |
205 static gconstpointer new(void) |
204 static gconstpointer new(void) |
206 { |
205 { |
207 JingleIBB *ibb = g_new0(JingleIBB, 1); |
206 JingleIBB *ibb = g_new0(JingleIBB, 1); |
208 ibb->blocksize = IBB_BLOCK_SIZE_MAX; |
207 ibb->blocksize = IBB_BLOCK_SIZE_MAX; |
209 ibb->sid = new_ibb_sid(); |
208 ibb->sid = gen_ibb_sid(); |
210 ibb->seq = 0; |
209 ibb->seq = 0; |
211 |
210 |
212 return ibb; |
211 return ibb; |
213 } |
212 } |
214 |
213 |