- st->new_transform->setkey(st->new_transform->st,st->sharedsecret,
- st->sharedsecretlen,st->setup_priority);
+ struct transform_if *generator=st->transform;
+ struct transform_inst_if *generated=generator->create(generator->st);
+ generated->setkey(generated->st,st->sharedsecret,
+ st->sharedsecretlen,st->setup_priority);
+ dispose_transform(&st->new_transform);
+ st->new_transform=generated;