]> git.p6c8.net - devedit.git/commitdiff
We are now using the `chgrp` system command to change the group of a file
authorpcanterino <>
Wed, 27 Oct 2004 19:47:35 +0000 (19:47 +0000)
committerpcanterino <>
Wed, 27 Oct 2004 19:47:35 +0000 (19:47 +0000)
(see bug [1052335])

errors.dat
modules/Command.pm
modules/File/Access.pm
templates/chprop.htm

index 606b3363c38d29fb493ccc8a3774a008245520cd..93b5fc53445416aa64982ec2654166816f676eb4 100644 (file)
@@ -30,5 +30,6 @@ remove_root    = You are not allowed to remove the root directory.
 rename_root    = You are not allowed to move/rename the root directory.
 no_users       = It seems that your system doesn't support users and groups.
 not_owner      = You are not the owner of {FILE}, so you are not allowed to change the mode and the group.
 rename_root    = You are not allowed to move/rename the root directory.
 no_users       = It seems that your system doesn't support users and groups.
 not_owner      = You are not the owner of {FILE}, so you are not allowed to change the mode and the group.
+invalid_group  = '{GROUP}' seems to be an invalid group name. Please check it and try again.
 
 # End of configuration file
\ No newline at end of file
 
 # End of configuration file
\ No newline at end of file
index d14fec105323e589227e1480b3bbf2be3a9928c0..451a183f6b4819d89659cb0740f9c860a7e4a6da 100644 (file)
@@ -6,7 +6,7 @@ package Command;
 # Execute Dev-Editor's commands
 #
 # Author:        Patrick Canterino <patshaping@gmx.net>
 # Execute Dev-Editor's commands
 #
 # Author:        Patrick Canterino <patshaping@gmx.net>
-# Last modified: 2004-10-23
+# Last modified: 2004-10-27
 #
 
 use strict;
 #
 
 use strict;
@@ -223,7 +223,7 @@ sub exec_show($$)
     $tpl->fillin("URL",equal_url($config->{'httproot'},$virtual));
     $tpl->fillin("SCRIPT",$script);
 
     $tpl->fillin("URL",equal_url($config->{'httproot'},$virtual));
     $tpl->fillin("SCRIPT",$script);
 
-    $tpl->parse_if_block("editable",-r $physical && -w $physical && -T $physical && not ($config->{'max_file_size'} && $size > $config->{'max_file_size'}) && $uselist->unused($virtual)); 
+    $tpl->parse_if_block("editable",-r $physical && -w $physical && -T $physical && not ($config->{'max_file_size'} && $size > $config->{'max_file_size'}) && $uselist->unused($virtual));
 
     $tpl->fillin("CONTENT",encode_entities($$content));
    }
 
     $tpl->fillin("CONTENT",encode_entities($$content));
    }
@@ -772,7 +772,11 @@ sub exec_chprop($$)
      chmod($oct_mode,$physical);
     }
 
      chmod($oct_mode,$physical);
     }
 
-    chgrp($group,$physical) if($group);
+    if($group)
+    {
+     return error($config->{'errors'}->{'invalid_group'},$dir,{GROUP => $group}) unless($group =~ /^[a-z0-9_]+[a-z0-9_-]*$/i);
+     system("chgrp",$group,$physical);
+    }
 
     return devedit_reload({command => 'show', file => $dir});
    }
 
     return devedit_reload({command => 'show', file => $dir});
    }
index c649a2caa1d3692f835e0edb192b2bddb76f3043..6ab193ed3ae78d01d777b4a27df7c35fe66d1b12 100644 (file)
@@ -7,7 +7,7 @@ package File::Access;
 # with only one command
 #
 # Author:        Patrick Canterino <patshaping@gmx.net>
 # with only one command
 #
 # Author:        Patrick Canterino <patshaping@gmx.net>
-# Last modified: 2004-08-05
+# Last modified: 2004-10-26
 #
 
 use strict;
 #
 
 use strict;
@@ -20,32 +20,12 @@ use Fcntl;
 
 use base qw(Exporter);
 
 
 use base qw(Exporter);
 
-@EXPORT = qw(chgrp
-             dir_read
+@EXPORT = qw(dir_read
              file_create
              file_read
              file_save
              file_unlock);
 
              file_create
              file_read
              file_save
              file_unlock);
 
-# chgrp()
-#
-# Change the group of files or directories
-#
-# Params: 1. Group name or group ID
-#         2. List of files
-#
-# Return: Number of files group successfully changed
-#         (or false)
-
-sub chgrp($@)
-{
- my ($group,@files) = @_;
- my $gid = ($group !~ /^\d+$/) ? getgrnam($group) : $group;
-
- return unless($gid);
- return chown(-1,$gid,@files);
-}
-
 # dir_read()
 #
 # Collect the files and directories in a directory
 # dir_read()
 #
 # Collect the files and directories in a directory
index 7d98801fdbd36238b1b32745d3b5e47dc2ab42d1..e9df5b0849afa6dc17eb88d34ad9e9b71a79ed19 100644 (file)
@@ -45,7 +45,7 @@
 <li><b>Change mode:</b><br>
 Use an <b>octal</b> number to change the mode of the file. You may use the three or four number form. For this, SetUID, SetGID and Sticky Bit are also supported.</li>
 <li><b>Change group:</b><br>
 <li><b>Change mode:</b><br>
 Use an <b>octal</b> number to change the mode of the file. You may use the three or four number form. For this, SetUID, SetGID and Sticky Bit are also supported.</li>
 <li><b>Change group:</b><br>
-Enter the group name or the group ID the file should be assigned to.</li>
+Enter the group name or the group ID the file should be assigned to. If a group name is also a numeric group ID, the value is used as a group name.</li>
 </ul>
 
 <hr>
 </ul>
 
 <hr>

patrick-canterino.de