Added some asserts and error checks.
authorPekka Riikonen <priikone@silcnet.org>
Wed, 6 Nov 2002 13:42:26 +0000 (13:42 +0000)
committerPekka Riikonen <priikone@silcnet.org>
Wed, 6 Nov 2002 13:42:26 +0000 (13:42 +0000)
lib/silcclient/client.c
lib/silcclient/client_channel.c
lib/silcclient/client_prvmsg.c
lib/silcclient/command.c
lib/silcclient/idlist.c

index d6894575f169179aa7b66666a85d43ef437b7fca..aa729e6fbccbc085245d9087060b3b9585261513 100644 (file)
@@ -104,6 +104,7 @@ int silc_client_init(SilcClient client)
 {
   SILC_LOG_DEBUG(("Initializing client"));
 
+  assert(client);
   assert(client->username);
   assert(client->hostname);
   assert(client->realname);
@@ -167,6 +168,7 @@ void silc_client_run(SilcClient client)
 {
   SILC_LOG_DEBUG(("Running client"));
 
+  assert(client);
   assert(client->pkcs);
   assert(client->public_key);
   assert(client->private_key);
@@ -1962,6 +1964,7 @@ silc_client_request_authentication_method(SilcClient client,
   SilcClientConnAuthRequest connauth;
   SilcBuffer packet;
 
+  assert(client && conn);
   connauth = silc_calloc(1, sizeof(*connauth));
   connauth->callback = callback;
   connauth->context = context;
index c678ab58d0eef6c4d514d6738f18a15f0eb17838..d4aac686b25dbfe4f0309d034e053fc5787fbd9d 100644 (file)
@@ -43,7 +43,7 @@ void silc_client_send_channel_message(SilcClient client,
                                      int force_send)
 {
   int i;
-  SilcSocketConnection sock = conn->sock;
+  SilcSocketConnection sock;
   SilcBuffer payload;
   SilcPacketContext packetdata;
   const SilcBufferStruct packet;
@@ -54,6 +54,8 @@ void silc_client_send_channel_message(SilcClient client,
   int block_len;
   SilcChannelUser chu;
 
+  assert(client && conn && channel);
+  sock = conn->sock;
   SILC_LOG_DEBUG(("Sending packet to channel"));
 
   chu = silc_client_on_channel(channel, conn->local_entry);
@@ -495,6 +497,8 @@ int silc_client_add_channel_private_key(SilcClient client,
   unsigned char hash[32];
   SilcSKEKeyMaterial *keymat;
 
+  assert(client && channel);
+
   if (!(channel->mode & SILC_CHANNEL_MODE_PRIVKEY))
     return FALSE;
 
@@ -573,6 +577,8 @@ int silc_client_del_channel_private_keys(SilcClient client,
 {
   SilcChannelPrivateKey entry;
 
+  assert(client && channel);
+
   if (!channel->private_keys)
     return FALSE;
 
@@ -608,6 +614,8 @@ int silc_client_del_channel_private_key(SilcClient client,
 {
   SilcChannelPrivateKey entry;
 
+  assert(client && channel);
+
   if (!channel->private_keys)
     return FALSE;
 
@@ -652,6 +660,8 @@ silc_client_list_channel_private_keys(SilcClient client,
   SilcChannelPrivateKey *keys = NULL, entry;
   SilcUInt32 count = 0;
 
+  assert(client && channel);
+
   if (!channel->private_keys)
     return NULL;
 
@@ -685,6 +695,7 @@ void silc_client_current_channel_private_key(SilcClient client,
                                             SilcChannelEntry channel,
                                             SilcChannelPrivateKey key)
 {
+  assert(client && channel);
   channel->curr_key = key;
 }
 
index 4a4fc6b43f018944ca27a70dcaea82b4525d8379..dc7b14d467760966b4bdc2220005d4869970ec13 100644 (file)
@@ -41,7 +41,7 @@ void silc_client_send_private_message(SilcClient client,
                                      SilcUInt32 data_len, 
                                      int force_send)
 {
-  SilcSocketConnection sock = conn->sock;
+  SilcSocketConnection sock;
   SilcBuffer buffer;
   SilcPacketContext packetdata;
   const SilcBufferStruct packet;
@@ -49,6 +49,8 @@ void silc_client_send_private_message(SilcClient client,
   SilcHmac hmac;
   int block_len;
 
+  assert(client && conn && client_entry);
+  sock = conn->sock;
   SILC_LOG_DEBUG(("Sending private message"));
 
   /* Encode private message payload */
@@ -329,7 +331,7 @@ int silc_client_add_private_message_key(SilcClient client,
   int i;
   SilcSKEKeyMaterial *keymat;
 
-  assert(client_entry);
+  assert(client && client_entry);
 
   /* Return FALSE if key already set */
   if (client_entry->send_key && client_entry->receive_key)
@@ -402,7 +404,7 @@ int silc_client_add_private_message_key_ske(SilcClient client,
                                            SilcSKEKeyMaterial *key,
                                            bool responder)
 {
-  assert(client_entry);
+  assert(client && client_entry);
 
   /* Return FALSE if key already set */
   if (client_entry->send_key && client_entry->receive_key)
@@ -454,11 +456,14 @@ int silc_client_send_private_message_key(SilcClient client,
                                         SilcClientEntry client_entry,
                                         int force_send)
 {
-  SilcSocketConnection sock = conn->sock;
+  SilcSocketConnection sock;
   SilcBuffer buffer;
   int cipher_len;
   const char *cipher;
 
+  assert(client && conn && client_entry);
+
+  sock = conn->sock;
   if (!client_entry->send_key || !client_entry->key)
     return FALSE;
 
@@ -496,7 +501,7 @@ int silc_client_del_private_message_key(SilcClient client,
                                        SilcClientConnection conn,
                                        SilcClientEntry client_entry)
 {
-  assert(client_entry);
+  assert(client && client_entry);
 
   if (!client_entry->send_key && !client_entry->receive_key)
     return FALSE;
@@ -535,6 +540,8 @@ silc_client_list_private_message_keys(SilcClient client,
   SilcIDCacheList list;
   SilcClientEntry entry;
 
+  assert(client && conn);
+
   if (!silc_idcache_get_all(conn->internal->client_cache, &list))
     return NULL;
 
@@ -588,6 +595,8 @@ void silc_client_set_away_message(SilcClient client,
                                  SilcClientConnection conn,
                                  char *message)
 {
+  assert(client && conn);
+
   if (!message && conn->internal->away) {
     silc_free(conn->internal->away->away);
     silc_free(conn->internal->away);
index f1be2aabfe7f7923a10accdd1b3a38efe1c50c7a..f1a9ace6308d86d3aea4dc8aa9a1f8aec0ae6894 100644 (file)
@@ -48,6 +48,8 @@ void silc_client_command_send(SilcClient client, SilcClientConnection conn,
   SilcBuffer packet;
   va_list ap;
 
+  assert(client && conn);
+
   va_start(ap, argc);
 
   packet = silc_command_payload_encode_vap(command, ident, argc, ap);
@@ -65,6 +67,8 @@ SilcClientCommand silc_client_command_find(SilcClient client,
 {
   SilcClientCommand cmd;
 
+  assert(client);
+
   silc_list_start(client->internal->commands);
   while ((cmd = silc_list_get(client->internal->commands)) != SILC_LIST_END) {
     if (cmd->name && !strcmp(cmd->name, name))
@@ -83,6 +87,7 @@ SilcClientCommand silc_client_command_find(SilcClient client,
 void silc_client_command_call(SilcClientCommand command, 
                              SilcClientCommandContext cmd)
 {
+  assert(command);
   (*command->command)((void *)cmd, NULL);
 }
 
@@ -103,6 +108,7 @@ void silc_client_command_pending(SilcClientConnection conn,
 {
   SilcClientCommandPending *reply;
 
+  assert(conn);
   reply = silc_calloc(1, sizeof(*reply));
   reply->reply_cmd = reply_cmd;
   reply->ident = ident;
index 2e4c3707280994b557f3f63066d072e768453d7b..cd48b287516a3a6d55a0b25868fe0ec6438e008e 100644 (file)
@@ -49,6 +49,10 @@ SilcClientEntry *silc_client_get_clients_local(SilcClient client,
   int i = 0;
   bool found = FALSE;
 
+  assert(client && conn);
+  if (!nickname)
+    return NULL;
+
   /* Find ID from cache */
   if (!silc_idcache_find_by_name(conn->internal->client_cache,
                                 (char *)nickname, &list))
@@ -162,6 +166,8 @@ void silc_client_get_clients(SilcClient client,
   int len;
   char *userhost;
 
+  assert(client && conn);
+
   if (!nickname)
     return;
 
@@ -375,6 +381,8 @@ void silc_client_get_clients_by_list(SilcClient client,
   GetClientsByListInternal in;
   bool wait_res = FALSE;
 
+  assert(client && conn && client_id_list);
+
   SILC_LOG_DEBUG(("Start"));
 
   in = silc_calloc(1, sizeof(*in));
@@ -500,6 +508,10 @@ SilcClientEntry silc_client_get_client_by_id(SilcClient client,
 {
   SilcIDCacheEntry id_cache;
 
+  assert(client && conn);
+  if (!client_id)
+    return NULL;
+
   SILC_LOG_DEBUG(("Finding client by ID (%s)", 
                  silc_id_render(client_id, SILC_ID_CLIENT)));
 
@@ -556,6 +568,8 @@ void silc_client_get_client_by_id_resolve(SilcClient client,
   SilcBuffer idp;
   GetClientByIDInternal i = silc_calloc(1, sizeof(*i));
 
+  assert(client && conn && client_id);
+
   SILC_LOG_DEBUG(("Start"));
 
   i->client = client;
@@ -838,6 +852,10 @@ SilcChannelEntry silc_client_get_channel(SilcClient client,
   SilcIDCacheEntry id_cache;
   SilcChannelEntry entry;
 
+  assert(client && conn);
+  if (!channel)
+    return NULL;
+
   SILC_LOG_DEBUG(("Start"));
 
   if (!silc_idcache_find_by_name_one(conn->internal->channel_cache, channel, 
@@ -862,6 +880,10 @@ SilcChannelEntry silc_client_get_channel_by_id(SilcClient client,
   SilcIDCacheEntry id_cache;
   SilcChannelEntry entry;
 
+  assert(client && conn);
+  if (!channel_id)
+    return NULL;
+
   SILC_LOG_DEBUG(("Start"));
 
   if (!silc_idcache_find_by_id_one(conn->internal->channel_cache, channel_id, 
@@ -913,6 +935,8 @@ void silc_client_get_channel_by_id_resolve(SilcClient client,
   SilcBuffer idp;
   GetChannelByIDInternal i = silc_calloc(1, sizeof(*i));
 
+  assert(client && conn && channel_id);
+
   SILC_LOG_DEBUG(("Start"));
 
   i->client = client;
@@ -948,6 +972,10 @@ SilcServerEntry silc_client_get_server(SilcClient client,
   SilcIDCacheEntry id_cache;
   SilcServerEntry entry;
 
+  assert(client && conn);
+  if (!server_name)
+    return NULL;
+
   SILC_LOG_DEBUG(("Start"));
 
   if (!silc_idcache_find_by_name_one(conn->internal->server_cache,
@@ -968,6 +996,10 @@ SilcServerEntry silc_client_get_server_by_id(SilcClient client,
   SilcIDCacheEntry id_cache;
   SilcServerEntry entry;
 
+  assert(client && conn);
+  if (!server_id)
+    return NULL;
+
   SILC_LOG_DEBUG(("Start"));
 
   if (!silc_idcache_find_by_id_one(conn->internal->server_cache,