Hi Wayne,

every instance of the file would be read only and the "readonly" test should not be needed, the file permissions should be changed on save

As far as I can tell files created by File::Temp should normally be 0600 (read+write for the owner and no access to anyone else). By "readonly test" I assume you're referring to the function fileisreadonly in the OP (source). The way I understand that code is that the check is applied before the file is saved, so that in case the user is trying to write to a file that is readonly, the user is first asked if they want to overwrite the file anyway.

It would make sense to me that a file is left with read+write permissions for the owner after the save - at least I've never seen someone set their umask so that the owner's permissions are restricted. The idea behind the code I suggested is that the file permissions should be determined by the user's umask, so that the user can choose whether they want the files to be 0666, 0644, 0664, 0640, or whatever other combination they like, instead of the files always ending up 0600.

Hope this helps,
-- Hauke D


In reply to Re^11: File permissions problem by haukex
in thread File permissions problem by wdhammond

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.