updates.
[silc.git] / apps / silc / silc.c
index 6a766e5750216c7889efd33c2114818341f211e3..bfb4ab72b9fad180a9145e34c22153c999cc2cec 100644 (file)
@@ -275,6 +275,7 @@ SILC Secure Internet Live Conferencing, version %s\n",
   silc_client_config_register_ciphers(app->config);
   silc_client_config_register_pkcs(app->config);
   silc_client_config_register_hashfuncs(app->config);
+  silc_client_config_register_hmacs(app->config);
 
   /* Load public and private key */
   if (silc_client_load_keys(silc) == FALSE)
@@ -546,7 +547,7 @@ static void silc_client_process_message(SilcClientInternal app)
 
     /* Allocate command context. This and its internals must be free'd 
        by the command routine receiving it. */
-    ctx = silc_calloc(1, sizeof(*ctx));
+    ctx = silc_client_command_alloc();
     ctx->client = app->client;
     ctx->conn = app->conn;
     ctx->command = cmd;
@@ -560,13 +561,13 @@ static void silc_client_process_message(SilcClientInternal app)
 
   } else {
     /* Normal message to a channel */
-    if (len && app->conn->current_channel &&
+    if (len && app->conn && app->conn->current_channel &&
        app->conn->current_channel->on_channel == TRUE) {
       silc_print(app->client, "> %s", data);
-      silc_client_packet_send_to_channel(app->client, 
-                                        app->conn->sock,
-                                        app->conn->current_channel,
-                                        data, strlen(data), TRUE);
+      silc_client_send_channel_message(app->client, 
+                                      app->conn,
+                                      app->conn->current_channel,
+                                      data, strlen(data), TRUE);
     }
   }