Jacques Vidrine
8b7358ca43
Introduce a uiomove_frombuf helper routine that handles computing and
...
validating the offset within a given memory buffer before handing the
real work off to uiomove(9).
Use uiomove_frombuf in procfs to correct several issues with
integer arithmetic that could result in underflows/overflows. As a
side-effect, the code is significantly simplified.
Add additional sanity checks when computing a memory allocation size
in pfs_read.
Submitted by: rwatson (original uiomove_frombuf -- bugs are mine :-)
Reported by: Joost Pol <joost@pine.nl> (integer underflows/overflows)
2003-10-02 15:00:55 +00:00
..
2003-09-10 21:37:10 +00:00
2002-04-04 23:39:10 +00:00
2003-09-25 01:10:26 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-09-25 01:10:26 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-10-02 03:57:59 +00:00
2003-09-07 05:42:07 +00:00
2003-07-27 17:04:56 +00:00
2003-08-04 02:13:05 +00:00
2003-07-27 17:04:56 +00:00
2003-06-27 08:35:05 +00:00
2003-07-02 01:19:15 +00:00
2003-09-28 20:50:36 +00:00
2003-06-11 00:56:59 +00:00
2003-10-02 03:57:59 +00:00
2003-06-11 00:56:59 +00:00
2003-06-18 18:16:40 +00:00
2003-09-27 23:07:47 +00:00
2003-06-15 00:31:24 +00:00
2003-08-19 17:51:11 +00:00
2003-06-11 00:56:59 +00:00
2003-07-01 16:00:38 +00:00
2003-06-11 00:56:59 +00:00
2003-08-26 11:33:15 +00:00
2003-06-11 00:56:59 +00:00
2003-09-10 01:09:32 +00:00
2003-08-07 15:04:27 +00:00
2003-09-23 14:42:38 +00:00
2003-07-16 01:00:39 +00:00
2003-06-11 00:56:59 +00:00
2003-09-29 18:35:17 +00:00
2003-09-19 04:39:08 +00:00
2003-08-21 14:47:08 +00:00
2003-06-11 00:56:59 +00:00
2003-07-16 01:00:39 +00:00
2003-07-31 18:52:18 +00:00
2003-06-25 20:56:40 +00:00
2003-08-02 09:40:53 +00:00
2003-06-11 00:56:59 +00:00
2003-09-19 14:16:50 +00:00
2003-09-14 07:22:38 +00:00
2003-07-13 01:22:21 +00:00
2003-06-11 00:56:59 +00:00
2003-08-16 16:57:57 +00:00
2003-09-26 15:09:46 +00:00
2003-10-02 15:00:55 +00:00
2003-06-15 00:31:24 +00:00
2003-07-13 01:22:21 +00:00
2003-09-30 08:11:36 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-09-03 08:14:16 +00:00
2003-08-14 03:56:24 +00:00
2003-08-26 11:33:15 +00:00
2003-06-11 00:56:59 +00:00
2003-08-23 08:31:32 +00:00
2003-09-07 11:14:52 +00:00
2003-06-11 00:56:59 +00:00
2003-09-13 17:12:22 +00:00
2003-09-13 18:46:24 +00:00
2003-08-11 07:14:08 +00:00
2003-08-11 07:14:08 +00:00
2003-09-20 17:39:32 +00:00
2003-03-05 19:24:24 +00:00
2003-03-05 19:24:24 +00:00
2003-04-01 01:12:24 +00:00
2003-06-11 00:56:59 +00:00
2003-07-22 10:36:36 +00:00
2003-06-11 06:34:30 +00:00
2003-06-11 06:34:30 +00:00
2003-08-19 17:51:11 +00:00
2003-09-20 02:05:58 +00:00
2003-08-04 02:13:05 +00:00
2003-07-22 10:36:36 +00:00
2003-08-12 23:24:05 +00:00
2003-09-10 21:37:10 +00:00
2003-07-22 10:36:36 +00:00
2003-06-11 00:56:59 +00:00
2003-09-27 12:01:01 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-07-02 16:01:38 +00:00
2003-08-14 21:16:46 +00:00
2003-06-22 02:18:31 +00:00
2003-07-15 08:59:38 +00:00
2003-08-16 19:48:52 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-09-05 11:12:00 +00:00
2003-08-11 05:51:51 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-07-22 10:36:36 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-06-12 19:46:51 +00:00
2003-09-06 21:05:18 +00:00
2003-09-05 22:15:26 +00:00
2003-07-31 18:52:18 +00:00
2003-09-06 21:06:08 +00:00
2003-09-27 12:53:33 +00:00
2003-09-12 07:13:15 +00:00
2003-08-15 05:25:06 +00:00
2003-06-18 18:16:40 +00:00
2003-09-07 05:42:07 +00:00
2003-09-07 05:42:07 +00:00
2003-06-11 00:56:59 +00:00
2003-08-07 16:42:27 +00:00
2003-08-07 16:42:27 +00:00
2003-08-07 16:42:27 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-09-26 19:35:50 +00:00
2003-09-27 12:44:06 +00:00
2003-07-22 10:36:36 +00:00
2003-09-27 12:01:01 +00:00
2003-06-22 02:54:33 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-09-02 20:59:23 +00:00
2003-06-11 21:23:04 +00:00
2003-06-11 00:56:59 +00:00
2003-09-01 05:55:37 +00:00
2003-06-11 00:56:59 +00:00
2003-06-11 00:56:59 +00:00
2003-07-26 07:23:24 +00:00
2003-07-26 07:23:24 +00:00
2003-08-05 00:27:54 +00:00
2003-08-29 20:04:10 +00:00
2003-06-11 00:56:59 +00:00
2003-08-04 02:13:05 +00:00
2003-09-10 15:48:51 +00:00
2003-09-22 04:58:09 +00:00
2003-06-13 08:46:13 +00:00
2003-08-28 06:55:18 +00:00
2003-09-27 12:53:33 +00:00
2003-07-26 07:23:24 +00:00
2003-08-21 13:53:01 +00:00
2003-06-12 20:48:38 +00:00
2003-06-11 00:56:59 +00:00
2003-09-26 09:07:27 +00:00
2003-09-20 00:21:48 +00:00
2003-08-21 13:53:01 +00:00
2003-07-28 18:53:29 +00:00
2003-07-28 18:53:29 +00:00