Tomas,

Thanks for creating the test cases.  I would have expected _write_config_file()
to be called or some other function instead of Popen('sparc_setup.sh').
Also the imports for the test_create_service.py should be alphabetized.
Finally, does this test the dhcp changes?

Thanks,

John


On Dec 16, 2011, at 12:09 PM, Tomas Dzik wrote:

> Hi John,
> I added unit tests for file permissions and fixed typo in bug synopsis.
> New webrev is here:
> 
> https://cr.opensolaris.org/action/browse/caiman/t.dzik/7052679-4/
> 
> Could you please look at it ?
> 
> Best regards,
> 
> Tomas D.
> 
> Dne 12.12.11 17:50, John Fischer napsal(a):
>> Tomas,
>> 
>> There are times when a test need not be written because it is covered 
>> elsewhere
>> or some other valid justification can be made.  I think in this case there 
>> is a valid
>> justification for a test or set of tests being made.
>> 
>> Perhaps one test where a restrictive umask is used and then a wide open umask
>> and checking the permissions against what is expected for each python module
>> with critical file permissions.
>> 
>> Thanks,
>> 
>> John
>> 
>> On Dec 12, 2011, at 8:16 AM, tomas dzik wrote:
>> 
>>> Hi John,
>>> is that really a question or you think that I should add these test ? ;-)
>>> Also because we are fixing the issue with root having too restrictive umask 
>>> - do you think that these tests should run with restrictive umask ? If yes 
>>> - should the restrictive umask be set just in particular test case or as 
>>> part of  setUpClass ?
>>> 
>>> Regards,
>>> 
>>> Tomas D.
>>> 
>>> On 12.12.2011 15:31, John Fischer wrote:
>>>> Tomas,
>>>> 
>>>> These changes look good.  My only question now is should the tests be 
>>>> updated
>>>> to check the permissions of these files that get created?  The only one 
>>>> that looks
>>>> a little challenging to do would be the dhcp.py test.
>>>> 
>>>> Thanks,
>>>> 
>>>> John
>>>> 
>>>> On Dec 12, 2011, at 2:56 AM, Tomas Dzik wrote:
>>>> 
>>>>> Hi all,
>>>>> the updated webrev is here:
>>>>> 
>>>>> https://cr.opensolaris.org/action/browse/caiman/t.dzik/7052679-3/
>>>>> 
>>>>> Could you please let me know whether it is OK now ?
>>>>> 
>>>>> Best regards,
>>>>> 
>>>>> Tomas D.
>>>>> 
>>>>> Dne  9.12.11 01:34, Ethan Quach napsal(a):
>>>>>> 
>>>>>> On 12/08/11 09:42, Tomas Dzik wrote:
>>>>>>> Hi John,
>>>>>>> it's easy to change that code to use umask instead of chmod. On the
>>>>>>> other hand it's very hard to get consensus on this mailing list how to
>>>>>>> do such simple thing like changing ownership of a file in a shell 
>>>>>>> script.
>>>>>>> 
>>>>>>> So I would like to know definitive answer before I will change the
>>>>>>> code (it should take 2 minutes) and retest it (it takes me more then 3
>>>>>>> hours to build it on both platforms, run tests, update test ai servers
>>>>>>> on both platforms and to create service and install client machines).
>>>>>>> And this is already 3rd version of this fix.
>>>>>>> 
>>>>>>> Ethan what do you think ?
>>>>>> John's suggestion sounds fine to me.
>>>>>> 
>>>>>> -ethan
>>>>>> 
>>>>>>> Best regards,
>>>>>>> 
>>>>>>> Tomas D.
>>>>>>> 
>>>>>>> Dne 8.12.11 18:15, John Fischer napsal(a):
>>>>>>>> Tomas,
>>>>>>>> 
>>>>>>>> In that case can you please use a umask so that the permissions are
>>>>>>>> correct
>>>>>>>> when the file is created.
>>>>>>>> 
>>>>>>>> Thanks,
>>>>>>>> 
>>>>>>>> John
>>>>>>>> 
>>>>>>>> On Dec 8, 2011, at 9:06 AM, Tomas Dzik wrote:
>>>>>>>> 
>>>>>>>>> Dne 8.12.11 17:51, John Fischer napsal(a):
>>>>>>>>>> Tomas,
>>>>>>>>>> 
>>>>>>>>>> Why are you using umask for everything except the sparc-setup.sh 
>>>>>>>>>> code?
>>>>>>>>>> The chmod still concerns me. Is there a reason why an appropriate
>>>>>>>>>> umask
>>>>>>>>>> can not be used in the sparc-setup.sh script?
>>>>>>>>>> 
>>>>>>>>>> Thanks,
>>>>>>>>>> 
>>>>>>>>>> John
>>>>>>>>> Hi John,
>>>>>>>>> there is no particular reason for using chmod in sparc-setup.sh
>>>>>>>>> code. Both ways would work. I just picked one.
>>>>>>>>> 
>>>>>>>>> Best regards,
>>>>>>>>> 
>>>>>>>>> Tomas D.
>>>>>>>>> 
>>>>>>>>>> On Dec 8, 2011, at 8:45 AM, Ethan Quach wrote:
>>>>>>>>>> 
>>>>>>>>>>> Tomas,
>>>>>>>>>>> 
>>>>>>>>>>> It looks fine to me.
>>>>>>>>>>> 
>>>>>>>>>>> thanks,
>>>>>>>>>>> -ethan
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> On 12/08/11 08:26, Tomas Dzik wrote:
>>>>>>>>>>>> Hi Ethan,
>>>>>>>>>>>> I changed chmod to absolute 0644 and the latest webrev is here:
>>>>>>>>>>>> 
>>>>>>>>>>>> https://cr.opensolaris.org/action/browse/caiman/t.dzik/7052679-2/
>>>>>>>>>>>> 
>>>>>>>>>>>> Could you please look at it and let me know whether is it OK now ?
>>>>>>>>>>>> 
>>>>>>>>>>>> Thanks a lot in advance,
>>>>>>>>>>>> 
>>>>>>>>>>>> Tomas D.
>>>>>>>>>>>> 
>>>>>>>>>>>> Dne 7.12.11 09:24, Ethan Quach napsal(a):
>>>>>>>>>>>>> Tomas,
>>>>>>>>>>>>> 
>>>>>>>>>>>>> On 12/06/11 04:43, Tomas Dzik wrote:
>>>>>>>>>>>>>> Hi Ethan,
>>>>>>>>>>>>>> I was considering all three ways and deciding which way to use
>>>>>>>>>>>>>> and I
>>>>>>>>>>>>>> choose setting umask to be cleanest and safest option.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Combination of os.fdopen(os.open()) does not work because
>>>>>>>>>>>>>> according to
>>>>>>>>>>>>>> python docs:
>>>>>>>>>>>>>> http://docs.python.org/library/os.html#os.open
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> "Open the file file and set various flags according to flags and
>>>>>>>>>>>>>> possibly its mode according to mode. The default mode is 0777
>>>>>>>>>>>>>> (octal),
>>>>>>>>>>>>>> and the current umask value is first masked out."
>>>>>>>>>>>>>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>>>>>>>>>>>> Ok. I didn't realize it masked against the umask for cases where
>>>>>>>>>>>>> a mode
>>>>>>>>>>>>> is passed in ...
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Chmoding these files after creation is possible - however you
>>>>>>>>>>>>>> never
>>>>>>>>>>>>>> know what might be security critical.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> For the changes in setup-sparc.sh I intentionally just added
>>>>>>>>>>>>>> the 'r'
>>>>>>>>>>>>>> permission because I know that these files must be readable for
>>>>>>>>>>>>>> everyone and I didn't want to anticipate anything else - it's
>>>>>>>>>>>>>> up to
>>>>>>>>>>>>>> root to set his umask according to his needs/security policy.
>>>>>>>>>>>>>> However
>>>>>>>>>>>>>> if you feel that application should pretend to be smarter then
>>>>>>>>>>>>>> admin I
>>>>>>>>>>>>>> can easily change it.
>>>>>>>>>>>>> But we're effectively doing this for the files being created
>>>>>>>>>>>>> where umask
>>>>>>>>>>>>> is used, so why do it differently with these two files?
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> So do you want me to change os.umask to os.chmod(00644) in
>>>>>>>>>>>>>> python code
>>>>>>>>>>>>>> and
>>>>>>>>>>>>> Using umask is fine with me here.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> chmod ugo+r to chmod 0644 in setup-sparc.sh ?
>>>>>>>>>>>>> I would prefer to set them to 0644 explicitly.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> thanks,
>>>>>>>>>>>>> -ethan
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Tomas D.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Dne 6.12.11 03:07, Ethan Quach napsal(a):
>>>>>>>>>>>>>>> Tomas,
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Rather than dancing with setting/re-setting the umask, why
>>>>>>>>>>>>>>> shouldn't we
>>>>>>>>>>>>>>> just explicitly set the perms of the file to exactly what we
>>>>>>>>>>>>>>> want at
>>>>>>>>>>>>>>> time of creation?
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> I noticed that the built-in open() function does not allow
>>>>>>>>>>>>>>> specification
>>>>>>>>>>>>>>> of perms for cases where it creates the file, but the
>>>>>>>>>>>>>>> os.open() function
>>>>>>>>>>>>>>> does, and that can be wrapped around an os.fdopen() call to be
>>>>>>>>>>>>>>> used with
>>>>>>>>>>>>>>> 'with'.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> For example, the 'with' line in dhcp.py could be changed to the
>>>>>>>>>>>>>>> following to achieve what we need:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> with os.fdopen(os.open(tmp_cfgfle, os.O_WRONLY | os.O_CREAT,
>>>>>>>>>>>>>>> 0644), 'w')
>>>>>>>>>>>>>>> as tmp_cfg:
>>>>>>>>>>>>>>> ....
>>>>>>>>>>>>>>> ...
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> I'm no python expert so I don't know if there are any serious
>>>>>>>>>>>>>>> drawbacks
>>>>>>>>>>>>>>> to using this versus using the built-in open(), but to me
>>>>>>>>>>>>>>> temporarily
>>>>>>>>>>>>>>> setting something in the env (the umask in this case) across a
>>>>>>>>>>>>>>> chunk of
>>>>>>>>>>>>>>> code seems susceptible to future bugs.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Alternatively, if the file in question is not a
>>>>>>>>>>>>>>> security-critical file
>>>>>>>>>>>>>>> (which seem to be true for the files in this fix), what's
>>>>>>>>>>>>>>> wrong with
>>>>>>>>>>>>>>> simply chmod'ing the file to exactly what we want right after 
>>>>>>>>>>>>>>> its
>>>>>>>>>>>>>>> creation?
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> For the changes in setup-sparc.sh, just adding the 'r' perm
>>>>>>>>>>>>>>> would still
>>>>>>>>>>>>>>> leave some bits susceptible to the umask; so at a minimum, we
>>>>>>>>>>>>>>> should
>>>>>>>>>>>>>>> just set it entirely to what we want, 0644 in this case.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> -ethan
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> On 12/05/11 02:23, Tomas Dzik wrote:
>>>>>>>>>>>>>>>> This is just a reminder that I would appreciate if someone 
>>>>>>>>>>>>>>>> could
>>>>>>>>>>>>>>>> review these changes.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Thanks a lot in advance,
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Tomas D.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Dne 30.11.11 13:14, Tomas Dzik napsal(a):
>>>>>>>>>>>>>>>>> Hi all,
>>>>>>>>>>>>>>>>> I would like to ask you for a code review for bug:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 7052679 AI Sparc client gets wantboot.conf error when
>>>>>>>>>>>>>>>>> booting due to
>>>>>>>>>>>>>>>>> restrictive umask
>>>>>>>>>>>>>>>>> Webrev:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> https://cr.opensolaris.org/action/browse/caiman/t.dzik/7052679/
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Testing:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 1) I built the gate with fix on x86 and on sparc.
>>>>>>>>>>>>>>>>> 2) Using distro constructor I created AI iso image on both
>>>>>>>>>>>>>>>>> platforms
>>>>>>>>>>>>>>>>> 3) I created virtual machines on x86 and on sparc and
>>>>>>>>>>>>>>>>> updated these
>>>>>>>>>>>>>>>>> machines to the built gate
>>>>>>>>>>>>>>>>> 4) I set umask for root to 0066 (as reported in bug)
>>>>>>>>>>>>>>>>> 5) On x86 I created install service. For sparc I created it
>>>>>>>>>>>>>>>>> from
>>>>>>>>>>>>>>>>> publisher and for x86 I created it from built AI iso image
>>>>>>>>>>>>>>>>> 6) I verified permissions of wanboot.conf and system.conf
>>>>>>>>>>>>>>>>> 7) I modified manifest, added it as a new default manifest and
>>>>>>>>>>>>>>>>> installed
>>>>>>>>>>>>>>>>> x86 client (also on virtual machine) from this AI server.
>>>>>>>>>>>>>>>>> I observed that client installed correctly.
>>>>>>>>>>>>>>>>> 8) On sparc I created install service for sparc from built
>>>>>>>>>>>>>>>>> iso, added
>>>>>>>>>>>>>>>>> new default manifest and also added new profile. (All
>>>>>>>>>>>>>>>>> command were run
>>>>>>>>>>>>>>>>> with umask set to 0066.)
>>>>>>>>>>>>>>>>> 9) I installed sparc client from this AI server and verified
>>>>>>>>>>>>>>>>> that
>>>>>>>>>>>>>>>>> client
>>>>>>>>>>>>>>>>> installed correctly and used the right manifest and profile.
>>>>>>>>>>>>>>>>> 10) Sources are pep8 clean.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Tomas D.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>>> caiman-discuss mailing list
>>>>>>>>>>>>>>>>> [email protected]
>>>>>>>>>>>>>>>>> http://mail.opensolaris.org/mailman/listinfo/caiman-discuss
>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>> caiman-discuss mailing list
>>>>>>>>>>>>>>>> [email protected]
>>>>>>>>>>>>>>>> http://mail.opensolaris.org/mailman/listinfo/caiman-discuss
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>> caiman-discuss mailing list
>>>>>>>>>>>>>>> [email protected]
>>>>>>>>>>>>>>> http://mail.opensolaris.org/mailman/listinfo/caiman-discuss
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> caiman-discuss mailing list
>>>>>>>>>>> [email protected]
>>>>>>>>>>> http://mail.opensolaris.org/mailman/listinfo/caiman-discuss
>> 
> 

_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

Reply via email to