diff options
Diffstat (limited to 'rpkid/rpki/left_right.py')
-rw-r--r-- | rpkid/rpki/left_right.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/rpkid/rpki/left_right.py b/rpkid/rpki/left_right.py index 784c8b7b..d355d2c1 100644 --- a/rpkid/rpki/left_right.py +++ b/rpkid/rpki/left_right.py @@ -178,10 +178,15 @@ class self_elt(data_elt): rpki.rpki_engine.ca_obj.create(parent, rc, class_iterator, class_create_failed) def class_done(): - for ca in ca_map.values(): - ca.delete(parent) # CA not listed by parent - self.gctx.sql.sweep() - parent_iterator() + + def ca_loop(iterator, ca): + ca.delete(parent, iterator) + + def ca_done(): + self.gctx.sql.sweep() + parent_iterator() + + rpki.async.iterator(ca_map.values(), ca_loop, ca_done) rpki.async.iterator(r_msg.payload.classes, class_loop, class_done) |