http://www.perlmonks.org?node_id=200029

graff has asked for the wisdom of the Perl Monks concerning the following question:

I'm using MIME::Parser to extract data attachments from email being sent to me at regular intervals. It's great, and I need only one improvement (for a linux or solaris environment):

The extracted file attachments are being written to disk with owner-only access permissions (rwx------ (700) on directories, and rw------- (600) on data files), and I would prefer at least group-read/execute (750 for directories, 640 for data files) -- global read/execute access would actually be better.

I went over the MIME::Parser and MIME::Parser::Filer man pages, but did not see any relevant information.

What makes it troublesome is that, in the simplest case, you don't really know what paths/files are being created until MIME::Parser is done. You need to figure out afterwards which directories were created, "chmod go+x" on those, then "chmod -R go+r"... (I don't want to make the data files executable.) It would just be a lot easier if the mode flags could be set the way I want in the first place. But how?

The man page for MIME::Parser::Filer says "you can easily define your own subclass of MIME::Parser::Filer and override" the default behavior, but an example (not provided there) would be really helpful... THANKS!