summaryrefslogtreecommitdiffstats
path: root/runtime/copy.c
diff options
context:
space:
mode:
authorhunt <hunt>2006-02-10 05:30:08 +0000
committerhunt <hunt>2006-02-10 05:30:08 +0000
commit4c57703c9d46d81d60d82ed079a1b9468d038e5c (patch)
tree1a779da99c77398ad0d71e699f37c738ae1d8bad /runtime/copy.c
parentf7ae2c6051cebf8affb3891f345a66e1c0929d4c (diff)
downloadsystemtap-steved-4c57703c9d46d81d60d82ed079a1b9468d038e5c.tar.gz
systemtap-steved-4c57703c9d46d81d60d82ed079a1b9468d038e5c.tar.xz
systemtap-steved-4c57703c9d46d81d60d82ed079a1b9468d038e5c.zip
2006-02-09 Martin Hunt <hunt@redhat.com>
* copy.c (_stp_copy_from_user): If access fails, return -1.
Diffstat (limited to 'runtime/copy.c')
-rw-r--r--runtime/copy.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/runtime/copy.c b/runtime/copy.c
index 7e28a6a6..0822902d 100644
--- a/runtime/copy.c
+++ b/runtime/copy.c
@@ -157,8 +157,10 @@ _stp_copy_from_user (char *dst, const char __user *src, unsigned long count)
if (count) {
if (access_ok(VERIFY_READ, src, count))
count = __copy_from_user_inatomic(dst, src, count);
- else
+ else {
memset(dst, 0, count);
+ count = -1;
+ }
}
return count;
}