Adopt use of gnulib for portability.
[pspp-builds.git] / src / permissions.c
index 8737e631e5fa093eb6cfbb0c121abb9c0919898e..140c79ef27fe10a8f722624efb0573ef211b5f0a 100644 (file)
@@ -14,8 +14,8 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-   02111-1307, USA. */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+   02110-1301, USA. */
 
 #include <config.h>
 #include "error.h"
 #include <sys/stat.h>
 #include <unistd.h>
 #include <errno.h>
-
+#include "settings.h"
 #include "command.h"
 #include "error.h"
 #include "lexer.h"
 #include "misc.h"
+#include "stat-macros.h"
 #include "str.h"
 
-
+#include "gettext.h"
+#define _(msgid) gettext (msgid)
 
 enum PER {PER_RO, PER_RW};
 
@@ -95,6 +97,13 @@ change_permissions(const char *filename, enum PER per)
   struct stat buf;
   mode_t mode;
 
+  if ( safer_mode() )
+    {
+      msg (SE, _("This command not allowed when the SAFER option is set."));
+      return CMD_FAILURE;
+    }
+
+
   if ( -1 == stat(filename, &buf) ) 
     {
       const int errnum = errno;