while($conn = $Net::SMTP::Server::server->accept()) { # Wenn eine Verbindung durch einen Client aufgebaut wurde wird der SMTP-Server geforked my $kidpid = fork(); if (not defined $kidpid) { die "Cannot fork: $!"; } elsif ($kidpid == 0) { # fork gab Null zurück, also ist dies hier das "Neugeborene" # die Abarbeitung beginnt print STDOUT "Kindprozess: ".$$."\n"; my $client; $Net::SMTP::Server::Client::client = new Net::SMTP::Server::Client($conn) || croak(getTime()." Unable to handle client connection: $!\n"); $Net::SMTP::Server::Client::client->process(); $from = $Net::SMTP::Server::Client::client->{FROM}; @to = $Net::SMTP::Server::Client::client->{TO}; $msg = "blubb"; $msg = decode_qp($msg); @mail = split(/\n/,$msg); # Convert a Mail::Internet object to a MIME::Entity: $parser->output_under("/tmp"); $parser->decode_bodies(0); $entity = new MIME::Entity; $entity = $parser->parse_data($msg); exit(0); }else{ print STDOUT "Vaterprozess: ".$$."\n"; } }