Re: First crack at argparse parser for semanage.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/18/2013 09:21, Daniel J Walsh wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 04/18/2013 09:14 AM, David Quigley wrote:
I posted this yesterday but sent it from the wrong account so its probably
in moderation.

Attached is my first crack at the argparse version of semanage. Right now it just parses the command line and spits out the dictionary raw. Please mess around with the command line and make sure that it behaves how you would expect. Some of the names in the dictionary are a bit weird and I'm having trouble getting sensible semantics for fcontext -e but it should be parsing the command lines properly. Also not all of the help text is in place yet. If you want to add some help text either send it to me in an email or send me a patch and I'll apply it to my repo. I still need to commit the latest changes to my github account but once I do you should be able to get the same file from my semanage-argparse repo on github. After we're sure that the parsing works as we'd like and the help messages are sensible to people I'll work on gluing this frontend back onto the seobject class that semanage uses to do that actual policy store manipulations. Someone pointed out that I have some spelling mistakes in there. I will make sure to address them in the next version once I add more help text.

Dave


-- selinux mailing list selinux@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/selinux


David, Miroslav was working on something similar.

I think the big problem with this is going to be handling

       Output local customizations
       semanage [ -S store ] -o [ output_file | - ]

       Input local customizations
       semanage [ -S store ] -i [ input_file | - ]

That is a possibility. However I believe I can handle that. I have a custom error handler for the argparse object that will allow me to check for that case if we never receive a sub-command. I can make a separate argparse parser for these two commands and if that errors out in a certain way I kick it back up to the original parser's error handler and print out the usage instead. Its not the most elegant solution but its one I can think of off the top of my head.



Once we have this, we need to rewrite all of the man pages to be

semanage-fcontext, semanage-user, semanage-boolean ...

I think regardless of whether the argparse version is done that this is a good thing to do. This is the way the git man pages are laid out and I think it has separate benefit even if semanage is never rewritten.


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.13 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlFv83MACgkQrlYvE4MpobNfAQCgzJT6W2TdxE3nElREJnA7JtxY
F5gAnA2BF4C93Qi1mXoN1008JoTbVwOK
=gpC2
-----END PGP SIGNATURE-----


--
selinux mailing list
selinux@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/selinux





[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux