Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Jan 1996 15:38:05 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        hackers@freebsd.org
Subject:   OK, I'm stumped...
Message-ID:  <199601032238.PAA15917@phaeton.artisoft.com>

next in thread | raw e-mail | index | archive | help

Why would anyone ever specify a second argument to uiomove() that
was less than the largest iov->iov_len for the iov list in the
uio structure that was passed in?

There's a:

		if (cnt > (u_int)n)
			cnt = n;

The sole purpose of which seems to cause the thing to call copyin/copyout
or bcopy multiple times for a single iov.

This also seems to be the sole use of the 'n' parameter to uiomove.

Is there a good reason for keeping this?  The sole utility seems to
be in the ufs_readwrite.c code, and since the iov_len is never
reexamined in these cases, couldn't it be diddled instead?

Or is this a case of "rm foo" and then typing "ls" to make sure it's
gone because you don't trust "rm'?


Is anyone explicity using the second argument to limit the copied data
from the uio struct because they didn't set the iov_len appropriately
on the way in?


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199601032238.PAA15917>