|
|
|
@ -1,25 +1,6 @@ |
|
|
|
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|
|
|
# |
|
|
|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|
|
|
# Please add additional copyright information _after_ the line containing |
|
|
|
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|
|
|
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|
|
|
# |
|
|
|
# ROCK Linux: rock-src/package/blindcoder/loop-aes/linux26_cryptoloop.diff |
|
|
|
# ROCK Linux is Copyright (C) 1998 - 2005 Clifford Wolf |
|
|
|
# |
|
|
|
# This patch file is dual-licensed. It is available under the license the |
|
|
|
# patched project is licensed under, as long as it is an OpenSource license |
|
|
|
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms |
|
|
|
# of the GNU General Public License as published by the Free Software |
|
|
|
# Foundation; either version 2 of the License, or (at your option) any later |
|
|
|
# version. |
|
|
|
# |
|
|
|
# --- ROCK-COPYRIGHT-NOTE-END --- |
|
|
|
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/block/Kconfig linux-2.6.9/drivers/block/Kconfig
|
|
|
|
--- linux-2.6.9_orig/drivers/block/Kconfig 2004-10-18 23:53:43.000000000 +0200
|
|
|
|
+++ linux-2.6.9/drivers/block/Kconfig 2005-01-11 09:27:53.485820920 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/block/Kconfig linux-2.6.10_loopaes/drivers/block/Kconfig
|
|
|
|
--- linux-2.6.10/drivers/block/Kconfig 2004-12-24 22:34:26.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/block/Kconfig 2005-02-22 08:28:10.545741240 +0100
|
|
|
|
@@ -235,14 +235,6 @@ config BLK_DEV_LOOP
|
|
|
|
bits of, say, a sound file). This is also safe if the file resides |
|
|
|
on a remote file server. |
|
|
|
@ -71,9 +52,9 @@ diff -pruN linux-2.6.9_orig/drivers/block/Kconfig linux-2.6.9/drivers/block/Kcon |
|
|
|
|
|
|
|
config BLK_DEV_NBD |
|
|
|
tristate "Network block device support" |
|
|
|
diff -pruN linux-2.6.9_orig/drivers/block/Makefile linux-2.6.9/drivers/block/Makefile
|
|
|
|
--- linux-2.6.9_orig/drivers/block/Makefile 2004-10-18 23:54:55.000000000 +0200
|
|
|
|
+++ linux-2.6.9/drivers/block/Makefile 2005-01-11 09:27:53.486820768 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/block/Makefile linux-2.6.10_loopaes/drivers/block/Makefile
|
|
|
|
--- linux-2.6.10/drivers/block/Makefile 2004-12-24 22:35:24.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/block/Makefile 2005-02-22 08:28:10.545741240 +0100
|
|
|
|
@@ -1,6 +1,9 @@
|
|
|
|
# |
|
|
|
# Makefile for the kernel block device drivers. |
|
|
|
@ -84,9 +65,9 @@ diff -pruN linux-2.6.9_orig/drivers/block/Makefile linux-2.6.9/drivers/block/Mak |
|
|
|
# 12 June 2000, Christoph Hellwig <hch@infradead.org> |
|
|
|
# Rewritten to use lists instead of if-statements. |
|
|
|
# |
|
|
|
diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop.c
|
|
|
|
--- linux-2.6.9_orig/drivers/block/loop.c 2004-10-18 23:54:32.000000000 +0200
|
|
|
|
+++ linux-2.6.9/drivers/block/loop.c 2005-01-11 09:27:53.491820008 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/block/loop.c linux-2.6.10_loopaes/drivers/block/loop.c
|
|
|
|
--- linux-2.6.10/drivers/block/loop.c 2004-12-24 22:34:58.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/block/loop.c 2005-02-22 08:28:10.550740480 +0100
|
|
|
|
@@ -39,18 +39,46 @@
|
|
|
|
* Support up to 256 loop devices |
|
|
|
* Heinz Mauelshagen <mge@sistina.com>, Feb 2002 |
|
|
|
@ -127,8 +108,7 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
+#include <linux/version.h>
|
|
|
|
#include <linux/config.h> |
|
|
|
#include <linux/module.h> |
|
|
|
-
|
|
|
|
+#include <linux/moduleparam.h>
|
|
|
|
#include <linux/moduleparam.h> |
|
|
|
#include <linux/sched.h> |
|
|
|
#include <linux/fs.h> |
|
|
|
#include <linux/file.h> |
|
|
|
@ -697,9 +677,7 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
-lo_send(struct loop_device *lo, struct bio *bio, int bsize, loff_t pos)
|
|
|
|
+/* this function exists for compatibility with old external cipher modules */
|
|
|
|
+void loop_compute_md5_iv(sector_t devSect, u_int32_t *ivout, u_int32_t *data)
|
|
|
|
{ |
|
|
|
- struct bio_vec *bvec;
|
|
|
|
- int i, ret = 0;
|
|
|
|
+{
|
|
|
|
+ ivout[0] = 0x67452301;
|
|
|
|
+ ivout[1] = 0xefcdab89;
|
|
|
|
+ ivout[2] = 0x98badcfe;
|
|
|
|
@ -861,12 +839,11 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
+#endif
|
|
|
|
+ return(0);
|
|
|
|
+}
|
|
|
|
|
|
|
|
- bio_for_each_segment(bvec, bio, i) {
|
|
|
|
- ret = do_lo_send(lo, bvec, bsize, pos);
|
|
|
|
- if (ret < 0)
|
|
|
|
+
|
|
|
|
+static int keyClean_aes(struct loop_device *lo)
|
|
|
|
+{
|
|
|
|
{ |
|
|
|
- struct bio_vec *bvec;
|
|
|
|
- int i, ret = 0;
|
|
|
|
+ if(lo->key_data) {
|
|
|
|
+ clearAndFreeMultiKey((AESmultiKey *)lo->key_data);
|
|
|
|
+ lo->key_data = 0;
|
|
|
|
@ -890,7 +867,10 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
+ }
|
|
|
|
+ return err;
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
|
|
|
|
- bio_for_each_segment(bvec, bio, i) {
|
|
|
|
- ret = do_lo_send(lo, bvec, bsize, pos);
|
|
|
|
- if (ret < 0)
|
|
|
|
+static struct loop_func_table funcs_aes = {
|
|
|
|
+ number: 16, /* 16 == AES */
|
|
|
|
+ transfer: transfer_aes,
|
|
|
|
@ -1025,14 +1005,15 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
+ atomic_set(&bio->bi_cnt, 1);
|
|
|
|
+ bio->bi_next = NULL;
|
|
|
|
+ bio_put(bio);
|
|
|
|
+ }
|
|
|
|
} |
|
|
|
+}
|
|
|
|
+
|
|
|
|
+static int loop_prealloc_init(struct loop_device *lo, int y)
|
|
|
|
+{
|
|
|
|
+ struct bio *bio;
|
|
|
|
+ int x;
|
|
|
|
+
|
|
|
|
|
|
|
|
- flush_dcache_page(p->page);
|
|
|
|
+ if(!y) {
|
|
|
|
+ y = lo_prealloc[0];
|
|
|
|
+ for (x = 1; x < (sizeof(lo_prealloc) / sizeof(int)); x += 2) {
|
|
|
|
@ -1043,7 +1024,11 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ lo->lo_bio_flsh = (y * 3) / 4;
|
|
|
|
+
|
|
|
|
|
|
|
|
- desc->count = count - size;
|
|
|
|
- desc->written += size;
|
|
|
|
- p->offset += size;
|
|
|
|
- return size;
|
|
|
|
+ for (x = 0; x < y; x++) {
|
|
|
|
+ bio = bio_alloc(GFP_KERNEL, 1);
|
|
|
|
+ if (!bio) {
|
|
|
|
@ -1071,37 +1056,14 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
+ bio->bi_vcnt = 1;
|
|
|
|
+ bio->bi_next = lo->lo_bio_free1;
|
|
|
|
+ lo->lo_bio_free1 = bio;
|
|
|
|
} |
|
|
|
+ return 0;
|
|
|
|
+}
|
|
|
|
|
|
|
|
- flush_dcache_page(p->page);
|
|
|
|
+static void loop_add_queue_last(struct loop_device *lo, struct bio *bio, struct bio **q)
|
|
|
|
+{
|
|
|
|
+ unsigned long flags;
|
|
|
|
|
|
|
|
- desc->count = count - size;
|
|
|
|
- desc->written += size;
|
|
|
|
- p->offset += size;
|
|
|
|
- return size;
|
|
|
|
+ spin_lock_irqsave(&lo->lo_lock, flags);
|
|
|
|
+ if (*q) {
|
|
|
|
+ bio->bi_next = (*q)->bi_next;
|
|
|
|
+ (*q)->bi_next = bio;
|
|
|
|
+ } else {
|
|
|
|
+ bio->bi_next = bio;
|
|
|
|
+ }
|
|
|
|
+ *q = bio;
|
|
|
|
+ spin_unlock_irqrestore(&lo->lo_lock, flags);
|
|
|
|
+
|
|
|
|
+ if (waitqueue_active(&lo->lo_bio_wait))
|
|
|
|
+ wake_up_interruptible(&lo->lo_bio_wait);
|
|
|
|
+ return 0;
|
|
|
|
} |
|
|
|
|
|
|
|
-static int
|
|
|
|
-do_lo_receive(struct loop_device *lo,
|
|
|
|
- struct bio_vec *bvec, int bsize, loff_t pos)
|
|
|
|
+static void loop_add_queue_first(struct loop_device *lo, struct bio *bio, struct bio **q)
|
|
|
|
+static void loop_add_queue_last(struct loop_device *lo, struct bio *bio, struct bio **q)
|
|
|
|
{ |
|
|
|
- struct lo_read_data cookie;
|
|
|
|
- struct file *file;
|
|
|
|
@ -1115,30 +1077,48 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
- retval = file->f_op->sendfile(file, &pos, bvec->bv_len,
|
|
|
|
- lo_read_actor, &cookie);
|
|
|
|
- return (retval < 0)? retval: 0;
|
|
|
|
+ spin_lock_irq(&lo->lo_lock);
|
|
|
|
+ unsigned long flags;
|
|
|
|
+
|
|
|
|
+ spin_lock_irqsave(&lo->lo_lock, flags);
|
|
|
|
+ if (*q) {
|
|
|
|
+ bio->bi_next = (*q)->bi_next;
|
|
|
|
+ (*q)->bi_next = bio;
|
|
|
|
+ } else {
|
|
|
|
+ bio->bi_next = bio;
|
|
|
|
+ *q = bio;
|
|
|
|
+ }
|
|
|
|
+ spin_unlock_irq(&lo->lo_lock);
|
|
|
|
+ *q = bio;
|
|
|
|
+ spin_unlock_irqrestore(&lo->lo_lock, flags);
|
|
|
|
+
|
|
|
|
+ if (waitqueue_active(&lo->lo_bio_wait))
|
|
|
|
+ wake_up_interruptible(&lo->lo_bio_wait);
|
|
|
|
} |
|
|
|
|
|
|
|
-static int
|
|
|
|
-lo_receive(struct loop_device *lo, struct bio *bio, int bsize, loff_t pos)
|
|
|
|
+static struct bio *loop_get_bio(struct loop_device *lo, int *list_nr)
|
|
|
|
+static void loop_add_queue_first(struct loop_device *lo, struct bio *bio, struct bio **q)
|
|
|
|
{ |
|
|
|
- struct bio_vec *bvec;
|
|
|
|
- int i, ret = 0;
|
|
|
|
+ struct bio *bio = NULL, *last;
|
|
|
|
+ spin_lock_irq(&lo->lo_lock);
|
|
|
|
+ if (*q) {
|
|
|
|
+ bio->bi_next = (*q)->bi_next;
|
|
|
|
+ (*q)->bi_next = bio;
|
|
|
|
+ } else {
|
|
|
|
+ bio->bi_next = bio;
|
|
|
|
+ *q = bio;
|
|
|
|
+ }
|
|
|
|
+ spin_unlock_irq(&lo->lo_lock);
|
|
|
|
+}
|
|
|
|
|
|
|
|
- bio_for_each_segment(bvec, bio, i) {
|
|
|
|
- ret = do_lo_receive(lo, bvec, bsize, pos);
|
|
|
|
- if (ret < 0)
|
|
|
|
- break;
|
|
|
|
- pos += bvec->bv_len;
|
|
|
|
+static struct bio *loop_get_bio(struct loop_device *lo, int *list_nr)
|
|
|
|
+{
|
|
|
|
+ struct bio *bio = NULL, *last;
|
|
|
|
+
|
|
|
|
+ spin_lock_irq(&lo->lo_lock);
|
|
|
|
+ if ((last = lo->lo_bio_que0)) {
|
|
|
|
+ bio = last->bi_next;
|
|
|
|
@ -2170,9 +2150,9 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
+ } else
|
|
|
|
goto out_putf; |
|
|
|
- }
|
|
|
|
-
|
|
|
|
- size = get_loop_size(lo, file);
|
|
|
|
|
|
|
|
- size = get_loop_size(lo, file);
|
|
|
|
-
|
|
|
|
- if ((loff_t)(sector_t)size != size) {
|
|
|
|
- error = -EFBIG;
|
|
|
|
- goto out_putf;
|
|
|
|
@ -2665,7 +2645,7 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
/* |
|
|
|
* And now the modules code and kernel interface. |
|
|
|
*/ |
|
|
|
-MODULE_PARM(max_loop, "i");
|
|
|
|
-module_param(max_loop, int, 0);
|
|
|
|
-MODULE_PARM_DESC(max_loop, "Maximum number of loop devices (1-256)");
|
|
|
|
MODULE_LICENSE("GPL"); |
|
|
|
MODULE_ALIAS_BLOCKDEV_MAJOR(LOOP_MAJOR); |
|
|
|
@ -2859,9 +2839,9 @@ diff -pruN linux-2.6.9_orig/drivers/block/loop.c linux-2.6.9/drivers/block/loop. |
|
|
|
-__setup("max_loop=", max_loop_setup);
|
|
|
|
+EXPORT_SYMBOL(loop_add_keyscrub_fn);
|
|
|
|
#endif |
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/Makefile linux-2.6.9/drivers/misc/Makefile
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/Makefile 2004-10-18 23:55:24.000000000 +0200
|
|
|
|
+++ linux-2.6.9/drivers/misc/Makefile 2005-01-11 09:27:53.491820008 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/Makefile linux-2.6.10_loopaes/drivers/misc/Makefile
|
|
|
|
--- linux-2.6.10/drivers/misc/Makefile 2004-12-24 22:35:28.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/Makefile 2005-02-22 08:28:10.550740480 +0100
|
|
|
|
@@ -4,3 +4,24 @@
|
|
|
|
obj- := misc.o # Dummy rule to force built-in.o to be made |
|
|
|
|
|
|
|
@ -2887,9 +2867,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/Makefile linux-2.6.9/drivers/misc/Makef |
|
|
|
+endif
|
|
|
|
+endif
|
|
|
|
+endif
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/aes-amd64.S linux-2.6.9/drivers/misc/aes-amd64.S
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/aes-amd64.S 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/aes-amd64.S 2005-01-11 09:27:53.493819704 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/aes-amd64.S linux-2.6.10_loopaes/drivers/misc/aes-amd64.S
|
|
|
|
--- linux-2.6.10/drivers/misc/aes-amd64.S 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/aes-amd64.S 2005-02-22 08:28:10.553740024 +0100
|
|
|
|
@@ -0,0 +1,893 @@
|
|
|
|
+//
|
|
|
|
+// Copyright (c) 2001, Dr Brian Gladman <brg@gladman.uk.net>, Worcester, UK.
|
|
|
|
@ -3784,9 +3764,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/aes-amd64.S linux-2.6.9/drivers/misc/ae |
|
|
|
+ im_data5(v3)
|
|
|
|
+ im_data6(v3)
|
|
|
|
+ im_data7(v3)
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/aes-x86.S linux-2.6.9/drivers/misc/aes-x86.S
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/aes-x86.S 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/aes-x86.S 2005-01-11 09:27:53.496819248 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/aes-x86.S linux-2.6.10_loopaes/drivers/misc/aes-x86.S
|
|
|
|
--- linux-2.6.10/drivers/misc/aes-x86.S 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/aes-x86.S 2005-02-22 08:28:10.555739720 +0100
|
|
|
|
@@ -0,0 +1,922 @@
|
|
|
|
+//
|
|
|
|
+// Copyright (c) 2001, Dr Brian Gladman <brg@gladman.uk.net>, Worcester, UK.
|
|
|
|
@ -4710,9 +4690,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/aes-x86.S linux-2.6.9/drivers/misc/aes- |
|
|
|
+ im_data5(v3)
|
|
|
|
+ im_data6(v3)
|
|
|
|
+ im_data7(v3)
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/aes.c linux-2.6.9/drivers/misc/aes.c
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/aes.c 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/aes.c 2005-01-11 09:27:53.499818792 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/aes.c linux-2.6.10_loopaes/drivers/misc/aes.c
|
|
|
|
--- linux-2.6.10/drivers/misc/aes.c 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/aes.c 2005-02-22 08:28:10.559739112 +0100
|
|
|
|
@@ -0,0 +1,1479 @@
|
|
|
|
+// I retain copyright in this code but I encourage its free use provided
|
|
|
|
+// that I don't carry any responsibility for the results. I am especially
|
|
|
|
@ -6193,9 +6173,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/aes.c linux-2.6.9/drivers/misc/aes.c |
|
|
|
+
|
|
|
|
+ state_out(out_blk, b0);
|
|
|
|
+}
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/aes.h linux-2.6.9/drivers/misc/aes.h
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/aes.h 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/aes.h 2005-01-11 09:27:53.500818640 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/aes.h linux-2.6.10_loopaes/drivers/misc/aes.h
|
|
|
|
--- linux-2.6.10/drivers/misc/aes.h 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/aes.h 2005-02-22 08:28:10.560738960 +0100
|
|
|
|
@@ -0,0 +1,113 @@
|
|
|
|
+// I retain copyright in this code but I encourage its free use provided
|
|
|
|
+// that I don't carry any responsibility for the results. I am especially
|
|
|
|
@ -6310,9 +6290,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/aes.h linux-2.6.9/drivers/misc/aes.h |
|
|
|
+// if their parameters have not changed.
|
|
|
|
+
|
|
|
|
+#endif // _AES_H
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/crypto-ksym.c linux-2.6.9/drivers/misc/crypto-ksym.c
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/crypto-ksym.c 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/crypto-ksym.c 2005-01-11 09:27:53.500818640 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/crypto-ksym.c linux-2.6.10_loopaes/drivers/misc/crypto-ksym.c
|
|
|
|
--- linux-2.6.10/drivers/misc/crypto-ksym.c 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/crypto-ksym.c 2005-02-22 08:28:10.560738960 +0100
|
|
|
|
@@ -0,0 +1,7 @@
|
|
|
|
+#include <linux/module.h>
|
|
|
|
+#include "aes.h"
|
|
|
|
@ -6321,9 +6301,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/crypto-ksym.c linux-2.6.9/drivers/misc/ |
|
|
|
+EXPORT_SYMBOL(aes_encrypt);
|
|
|
|
+EXPORT_SYMBOL(aes_decrypt);
|
|
|
|
+EXPORT_SYMBOL(md5_transform_CPUbyteorder);
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/md5-amd64.S linux-2.6.9/drivers/misc/md5-amd64.S
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/md5-amd64.S 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/md5-amd64.S 2005-01-11 09:27:53.501818488 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/md5-amd64.S linux-2.6.10_loopaes/drivers/misc/md5-amd64.S
|
|
|
|
--- linux-2.6.10/drivers/misc/md5-amd64.S 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/md5-amd64.S 2005-02-22 08:28:10.561738808 +0100
|
|
|
|
@@ -0,0 +1,200 @@
|
|
|
|
+//
|
|
|
|
+// md5-amd64.S
|
|
|
|
@ -6525,9 +6505,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/md5-amd64.S linux-2.6.9/drivers/misc/md |
|
|
|
+ addl %ecx,8(%rdi)
|
|
|
|
+ addl %edx,12(%rdi)
|
|
|
|
+ ret
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/md5-x86.S linux-2.6.9/drivers/misc/md5-x86.S
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/md5-x86.S 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/md5-x86.S 2005-01-11 09:27:53.502818336 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/md5-x86.S linux-2.6.10_loopaes/drivers/misc/md5-x86.S
|
|
|
|
--- linux-2.6.10/drivers/misc/md5-x86.S 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/md5-x86.S 2005-02-22 08:28:10.561738808 +0100
|
|
|
|
@@ -0,0 +1,207 @@
|
|
|
|
+//
|
|
|
|
+// md5-x86.S
|
|
|
|
@ -6736,9 +6716,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/md5-x86.S linux-2.6.9/drivers/misc/md5- |
|
|
|
+ pop %ebx
|
|
|
|
+ pop %ebp
|
|
|
|
+ ret
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/md5.c linux-2.6.9/drivers/misc/md5.c
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/md5.c 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/md5.c 2005-01-11 09:27:53.502818336 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/md5.c linux-2.6.10_loopaes/drivers/misc/md5.c
|
|
|
|
--- linux-2.6.10/drivers/misc/md5.c 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/md5.c 2005-02-22 08:28:10.562738656 +0100
|
|
|
|
@@ -0,0 +1,106 @@
|
|
|
|
+/*
|
|
|
|
+ * MD5 Message Digest Algorithm (RFC1321).
|
|
|
|
@ -6846,9 +6826,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/md5.c linux-2.6.9/drivers/misc/md5.c |
|
|
|
+ hash[2] += c;
|
|
|
|
+ hash[3] += d;
|
|
|
|
+}
|
|
|
|
diff -pruN linux-2.6.9_orig/drivers/misc/md5.h linux-2.6.9/drivers/misc/md5.h
|
|
|
|
--- linux-2.6.9_orig/drivers/misc/md5.h 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.9/drivers/misc/md5.h 2005-01-11 09:27:53.502818336 +0100
|
|
|
|
diff -pruN linux-2.6.10/drivers/misc/md5.h linux-2.6.10_loopaes/drivers/misc/md5.h
|
|
|
|
--- linux-2.6.10/drivers/misc/md5.h 1970-01-01 01:00:00.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/drivers/misc/md5.h 2005-02-22 08:28:10.562738656 +0100
|
|
|
|
@@ -0,0 +1,11 @@
|
|
|
|
+/* md5.h */
|
|
|
|
+
|
|
|
|
@ -6861,9 +6841,9 @@ diff -pruN linux-2.6.9_orig/drivers/misc/md5.h linux-2.6.9/drivers/misc/md5.h |
|
|
|
+ asmlinkage
|
|
|
|
+#endif
|
|
|
|
+extern void md5_transform_CPUbyteorder(u_int32_t *, u_int32_t const *);
|
|
|
|
diff -pruN linux-2.6.9_orig/include/linux/loop.h linux-2.6.9/include/linux/loop.h
|
|
|
|
--- linux-2.6.9_orig/include/linux/loop.h 2004-10-18 23:55:36.000000000 +0200
|
|
|
|
+++ linux-2.6.9/include/linux/loop.h 2005-01-11 09:27:53.503818184 +0100
|
|
|
|
diff -pruN linux-2.6.10/include/linux/loop.h linux-2.6.10_loopaes/include/linux/loop.h
|
|
|
|
--- linux-2.6.10/include/linux/loop.h 2004-12-24 22:35:49.000000000 +0100
|
|
|
|
+++ linux-2.6.10_loopaes/include/linux/loop.h 2005-02-22 08:28:10.562738656 +0100
|
|
|
|
@@ -16,54 +16,57 @@
|
|
|
|
#ifdef __KERNEL__ |
|
|
|
#include <linux/bio.h> |
|
|
|
|