Oh you meant using parser's is_skippable instead of own function, sorry, read it quite distracted. I'm not complete familiar with the parser code, but i can take a look to see if i can.
On Mon, May 28, 2012 at 1:03 PM, Nicolas Valcárcel <[email protected]>wrote: > yes, i'm writing it, here is the code i'm using, last regexp is the one > i'm asking for, it seems to be working, but i'll test it further before > using it in production: > > def is_skippable_file(filename): > '''Returns True if file is skippable''' > > regexps = ['.*\.rpm(save|new)$', > '.*\.dpkg-(old|new)$', > '.*\.swp$', > '.*~$', > '(^|.*/)\.(?!.*\/.*)'] > > for regexp in regexps: > if re.match(regexp, filename): > return True > > return False > > > On Mon, May 28, 2012 at 12:53 PM, Seth Arnold <[email protected]>wrote: > >> I'd love to see the tools and parser using the exact same code to figure >> out which files to skip. Is there an exported library call that could be >> used in the tools to replace this function? >> >> -----Original Message----- >> From: John Johansen <[email protected]> >> Sender: [email protected] >> Date: Mon, 28 May 2012 10:19:29 >> To: Nicolas Valcárcel<[email protected]> >> Cc: <[email protected]> >> Subject: Re: [apparmor] Skippable files >> >> On 05/28/2012 09:23 AM, Nicolas Valcárcel wrote: >> > Hi, i'm working on rewriting to python3 some apparmor tools, but i'm >> not a perl expert, nor know apparmor in deep, so i got a stopper here that >> i hope you can help me with. >> > >> hey Nicolas >> >> > In Immunix/AppArmor.pm there is a function isSkippableFile which has a >> regexp i don't understand: >> > $path =~ /(^|\/)\.[^\/]*$/ <--- this one i don't >> understand >> dot files, but looking at it, it has an issue >> '.' followed by anything that is not a path >> or >> '/.' followed by anything that is not a path, note the leading '/' is >> not anchored >> >> so >> >> . >> .. >> .foo >> /. >> /.. >> /.foo >> bar/.foo >> /bar/.foo >> >> but not >> >> ./ >> .foo/ >> .foo/bar >> /.foo/ >> /.foo/bar >> >> now for where it has a problem, since the leading '/' is unanchored >> /.foo/.bar >> >> will match >> >> >> > $path =~ /\.rpm(save|new)$/ <--- this would be anything ending in >> .rpmsave or .rpmnew? >> yes >> >> > $path =~ /\.dpkg-(old|new)$/ <--- this would be anything ending >> in .dpkg-old or .dpkg-new? >> yes >> >> > $path =~ /\.swp$/ <--- this would be anything >> ending in .swp? >> yes >> >> > $path =~ /\~$/); <--- this would be anything >> ending in ~? >> > >> yes >> >> -- >> AppArmor mailing list >> [email protected] >> Modify settings or unsubscribe at: >> https://lists.ubuntu.com/mailman/listinfo/apparmor >> > > > > -- > Nicolas Valcárcel > Gerente IT / CTO > Celular: (511) 976 330 707 > > -- Nicolas Valcárcel Gerente IT / CTO Celular: (511) 976 330 707
-- AppArmor mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/apparmor
