I've never used WinCVS, so cannot answer your question directly....
Saima Iqbal wrote:
> The aim
> is to refrain from allowing the users to tag source in the whole
> tree at random.
If that is indeed your goal then perhaps all you want to do is
add a line to the $CVSROOT/CVSROOT/taginfo file that runs a script
of some kind that performs a check before going through with the tag.
We've recently added a line to taginfo that runs a perl script (attached)
that checks the user and what dir that user is trying to tag. The script
itself has -rwx------ permissions so the users cannot muck around with it.
--------------------
#!/usr/bin/perl -w
use strict;
my $cusr = getpwuid( $< );
my %VNames;
$| = 1; select STDERR; $| = 1; select STDOUT;
# Read the info from below __DATA__
while( <DATA> ) {
next if /^\s*$/;
chomp;
my( $Name, $Mods ) = split /\|/, $_, 2;
$VNames{$Name} = $Mods ? $Mods : '';
}
if( not exists $VNames{$cusr} ) { # If not on list anywhere, punt
print "NO SOUP FOR YOU!\n";
print "Check with cvs administrators for details and/or permissions\n";
exit(2);
}
else { # If in list, check the list of mods allowed
exit(0) if not $VNames{$cusr}; # empty list means ALL modules
foreach my $Mod( (split /\,/, $VNames{$cusr}) ) {
# print STDOUT "CHECKING FOR MOD PERMISSIONS ($Mod)\n";
if( $ARGV[2] =~ /\b$Mod\b/ ) {
exit(0);
}
}
print "NO SOUP FOR YOU!\n";
print "Check with cvs administrators for details and/or permissions\n";
exit(2);
}
exit(0);
# Name|mods permitted to tag (Perl regex's permitted...)
# Empty mod list means FULL PERMISSIONS for the tree
__DATA__
developer|
userA|mod_A
userB|mod_B
user|mod_\w*
_______________________________________________
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs