| ''' |
| Access Control Lists testing based on newpynfs framework |
| Aurelien Charbon - Bull SA |
| ''' |
| from random_gen import * |
| from optparse import OptionParser |
| import commands |
| import os |
| import threading |
| import time |
| import random |
| |
| alphabet='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789_-() ~' |
| t_alphabet=len(alphabet) |
| |
| |
| |
| def test_longacl(l,path): |
| # mesures sur le getfacl |
| test = RandomGen() |
| |
| u = commands.getoutput('rm ' + path + "/*") # clean directory |
| print "test acl getfacl\n" |
| for i in range(l): |
| test.getUserList() |
| testfile = 'testfile' + str(i) |
| u = commands.getoutput('touch ' + path + "/" + testfile) |
| print "setfacl with " + str(i) + " entries\n " + u |
| for j in range(i): |
| user = test.uList.pop() |
| mode = test.createRandomMode() |
| u = commands.getoutput('setfacl -m u:' + user + ':' + mode + " " + path + "/" + testfile) |
| if u != "": |
| print "setfacl -m u:" + user + ':' + mode + " " + path + "/" + testfile |
| print u |
| def main(): |
| parser = OptionParser() |
| parser.add_option("-l", "--length", dest="length",type="int",help="max lentgh of ACL") |
| parser.add_option("-p", "--path", dest="path",help="path of test file") |
| (options, args) = parser.parse_args() |
| test_longacl(options.length,options.path) |
| main() |
| |