-#if 0
-/* Encodes Argument payload with variable argument list. The arguments
- must be: unsigned int, unsigned char *, unsigned int, ... One
- {unsigned int, unsigned char * and unsigned int} forms one argument,
- thus `argc' in case when sending one {unsigned int, unsigned char *
- and unsigned int} equals one (1) and when sending two of those it
- equals two (2), and so on. This has to be preserved or bad things
- will happen. The variable arguments is: {type, data, data_len}. */
-
-SilcBuffer silc_command_encode_payload_va(unsigned int argc, ...)
-{
- va_list ap;
- unsigned char **argv;
- unsigned int *argv_lens = NULL, *argv_types = NULL;
- unsigned char *x;
- unsigned int x_len;
- unsigned int x_type;
- SilcBuffer buffer;
- int i;
-
- va_start(ap, argc);
-
- argv = silc_calloc(argc, sizeof(unsigned char *));
- argv_lens = silc_calloc(argc, sizeof(unsigned int));
- argv_types = silc_calloc(argc, sizeof(unsigned int));
-
- for (i = 0; i < argc; i++) {
- x_type = va_arg(ap, unsigned int);
- x = va_arg(ap, unsigned char *);
- x_len = va_arg(ap, unsigned int);
-
- argv[i] = silc_calloc(x_len + 1, sizeof(unsigned char));
- memcpy(argv[i], x, x_len);
- argv_lens[i] = x_len;
- argv_types[i] = x_type;
- }
-
- buffer = silc_argument_payload_encode(argc, argv,
- argv_lens, argv_types);
-
- for (i = 0; i < argc; i++)
- silc_free(argv[i]);
- silc_free(argv);
- silc_free(argv_lens);
- silc_free(argv_types);
-
- return buffer;
-}
-#endif
-
-/* Free's Command Payload */