Integer type name change.
[silc.git] / lib / silcclient / command.h
index 6b8bd6266eefacb18e5a1ca54688dcee5c57b431..0b8949e15132da54cb230e7e20face8ce73f0354 100644 (file)
 #ifndef COMMAND_H
 #define COMMAND_H
 
-/* Forward declarations */
-typedef struct SilcClientCommandStruct *SilcClientCommand;
-typedef struct SilcClientCommandContextStruct *SilcClientCommandContext;
-
-#include "silcapi.h"
 #include "command_reply.h"
 
 /* Structure holding one command and pointer to its function. This
@@ -40,8 +35,8 @@ struct SilcClientCommandStruct {
   SilcCommandCb command;          /* Command function */
   SilcCommandCb reply;            /* Command reply callback */
   char *name;                     /* Name of the command (optional) */
-  uint8 max_args;                 /* Maximum arguments (optional)  */
-  uint16 ident;                           /* Identifier for command (optional)  */
+  SilcUInt8 max_args;             /* Maximum arguments (optional)  */
+  SilcUInt16 ident;                       /* Identifier for command (optional)  */
   struct SilcClientCommandStruct *next;
 };
 
@@ -53,10 +48,10 @@ struct SilcClientCommandContextStruct {
   SilcClient client;
   SilcClientConnection conn;
   SilcClientCommand command;
-  uint32 argc;
+  SilcUInt32 argc;
   unsigned char **argv;
-  uint32 *argv_lens;
-  uint32 *argv_types;
+  SilcUInt32 *argv_lens;
+  SilcUInt32 *argv_types;
   int pending;                 /* Command is being re-processed when TRUE */
   int users;                   /* Reference counter */
 };
@@ -66,9 +61,8 @@ struct SilcClientCommandContextStruct {
 typedef struct SilcClientCommandPendingStruct {
   SilcCommand reply_cmd;
   SilcCommandCb callback;
-  SilcClientPendingDestructor destructor;
   void *context;
-  uint16 ident;
+  SilcUInt16 ident;
   struct SilcClientCommandPendingStruct *next;
 } SilcClientCommandPending;
 
@@ -93,19 +87,12 @@ silc_client_command_unregister(client, SILC_COMMAND_##cmd,          \
 void silc_client_command_##func(void *context, void *context2)
 
 /* Executed pending command callback */
-#define SILC_CLIENT_PENDING_EXEC(ctx, cmd)     \
-do {                                           \
-  if ((ctx)->callback)                         \
-    (*ctx->callback)(ctx->context, ctx);       \
-} while(0)
-
-/* Execute destructor for pending command */
-#define SILC_CLIENT_PENDING_DESTRUCTOR(ctx, cmd)                       \
+#define SILC_CLIENT_PENDING_EXEC(ctx, cmd)                             \
 do {                                                                   \
+  if ((ctx)->callback)                                                 \
+    (*ctx->callback)(ctx->context, ctx);                               \
   silc_client_command_pending_del((ctx)->sock->user_data, (cmd),       \
                                  (ctx)->ident);                        \
-  if (ctx->destructor)                                                 \
-    (*ctx->destructor)(ctx->context);                                  \
 } while(0)
 
 bool silc_client_command_register(SilcClient client,
@@ -113,22 +100,22 @@ bool silc_client_command_register(SilcClient client,
                                  const char *name,
                                  SilcCommandCb command_function,
                                  SilcCommandCb command_reply_function,
-                                 uint8 max_args,
-                                 uint16 ident);
+                                 SilcUInt8 max_args,
+                                 SilcUInt16 ident);
 bool silc_client_command_unregister(SilcClient client,
                                    SilcCommand command,
                                    SilcCommandCb command_function,
                                    SilcCommandCb command_reply_function,
-                                   uint16 ident);
+                                   SilcUInt16 ident);
 void silc_client_commands_register(SilcClient client);
 void silc_client_commands_unregister(SilcClient client);
 void silc_client_command_pending_del(SilcClientConnection conn,
                                     SilcCommand reply_cmd,
-                                    uint16 ident);
+                                    SilcUInt16 ident);
 int silc_client_command_pending_check(SilcClientConnection conn,
                                      SilcClientCommandReplyContext ctx,
                                      SilcCommand command, 
-                                     uint16 ident);
+                                     SilcUInt16 ident);
 
 SILC_CLIENT_CMD_FUNC(whois);
 SILC_CLIENT_CMD_FUNC(whowas);