GMainLoop *main_loop;
} msg_data_t;
-static void
-free_user_info (UserInfo *info)
-{
- g_free (info->name);
- g_free (info->passwd);
-
- g_free (info);
-}
-
static void
authentication_cb (LmConnection *connection, gboolean result, gpointer ud)
{
g_print ("Auth: %d\n", result);
- free_user_info ((UserInfo *) ud);
if (result == TRUE) {
LmMessage *m;
LmConnection *connection;
LmMessageHandler *handler;
gboolean result;
- UserInfo *info;
+ UserInfo info;
gchar *jid;
msg_data_t data;
GError *error;
- if (argc < 6) {
- g_print ("Usage: %s <server> <username> <password> <connectserver> <connectport>\n", argv[0]);
+ if (argc != 4) {
+ g_print ("Usage: %s <server> <username> <password>\n", argv[0]);
return 1;
}
- connection = lm_connection_new (argv[4]);
+ connection = lm_connection_new (argv[1]);
jid = g_strdup_printf ("%s@%s", argv[2], argv[1]);
lm_connection_set_jid (connection, jid);
g_free (jid);
- lm_connection_set_port (connection, strtol (argv[5], (char **) NULL, 10));
-
data.main_loop = g_main_loop_new (NULL, FALSE);
handler = lm_message_handler_new (handle_messages, &data, NULL);
lm_message_handler_unref (handler);
- info = g_new0 (UserInfo, 1);
- info->name = g_strdup (argv[2]);
- info->passwd = g_strdup (argv[3]);
+ info.name = argv[2];
+ info.passwd = argv[3];
result = lm_connection_open (connection,
(LmResultFunction) connection_open_cb,
- info, NULL, NULL);
+ &info, NULL, NULL);
if (!result) {
g_print ("Opening connection failed: %d\n", result);
exit (1);