/* Returns the next matching cls_rule in 'cursor''s iteration, or a null
* pointer if there are no more matches. */
struct cls_rule *
-cls_cursor_next(struct cls_cursor *cursor, struct cls_rule *rule)
+cls_cursor_next(struct cls_cursor *cursor, const struct cls_rule *rule_)
{
+ struct cls_rule *rule = CONST_CAST(struct cls_rule *, rule_);
const struct cls_table *table;
struct cls_rule *next;
void cls_cursor_init(struct cls_cursor *cursor, const struct classifier *cls,
const struct cls_rule *match) OVS_REQ_RDLOCK(cls->rwlock);
struct cls_rule *cls_cursor_first(struct cls_cursor *cursor);
-struct cls_rule *cls_cursor_next(struct cls_cursor *cursor, struct cls_rule *);
+struct cls_rule *cls_cursor_next(struct cls_cursor *cursor, const struct cls_rule *);
#define CLS_CURSOR_FOR_EACH(RULE, MEMBER, CURSOR) \
for (ASSIGN_CONTAINER(RULE, cls_cursor_first(CURSOR), MEMBER); \