| 91 } else { |
91 } else { |
| 92 g_free(attrib); |
92 g_free(attrib); |
| 93 } |
93 } |
| 94 } |
94 } |
| 95 |
95 |
| 96 if (js->stream_id == NULL) |
96 if (js->stream_id == NULL) { |
| |
97 #if 0 |
| |
98 /* This was underspecified in rfc3920 as only being a SHOULD, so |
| |
99 * we cannot rely on it. See #12331 and Oracle's server. |
| |
100 */ |
| 97 purple_connection_error_reason(js->gc, |
101 purple_connection_error_reason(js->gc, |
| 98 PURPLE_CONNECTION_ERROR_AUTHENTICATION_IMPOSSIBLE, |
102 PURPLE_CONNECTION_ERROR_AUTHENTICATION_IMPOSSIBLE, |
| 99 _("XMPP stream missing ID")); |
103 _("XMPP stream missing ID")); |
| |
104 #else |
| |
105 /* Instead, let's make up a fancy-schmancy stream ID, which |
| |
106 * we need to do because we flag on js->stream_id == NULL being |
| |
107 * a special case in this function. |
| |
108 */ |
| |
109 js->stream_id = purple_uuid_random(); |
| |
110 #endif |
| |
111 } |
| 100 } else { |
112 } else { |
| 101 |
113 |
| 102 if(js->current) |
114 if(js->current) |
| 103 node = xmlnode_new_child(js->current, (const char*) element_name); |
115 node = xmlnode_new_child(js->current, (const char*) element_name); |
| 104 else |
116 else |