strncpy() may not null-terminate the destination.


---

 25-akpm/fs/super.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

diff -puN fs/super.c~s_id-null-termination fs/super.c
--- 25/fs/super.c~s_id-null-termination	2004-03-20 23:16:33.437917720 -0800
+++ 25-akpm/fs/super.c	2004-03-20 23:16:33.439917416 -0800
@@ -637,7 +637,7 @@ struct super_block *get_sb_bdev(struct f
 		char b[BDEVNAME_SIZE];
 
 		s->s_flags = flags;
-		strncpy(s->s_id, bdevname(bdev, b), sizeof(s->s_id));
+		strlcpy(s->s_id, bdevname(bdev, b), sizeof(s->s_id));
 		s->s_old_blocksize = block_size(bdev);
 		sb_set_blocksize(s, s->s_old_blocksize);
 		error = fill_super(s, data, flags & MS_VERBOSE ? 1 : 0);

_