summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2000-03-03 21:58:05 +0000
committerRoland McGrath <roland@gnu.org>2000-03-03 21:58:05 +0000
commit5eab6bf4252d1d737e87b55fc95dafdadc31b7f6 (patch)
tree451688169aa2afa04880ae8d1e2d0cfc9b9c6e0a
parentd5ecc59359ec691e8c110e6f0b043956655c4965 (diff)
2000-02-28 Roland McGrath <roland@baalperazim.frob.com>
* boot.c (ds_device_get_status): Accept *STATUSLEN greater than needed.
-rw-r--r--boot/boot.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/boot/boot.c b/boot/boot.c
index 859dae25..9a2435e4 100644
--- a/boot/boot.c
+++ b/boot/boot.c
@@ -1,6 +1,6 @@
/* Load a task using the single server, and then run it
as if we were the kernel.
- Copyright (C) 1993,94,95,96,97,98,99 Free Software Foundation, Inc.
+ Copyright (C) 1993,94,95,96,97,98,99,2000 Free Software Foundation, Inc.
This file is part of the GNU Hurd.
@@ -1341,12 +1341,13 @@ ds_device_get_status (device_t device,
return D_INVALID_OPERATION;
else if (device == pseudo_root)
if (flavor == DEV_GET_SIZE)
- if (*statuslen != DEV_GET_SIZE_COUNT)
+ if (*statuslen < DEV_GET_SIZE_COUNT)
return D_INVALID_SIZE;
else
{
status[DEV_GET_SIZE_DEVICE_SIZE] = root_store->size;
status[DEV_GET_SIZE_RECORD_SIZE] = root_store->block_size;
+ *statuslen = DEV_GET_SIZE_COUNT;
return D_SUCCESS;
}
else