+ };
+
+ unless ( $pid ) { #kid time
+
+ #get new db handles
+ $FS::UID::dbh->{InactiveDestroy} = 1;
+ $FS::svc_acct::icradius_dbh->{InactiveDestroy}
+ if $FS::svc_acct::icradius_dbh;
+ forksuidsetup($user);
+
+ my $eval = "&". $ljob->job. '(@args);';
+ warn "running $eval";
+ eval $eval;
+ if ( $@ ) {
+ warn "job $eval failed";
+ my %hash = $ljob->hash;
+ $hash{'status'} = 'failed';
+ my $fjob = new FS::queue( \%hash );
+ my $error = $fjob->replace($ljob);
+ die $error if $error;
+ } else {
+ $ljob->delete;
+ }
+
+ exit;
+ #end-of-kid