Alexander V. Chernikov
65a17d744e
Fix long-standing issue with incorrect radix mask calculation.
...
Usual symptoms are messages like
rn_delete: inconsistent annotation
rn_addmask: mask impossibly already in tree
or inability to flush/delete particular prefix in ipfw table.
Changes:
* Assume 32 bytes as maximum radix key length
* Remove rn_init()
* Statically allocate rn_ones/rn_zeroes
* Make separate mask tree for each "normal" tree instead of system global one
* Remove "optimization" on masks reusage and key zeroying
* Change rn_addmask() arguments to accept tree pointer (no users in base)
PR: kern/182851, kern/169206, kern/135476, kern/134531
Found by: Slawa Olhovchenkov <slw@zxy.spb.ru>
MFC after: 2 weeks
Reviewed by: glebius
Sponsored by: Yandex LLC
2013-10-16 12:18:44 +00:00
..
2012-12-10 16:14:44 +00:00
2012-05-21 22:19:19 +00:00
2012-08-05 14:11:42 +00:00
2012-01-14 17:07:52 +00:00
2013-05-23 21:33:10 +00:00
2012-12-10 16:14:44 +00:00
2012-12-10 16:14:44 +00:00
2013-03-15 12:55:30 +00:00
2012-04-20 10:06:28 +00:00
2013-04-26 12:50:32 +00:00
2013-10-15 21:28:51 +00:00
2013-07-26 19:41:13 +00:00
2013-07-26 19:41:13 +00:00
2013-04-26 12:50:32 +00:00
2013-04-26 12:50:32 +00:00
2013-07-09 09:50:15 +00:00
2013-04-26 12:50:32 +00:00
2013-04-26 12:50:32 +00:00
2013-07-28 19:49:39 +00:00
2012-10-17 21:19:27 +00:00
2012-10-16 13:37:54 +00:00
2013-04-26 12:50:32 +00:00
2013-04-26 12:50:32 +00:00
2012-05-19 02:39:43 +00:00
2012-10-16 13:37:54 +00:00
2013-04-26 12:50:32 +00:00
2013-09-28 14:14:23 +00:00
2012-10-18 09:57:56 +00:00
2013-10-09 21:03:34 +00:00
2013-04-26 12:50:32 +00:00
2013-08-25 09:41:37 +00:00
2013-04-26 12:50:32 +00:00
2013-09-11 09:19:44 +00:00
2013-04-26 12:50:32 +00:00
2013-09-11 09:19:44 +00:00
2013-08-25 09:41:37 +00:00
2013-10-09 19:04:40 +00:00
2013-08-29 19:35:14 +00:00
2013-05-06 16:42:18 +00:00
2013-08-27 16:45:00 +00:00
2013-04-26 12:50:32 +00:00
2012-04-10 13:59:35 +00:00
2011-11-07 15:43:11 +00:00
2012-09-14 11:51:49 +00:00
2013-08-26 18:16:05 +00:00
2012-12-05 08:04:20 +00:00
2013-09-11 09:19:44 +00:00
2013-04-26 12:50:32 +00:00
2013-10-02 20:44:36 +00:00
2012-09-25 23:41:45 +00:00
2013-10-06 12:40:32 +00:00
2011-12-16 12:16:56 +00:00
2013-10-15 11:37:57 +00:00
2012-01-12 18:39:37 +00:00
2013-06-16 04:40:02 +00:00
2013-10-15 11:37:57 +00:00
2013-10-09 19:04:40 +00:00
2013-04-26 12:50:32 +00:00
2013-09-06 21:02:43 +00:00
2013-05-30 13:41:19 +00:00
2013-05-30 14:07:14 +00:00
2012-09-14 11:51:49 +00:00
2013-08-24 11:24:15 +00:00
2013-08-24 12:03:24 +00:00
2012-09-20 06:52:05 +00:00
2013-05-21 21:20:10 +00:00
2013-10-16 12:18:44 +00:00
2013-10-16 12:18:44 +00:00
2011-11-07 15:43:11 +00:00
2013-10-16 12:18:44 +00:00
2013-06-25 00:10:49 +00:00
2013-10-15 11:37:57 +00:00
2013-07-09 15:10:27 +00:00
2013-01-06 14:59:59 +00:00
2013-01-06 14:59:59 +00:00