diff options
author | Pavel Emelianov <xemul@sw.ru> | 2007-07-16 02:39:53 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-16 12:05:42 -0400 |
commit | 13d31894b3c459805303325aa5b91f9cd4ed70bc (patch) | |
tree | b2f2e43642209551f1cc1d28c4e2bd9033a970f5 | |
parent | a6a8bd6d2839f7134f191c6e13e2fd2e9e8c91a6 (diff) |
Make crypto API use seq_list_xxx helpers
Simple and stupid - just use the same code from another place in the kernel.
Signed-off-by: Pavel Emelianov <xemul@openvz.org>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | crypto/proc.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/crypto/proc.c b/crypto/proc.c index 102c751a124c..3d73323ff79b 100644 --- a/crypto/proc.c +++ b/crypto/proc.c | |||
@@ -23,24 +23,13 @@ | |||
23 | 23 | ||
24 | static void *c_start(struct seq_file *m, loff_t *pos) | 24 | static void *c_start(struct seq_file *m, loff_t *pos) |
25 | { | 25 | { |
26 | struct list_head *v; | ||
27 | loff_t n = *pos; | ||
28 | |||
29 | down_read(&crypto_alg_sem); | 26 | down_read(&crypto_alg_sem); |
30 | list_for_each(v, &crypto_alg_list) | 27 | return seq_list_start(&crypto_alg_list, *pos); |
31 | if (!n--) | ||
32 | return list_entry(v, struct crypto_alg, cra_list); | ||
33 | return NULL; | ||
34 | } | 28 | } |
35 | 29 | ||
36 | static void *c_next(struct seq_file *m, void *p, loff_t *pos) | 30 | static void *c_next(struct seq_file *m, void *p, loff_t *pos) |
37 | { | 31 | { |
38 | struct list_head *v = p; | 32 | return seq_list_next(p, &crypto_alg_list, pos); |
39 | |||
40 | (*pos)++; | ||
41 | v = v->next; | ||
42 | return (v == &crypto_alg_list) ? | ||
43 | NULL : list_entry(v, struct crypto_alg, cra_list); | ||
44 | } | 33 | } |
45 | 34 | ||
46 | static void c_stop(struct seq_file *m, void *p) | 35 | static void c_stop(struct seq_file *m, void *p) |
@@ -50,7 +39,7 @@ static void c_stop(struct seq_file *m, void *p) | |||
50 | 39 | ||
51 | static int c_show(struct seq_file *m, void *p) | 40 | static int c_show(struct seq_file *m, void *p) |
52 | { | 41 | { |
53 | struct crypto_alg *alg = (struct crypto_alg *)p; | 42 | struct crypto_alg *alg = list_entry(p, struct crypto_alg, cra_list); |
54 | 43 | ||
55 | seq_printf(m, "name : %s\n", alg->cra_name); | 44 | seq_printf(m, "name : %s\n", alg->cra_name); |
56 | seq_printf(m, "driver : %s\n", alg->cra_driver_name); | 45 | seq_printf(m, "driver : %s\n", alg->cra_driver_name); |