comparison libpurple/cipher.c @ 16400:18d766d252f3

Add rc4_get_key_size, to match purple_cipher_context_get_option(ctx, "key_len")
author Jeffrey Connelly <jaconnel@calpoly.edu>
date Wed, 25 Apr 2007 03:42:32 +0000
parents eca698c354d0
children ca69d4253246
comparison
equal deleted inserted replaced
16399:eca698c354d0 16400:18d766d252f3
1298 1298
1299 g_free(rc4_ctx); 1299 g_free(rc4_ctx);
1300 rc4_ctx = NULL; 1300 rc4_ctx = NULL;
1301 } 1301 }
1302 1302
1303
1304
1303 static void 1305 static void
1304 rc4_set_key (PurpleCipherContext *context, const guchar * key) { 1306 rc4_set_key (PurpleCipherContext *context, const guchar * key) {
1305 struct RC4Context *ctx; 1307 struct RC4Context *ctx;
1306 guchar *state; 1308 guchar *state;
1307 guchar temp_swap; 1309 guchar temp_swap;
1330 ctx = purple_cipher_context_get_data(context); 1332 ctx = purple_cipher_context_get_data(context);
1331 1333
1332 if(!strcmp(name, "key_len")) { 1334 if(!strcmp(name, "key_len")) {
1333 ctx->key_len = GPOINTER_TO_INT(value); 1335 ctx->key_len = GPOINTER_TO_INT(value);
1334 } 1336 }
1337 }
1338
1339 static size_t
1340 rc4_get_key_size (PurpleCipherContext *context)
1341 {
1342 struct RC4Context *ctx;
1343
1344 g_return_val_if_fail(context, -1);
1345
1346 ctx = purple_cipher_context_get_data(context);
1347
1348 g_return_val_if_fail(ctx, -1);
1349
1350 return ctx->key_len;
1335 } 1351 }
1336 1352
1337 static void * 1353 static void *
1338 rc4_get_opt(PurpleCipherContext *context, const gchar *name) { 1354 rc4_get_opt(PurpleCipherContext *context, const gchar *name) {
1339 struct RC4Context *ctx; 1355 struct RC4Context *ctx;
1392 rc4_encrypt, /* encrypt */ 1408 rc4_encrypt, /* encrypt */
1393 NULL, /* decrypt */ 1409 NULL, /* decrypt */
1394 NULL, /* set salt */ 1410 NULL, /* set salt */
1395 NULL, /* get salt size */ 1411 NULL, /* get salt size */
1396 rc4_set_key, /* set key */ 1412 rc4_set_key, /* set key */
1397 NULL /* get key size */ 1413 rc4_get_key_size/* get key size */
1398 }; 1414 };
1399 1415
1400 /******************************************************************************* 1416 /*******************************************************************************
1401 * Structs 1417 * Structs
1402 ******************************************************************************/ 1418 ******************************************************************************/