CVSROOT: /cvs Module name: src Changes by: r...@cvs.openbsd.org 2017/08/11 07:55:09
Modified files: sys/net : switchofp.c Log message: Set free'd tables to NULL in swofp_flow_entry_instruction_free(). swofp_flow_entry_instruction_free is used to "reset" the tables. It called free on each table but didn't set them to NULL, causing potential double-frees in swofp_flow_entry_put_instructions(). Instead of complicating the code and adding a X = NULL for each table, restructure it by introducing a generic function to free tables as they're all derived from struct ofp_instruction. Reported by Coverity as various "Read from pointer after free" errors: Coverity CIDs 1452955 1453345 1452858 1453031 1453179 1453216 1453093 OK millert@ goda@