Mercurial > hg
comparison mcabber/src/jabglue.c @ 403:17aa60c6dc63
Allow a different server name than the jid domain name
Sync libjabber with upstream (centericq). The libjabber patch is from
Ian Johannesen.
This allows connecting to Google Talk, for example.
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Sat, 27 Aug 2005 11:21:27 +0200 |
parents | f8f3c7493457 |
children | a9dd91e08eb3 |
comparison
equal
deleted
inserted
replaced
402:4f36d41695a9 | 403:17aa60c6dc63 |
---|---|
112 const char *resource) | 112 const char *resource) |
113 { | 113 { |
114 char *jid = g_new(char, 3 + | 114 char *jid = g_new(char, 3 + |
115 strlen(username) + strlen(servername) + strlen(resource)); | 115 strlen(username) + strlen(servername) + strlen(resource)); |
116 strcpy(jid, username); | 116 strcpy(jid, username); |
117 strcat(jid, "@"); | 117 if (!strchr(jid, '@')) { |
118 strcat(jid, servername); | 118 strcat(jid, "@"); |
119 strcat(jid, servername); | |
120 } | |
119 strcat(jid, "/"); | 121 strcat(jid, "/"); |
120 strcat(jid, resource); | 122 strcat(jid, resource); |
121 return jid; | 123 return jid; |
122 } | 124 } |
123 | 125 |
124 jconn jb_connect(const char *jid, unsigned int port, int ssl, const char *pass) | 126 jconn jb_connect(const char *jid, const char *server, unsigned int port, |
127 int ssl, const char *pass) | |
125 { | 128 { |
126 if (!port) { | 129 if (!port) { |
127 if (ssl) | 130 if (ssl) |
128 port = JABBERSSLPORT; | 131 port = JABBERSSLPORT; |
129 else | 132 else |
131 } | 134 } |
132 | 135 |
133 jb_disconnect(); | 136 jb_disconnect(); |
134 | 137 |
135 s_id = 1; | 138 s_id = 1; |
136 jc = jab_new((char*)jid, (char*)pass, port, ssl); | 139 jc = jab_new((char*)jid, (char*)pass, (char*)server, port, ssl); |
137 | 140 |
138 /* These 3 functions can deal with a NULL jc, no worry... */ | 141 /* These 3 functions can deal with a NULL jc, no worry... */ |
139 jab_logger(jc, logger); | 142 jab_logger(jc, logger); |
140 jab_packet_handler(jc, &packethandler); | 143 jab_packet_handler(jc, &packethandler); |
141 jab_state_handler(jc, &statehandler); | 144 jab_state_handler(jc, &statehandler); |