diff options
author | Julia Lawall <julia@diku.dk> | 2010-08-11 23:13:58 -0400 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2010-08-11 23:13:58 -0400 |
commit | a9c88f2ebc1a5937915cb3b89c9f03894134f39a (patch) | |
tree | 84f409698a8b0c861b91f90dc8e8043009132398 | |
parent | 402ab352c2c00ba8f90c724565f8cf31210d99cf (diff) |
dm crypt: use kstrdup
Use kstrdup when the goal of an allocation is copy a string into the
allocated region.
The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@@
expression from,to;
expression flag,E1,E2;
statement S;
@@
- to = kmalloc(strlen(from) + 1,flag);
+ to = kstrdup(from, flag);
... when != \(from = E1 \| to = E1 \)
if (to==NULL || ...) S
... when != \(from = E2 \| to = E2 \)
- strcpy(to, from);
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
-rw-r--r-- | drivers/md/dm-crypt.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/md/dm-crypt.c b/drivers/md/dm-crypt.c index 3bdbb6115702..a8aab9cf26b9 100644 --- a/drivers/md/dm-crypt.c +++ b/drivers/md/dm-crypt.c | |||
@@ -1168,12 +1168,11 @@ static int crypt_ctr(struct dm_target *ti, unsigned int argc, char **argv) | |||
1168 | if (ivmode && cc->iv_gen_ops) { | 1168 | if (ivmode && cc->iv_gen_ops) { |
1169 | if (ivopts) | 1169 | if (ivopts) |
1170 | *(ivopts - 1) = ':'; | 1170 | *(ivopts - 1) = ':'; |
1171 | cc->iv_mode = kmalloc(strlen(ivmode) + 1, GFP_KERNEL); | 1171 | cc->iv_mode = kstrdup(ivmode, GFP_KERNEL); |
1172 | if (!cc->iv_mode) { | 1172 | if (!cc->iv_mode) { |
1173 | ti->error = "Error kmallocing iv_mode string"; | 1173 | ti->error = "Error kmallocing iv_mode string"; |
1174 | goto bad_ivmode_string; | 1174 | goto bad_ivmode_string; |
1175 | } | 1175 | } |
1176 | strcpy(cc->iv_mode, ivmode); | ||
1177 | } else | 1176 | } else |
1178 | cc->iv_mode = NULL; | 1177 | cc->iv_mode = NULL; |
1179 | 1178 | ||