> > Why is it a problem to do this outside of > > filter_initialize? > > Because after we fork a child, we close() all > unneeded file > descriptors (see mimedefang-multiplexor.c, around > line 2193. This > will most likely close the file descriptor "out from > under" Perl -- > that is, Perl will think the descriptor is open, but > the C code will > have closed it. >
OK, just to be sure - It's safe to open descriptors on a per slave basis as long as it in filter_initialize, filter_begin, filter, filter_end? It's not safe to open file descriptors in the main body (outside of the callback functions) of the perl filter because these are only called once and will get closed (by subsequent slaves calling close(2) post fork)? Equally it's also not safe to open file descriptors in the other pre-body filter callback functions (such as filter_sender) because it cannot be gauranteed that the same slave will process the body (in the same way global vars cannot be used in these)? __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com _______________________________________________ Visit http://www.mimedefang.org and http://www.canit.ca MIMEDefang mailing list [EMAIL PROTECTED] http://lists.roaringpenguin.com/mailman/listinfo/mimedefang

